From: Jo-Philipp Wich Date: Thu, 20 Dec 2018 07:04:46 +0000 (+0100) Subject: elfutils: produce correct libelf.pc file when building with full nls X-Git-Tag: v19.07.0-rc1~1803 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=f2c6e2c3850e016dcae7afa48086b8feabd0af12;p=openwrt%2Fopenwrt.git elfutils: produce correct libelf.pc file when building with full nls When building with full lagnuage support, libelf.so will depend on and link with libintl.so so we need to change the pkg-config template to reflect this library dependency. Also change the Makefile to only pass --disable-nls to configure when the full nls support is actually disabled in the buildroot config. Signed-off-by: Jo-Philipp Wich --- diff --git a/package/libs/elfutils/Makefile b/package/libs/elfutils/Makefile index 9fff14d283..8ac3a01176 100644 --- a/package/libs/elfutils/Makefile +++ b/package/libs/elfutils/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=elfutils PKG_VERSION:=0.174 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=https://sourceware.org/$(PKG_NAME)/ftp/$(PKG_VERSION) @@ -54,12 +54,13 @@ define Package/libelf1 endef ifeq ($(CONFIG_BUILD_NLS),y) -TARGET_LDFLAGS += "-lintl" +TARGET_LDFLAGS += -lintl +else +CONFIGURE_ARGS += --disable-nls endif CONFIGURE_ARGS += \ --program-prefix=eu- \ - --disable-nls \ --without-lzma TARGET_CFLAGS += -D_GNU_SOURCE -Wno-unused-result -Wno-format-nonliteral diff --git a/package/libs/elfutils/patches/003-libint-stub.patch b/package/libs/elfutils/patches/003-libint-stub.patch deleted file mode 100644 index 24cad74328..0000000000 --- a/package/libs/elfutils/patches/003-libint-stub.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- a/libelf/libelfP.h -+++ b/libelf/libelfP.h -@@ -39,6 +39,9 @@ - #include - #include - -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - ---- a/libdw/libdwP.h -+++ b/libdw/libdwP.h -@@ -35,7 +35,9 @@ - #include - #include - -- -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - ---- a/libdwfl/libdwflP.h -+++ b/libdwfl/libdwflP.h -@@ -43,6 +43,9 @@ - - typedef struct Dwfl_Process Dwfl_Process; - -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - ---- a/libasm/libasmP.h -+++ b/libasm/libasmP.h -@@ -35,6 +35,9 @@ - - #include "libdwelf.h" - -+#ifdef _ /* fix libintl-stub */ -+#undef _ -+#endif - /* gettext helper macros. */ - #define _(Str) dgettext ("elfutils", Str) - diff --git a/package/libs/elfutils/patches/003-libintl-compatibility.patch b/package/libs/elfutils/patches/003-libintl-compatibility.patch new file mode 100644 index 0000000000..35a27113eb --- /dev/null +++ b/package/libs/elfutils/patches/003-libintl-compatibility.patch @@ -0,0 +1,72 @@ +--- a/libelf/libelfP.h ++++ b/libelf/libelfP.h +@@ -39,6 +39,9 @@ + #include + #include + ++#ifdef _ /* fix libintl-stub */ ++#undef _ ++#endif + /* gettext helper macros. */ + #define _(Str) dgettext ("elfutils", Str) + +--- a/libdw/libdwP.h ++++ b/libdw/libdwP.h +@@ -35,7 +35,9 @@ + #include + #include + +- ++#ifdef _ /* fix libintl-stub */ ++#undef _ ++#endif + /* gettext helper macros. */ + #define _(Str) dgettext ("elfutils", Str) + +--- a/libdwfl/libdwflP.h ++++ b/libdwfl/libdwflP.h +@@ -43,6 +43,9 @@ + + typedef struct Dwfl_Process Dwfl_Process; + ++#ifdef _ /* fix libintl-stub */ ++#undef _ ++#endif + /* gettext helper macros. */ + #define _(Str) dgettext ("elfutils", Str) + +--- a/libasm/libasmP.h ++++ b/libasm/libasmP.h +@@ -35,6 +35,9 @@ + + #include "libdwelf.h" + ++#ifdef _ /* fix libintl-stub */ ++#undef _ ++#endif + /* gettext helper macros. */ + #define _(Str) dgettext ("elfutils", Str) + +--- a/config/libelf.pc.in ++++ b/config/libelf.pc.in +@@ -8,7 +8,7 @@ Description: elfutils libelf library to + Version: @VERSION@ + URL: http://elfutils.org/ + +-Libs: -L${libdir} -lelf ++Libs: -L${libdir} -lelf @intl_LDFLAGS@ + Cflags: -I${includedir} + + Requires.private: zlib +--- a/configure.ac ++++ b/configure.ac +@@ -538,6 +538,9 @@ AC_CONFIG_FILES([config/libelf.pc config + AC_SUBST(USE_NLS, yes) + AM_PO_SUBDIRS + ++case "$USE_NLS" in yes) intl_LDFLAGS="-lintl" ;; esac ++AC_SUBST([intl_LDFLAGS]) ++ + dnl Appended to the config.h file. + dnl We hide all kinds of configuration magic in lib/eu-config.h. + AH_BOTTOM([#include ])