diff options
Diffstat (limited to 'dev-libs/icu')
-rw-r--r-- | dev-libs/icu/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/icu/icu-69.1.ebuild | 147 |
2 files changed, 149 insertions, 0 deletions
diff --git a/dev-libs/icu/Manifest b/dev-libs/icu/Manifest index 8f1c8ef1696b..3773fba1f703 100644 --- a/dev-libs/icu/Manifest +++ b/dev-libs/icu/Manifest @@ -2,5 +2,7 @@ AUX icu-64.2-darwin.patch 2136 BLAKE2B 3c54a15e351a97f7c423128e493ed158e56191738 AUX icu-65.1-remove-bashisms.patch 4963 BLAKE2B fb781741a7a908638876729d573a73e42b7b3f0f3e692b54799fed0dac006ecb731583d90d849ea06be47259a0a236933fa7a78a96b3a8107ee85f916dc2000a SHA512 67e60068c356ca8d93b137eadeef2562ff7d8f38153babc97edd92a2c38d7113396d63d4a09364dacefc612b4b3ea28872a4f767c4f38d3e725943b32f98c5bc AUX icu-68.1-nonunicode.patch 477 BLAKE2B 5e74142e5adbf8f3fffa23c8fb08657b5b75d12941db39980abea1fff2328c112196b62cc89d521e8cc2a1f7c11b58816401a838bb8fcbe50036e80d3d9e4343 SHA512 5d605cc1cbbd16221603a9509d07713d64201f4fc1a372d29c18f8d49a4618fcd7e0a0bb0a459024a288e5c2c339a9aa0849abe88691ee2cdb24b92c9b61e290 DIST icu4c-68_2-src.tgz 24737478 BLAKE2B ff54f903aed1a16928656e5f4fee79e4301038a70ba1d389fb2a2cc7c7dc4c76bc2430c810cea484c0ef69fbafc5728e71776c39874a5395c9dd06d573e8ea90 SHA512 24f3b7981667b37df58118f56ae76a09b719358c1efa8d6f044d28ef8df1c722a894957acadfb3c37aee39ac845893924fc3370d6bbe09875aec8d937059f84b +DIST icu4c-69_1-src.tgz 24814903 BLAKE2B ef95a04e238f0de96e969d580ef64000ab04a4a0003e8f31fd02baab35387d5ab2c4d792ae0d14f3de8e48aa28570237ccd67fb32e03b13d1572e4a995b1de76 SHA512 d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7 EBUILD icu-68.2.ebuild 3513 BLAKE2B 96030ab9f3819d5c9d60adc9cb044150abf0adb958bef0925dae595ea4139bc80fc02d1743df56feb6b9a4ee8235d62a24280457710f6a51d720746535a50b1a SHA512 f1aba2f2669183077e5d46356ffaa570b7dcfab7531e0e4c33b6b6a4d1d8b19ef63422396b9dd8be03488089faafd4e66d61e60c763330f94dc03b9d83d55e63 +EBUILD icu-69.1.ebuild 3521 BLAKE2B 78e7c37da536a36de76cd071139c037935c959f5c15448107b2508e6e9ec325f98fc194d5c08dcd101e37bedeb188ad823ee44475a6dba12fe41df3137f218b7 SHA512 d9e95da2917901daa3c3189d2055de4a96794ff990e557bf7ad58b9bbd653e47faff354b4e9c63effe846be2c6f1465792caefebefb2366cb7b94c20793438b4 MISC metadata.xml 255 BLAKE2B 9b8486730bea2158e8be5cbbe0552c5460d1b18e2236a68e3f11d85ce4eeb96eb0e746f44a10cb7cdcf1bf498190a512ef42f47852c6843b9a3c937ceabc338d SHA512 ac646e8ac676faf0aac283e4be31c5f2b29e98ccf07327073ed05e688ce696caf639bdfea63e4aed141a90e84c0a86892bc717a52b95cdf1739aaa15240013c3 diff --git a/dev-libs/icu/icu-69.1.ebuild b/dev-libs/icu/icu-69.1.ebuild new file mode 100644 index 000000000000..c460afee8489 --- /dev/null +++ b/dev-libs/icu/icu-69.1.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) +inherit autotools flag-o-matic multilib-minimal python-any-r1 toolchain-funcs + +DESCRIPTION="International Components for Unicode" +HOMEPAGE="http://site.icu-project.org/" +SRC_URI="https://github.com/unicode-org/icu/releases/download/release-${PV//./-}/icu4c-${PV//./_}-src.tgz" + +LICENSE="BSD" + +SLOT="0/${PV}" + +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" +IUSE="debug doc examples static-libs" + +BDEPEND="${PYTHON_DEPS} + virtual/pkgconfig + doc? ( app-doc/doxygen[dot] ) +" + +S="${WORKDIR}/${PN}/source" + +MULTILIB_CHOST_TOOLS=( + /usr/bin/icu-config +) + +PATCHES=( + "${FILESDIR}/${PN}-65.1-remove-bashisms.patch" + "${FILESDIR}/${PN}-64.2-darwin.patch" + "${FILESDIR}/${PN}-68.1-nonunicode.patch" +) + +src_prepare() { + default + + local variable + + # Disable renaming as it is stupid thing to do + sed -i \ + -e "s/#define U_DISABLE_RENAMING 0/#define U_DISABLE_RENAMING 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() { + append-cxxflags -std=c++14 + + 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 + --disable-layoutex + $(use_enable debug) + $(use_enable static-libs static) + $(multilib_native_use_enable examples samples) + ) + + tc-is-cross-compiler && myeconfargs+=( + --with-cross-build="${WORKDIR}"/host + ) + + # work around cross-endian testing failures with LTO #757681 + if tc-is-cross-compiler && is-flagq '-flto*' ; 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 -j1 VERBOSE="1" check +} + +multilib_src_install() { + default + + if multilib_is_native_abi && use doc; then + docinto html + dodoc -r doc/html/* + fi +} + +multilib_src_install_all() { + einstalldocs + docinto html + dodoc ../readme.html +} |