diff options
author | Sam James <sam@gentoo.org> | 2024-02-20 05:23:53 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-02-20 05:23:53 +0000 |
commit | 95d084d4f441546042dec604de77aa7cfe08d61e (patch) | |
tree | ced714daba1c17cbf1748a73e80f4bb86b625f05 /sys-devel | |
parent | Revert "dev-libs/libintl: drop 0.21.1" (diff) | |
download | gentoo-95d084d4f441546042dec604de77aa7cfe08d61e.tar.gz gentoo-95d084d4f441546042dec604de77aa7cfe08d61e.tar.bz2 gentoo-95d084d4f441546042dec604de77aa7cfe08d61e.zip |
Revert "sys-devel/gettext: drop 0.21.1"
This reverts commit 5c86dc85ae6cb3f657a992067b652c287910fe53.
dev-python/polib needs older gettext...
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-devel')
-rw-r--r-- | sys-devel/gettext/Manifest | 2 | ||||
-rw-r--r-- | sys-devel/gettext/files/gettext-0.19.7-disable-libintl.patch | 30 | ||||
-rw-r--r-- | sys-devel/gettext/files/gettext-0.20-parallel_install.patch | 37 | ||||
-rw-r--r-- | sys-devel/gettext/files/gettext-0.21.1-java-autoconf.patch | 100 | ||||
-rw-r--r-- | sys-devel/gettext/files/gettext-0.21_rc1-avoid_eautomake.patch | 22 | ||||
-rw-r--r-- | sys-devel/gettext/gettext-0.21.1.ebuild | 178 |
6 files changed, 369 insertions, 0 deletions
diff --git a/sys-devel/gettext/Manifest b/sys-devel/gettext/Manifest index 66b36f6c7aff..3a4aa1ce180b 100644 --- a/sys-devel/gettext/Manifest +++ b/sys-devel/gettext/Manifest @@ -1,2 +1,4 @@ +DIST gettext-0.21.1.tar.xz 10054564 BLAKE2B e994924284b3fd5b3e3bf59d4bf43eb30c9b21cc213dc3b98616b4a9fc321c90911d94d314f323cfffd0d2c3e9371b5b8f7985b9a785adc61617dd042b6f4df5 SHA512 61e93bc9876effd3ca1c4e64ff6ba5bd84b24951ec2cc6f40a0e3248410e60f887552f29ca1f70541fb5524f6a4e8191fed288713c3e280e18922dd5bff1a2c9 +DIST gettext-0.21.1.tar.xz.sig 833 BLAKE2B f673436d315e972f9e110a1b5c8d1b2f20a32fc1b7ce027fcd3bc2fe7a81af183fb8db744cbed1a8c3a6ce1a13d55e19a8e8829fc944960fbfc7efcd9aaed91c SHA512 fba912830c57d0616fb66cf81da0cb7a3ab1e27497c45daa63249d3c9f85182a4f42dfeb1591d8f31c2a340ba0c519f04fd2f05429d1cf26a3ea316d047993d0 DIST gettext-0.22.4.tar.xz 10255384 BLAKE2B 3f93aa5aef8e40d2e01acaa5aeed11efefd0de43ea26d084a0b9e743019685f7584d8e1bf05c1fd5772a5576d21ee1f052b81366f52c7827b6d14bd4d9890edc SHA512 0f3620b1621b85b3df9e372885c2f040c8a91ec0b2d4e16978459a8a2a152318a0e6f5fefb8d971bad80c437e7ee8ac8c24edc4de0ab86e729528b8a2ac62c51 DIST gettext-0.22.4.tar.xz.sig 833 BLAKE2B fbb00b53c807934a11263c120861971fffebbd39689eda1fae0fb956476e69c3fb6799440cbf3acfcf43ecea2c134ea4dadb95becbac98badb43e546f3c8e9fb SHA512 a774c98de643b1ea3df645e451878652c2baa5cd786642aa457e6d5f5c44787cb1231eb15ad4390acdf314822633acaffffaa853eb69cbbc72c3b79b547a8854 diff --git a/sys-devel/gettext/files/gettext-0.19.7-disable-libintl.patch b/sys-devel/gettext/files/gettext-0.19.7-disable-libintl.patch new file mode 100644 index 000000000000..f51de3484331 --- /dev/null +++ b/sys-devel/gettext/files/gettext-0.19.7-disable-libintl.patch @@ -0,0 +1,30 @@ +https://bugs.gentoo.org/564168 +Never build libintl since it's in dev-libs/libintl now. + +We can drop this if/when upstream fixes the configure flag handling: +https://savannah.gnu.org/bugs/?48233 + +--- a/gettext-runtime/configure ++++ b/gettext-runtime/configure +@@ -20391,8 +20391,7 @@ $as_echo "$ac_res" >&6; } + + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ + || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ +- && test "$PACKAGE" != gettext-runtime \ +- && test "$PACKAGE" != gettext-tools; }; then ++ }; then + gt_use_preinstalled_gnugettext=yes + else + LIBINTL= +--- a/gettext-tools/configure ++++ b/gettext-tools/configure +@@ -22746,8 +22746,7 @@ $as_echo "$ac_res" >&6; } + + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ + || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ +- && test "$PACKAGE" != gettext-runtime \ +- && test "$PACKAGE" != gettext-tools; }; then ++ }; then + gt_use_preinstalled_gnugettext=yes + else + LIBINTL= diff --git a/sys-devel/gettext/files/gettext-0.20-parallel_install.patch b/sys-devel/gettext/files/gettext-0.20-parallel_install.patch new file mode 100644 index 000000000000..e47beaf94433 --- /dev/null +++ b/sys-devel/gettext/files/gettext-0.20-parallel_install.patch @@ -0,0 +1,37 @@ +From 829660df1583c6c3ee1d90291dd910f08e3b777e Mon Sep 17 00:00:00 2001 +From: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org> +Date: Fri, 10 May 2019 20:08:25 +0200 +Subject: [PATCH] Fix parallel install issue + +Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> +--- + gettext-tools/src/Makefile.am | 13 ++++++++++--- + 1 file changed, 10 insertions(+), 3 deletions(-) + +diff --git a/gettext-tools/src/Makefile.am b/gettext-tools/src/Makefile.am +index 09a3c153d..1ee49cdca 100644 +--- a/gettext-tools/src/Makefile.am ++++ b/gettext-tools/src/Makefile.am +@@ -252,9 +252,16 @@ cldr_plurals_LDADD = libgettextsrc.la $(LDADD) + + # How to get the include files of libtextstyle. + textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h: +- here=`pwd`; \ +- cd ../../libtextstyle/lib && \ +- $(MAKE) install-nobase_includeHEADERS install-nobase_nodist_includeHEADERS includedir="$$here" ++ cd "$(abs_top_builddir)/../libtextstyle/lib" && $(MAKE) $@ ++ if test -f "$(abs_top_builddir)/../libtextstyle/lib/$@"; then \ ++ file="$(abs_top_builddir)/../libtextstyle/lib/$@"; \ ++ else \ ++ file="$(abs_top_srcdir)/../libtextstyle/lib/$@"; \ ++ fi; \ ++ target_dir="$(abs_builddir)/$@"; \ ++ target_dir="$${target_dir%/*}"; \ ++ $(MKDIR_P) "$${target_dir}"; \ ++ $(INSTALL_HEADER) "$$file" $@ + BUILT_SOURCES += textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h + MOSTLYCLEANFILES += textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h + +-- +2.21.0 + diff --git a/sys-devel/gettext/files/gettext-0.21.1-java-autoconf.patch b/sys-devel/gettext/files/gettext-0.21.1-java-autoconf.patch new file mode 100644 index 000000000000..a7471ac724c9 --- /dev/null +++ b/sys-devel/gettext/files/gettext-0.21.1-java-autoconf.patch @@ -0,0 +1,100 @@ +From b8fc039e4266570f5af5ee1c2cd201369a766f1e Mon Sep 17 00:00:00 2001 +From: Bruno Haible <bruno@clisp.org> +Date: Tue, 11 Oct 2022 01:54:44 +0200 +Subject: [PATCH] Avoid warnings during configure execution with + --disable-java. + +Reported by Sam James <sam@cmpct.info> +in <https://savannah.gnu.org/bugs/?63193>. + +* gettext-runtime/configure.ac: Expand gt_JAVACOMP_DISABLED inline. +* gettext-tools/configure.ac: Expand gt_JAVAEXEC_DISABLED and +gt_JAVACOMP_DISABLED inline. +--- a/gettext-runtime/configure.ac ++++ b/gettext-runtime/configure.ac +@@ -42,7 +42,16 @@ AS_IF([test "$JAVA_CHOICE" != no], [ + BUILDJAVA=no + fi + ], [ +- gt_JAVACOMP_DISABLED ++ CONF_JAVAC= ++ HAVE_JAVAC_ENVVAR= ++ HAVE_GCJ_C= ++ HAVE_JAVAC= ++ HAVE_JIKES= ++ AC_SUBST([CONF_JAVAC]) ++ AC_SUBST([HAVE_JAVAC_ENVVAR]) ++ AC_SUBST([HAVE_GCJ_C]) ++ AC_SUBST([HAVE_JAVAC]) ++ AC_SUBST([HAVE_JIKES]) + JAR= + BUILDJAVA=no + ]) +--- a/gettext-tools/configure.ac ++++ b/gettext-tools/configure.ac +@@ -43,8 +43,28 @@ AS_IF([test "$JAVA_CHOICE" != no], [ + BUILDJAVA=no + fi + ], [ +- gt_JAVAEXEC_DISABLED +- gt_JAVACOMP_DISABLED ++ CONF_JAVA= ++ HAVE_JAVA_ENVVAR= ++ HAVE_GIJ= ++ HAVE_JAVA= ++ HAVE_JRE= ++ HAVE_JVIEW= ++ AC_SUBST([CONF_JAVA]) ++ AC_SUBST([HAVE_JAVA_ENVVAR]) ++ AC_SUBST([HAVE_GIJ]) ++ AC_SUBST([HAVE_JAVA]) ++ AC_SUBST([HAVE_JRE]) ++ AC_SUBST([HAVE_JVIEW]) ++ CONF_JAVAC= ++ HAVE_JAVAC_ENVVAR= ++ HAVE_GCJ_C= ++ HAVE_JAVAC= ++ HAVE_JIKES= ++ AC_SUBST([CONF_JAVAC]) ++ AC_SUBST([HAVE_JAVAC_ENVVAR]) ++ AC_SUBST([HAVE_GCJ_C]) ++ AC_SUBST([HAVE_JAVAC]) ++ AC_SUBST([HAVE_JIKES]) + JAR= + BUILDJAVA=no + ]) +diff --git a/gettext-runtime/configure b/gettext-runtime/configure +index 5e2d593..cf579ff 100755 +--- a/gettext-runtime/configure ++++ b/gettext-runtime/configure +@@ -7070,7 +7070,11 @@ fi + + else $as_nop + +- gt_JAVACOMP_DISABLED ++ CONF_JAVAC= ++ HAVE_JAVAC_ENVVAR= ++ HAVE_GCJ_C= ++ HAVE_JAVAC= ++ HAVE_JIKES= + JAR= + BUILDJAVA=no + +diff --git a/gettext-tools/configure b/gettext-tools/configure +index f897bc3..3af54cd 100755 +--- a/gettext-tools/configure ++++ b/gettext-tools/configure +@@ -8718,8 +8718,11 @@ fi + + else $as_nop + +- gt_JAVAEXEC_DISABLED +- gt_JAVACOMP_DISABLED ++ CONF_JAVAC= ++ HAVE_JAVAC_ENVVAR= ++ HAVE_GCJ_C= ++ HAVE_JAVAC= ++ HAVE_JIKES= + JAR= + BUILDJAVA=no + diff --git a/sys-devel/gettext/files/gettext-0.21_rc1-avoid_eautomake.patch b/sys-devel/gettext/files/gettext-0.21_rc1-avoid_eautomake.patch new file mode 100644 index 000000000000..8adae5d5484a --- /dev/null +++ b/sys-devel/gettext/files/gettext-0.21_rc1-avoid_eautomake.patch @@ -0,0 +1,22 @@ +--- gettext-0.21-rc1/gettext-tools/src/Makefile.in ++++ gettext-0.21-rc1/gettext-tools/src/Makefile.in +@@ -4106,9 +4106,16 @@ + + # How to get the include files of libtextstyle. + @USE_INSTALLED_LIBTEXTSTYLE_FALSE@textstyle.h textstyle/stdbool.h textstyle/version.h textstyle/woe32dll.h: +-@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ here=`pwd`; \ +-@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ cd ../../libtextstyle/lib && \ +-@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ $(MAKE) install-nobase_includeHEADERS install-nobase_nodist_includeHEADERS includedir="$$here" ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ cd "$(abs_top_builddir)/../libtextstyle/lib" && $(MAKE) $@ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ if test -f "$(abs_top_builddir)/../libtextstyle/lib/$@"; then \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ file="$(abs_top_builddir)/../libtextstyle/lib/$@"; \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ else \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ file="$(abs_top_srcdir)/../libtextstyle/lib/$@"; \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ fi; \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ target_dir="$(abs_builddir)/$@"; \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ target_dir="$${target_dir%/*}"; \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ $(MKDIR_P) "$${target_dir}"; \ ++@USE_INSTALLED_LIBTEXTSTYLE_FALSE@ $(INSTALL_HEADER) "$$file" $@ + + # No need to install libgettextsrc.a, except on AIX. + install-exec-hook: install-exec-clean diff --git a/sys-devel/gettext/gettext-0.21.1.ebuild b/sys-devel/gettext/gettext-0.21.1.ebuild new file mode 100644 index 000000000000..4988b01ddbeb --- /dev/null +++ b/sys-devel/gettext/gettext-0.21.1.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Note: Keep version bumps in sync with dev-libs/libintl. + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gettext.asc +inherit java-pkg-opt-2 libtool multilib-minimal verify-sig toolchain-funcs + +DESCRIPTION="GNU locale utilities" +HOMEPAGE="https://www.gnu.org/software/gettext/" +if [[ ${PV} == *_rc* ]] ; then + SRC_URI="https://alpha.gnu.org/gnu/${PN}/${P/_/-}.tar.xz" + SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/${PN}/${P/_/-}.tar.xz.sig )" + S="${WORKDIR}/${P/_/-}" +else + SRC_URI="mirror://gnu/${PN}/${P}.tar.xz" + SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )" + KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +fi +# Only libasprintf is under the LGPL (and libintl is in a sep package), +# so put that license behind USE=cxx. +LICENSE="GPL-3+ cxx? ( LGPL-2.1+ )" +SLOT="0" +IUSE="acl +cxx doc emacs git java ncurses nls openmp static-libs" + +# only runtime goes multilib +# Note: The version of libxml2 corresponds to the version bundled via gnulib. +# If the build detects too old of a system version, it will end up falling back +# to the bundled copy. #596918 +# Note: expat lacks a subslot because it is dynamically loaded at runtime. We +# would depend on older subslots if they were available (based on the ABIs that +# are explicitly handled), but expat doesn't currently use subslots. +DEPEND=">=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] + >=virtual/libintl-0-r2[${MULTILIB_USEDEP}] + >=dev-libs/libxml2-2.9.3:= + dev-libs/expat + acl? ( virtual/acl ) + ncurses? ( sys-libs/ncurses:0= ) + java? ( virtual/jdk:1.8 )" +RDEPEND="${DEPEND} + git? ( dev-vcs/git ) + java? ( virtual/jre:1.8 )" +BDEPEND=" + git? ( dev-vcs/git ) + verify-sig? ( sec-keys/openpgp-keys-gettext )" +PDEPEND="emacs? ( app-emacs/po-mode )" + +MULTILIB_WRAPPED_HEADERS=( + # only installed for native ABI + /usr/include/gettext-po.h + + /usr/include/autosprintf.h + /usr/include/textstyle.h + /usr/include/textstyle/stdbool.h + /usr/include/textstyle/version.h + /usr/include/textstyle/woe32dll.h +) + +PATCHES=( + "${FILESDIR}"/${PN}-0.19.7-disable-libintl.patch #564168 + "${FILESDIR}"/${PN}-0.20-parallel_install.patch #685530 + "${FILESDIR}"/${PN}-0.21_rc1-avoid_eautomake.patch + "${FILESDIR}"/${PN}-0.21-CVE-2020-12825.patch + "${FILESDIR}"/${P}-java-autoconf.patch +) + +QA_SONAME_NO_SYMLINK=".*/preloadable_libintl.so" + +pkg_pretend() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp +} + +pkg_setup() { + [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp + java-pkg-opt-2_pkg_setup +} + +src_prepare() { + java-pkg-opt-2_src_prepare + + default + + # gettext-0.21.1-java-autoconf.patch changes + # gettext-{runtime,tools}/configure.ac and the corresponding + # configure scripts. Avoid regenerating other autotools output. + touch -c gettext-{runtime,tools}/{aclocal.m4,Makefile.in,config.h.in,configure} || die + + # Makefile.am adds a dependency on gettext-{runtime,tools}/configure.ac + touch -c configure || die + + elibtoolize + + if use elibc_musl || use elibc_Darwin; then + eapply "${FILESDIR}"/${PN}-0.21-musl-omit_setlocale_lock.patch + fi +} + +multilib_src_configure() { + local myconf=( + # switches common to runtime and top-level + --cache-file="${BUILD_DIR}"/config.cache + #--docdir="\$(datarootdir)/doc/${PF}" + + # Emacs support is now in a separate package + --without-emacs + --without-lispdir + # glib depends on us so avoid circular deps + --with-included-glib + # libcroco depends on glib which ... ^^^ + --with-included-libcroco + # this will _disable_ libunistring (since it is not bundled), + # see bug #326477 + --with-included-libunistring + # Never build libintl since it's in dev-libs/libintl now. + --without-included-gettext + # Never build bundled copy of libxml2. + --without-included-libxml + + --disable-csharp + --without-cvs + + $(use_enable acl) + $(use_enable cxx c++) + $(use_enable cxx libasprintf) + $(use_with git) + $(multilib_native_use_enable java) + $(use_enable ncurses curses) + $(use_enable nls) + $(use_enable openmp) + $(use_enable static-libs static) + ) + + local ECONF_SOURCE="${S}" + if ! multilib_is_native_abi ; then + # for non-native ABIs, we build runtime only + ECONF_SOURCE+=/gettext-runtime + fi + + econf "${myconf[@]}" +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi ; then + dosym msgfmt /usr/bin/gmsgfmt #43435 + dobin gettext-tools/misc/gettextize + fi +} + +multilib_src_install_all() { + find "${ED}" -type f -name "*.la" -delete || die + + if use java ; then + java-pkg_dojar "${ED}"/usr/share/${PN}/*.jar + rm "${ED}"/usr/share/${PN}/*.jar || die + rm "${ED}"/usr/share/${PN}/*.class || die + if use doc ; then + java-pkg_dojavadoc "${ED}"/usr/share/doc/${PF}/html/javadoc2 + fi + fi + + dodoc AUTHORS ChangeLog NEWS README THANKS + + if use doc ; then + docinto html + dodoc "${ED}"/usr/share/doc/${PF}/*.html + else + rm -rf "${ED}"/usr/share/doc/${PF}/{csharpdoc,examples,javadoc2,javadoc1} + fi + rm "${ED}"/usr/share/doc/${PF}/*.html || die +} + +pkg_preinst() { + java-pkg-opt-2_pkg_preinst +} |