commit:     976ecacaa07a4fc989395fa861ead100a11da207
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 19 09:06:23 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep 19 09:06:28 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=976ecaca

sys-devel/gettext: add 0.22.1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-devel/gettext/Manifest              |   2 +
 sys-devel/gettext/gettext-0.22.1.ebuild | 189 ++++++++++++++++++++++++++++++++
 2 files changed, 191 insertions(+)

diff --git a/sys-devel/gettext/Manifest b/sys-devel/gettext/Manifest
index 546310d160dc..7b53d5d7aabc 100644
--- a/sys-devel/gettext/Manifest
+++ b/sys-devel/gettext/Manifest
@@ -1,4 +1,6 @@
 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.1.tar.xz 10229080 BLAKE2B 
c64dcdc88d2d5db73b4e1779ccb4e0910355f169506b16d303a2db3b1a7ef83aa6e1866d20ce47f598874737d769098f371b18e947dc6b053f7a85d304ea1780
 SHA512 
03c5d7d791ac45d46d2e6d0fdbea0eaafc91fa7f067841124da7c4abd9e967f78c80608cd75aeeff7c1b6a944f4345a32cd1b465d5d5111be0ec92de475821c0
+DIST gettext-0.22.1.tar.xz.sig 833 BLAKE2B 
069a25c0b11c4ef8ef43e28c13271484fc55d75ddef53c709c57b31e150984bfdd54891f047187f27993770165392bdf698c70498e5bdded4611f8db8dd5d0d4
 SHA512 
86b43852bc465a98b4fdd5ccd156f6666b57775ecfb0f8de12b653cf3c8f86ab8a21cf9094e8e7d1f07fc520d01f2cfd9d48c81ed31a173093ed5eaa684671d8
 DIST gettext-0.22.tar.xz 10008808 BLAKE2B 
e91c82eb793897bd7ed727503e9d6e72a47027adf51ca76cf5c936437c434e910508814b1d03b12694c5e87156018683cb2c8cc51637b121313ed41155bcd3e5
 SHA512 
c6368344aa4e0f6fd7c4a93023a5f7b377c7bb97b8ea688fd54f4c385c069d9ff27611d8763b1aed6328b6d3c4db7b34bd89bfbf6525ecaef11eb58434a4d4fa
 DIST gettext-0.22.tar.xz.sig 833 BLAKE2B 
d1718f02100abc2c7c67e5c6a49000baee5244030fcef33f099fac255562211332b0c7838d329e2cdd2c99c5b4e5d4bfed6da81cdddd86a4adf9f24f626c8704
 SHA512 
2d4f0ea68150aa9f7da315545bd782f0c74d581ec89f60ca5138d069cc6ef0296f85df6e05f0c7f030dc8660a8db32529d237497473f6cef7c72034adcc58a9b

diff --git a/sys-devel/gettext/gettext-0.22.1.ebuild 
b/sys-devel/gettext/gettext-0.22.1.ebuild
new file mode 100644
index 000000000000..3fc8822689b6
--- /dev/null
+++ b/sys-devel/gettext/gettext-0.22.1.ebuild
@@ -0,0 +1,189 @@
+# 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="${BROOT}"/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
+               verify-sig? ( 
https://alpha.gnu.org/gnu/${PN}/${P/_/-}.tar.xz.sig )
+       "
+       S="${WORKDIR}/${P/_/-}"
+else
+       SRC_URI="
+               mirror://gnu/${PN}/${P}.tar.xz
+               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 xattr"
+
+# 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:= )
+       java? ( virtual/jdk:1.8 )
+       xattr? ( sys-apps/attr )
+"
+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.21-CVE-2020-12825.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)
+               $(use_enable xattr attr)
+       )
+
+       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 # bug #43435
+               dobin gettext-tools/misc/gettextize
+       fi
+
+       # 909041 never install libintl which upstream insists on building
+       rm -f "${ED}"/usr/$(get_libdir)/libintl.* "${ED}"/usr/include/libintl.h
+}
+
+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
+}

Reply via email to