Archive:PackagingDrafts/StaticLibraryChanges

= Changes to the Static Library Policy =


 * There is a common case for static linking that should be excepted
 * Adding yourself to the initialcc of any library you're linking to statically makes you more aware of security issues

= Updated Policy =

Staticly Linking Executables

 * Static linkage is a special exception and should be decided on a case-by-case basis. The packager must provide rationale for linking statically, including precedences where available, to FESCO for approval.


 * If you link statically against a library, add yourself to the initialcc list for the library so you can watch for any security issues or bug fixes for which you'd want to rebuild your package against a new version of the library. Here are   instructions  for making that request.

Programs which don't need to notify FESCo

 * Programs written in OCaml do not support dynamic linkage to OCaml libraries. Because of that deficiency this requirement is waived.  (OCaml code that calls out to libraries written in C should still link dynamically to the C libraries, however.)


 * If a library you depend on only provides a static version your package can link against it provided that you Build'Require the *-devel subpackage. Build'Requiring *-devel causes your package to link against the dynamic version once the library starts providing one and your package is rebuilt.