On 10/31/2012 11:47 AM, Reindl Harald wrote:
it is REALLY bad make UsrMove and HRADCODE /bin:/sbin in PATH of openssh, this results in packages built with "rpmbuild" having Requires: /bin/perl as example in my opinion "rpmbuild" should know about the change and fix implicit Requires: /bin and Requires: /sbin
But they're not implicit. As I've said in the bug(s) already, rpm doesn't invent paths, it generates dependencies based on the file contents: if a script has #!/bin/perl through whatever means (ie hardcoded or generated), /bin/perl is what you get as a dependency. And rpm can't do the damnest thing about it: it doesn't know whether some arbitrary path is intentional or not, it doesn't know what distro you're actually building a package for, AND trying to "fix" paths with eg realpath() would result in all sorts of other breakage: eg /sbin/ldconfig is what glibc provides, not /usr/sbin/ldconfig.
As also said in one of the bugs: the simple solution is to fix your build environment. You dont even need the openssh fix for that. Rpm builds are only reproducible given identical environment, and there are countless things that can differ between personal accounts on different hosts, the best way to ensure sane build environment in Fedora-land is to build the packages in mock.
- Panu - -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel