Bug 472356 - Sloppy packaging
Sloppy packaging
Product: Fedora
Classification: Fedora
Component: player (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Tim Niemueller
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2008-11-20 07:34 EST by Michael Schwendt
Modified: 2009-05-26 11:51 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-05-26 11:51:57 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Michael Schwendt 2008-11-20 07:34:19 EST
Inconsistent usage of RPM macros leads to packaging bugs:

* Package "player" includes directories included in package "player-examples".

* Sometimes you write %{name}, sometimes you spell it out: player
Use %{name} consistently.

* The following two are redundant:

%dir %{_libdir}/player

The former one includes *only* the directory entry without its contents.
The latter includes the directory and its contents recursively.
(%name expands to "player").
In this case, drop the %dir line.

* In main package add:

%exclude %{_libdir}/%{name}/examples/

because this tree is included in the sub-package player-examples.

* In package player-examples (and whenever including directories,
make it more readable with a slash at the end. Instead of:

| %files examples
| %defattr(-,root,root,-)
| %{_libdir}/player/examples


| %files examples
| %defattr(-,root,root,-)
| %{_libdir}/player/examples/

* Clean up the installed trees. Delete unused static libs, Makefiles, and C/C++ source files.

* You do

| Requires: python >= 2.5

while the Python ABI requirement is automatic: python(abi) = 2.5

* Who approved the -static sub-package? What is the rationale?
It ought to be explained in a comment in the spec file.
Comment 1 Tim Niemueller 2008-11-20 07:47:05 EST
Thanks for the comments. Will consider them for the next update.

The static libs are used because especially in robotics and university applications you want to be able to build a static version to deploy it on a robot (possibly running a very specific Linux version where it could be a pain to install player) or sending a static build to a fellow researcher possibly using a different version. It just saves you hassle in certain situations so it is good to have the static lib around and have the possibility. That was discussed during the review.

If you mean the example source files: they are included on purpose because that's the whole point of the examples, get an easy start on developing with Player, not on actually just using it. Basically Player is a development platform, not a "get it and drive your robot with it" kind of software.
Comment 2 Michael Schwendt 2008-11-20 08:26:04 EST
Well, static archives won't work as plugins (as they cannot be
dlopened), so including them in the examples is useless. And to
include example Makefile.libtool files which do -rpath /tmp is
bad taste.
Comment 3 Bug Zapper 2008-11-26 00:39:17 EST
This bug appears to have been reported against 'rawhide' during the Fedora 10 development cycle.
Changing version to '10'.

More information and reason for this action is here:
Comment 4 Michael Schwendt 2009-05-26 11:51:57 EDT
It seems you're not interested in fixing packaging issues. Closing WONTFIX.

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