Hi Frederic,

Thanks for putting some of my suggested changes through, can we discus the
other ones?

- remove BuildRequires: automake. this one is quite important, since it
blocks autoconf2.5 from being installed with slbd. It actually is an
redundant BuildRequires, since it is already Required by rpm-build. Which,
together with basesystem (and BuildRequires) are the minimum requirement
for building rpms. See also:
http://qa.mandrakesoft.com/twiki/bin/view/Main/BuildRequires

- changing the .so Provides / Requires to .dso (or something else, but not
..so). I *urgently* suggest that this is done before the next release. Once
this is put into a release, it will need to stay and be maintained. Why
does this need to change? Well, because at this moment we can't really
differentiate between .so devel dependencies
(http://eijk.homelinux.org/~stefan/rpm_devel_dependencies.html) and
_other_ .so dependencies. The one example I've seen is:

$ rpm -q --provides libdb3.3-3.3.11-14mdk
db3 = 3.3.11-14mdk
libdb-3.3.so
libdb3.3 = 3.3.11-14mdk

While libdb3.3-devel (when it is rebuilt) will _also_ provide libdb3.3.so:

$ ~/test06.sh libdb3.3-devel
libdb3.3-devel Provides: libdb-3.3.so
libdb3.3-devel Provides: libdb_cxx-3.3.so
libdb3.3-devel Provides: libdb_tcl-3.3.so

This screws up the whole model. I had not taken this into account, but now
that I've come across it, I think we need to change this, _before_ a
release is made. What I'm proposing is that this is changed to:

$ ~/test06.sh libdb3.3-devel
libdb3.3-devel Provides: libdb-3.3.dso
libdb3.3-devel Provides: libdb_cxx-3.3.dso
libdb3.3-devel Provides: libdb_tcl-3.3.dso

Please take a look at the attached rpm-4.2-autoreq.patch.bz2

I know what the impact is --> rebuilding _many_ packages (and probably
quite some cooker users complaining), but I think we better do it now, and
implement it correctly (while we can), than implement something that (we
know) isn't 100% and that we'll need to maintain for a longer period of
time.

- some x86_64 related changes to the .spec file. Remove this part:

307,320d305
< # FIXME: hack to get libraries in the right place on lib64 platforms
< if [[ "%{_libdir}" != "%{_prefix}/lib" ]]; then
<   mkdir -p $RPM_BUILD_ROOT%{_libdir}
<   mv $RPM_BUILD_ROOT%{_prefix}/lib/*.so* $RPM_BUILD_ROOT%{_libdir}/
<   mv $RPM_BUILD_ROOT%{_prefix}/lib/*.a   $RPM_BUILD_ROOT%{_libdir}/
<   mv $RPM_BUILD_ROOT%{_prefix}/lib/*.la  $RPM_BUILD_ROOT%{_libdir}/
< fi
<
< # Likewise for Python files until their location is cleaned and
standardized
< if [[ "%{_libdir}" != "%{_prefix}/lib" ]]; then
<   mkdir -p $RPM_BUILD_ROOT%{_libdir}
<   mv $RPM_BUILD_ROOT%{_prefix}/lib/python* $RPM_BUILD_ROOT%{_libdir}/
< fi
<
644a630,638

as keeping it in breaks the build on x86_64.

and comment out patch #43, as it doesn't apply. I don't know what the
exact impact / purpose is of this patch, but commenting it out it seems to
work (at least, on the CSC opteron).

regards,

Stefan van der Eijk

Attachment: rpm-4.2-autoreq.patch.bz2
Description: Binary data

Reply via email to