On Mar 4, 2008, at 5:38 AM, Stefan Westmeier wrote:
> Hi,
>
> while installing rpm-5.0.3 and testing it in my environment I found
> a different behaviour compared to rpm-5.0.2
> regarding handling of dependency check during installation of
> packages.
>
> An example should demonstrate this. A package base-bin define the
> following directory structure /imp to be
> included in the package:
>
> Summary: Base Package
> Name: base-bin
> Prefix: /imp
>
> ....
>
> %install
> mkdir -p $RPM_BUILD_ROOT/imp
> mkdir -p $RPM_BUILD_ROOT/imp/sys
> mkdir -p $RPM_BUILD_ROOT/imp/nav
> mkdir -p $RPM_BUILD_ROOT/imp/mm
>
> ....
>
> %files
> /imp
>
> Installing the package relocating /imp to /my/home/imp gives the
> following error:
>
> /imp is needed by base-bin-1.0-0803041109.i686
>
> So my questions are:
>
> 1) what is the correct way of specifying directories for packages
> to prevent these kind of installation errors ?
>
Packaging the directory as well as its contents (as you have done) is
correct.
Your issue is whether --relocate, not with packaging of directories.
Adding --noparentdirs should work around the issue.
> 2) which changes regarding dependency checks have been put into rpm
> 5.0.3 ?
>
> Running this example with rpm-5.0.2 does not report any error.
>
Yup. A bug (in 2 places) with a non-zero return code from rpmtsCheck
() was fixed 5.0.2 -> 5.0.3.
Adding --nodeps should work around the issue.
73 de Jeff
Received on Tue Mar 4 15:06:45 2008