Bug 556092 - python : does not adhere to Static Library Packaging Guidelines
Summary: python : does not adhere to Static Library Packaging Guidelines
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python
Version: rawhide
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Dave Malcolm
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-01-16 14:47 UTC by Michael Schwendt
Modified: 2010-01-18 22:54 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2010-01-18 22:54:50 UTC
Type: ---


Attachments (Terms of Use)

Description Michael Schwendt 2010-01-16 14:47:34 UTC
The package is in need of an update because it does not adhere to
the guidelines for packaging static libraries:

  http://fedoraproject.org/wiki/Packaging:Guidelines#Packaging_Static_Libraries

The -devel package contains both the shared and the static build of
a library. That makes it possible to link statically with the -devel
package as a build requirement instead of having to build-require a
special-purpose -static subpackage.

Correct would be to either disable/delete the static libraries at
build-time, or to %exclude them in the %files section, or to split off
a -static subpackage (if there is a compelling reason as why the static
libs should be made available).

Please consult the guidelines for the details.

[...]

python-devel
    /usr/lib/python2.6/config/libpython2.6.so  <=>  /usr/lib/python2.6/config/libpython2.6.a

Comment 1 Dave Malcolm 2010-01-18 19:14:37 UTC
configure: WARNING: unrecognized options: --disable-static

Makefile.pre.in has:
  all:             build_all
  build_all:       $(BUILDPYTHON) oldsharedmods sharedmods
  $(BUILDPYTHON):  Modules/python.o $(LIBRARY) $(LDLIBRARY)
where $(LIBRARY) is the static library target, $(LDLIBRARY) the dynamic one.

We could change things to not build it, or we could simply delete it after linking: I've chosen to patch the Makefile.pre.in to not build it.

This also affects python3; the Makefiles are similar, and an analagous fix can be applied.

Fix built into rawhide for python 2 in python-2.6.4-6.fc13: http://koji.fedoraproject.org/koji/taskinfo?taskID=1930184
Fix built into rawhide for python 3 in python3-3.1.1-17.fc13: http://koji.fedoraproject.org/koji/taskinfo?taskID=1930068


Note You need to log in before you can comment on or make changes to this bug.