* [Buildroot] [PATCH 1/1] package/libcap: fix libcap.pc
@ 2020-11-28 21:54 Fabrice Fontaine
2020-11-29 21:19 ` Peter Korsgaard
2020-11-29 22:04 ` Peter Seiderer
0 siblings, 2 replies; 4+ messages in thread
From: Fabrice Fontaine @ 2020-11-28 21:54 UTC (permalink / raw)
To: buildroot
libcap builds an incorrect libcap.pc because libdir is pulled from the
host os:
ifndef lib
lib=$(shell ldd /usr/bin/ld|egrep "ld-linux|ld.so"|cut -d/ -f2)
endif
Fix this error by passing lib=lib in {HOST_LIBCAP,LIBCAP}_BUILD_CMDS
Fixes:
- https://bugs.buildroot.org/show_bug.cgi?id=13276
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
package/libcap/libcap.mk | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/package/libcap/libcap.mk b/package/libcap/libcap.mk
index 2b80a3cb7d..a4a9170193 100644
--- a/package/libcap/libcap.mk
+++ b/package/libcap/libcap.mk
@@ -19,6 +19,7 @@ LIBCAP_MAKE_FLAGS = \
CROSS_COMPILE="$(TARGET_CROSS)" \
BUILD_CC="$(HOSTCC)" \
BUILD_CFLAGS="$(HOST_CFLAGS)" \
+ lib=lib \
SHARED=$(if $(BR2_STATIC_LIBS),,yes) \
PTHREADS=$(if $(BR2_TOOLCHAIN_HAS_THREADS),yes,)
@@ -38,21 +39,21 @@ endef
define LIBCAP_INSTALL_STAGING_CMDS
$(foreach d,$(LIBCAP_MAKE_DIRS), \
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
- DESTDIR=$(STAGING_DIR) prefix=/usr lib=lib install
+ DESTDIR=$(STAGING_DIR) prefix=/usr install
)
endef
define LIBCAP_INSTALL_TARGET_CMDS
$(foreach d,$(LIBCAP_MAKE_DIRS), \
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
- DESTDIR=$(TARGET_DIR) prefix=/usr lib=lib install
+ DESTDIR=$(TARGET_DIR) prefix=/usr install
)
endef
define HOST_LIBCAP_BUILD_CMDS
$(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D)\
DYNAMIC=yes \
- RAISE_SETFCAP=no GOLANG=no
+ RAISE_SETFCAP=no GOLANG=no lib=lib
endef
define HOST_LIBCAP_INSTALL_CMDS
--
2.29.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 1/1] package/libcap: fix libcap.pc
2020-11-28 21:54 [Buildroot] [PATCH 1/1] package/libcap: fix libcap.pc Fabrice Fontaine
@ 2020-11-29 21:19 ` Peter Korsgaard
2020-11-29 22:04 ` Peter Seiderer
1 sibling, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2020-11-29 21:19 UTC (permalink / raw)
To: buildroot
>>>>> "Fabrice" == Fabrice Fontaine <fontaine.fabrice@gmail.com> writes:
> libcap builds an incorrect libcap.pc because libdir is pulled from the
> host os:
> ifndef lib
> lib=$(shell ldd /usr/bin/ld|egrep "ld-linux|ld.so"|cut -d/ -f2)
> endif
> Fix this error by passing lib=lib in {HOST_LIBCAP,LIBCAP}_BUILD_CMDS
> Fixes:
> - https://bugs.buildroot.org/show_bug.cgi?id=13276
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 1/1] package/libcap: fix libcap.pc
2020-11-28 21:54 [Buildroot] [PATCH 1/1] package/libcap: fix libcap.pc Fabrice Fontaine
2020-11-29 21:19 ` Peter Korsgaard
@ 2020-11-29 22:04 ` Peter Seiderer
2020-11-30 6:33 ` Fabrice Fontaine
1 sibling, 1 reply; 4+ messages in thread
From: Peter Seiderer @ 2020-11-29 22:04 UTC (permalink / raw)
To: buildroot
Hello Fabrice,
On Sat, 28 Nov 2020 22:54:32 +0100, Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
> libcap builds an incorrect libcap.pc because libdir is pulled from the
> host os:
>
> ifndef lib
> lib=$(shell ldd /usr/bin/ld|egrep "ld-linux|ld.so"|cut -d/ -f2)
> endif
>
> Fix this error by passing lib=lib in {HOST_LIBCAP,LIBCAP}_BUILD_CMDS
>
> Fixes:
> - https://bugs.buildroot.org/show_bug.cgi?id=13276
>
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> ---
> package/libcap/libcap.mk | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/package/libcap/libcap.mk b/package/libcap/libcap.mk
> index 2b80a3cb7d..a4a9170193 100644
> --- a/package/libcap/libcap.mk
> +++ b/package/libcap/libcap.mk
> @@ -19,6 +19,7 @@ LIBCAP_MAKE_FLAGS = \
> CROSS_COMPILE="$(TARGET_CROSS)" \
> BUILD_CC="$(HOSTCC)" \
> BUILD_CFLAGS="$(HOST_CFLAGS)" \
> + lib=lib \
> SHARED=$(if $(BR2_STATIC_LIBS),,yes) \
> PTHREADS=$(if $(BR2_TOOLCHAIN_HAS_THREADS),yes,)
>
> @@ -38,21 +39,21 @@ endef
> define LIBCAP_INSTALL_STAGING_CMDS
> $(foreach d,$(LIBCAP_MAKE_DIRS), \
> $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
> - DESTDIR=$(STAGING_DIR) prefix=/usr lib=lib install
> + DESTDIR=$(STAGING_DIR) prefix=/usr install
> )
> endef
>
> define LIBCAP_INSTALL_TARGET_CMDS
> $(foreach d,$(LIBCAP_MAKE_DIRS), \
> $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
> - DESTDIR=$(TARGET_DIR) prefix=/usr lib=lib install
> + DESTDIR=$(TARGET_DIR) prefix=/usr install
> )
> endef
>
> define HOST_LIBCAP_BUILD_CMDS
> $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D)\
> DYNAMIC=yes \
> - RAISE_SETFCAP=no GOLANG=no
> + RAISE_SETFCAP=no GOLANG=no lib=lib
> endef
>
> define HOST_LIBCAP_INSTALL_CMDS
Before the patch:
$ cat ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/pkgconfig/libcap.pc
prefix=/usr
exec_prefix=
libdir=/lib64
includedir=/usr/include
Name: libcap
Description: libcap - linux capabilities library
Version: 2.45
Libs: -L${libdir} -lcap
Libs.private:
Cflags: -I${includedir}
After the patch:
$ cat ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/pkgconfig/libcap.pc
prefix=/usr
exec_prefix=
libdir=/lib
includedir=/usr/include
Name: libcap
Description: libcap - linux capabilities library
Version: 2.45
Libs: -L${libdir} -lcap
Libs.private:
Cflags: -I${includedir}
Some (random) other package:
$ cat ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/pkgconfig/fmt.pc
prefix=/usr
exec_prefix=/usr
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: fmt
Description: A modern formatting library
Version: 7.1.3
Libs: -L${libdir} -lfmt
Cflags: -I${includedir}
$ find ./host/arm-buildroot-linux-gnueabihf/sysroot/ -name libcap.so
./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libcap.so
$ find ./host/arm-buildroot-linux-gnueabihf/sysroot/ -name libfmt.so
./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libfmt.so
Should libcap.pc not use something resulting in 'libdir=/usr/lib'?
Regards,
Peter
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH 1/1] package/libcap: fix libcap.pc
2020-11-29 22:04 ` Peter Seiderer
@ 2020-11-30 6:33 ` Fabrice Fontaine
0 siblings, 0 replies; 4+ messages in thread
From: Fabrice Fontaine @ 2020-11-30 6:33 UTC (permalink / raw)
To: buildroot
Hi Peter,
Le dim. 29 nov. 2020 ? 23:04, Peter Seiderer <ps.report@gmx.net> a ?crit :
>
> Hello Fabrice,
>
> On Sat, 28 Nov 2020 22:54:32 +0100, Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote:
>
> > libcap builds an incorrect libcap.pc because libdir is pulled from the
> > host os:
> >
> > ifndef lib
> > lib=$(shell ldd /usr/bin/ld|egrep "ld-linux|ld.so"|cut -d/ -f2)
> > endif
> >
> > Fix this error by passing lib=lib in {HOST_LIBCAP,LIBCAP}_BUILD_CMDS
> >
> > Fixes:
> > - https://bugs.buildroot.org/show_bug.cgi?id=13276
> >
> > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > ---
> > package/libcap/libcap.mk | 7 ++++---
> > 1 file changed, 4 insertions(+), 3 deletions(-)
> >
> > diff --git a/package/libcap/libcap.mk b/package/libcap/libcap.mk
> > index 2b80a3cb7d..a4a9170193 100644
> > --- a/package/libcap/libcap.mk
> > +++ b/package/libcap/libcap.mk
> > @@ -19,6 +19,7 @@ LIBCAP_MAKE_FLAGS = \
> > CROSS_COMPILE="$(TARGET_CROSS)" \
> > BUILD_CC="$(HOSTCC)" \
> > BUILD_CFLAGS="$(HOST_CFLAGS)" \
> > + lib=lib \
> > SHARED=$(if $(BR2_STATIC_LIBS),,yes) \
> > PTHREADS=$(if $(BR2_TOOLCHAIN_HAS_THREADS),yes,)
> >
> > @@ -38,21 +39,21 @@ endef
> > define LIBCAP_INSTALL_STAGING_CMDS
> > $(foreach d,$(LIBCAP_MAKE_DIRS), \
> > $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
> > - DESTDIR=$(STAGING_DIR) prefix=/usr lib=lib install
> > + DESTDIR=$(STAGING_DIR) prefix=/usr install
> > )
> > endef
> >
> > define LIBCAP_INSTALL_TARGET_CMDS
> > $(foreach d,$(LIBCAP_MAKE_DIRS), \
> > $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/$(d) $(LIBCAP_MAKE_FLAGS) \
> > - DESTDIR=$(TARGET_DIR) prefix=/usr lib=lib install
> > + DESTDIR=$(TARGET_DIR) prefix=/usr install
> > )
> > endef
> >
> > define HOST_LIBCAP_BUILD_CMDS
> > $(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) -C $(@D)\
> > DYNAMIC=yes \
> > - RAISE_SETFCAP=no GOLANG=no
> > + RAISE_SETFCAP=no GOLANG=no lib=lib
> > endef
> >
> > define HOST_LIBCAP_INSTALL_CMDS
>
> Before the patch:
>
> $ cat ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/pkgconfig/libcap.pc
> prefix=/usr
> exec_prefix=
> libdir=/lib64
> includedir=/usr/include
>
> Name: libcap
> Description: libcap - linux capabilities library
> Version: 2.45
> Libs: -L${libdir} -lcap
> Libs.private:
> Cflags: -I${includedir}
>
>
>
> After the patch:
>
> $ cat ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/pkgconfig/libcap.pc
> prefix=/usr
> exec_prefix=
> libdir=/lib
> includedir=/usr/include
>
> Name: libcap
> Description: libcap - linux capabilities library
> Version: 2.45
> Libs: -L${libdir} -lcap
> Libs.private:
> Cflags: -I${includedir}
>
> Some (random) other package:
>
> $ cat ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/pkgconfig/fmt.pc
> prefix=/usr
> exec_prefix=/usr
> libdir=${exec_prefix}/lib
> includedir=${prefix}/include
>
> Name: fmt
> Description: A modern formatting library
> Version: 7.1.3
> Libs: -L${libdir} -lfmt
> Cflags: -I${includedir}
>
>
> $ find ./host/arm-buildroot-linux-gnueabihf/sysroot/ -name libcap.so
> ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libcap.so
>
> $ find ./host/arm-buildroot-linux-gnueabihf/sysroot/ -name libfmt.so
> ./host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib/libfmt.so
>
>
> Should libcap.pc not use something resulting in 'libdir=/usr/lib'?
Thanks for spotting this issue, I'll send a patch to fix this.
>
> Regards,
> Peter
Best Regards,
Fabrice
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-11-30 6:33 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-28 21:54 [Buildroot] [PATCH 1/1] package/libcap: fix libcap.pc Fabrice Fontaine
2020-11-29 21:19 ` Peter Korsgaard
2020-11-29 22:04 ` Peter Seiderer
2020-11-30 6:33 ` Fabrice Fontaine
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.