diff options
author | Michael Pratt <mcpratt@pm.me> | 2023-04-16 11:04:31 -0400 |
---|---|---|
committer | Christian Marangi <ansuelsmth@gmail.com> | 2023-05-04 06:07:30 +0200 |
commit | d95d5d2a3a895f5374b56ab349f628578cd4149b (patch) | |
tree | 81a29b060e9cb3f1a120c2241875e5b869060f97 /package/libs | |
parent | f7fbe77115924d831dfa7e5b9dc8903b4ccaaf07 (diff) | |
download | upstream-d95d5d2a3a895f5374b56ab349f628578cd4149b.tar.gz upstream-d95d5d2a3a895f5374b56ab349f628578cd4149b.tar.bz2 upstream-d95d5d2a3a895f5374b56ab349f628578cd4149b.zip |
gettext-full: link to local libxml2
Some users have reported that gettext builds
are attempting to link to libxml2
while it was supposed to be configured
to use it's own built-in substitute.
Configure gettext to require and link
to our local libxml2 explicitly.
Add a patch to revert upstream commit 87927a4e2
which forces libtextstyle to use the built-in libxml,
no matter what the configuration is,
making that option configurable again
after the configure script is regenerated.
Reported-by: Tianling Shen <cnsztl@immortalwrt.org>
Signed-off-by: Michael Pratt <mcpratt@pm.me>
Diffstat (limited to 'package/libs')
3 files changed, 35 insertions, 25 deletions
diff --git a/package/libs/gettext-full/Makefile b/package/libs/gettext-full/Makefile index 440cff1341..a92932f375 100644 --- a/package/libs/gettext-full/Makefile +++ b/package/libs/gettext-full/Makefile @@ -23,10 +23,10 @@ PKG_CPE_ID:=cpe:/a:gnu:gettext PKG_FIXUP:=autoreconf PKG_INSTALL:=1 -PKG_BUILD_DEPENDS:=gettext-full/host +PKG_BUILD_DEPENDS:=gettext-full/host libxml2 PKG_BUILD_PARALLEL:=0 -HOST_BUILD_DEPENDS:=gperf/host +HOST_BUILD_DEPENDS:=gperf/host libxml2/host HOST_BUILD_PARALLEL:=0 PKG_SUBDIRS:= \ @@ -86,6 +86,7 @@ CONFIGURE_ARGS += \ --with-included-gettext \ --without-libintl-prefix \ --without-libexpat-prefix \ + --with-libxml2-prefix=$(STAGING_DIR) \ --without-emacs HOST_CONFIGURE_ARGS += \ @@ -96,7 +97,7 @@ HOST_CONFIGURE_ARGS += \ --disable-java \ --disable-openmp \ --without-emacs \ - --without-libxml2-prefix + --with-libxml2-prefix=$(STAGING_DIR_HOSTPKG) HOST_CONFIGURE_VARS += \ EMACS="no" \ diff --git a/package/libs/gettext-full/patches/100-libxml-no-force-included.patch b/package/libs/gettext-full/patches/100-libxml-no-force-included.patch new file mode 100644 index 0000000000..af5c0a47ee --- /dev/null +++ b/package/libs/gettext-full/patches/100-libxml-no-force-included.patch @@ -0,0 +1,31 @@ +--- a/libtextstyle/gnulib-local/modules/libxml.diff ++++ /dev/null +@@ -1,28 +0,0 @@ +-*** libxml.orig 2018-10-28 14:37:07.007164889 +0100 +---- libxml 2019-02-14 22:19:29.994771110 +0100 +-*************** +-*** 118,124 **** +- fabs +- +- configure.ac: +-! gl_LIBXML +- +- Makefile.am: +- if INCLUDED_LIBXML +---- 118,133 ---- +- fabs +- +- configure.ac: +-! # In libtextstyle, we don't want to use an external libxml, because its +-! # dependencies and their dynamic relocations have an impact on the startup +-! # time of a program that is linked with it. As you can see by using +-! # 'readelf -r ... | wc -l' and 'readelf -d ... | grep NEEDED': +-! # - libxml2.so has more than 3300 relocations and depends on libicuuc. +-! # - libicuuc.so has more than 4900 relocations and depends on libstdc++. +-! # - libstdc++.so has more than 4600 relocations. +-! # These are more than 12800 relocations, to perform at program startup. +-! # So, force the use of the included libxml part. +-! gl_LIBXML([yes]) +- +- Makefile.am: +- if INCLUDED_LIBXML diff --git a/package/libs/gettext-full/patches/150-disable_libxml_iconv.patch b/package/libs/gettext-full/patches/150-disable_libxml_iconv.patch deleted file mode 100644 index bf60ecbdb5..0000000000 --- a/package/libs/gettext-full/patches/150-disable_libxml_iconv.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- a/gettext-tools/gnulib-lib/libxml/xmlversion.in.h -+++ b/gettext-tools/gnulib-lib/libxml/xmlversion.in.h -@@ -302,7 +302,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(i - * - * Whether iconv support is available - */ --#if 1 -+#if 0 - #define LIBXML_ICONV_ENABLED - #endif - ---- a/gnulib-local/lib/libxml/xmlversion.in.h -+++ b/gnulib-local/lib/libxml/xmlversion.in.h -@@ -302,7 +302,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(i - * - * Whether iconv support is available - */ --#if 1 -+#if 0 - #define LIBXML_ICONV_ENABLED - #endif - |