Bug 897 - Dependencies of a package vary on the presence of that package at build time
Summary: Dependencies of a package vary on the presence of that package at build time
Status: CLOSED WORKSFORME
Alias: None
Product: Sisyphus
Classification: Development
Component: rpm-build (show other bugs)
Version: unstable
Hardware: all Linux
: P4 minor
Assignee: placeholder@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-05-08 00:41 MSD by Mikhail Zabaluev
Modified: 2007-09-25 13:23 MSD (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mikhail Zabaluev 2002-05-08 00:41:21 MSD
Steps to reproduce:
- remove libxslt from the system
- rebuild the libxslt package and save it for comparison
- install the libxslt package just built
- rebuild the package again
The second package will have libxslt.so.? in Requires, whereas the first package won\'t.
---

---

Comment 1 Mikhail Zabaluev 2002-06-05 12:24:27 MSD
Ditto for shell auto-dependencies, e.g. initscripts will require itself if it\'s present in the system (in the build environment, to be correct) during the build, and miss it if it\'s not present.

I see the following solutions to overcome this problem:
1. For filename-based dependencies (libraries, plain pathnames), search for the
   file referenced by a dependency both in the system and in the build root.
   the perl.req script already does this.
2. (Ugly) Before a package rebuild in the build environment, a developer
may provide the produced binary packages, built on the developer\'s workstation, as a hint: the build environment will (non-fatally) resolve dependencies of the preliminary binary packages for its mockup filesystem and package database.
Comment 2 Mikhail Zabaluev 2002-06-05 12:24:27 MSD
Ditto for shell auto-dependencies, e.g. initscripts will require itself if it\'s present in the system (in the build environment, to be correct) during the build, and miss it if it\'s not present.

I see the following solutions to overcome this problem:
1. For filename-based dependencies (libraries, plain pathnames), search for the
   file referenced by a dependency both in the system and in the build root.
   the perl.req script already does this.
2. (Ugly) Before a package rebuild in the build environment, a developer
may provide the produced binary packages, built on the developer\'s workstation, as a hint: the build environment will (non-fatally) resolve dependencies of the preliminary binary packages for its mockup filesystem and package database.
Comment 3 Michael Shigorin 2007-09-24 11:41:49 MSD
Кажется, это всё с тех пор изрядно менялось, в т.ч. по части отфильтровывания
self requires?
Comment 4 Dmitry V. Levin 2007-09-24 14:24:26 MSD
С внедрением hasher'а неактуально.