Message ID | ef3fb5da37a548d196be711273498929b3ee91f0.1717085316.git.olivier.dion@polymtl.ca |
---|---|
State | New |
Headers | show |
Series | [bug#68718,v2] gnu: elfutils: Move inputs to propagated-inputs. | expand |
Hi, odion@efficios.com writes: > From: Olivier Dion <olivier.dion@polymtl.ca> > > zlib and liblzma are required in `lib/pkgconfig/{libdw,libelf}.pc'. > Thus, `lib/pkgconfig/liblzma.pc' and `lib/pkgconfig/zlib.pc' from the xz > and zlib packages must be propagated for pkg-config to work on libdw and > libelf. > > * gnu/packages/elf.scm (elfutils): Move packages ... > [inputs]: ... from here ... > [propagated-inputs]: ... to here. I've reworded the GNU ChangeLog part like: * gnu/packages/elf.scm (elfutils) [inputs]: Turn into... [propagated-inputs]: ... this field. > Change-Id: Ic89d226b2392fe821b207302d3b386f9633b981a > --- > gnu/packages/elf.scm | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm > index a100038f14..484f8dfc2c 100644 > --- a/gnu/packages/elf.scm > +++ b/gnu/packages/elf.scm > @@ -138,7 +138,11 @@ (define-public elfutils > '())))) > > (native-inputs (list m4)) > - (inputs (list xz zlib)) > + ;; zlib and liblzma are required in `lib/pkgconfig/{libdw,libelf}.pc'. > + ;; Thus, `lib/pkgconfig/liblzma.pc' and `lib/pkgconfig/zlib.pc' from the > + ;; xz and zlib packages must be propagated for pkg-config to work on libdw > + ;; and libelf. > + (propagated-inputs (list xz zlib)) And simplified this to: (propagated-inputs (list xz zlib)) ;in Requires of libdw.pc, libelf.pc and... Actually, these are in 'Requires.private', which ought to be only useful for static compilation (though these would be consulted for Cflags since there's no Cflags.private in pkg-config). pkgconf handles this better than pkg-config, letting you do without propagation here, as long as the libs are found in a standard include path and you are building a shared library. I think with the planned switch to pkgconf, we probably should avoid propagation here unless really necessary; do you have a failing example at hand?
diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index a100038f14..484f8dfc2c 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -138,7 +138,11 @@ (define-public elfutils '())))) (native-inputs (list m4)) - (inputs (list xz zlib)) + ;; zlib and liblzma are required in `lib/pkgconfig/{libdw,libelf}.pc'. + ;; Thus, `lib/pkgconfig/liblzma.pc' and `lib/pkgconfig/zlib.pc' from the + ;; xz and zlib packages must be propagated for pkg-config to work on libdw + ;; and libelf. + (propagated-inputs (list xz zlib)) (home-page "https://sourceware.org/elfutils/") (synopsis "Collection of utilities and libraries to handle ELF files and DWARF data")
From: Olivier Dion <olivier.dion@polymtl.ca> zlib and liblzma are required in `lib/pkgconfig/{libdw,libelf}.pc'. Thus, `lib/pkgconfig/liblzma.pc' and `lib/pkgconfig/zlib.pc' from the xz and zlib packages must be propagated for pkg-config to work on libdw and libelf. * gnu/packages/elf.scm (elfutils): Move packages ... [inputs]: ... from here ... [propagated-inputs]: ... to here. Change-Id: Ic89d226b2392fe821b207302d3b386f9633b981a --- gnu/packages/elf.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) base-commit: c2cb630061d937e26bcbd5ae7962f692f640a4ee