From Fedora Project Wiki

m (1 revision(s))
mNo edit summary
Line 1: Line 1:
{{ Template:message/notice | This policy has been ratified and added to the Packaging Guidelines
{{Admon/tip | This policy has been ratified and added to the Packaging Guidelines}}
}}


= Changes to the Static Library Policy =
= Changes to the Static Library Policy =
Line 6: Line 5:
* There is a common case for static linking that should be excepted
* 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
* Adding yourself to the initialcc of any library you're linking to statically makes you more aware of security issues


= Updated Policy =
= Updated Policy =

Revision as of 13:08, 5 June 2008

This policy has been ratified and added to the Packaging Guidelines

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.