[Rpm-maint] [PATCH 3/3] Add new helper to search for dependencies in the libraries
Panu Matilainen
pmatilai at laiskiainen.org
Wed Nov 24 10:26:07 UTC 2010
On Mon, 22 Nov 2010, Alexey Gladkov wrote:
> The helper generates depends not on all files, but only for
> those which are found in certain directories. Helpers checks the
> configuration of ldconfig, standart directories %_libdir and /%lib,
> and directories in the RPM_FINDPROV_LIB_PATH variable.
I'm not at all convinced this is a good idea. The libraries outside
standard paths are subject to LD_LIBRARY_PATH (and rpath and whatnot)
uses, this depends on the ld configuration of /build/ host which can be
something completely different on the actual target hosts etc. And unless
I'm misreading the script, this completely excludes dependency generation
on non-standard library-paths, meaning any dependencies the private
libraries have will be missed, which would be a huge regression. I also
don't think parsing the linkers configuration is rpm's business.
I do agree with Mark's comments here
http://lists.rpm.org/pipermail/rpm-maint/2010-November/002903.html: It
needs to scan everything by default, but have a nice way to filter out
unwanted bits provides and requires based on path and/or generated
dependency. Better yet if it can be done automatically for things like
python/perl/etc extension modules which live in mostly known paths.
Oh btw:
> @@ -1,4 +1,3 @@
> -%__elf_provides %{_rpmconfigdir}/elfdeps --provides %{?__filter_GLIBC_PRIVATE:--filter-private}
> %__elf_requires %{_rpmconfigdir}/elfdeps --requires %{?__filter_GLIBC_PRIVATE:--filter-private}
> -%__elf_magic ^ELF (32|64)-bit.*$
> +%__elf_magic ^ELF (32|64)-bit.* shared object, .*$
^^^^^^^^^^^^^^^^
Not all binaries are PIE, that'd need to take the "traditional"
executables into account too.
- Panu -
More information about the Rpm-maint
mailing list