[packman] Re: [opensuse] packman for PPC

Pascal Bleser pascal.bleser at skynet.be
Wed Sep 28 11:38:51 CEST 2005

Hash: SHA1

Peter Czanik wrote:
> Hello,
Hi Peter, great to have you on board :)

[...big snip...]

>>> BuildRequires:  libxine1
>> Hm, not necessary, when devel is inlcuded.
> So, if a -devel package is included, I don't have to include the base
> package explicitly?

Manfred, I don't quite agree on this one.

SUSE packagers do *not* write Requires rules for the base package in the devel packages.

I always do in mine, e.g.:

%package devel
Requires: %{name} = %{version}

SUSE packagers don't do that because they assume you're always using YaST2: when you do have shared
libraries in Requires (usually those that are automatically (AutoReqProv) added by rpm's post
handlers), YaST2 resolves them to packages. In this case, the automatically required shared
libraries from the base packages are sufficient.

But maybe it's a question of policy. Personally, I always prefer to specify package names
explicitely in Requires and BuildRequires, as it is much more informative to end-users that install
RPMs using "rpm" and who have missing dependencies (because it says "openssl is missing", instead of
just "libcrypto.so.0").

I wrote myself a script that just maps shared library requirements (discovered using ldd) to RPM
packages, and I simply add those to the Requires tags in the spec file.
If interested, here's that little perl script: http://linux01.gwdg.de/~pbleser/files/rpm/ldd2rpm
I could improve it to have it search for shared libraries and ELF binaries by itself.
Run it like this:
  ldd2rpm <buildroot>/usr/bin/* <buildroot>/usr/lib/lib*.so
(with <buildroot> replaced with wherever you DESTDIR-make-installed the files)

- --
  -o) Pascal Bleser     http://linux01.gwdg.de/~pbleser/
  /\\ <pascal.bleser at skynet.be>       <guru at unixtech.be>
 _\_v ===> FOSDEM 2006 -- February 2006 in Brussels <===
Version: GnuPG v1.4.0 (GNU/Linux)


More information about the Packman mailing list