From eeb9605e496b284bf379a3b346a40638413e870e Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 10 Nov 2024 23:18:27 +0000 Subject: gentoo auto-resync : 10:11:2024 - 23:18:27 --- dev-libs/icu/Manifest | 3 +- .../icu-76.1-undo-pkgconfig-change-for-now.patch | 30 ++++ dev-libs/icu/icu-76.1-r1.ebuild | 182 +++++++++++++++++++++ dev-libs/icu/icu-76.1.ebuild | 178 -------------------- 4 files changed, 214 insertions(+), 179 deletions(-) create mode 100644 dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch create mode 100644 dev-libs/icu/icu-76.1-r1.ebuild delete mode 100644 dev-libs/icu/icu-76.1.ebuild (limited to 'dev-libs/icu') diff --git a/dev-libs/icu/Manifest b/dev-libs/icu/Manifest index 82808861b285..60f0cad07b17 100644 --- a/dev-libs/icu/Manifest +++ b/dev-libs/icu/Manifest @@ -3,6 +3,7 @@ AUX icu-65.1-remove-bashisms.patch 4963 BLAKE2B fb781741a7a908638876729d573a73e4 AUX icu-68.1-nonunicode.patch 477 BLAKE2B 5e74142e5adbf8f3fffa23c8fb08657b5b75d12941db39980abea1fff2328c112196b62cc89d521e8cc2a1f7c11b58816401a838bb8fcbe50036e80d3d9e4343 SHA512 5d605cc1cbbd16221603a9509d07713d64201f4fc1a372d29c18f8d49a4618fcd7e0a0bb0a459024a288e5c2c339a9aa0849abe88691ee2cdb24b92c9b61e290 AUX icu-75.1-python3_13-tests.patch 609 BLAKE2B 8f459e0963d941029f05d74a643c5c37060934b12181ec1a8859316f0f6ffaa9a62ab7817b382f879113c896271c4660522ae573c7e540fbc88bbbe563fdcd7d SHA512 e93c459f98c1015eb1592eabc27451dd71834c3b039921ffb6630b31bc0f811104610f4cc81ac1424d392b51aa571d3d2c4a4c9556ab83d90b7155a035e88012 AUX icu-76.1-remove-bashisms.patch 3382 BLAKE2B fda519c35f7b8d617007fcfa91dd6d36da7eae457f616b437ac32c4de1808d5e7d4b31cb6b560fbf1b2940e69b6fcb8fb51b4c9ad2671aa43aa89cf056934999 SHA512 223ab2e184945ad7039a72dafaf3478bbcab4b4577929e0aac8b508f9cac678a770ff9ce307d373e9ab1d8e42a81740251bb70e2244592cda91ad15a6af1fd2d +AUX icu-76.1-undo-pkgconfig-change-for-now.patch 989 BLAKE2B 66348d618956c593b3cca1740ea6805be00c8b5ae94a040a9a37ab928c94e439233c7aa53e8074cb773da89ff42a16d15c3bb1cc597405c1929bb14ba755d61d SHA512 8c4054752e78c89e3b3731f55ba4a96a9f71800ef7734a042343b759f5051d70daec6300b64c1875abc7c012a90010b05ad94c2729cbd8e99c53c8d8b6650790 DIST icu4c-74_2-src.tgz 26529443 BLAKE2B 08790dd3634037177eaec428651afe0da1f71dbad3423bde7ea5a6d49eab5dc011f72b175760fc55f6d8d7d820f7f3dfc369a80a1f7cb2f9f933644beb3d3711 SHA512 e6c7876c0f3d756f3a6969cad9a8909e535eeaac352f3a721338b9cbd56864bf7414469d29ec843462997815d2ca9d0dab06d38c37cdd4d8feb28ad04d8781b0 DIST icu4c-74_2-src.tgz.asc 659 BLAKE2B 0723204ce19d7bd4b1989e00b5ab084cc5b154c214129632a7f7ce31c151c8a4b9e0033d49872db728a3787809dbad2320f1d848561c84f94797c7e006749b94 SHA512 b249a61aba711b34599c3c0fbc113a52a83e59cb7bbda914ca74f534c1f474e6821d663dc7f078608b24393703654a43c2b793ca3d3f3be761393b6a73862ecc DIST icu4c-75_1-src.tgz 26568378 BLAKE2B 2772b52bf59407188511359ec54bea432bc70ba81610015bb51192f7aff33d5e4b08840cf3bfed3de7f9a91b430b6a6efe9dd75fdc53327d4c9f8fbf54d96d18 SHA512 70ea842f0d5f1f6c6b65696ac71d96848c4873f4d794bebc40fd87af2ad4ef064c61a786bf7bc430ce4713ec6deabb8cc1a8cc0212eab148cee2d498a3683e45 @@ -11,5 +12,5 @@ DIST icu4c-76_1-src.tgz 27437767 BLAKE2B 67223391123d2d2c75107fc4b87510b1d8d5203 DIST icu4c-76_1-src.tgz.asc 228 BLAKE2B 37a058e22da5ad122e3df6de2cb3979fa734b32e4e81d91201d2095fbf20ef2dbcba4579efab3041193e49c388d09618c965ddf082a8362aa82b694184804fa7 SHA512 c4bd81d4e98d7e37a6ba9540748c4ce1eb740d70bd689a13e2e51da76503b6e0287afd4d1cd3af4540210f37626dec998fcbd7269976cb801f238b789e604489 EBUILD icu-74.2.ebuild 4714 BLAKE2B 8091125f898279efb25331588a88f62ba356c0a2aaa52876a1734170f80b79af7b5b47148d657714b5c074d4d156fd9df0e88138874b9eea2c1dd8cd47c76d92 SHA512 ec477c735b981212b442ec130e6b27eeb461c2ca76da1a67424afcd76c2e5d2f7a4bf3954dc00ac949dda71c3d613565becd9033d9d352663114dad120fd1a97 EBUILD icu-75.1.ebuild 4670 BLAKE2B fdb36ace7b4d804e83b0f48094e443f1da9bf5dbf7099a8aae7827d8d1933c62b8cf74a651c086c9846b161a9c6d32c318b5c87f04b8923807e825043575d07d SHA512 bd23fa9cea9a6746d137e5c4cc7af300f09be4fd089fe40c64b848ec45834aa54ed793809d76a618eb498788d8bcc54a7a9c71b137db1ed01921cb08efe8b95a -EBUILD icu-76.1.ebuild 4511 BLAKE2B fa15ae6ca36c617032ce6066fddc451b14bb80529217047e2b61d730ce58b82197e3311b4574e0960ca6d413da2bce2455c9e176eae6d24f5c02a9e3a53ce9c5 SHA512 f43d0db39c778e60d0364de87663c4b6a5ee1fdbd3646cb26d8377da396ba9c8c1b0dd4d8e7727b83092c34b99aad3d89e1b862b5699cd5a17d0ec4b2e751a0d +EBUILD icu-76.1-r1.ebuild 4706 BLAKE2B b551e2d6c7b75aa442bf6609f036d86a6d13b46cfde530227dd2bb13491e132b142d384d7370a3630698ff591ab34c872be2fd641f1383fda152ce38b7b9b913 SHA512 12ed806b88e03d4f1506c52444795df0ee0f540c13d04a710c615d8d856c13e4ab42cc2cca4a572597e875097b8b548c2893212ffd375fe46f93cc59f0ee39ea MISC metadata.xml 336 BLAKE2B df52385ac9930c85fc8cb8799f5fd083e99bfe1bacd63519001f91b841cacdc50d6b7ed32f3520372cbab48d270bb05fd0896eaec55046ce1eac03af4502365e SHA512 80d8e03229a72e9acd1429f7ed697df59e98899b135bb40367e95d6eed63aa011efd2121601be68e685350b6eadd46e6f39c036f86ff18bc3c85410e88008c7e diff --git a/dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch b/dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch new file mode 100644 index 000000000000..b99557871bc0 --- /dev/null +++ b/dev-libs/icu/files/icu-76.1-undo-pkgconfig-change-for-now.patch @@ -0,0 +1,30 @@ +https://github.com/chimera-linux/cports/blob/master/main/icu/patches/pc.patch + +""" +for some reason enable-shared only emits a requires.private here now and things +underlink icu-uc libs when using other icu libs, even though the deps are correct +this is https://github.com/unicode-org/icu/commit/199bc827021ffdb43b6579d68e5eecf54c7f6f56 , +consumers probably have to be explicit about -i18n -uc use now instead of it +being implicit, but just undo .private for now +""" +--- a/Makefile.in ++++ b/Makefile.in +@@ -290,7 +290,7 @@ + ifeq ($(ENABLE_SHARED),) + @echo "Requires: icu-uc" >> $@ + else +- @echo "Requires.private: icu-uc" >> $@ ++ @echo "Requires: icu-uc" >> $@ + endif + @echo "Libs:" '-L$${libdir}' "${ICULIBS_I18N}" >> $@ + @echo $@ updated. +@@ -302,7 +302,7 @@ + ifeq ($(ENABLE_SHARED),) + @echo "Requires: icu-i18n" >> $@ + else +- @echo "Requires.private: icu-i18n" >> $@ ++ @echo "Requires: icu-i18n" >> $@ + endif + @echo "Libs:" '-L$${libdir}' "${ICULIBS_IO}" >> $@ + @echo $@ updated. + diff --git a/dev-libs/icu/icu-76.1-r1.ebuild b/dev-libs/icu/icu-76.1-r1.ebuild new file mode 100644 index 000000000000..c720bcb4b581 --- /dev/null +++ b/dev-libs/icu/icu-76.1-r1.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Please bump with dev-libs/icu-layoutex + +PYTHON_COMPAT=( python3_{10..13} ) +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/icu.asc +inherit autotools multilib-minimal python-any-r1 toolchain-funcs verify-sig + +MY_PV=${PV/_rc/-rc} +MY_PV=${MY_PV//./_} + +DESCRIPTION="International Components for Unicode" +HOMEPAGE="https://icu.unicode.org/" +SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz" +SRC_URI+=" verify-sig? ( https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz.asc )" +S="${WORKDIR}"/${PN}/source + +if [[ ${PV} != *_rc* ]] ; then + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +fi +LICENSE="BSD" +SLOT="0/${PV%.*}" +IUSE="debug doc examples static-libs test" +RESTRICT="!test? ( test )" + +BDEPEND=" + ${PYTHON_DEPS} + dev-build/autoconf-archive + virtual/pkgconfig + doc? ( app-text/doxygen[dot] ) + verify-sig? ( >=sec-keys/openpgp-keys-icu-20241110 ) +" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/icu-config +) + +PATCHES=( + "${FILESDIR}/${PN}-76.1-remove-bashisms.patch" + "${FILESDIR}/${PN}-64.2-darwin.patch" + "${FILESDIR}/${PN}-68.1-nonunicode.patch" + + # Undo change for now which exposes underlinking in consumers; + # revisit when things are a bit quieter and tinderbox its removal. + "${FILESDIR}/${PN}-76.1-undo-pkgconfig-change-for-now.patch" +) + +src_prepare() { + default + + # TODO: switch uconfig.h hacks to use uconfig_local + # + # Disable renaming as it assumes stable ABI and that consumers + # won't use unofficial APIs. We need this despite the configure argument. + sed -i \ + -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \ + common/unicode/uconfig.h || die + # + # ODR violations, experimental API + sed -i \ + -e "s/# define UCONFIG_NO_MF2 0/#define UCONFIG_NO_MF2 1/" \ + common/unicode/uconfig.h || die + + # Fix linking of icudata + sed -i \ + -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \ + config/mh-linux || die + + # Append doxygen configuration to configure + sed -i \ + -e 's:icudefs.mk:icudefs.mk Doxyfile:' \ + configure.ac || die + + eautoreconf +} + +src_configure() { + MAKEOPTS+=" VERBOSE=1" + + if tc-is-cross-compiler; then + mkdir "${WORKDIR}"/host || die + pushd "${WORKDIR}"/host >/dev/null || die + + CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ + CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ + RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ + "${S}"/configure --disable-renaming --disable-debug \ + --disable-samples --enable-static || die + emake + + popd >/dev/null || die + fi + + multilib-minimal_src_configure +} + +multilib_src_configure() { + local myeconfargs=( + --disable-renaming + --disable-samples + # TODO: Merge with dev-libs/icu-layoutex + # Planned to do this w/ 73.2 but seem to get test failures + # only with --enable-layoutex. + --disable-layoutex + $(use_enable debug) + $(use_enable static-libs static) + $(use_enable test tests) + $(multilib_native_use_enable examples samples) + ) + + #if use test ; then + # myeconfargs+=( + # --enable-extras + # --enable-tools + # ) + #else + # myeconfargs+=( + # $(multilib_native_enable extras) + # $(multilib_native_enable tools) + # ) + #fi + + tc-is-cross-compiler && myeconfargs+=( + --with-cross-build="${WORKDIR}"/host + ) + + # Work around cross-endian testing failures with LTO, bug #757681 + if tc-is-cross-compiler && tc-is-lto ; then + myeconfargs+=( --disable-strict ) + fi + + # ICU tries to use clang by default + tc-export CC CXX + + # Make sure we configure with the same shell as we run icu-config + # with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined + export CONFIG_SHELL="${EPREFIX}/bin/sh" + # Probably have no /bin/sh in prefix-chain + [[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL="${BASH}" + + ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use doc; then + doxygen -u Doxyfile || die + doxygen Doxyfile || die + fi +} + +multilib_src_test() { + # INTLTEST_OPTS: intltest options + # -e: Exhaustive testing + # -l: Reporting of memory leaks + # -v: Increased verbosity + # IOTEST_OPTS: iotest options + # -e: Exhaustive testing + # -v: Increased verbosity + # CINTLTST_OPTS: cintltst options + # -e: Exhaustive testing + # -v: Increased verbosity + emake check +} + +multilib_src_install() { + default + + if multilib_is_native_abi && use doc; then + docinto html + dodoc -r doc/html/* + fi +} + +multilib_src_install_all() { + local HTML_DOCS=( ../readme.html ) + einstalldocs +} diff --git a/dev-libs/icu/icu-76.1.ebuild b/dev-libs/icu/icu-76.1.ebuild deleted file mode 100644 index 077fe8d67d99..000000000000 --- a/dev-libs/icu/icu-76.1.ebuild +++ /dev/null @@ -1,178 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -# Please bump with dev-libs/icu-layoutex - -PYTHON_COMPAT=( python3_{10..13} ) -VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/icu.asc -inherit autotools multilib-minimal python-any-r1 toolchain-funcs verify-sig - -MY_PV=${PV/_rc/-rc} -MY_PV=${MY_PV//./_} - -DESCRIPTION="International Components for Unicode" -HOMEPAGE="https://icu.unicode.org/" -SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz" -SRC_URI+=" verify-sig? ( https://github.com/unicode-org/icu/releases/download/release-${MY_PV/_/-}/icu4c-${MY_PV/-rc/rc}-src.tgz.asc )" -S="${WORKDIR}"/${PN}/source - -if [[ ${PV} != *_rc* ]] ; then - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" -fi -LICENSE="BSD" -SLOT="0/${PV%.*}" -IUSE="debug doc examples static-libs test" -RESTRICT="!test? ( test )" - -BDEPEND=" - ${PYTHON_DEPS} - dev-build/autoconf-archive - virtual/pkgconfig - doc? ( app-text/doxygen[dot] ) - verify-sig? ( >=sec-keys/openpgp-keys-icu-20241110 ) -" - -MULTILIB_CHOST_TOOLS=( - /usr/bin/icu-config -) - -PATCHES=( - "${FILESDIR}/${PN}-76.1-remove-bashisms.patch" - "${FILESDIR}/${PN}-64.2-darwin.patch" - "${FILESDIR}/${PN}-68.1-nonunicode.patch" -) - -src_prepare() { - default - - # TODO: switch uconfig.h hacks to use uconfig_local - # - # Disable renaming as it assumes stable ABI and that consumers - # won't use unofficial APIs. We need this despite the configure argument. - sed -i \ - -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 1/" \ - common/unicode/uconfig.h || die - # - # ODR violations, experimental API - sed -i \ - -e "s/# define UCONFIG_NO_MF2 0/#define UCONFIG_NO_MF2 1/" \ - common/unicode/uconfig.h || die - - # Fix linking of icudata - sed -i \ - -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" \ - config/mh-linux || die - - # Append doxygen configuration to configure - sed -i \ - -e 's:icudefs.mk:icudefs.mk Doxyfile:' \ - configure.ac || die - - eautoreconf -} - -src_configure() { - MAKEOPTS+=" VERBOSE=1" - - if tc-is-cross-compiler; then - mkdir "${WORKDIR}"/host || die - pushd "${WORKDIR}"/host >/dev/null || die - - CFLAGS="" CXXFLAGS="" ASFLAGS="" LDFLAGS="" \ - CC="$(tc-getBUILD_CC)" CXX="$(tc-getBUILD_CXX)" AR="$(tc-getBUILD_AR)" \ - RANLIB="$(tc-getBUILD_RANLIB)" LD="$(tc-getBUILD_LD)" \ - "${S}"/configure --disable-renaming --disable-debug \ - --disable-samples --enable-static || die - emake - - popd >/dev/null || die - fi - - multilib-minimal_src_configure -} - -multilib_src_configure() { - local myeconfargs=( - --disable-renaming - --disable-samples - # TODO: Merge with dev-libs/icu-layoutex - # Planned to do this w/ 73.2 but seem to get test failures - # only with --enable-layoutex. - --disable-layoutex - $(use_enable debug) - $(use_enable static-libs static) - $(use_enable test tests) - $(multilib_native_use_enable examples samples) - ) - - #if use test ; then - # myeconfargs+=( - # --enable-extras - # --enable-tools - # ) - #else - # myeconfargs+=( - # $(multilib_native_enable extras) - # $(multilib_native_enable tools) - # ) - #fi - - tc-is-cross-compiler && myeconfargs+=( - --with-cross-build="${WORKDIR}"/host - ) - - # Work around cross-endian testing failures with LTO, bug #757681 - if tc-is-cross-compiler && tc-is-lto ; then - myeconfargs+=( --disable-strict ) - fi - - # ICU tries to use clang by default - tc-export CC CXX - - # Make sure we configure with the same shell as we run icu-config - # with, or ECHO_N, ECHO_T and ECHO_C will be wrongly defined - export CONFIG_SHELL="${EPREFIX}/bin/sh" - # Probably have no /bin/sh in prefix-chain - [[ -x ${CONFIG_SHELL} ]] || CONFIG_SHELL="${BASH}" - - ECONF_SOURCE="${S}" econf "${myeconfargs[@]}" -} - -multilib_src_compile() { - default - - if multilib_is_native_abi && use doc; then - doxygen -u Doxyfile || die - doxygen Doxyfile || die - fi -} - -multilib_src_test() { - # INTLTEST_OPTS: intltest options - # -e: Exhaustive testing - # -l: Reporting of memory leaks - # -v: Increased verbosity - # IOTEST_OPTS: iotest options - # -e: Exhaustive testing - # -v: Increased verbosity - # CINTLTST_OPTS: cintltst options - # -e: Exhaustive testing - # -v: Increased verbosity - emake check -} - -multilib_src_install() { - default - - if multilib_is_native_abi && use doc; then - docinto html - dodoc -r doc/html/* - fi -} - -multilib_src_install_all() { - local HTML_DOCS=( ../readme.html ) - einstalldocs -} -- cgit v1.2.3