diff options
author | Paweł Hajdan <phajdan.jr@gentoo.org> | 2011-10-12 22:04:09 +0000 |
---|---|---|
committer | Paweł Hajdan <phajdan.jr@gentoo.org> | 2011-10-12 22:04:09 +0000 |
commit | 4aef621a5c66fd568f58e938b1005928bd785aa4 (patch) | |
tree | a380e9fbd4ec080663cab11de916cc498aba8668 | |
parent | Removed 4.1.4 version (bug #386741) (diff) | |
download | historical-4aef621a5c66fd568f58e938b1005928bd785aa4.tar.gz historical-4aef621a5c66fd568f58e938b1005928bd785aa4.tar.bz2 historical-4aef621a5c66fd568f58e938b1005928bd785aa4.zip |
Backport an upstream patch to fix Gentoo bug #380827 by Piotr Mitas.
Package-Manager: portage-2.1.10.11/cvs/Linux i686
-rw-r--r-- | dev-libs/icu/ChangeLog | 8 | ||||
-rw-r--r-- | dev-libs/icu/Manifest | 16 | ||||
-rw-r--r-- | dev-libs/icu/files/icu-4.8.1-fix_nan.patch | 68 | ||||
-rw-r--r-- | dev-libs/icu/icu-4.8.1-r2.ebuild | 91 |
4 files changed, 174 insertions, 9 deletions
diff --git a/dev-libs/icu/ChangeLog b/dev-libs/icu/ChangeLog index e60a53b7d7ba..0fa5897b2df3 100644 --- a/dev-libs/icu/ChangeLog +++ b/dev-libs/icu/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-libs/icu # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/icu/ChangeLog,v 1.159 2011/09/05 16:50:52 scarabeus Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/icu/ChangeLog,v 1.160 2011/10/12 22:04:09 phajdan.jr Exp $ + +*icu-4.8.1-r2 (12 Oct 2011) + + 12 Oct 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> +icu-4.8.1-r2.ebuild, + +files/icu-4.8.1-fix_nan.patch: + Backport an upstream patch to fix Gentoo bug #380827 by Piotr Mitas. *icu-4.8.1-r1 (05 Sep 2011) diff --git a/dev-libs/icu/Manifest b/dev-libs/icu/Manifest index 228e33e896ed..e4ad1348aef1 100644 --- a/dev-libs/icu/Manifest +++ b/dev-libs/icu/Manifest @@ -1,9 +1,10 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 +Hash: SHA512 AUX icu-4.6-pkgdata.patch 4214 RMD160 0cdc3d409dcdedf7ac62cc0a29142d75dbb6aeee SHA1 c0bf9c4ca0767887ef4839e5f7ae31636d01d34a SHA256 643cfce19b2091fee859462a86dac7b6119063ee67abc1132d4700c44a79c271 AUX icu-4.6.1-parallel_installation.patch 1329 RMD160 48b673c8e56d046880340eca0c05cb0e52efde2a SHA1 2c00430f7ac4351a30ef048cf299288ab3735a33 SHA256 03ce917d8211af55ba2833039c90cf957696f6579e9b067ee26aa246363eaac7 AUX icu-4.8.1-fix_binformat_fonts.patch 673 RMD160 b13e5d06ecb2c8b331addc7703f4d4278d5977f1 SHA1 b38a0d0f5b773069b70cae572fa2ffc5b4629547 SHA256 f298ebd4c9334f4855fecec2cb9c2d02a12653ac98b2f4bb31df3030c5b2acf7 +AUX icu-4.8.1-fix_nan.patch 2246 RMD160 289f11b2a260de557c30eb8527c8a0886cfe6ecb SHA1 5964b99936cb2c0c9af2234c02502799d10eb367 SHA256 6e2375c96cfdf87028e6c3d3235ab7bfc6258cd0a505a75f3518611b1caba8e4 DIST icu4c-4_6-docs.zip 4884171 RMD160 ac5bc160bdb0f183ab0c5aa31324fa197b1a43f5 SHA1 c56518ffededdebea15525e1e25499e3e58aaec3 SHA256 863f88a12d63e1cfa449ff4010404610e2c7be4f22f98ac412d15c9e66d8a6d8 DIST icu4c-4_6-src.tgz 15543712 RMD160 1cb84839384af5cba75bda6358c8bdaa82adaa9c SHA1 efc68a73a424d5822565feaf4468336f77294e8e SHA256 b5a1ada8127d8b79187f887903e34a87dbecea2659a139993bf81ad7309ddffc DIST icu4c-4_8-docs.zip 10750270 RMD160 74149a52b21cdea7b4779bb1585888c82ac4b708 SHA1 c10d4dc711438763631564ace8200e3cef66f190 SHA256 dff1e6d5e674985e89b30a336d1d142cc5cf8e6c70acf398db50223cb837f0e4 @@ -12,15 +13,14 @@ DIST icu4c-4_8_1-docs.zip 5364512 RMD160 bc1794f99be91b7646f13ac06a96b912a1b388f DIST icu4c-4_8_1-src.tgz 18677882 RMD160 2196dffbc2d074cf56f5dcbb4e2b802c950cfcf0 SHA1 f0252b2b7ad1ef861ac39b177b7a6fcb6c94eb45 SHA256 19a4cd6e94187a03bca7514d694c5a5a666567e2884ce008ca9f14fa400af88f EBUILD icu-4.6.ebuild 2298 RMD160 6d1c590d0ea65070ad719210284c2d8587523868 SHA1 adb4f653ccbe95464797d7770ef6b62c3f634517 SHA256 e8d571cbfb718379372612180632df65979bb211c6526d1014c28e599d4f8b59 EBUILD icu-4.8.1-r1.ebuild 2364 RMD160 70f23a6b8382c082205f00d05b8ac1980f55aaff SHA1 6e6077f373dfe281bd26b23d79da26fe7813db96 SHA256 6a82e161ff2117d87fc649d1f3c818c9c9063caecca9a9e6ef528ea6d5a56dbf +EBUILD icu-4.8.1-r2.ebuild 2411 RMD160 f0eebfcf2eade1641145d29a72582890065babdd SHA1 1b787679107886a781114df5c4a51cd5be00d3db SHA256 8b22d2fec5e21db1f8de69956a033e622cf895e8c6d82d470d98951744311eb6 EBUILD icu-4.8.ebuild 2283 RMD160 6ce2edd45c7147e53ff6f91a90846a8f6547de6a SHA1 4ce52186d0e8cfa0c867508300218abdb7bd59bd SHA256 bec58ae299472cdbb5a89d5a416013e21598cf66ae586d78f71a073684331155 -MISC ChangeLog 19731 RMD160 bc3b914fec8cfd25401ef35c92908468ed6ea90f SHA1 57b026b18e779fb637e780a97738137c752a3b81 SHA256 d02a3719fd88e4cfa8c0c18caafb380ace1ab3a655a003ae864b3ff0c9d465fd +MISC ChangeLog 19944 RMD160 509087c0901dbf046afaf16c69afb894a1e11fc7 SHA1 82dd5d61eb7a8c195833673b141b9a0dcea41b32 SHA256 6aa68db312726597a105b565a1d66f619bd96620826019389415af3783872368 MISC metadata.xml 416 RMD160 a0cb34c06171b26aa6c8327bfbffbded6329bd4c SHA1 6527f1a54252da5ce94a59da162831c360af0287 SHA256 327e9387b2e51e95fb33707787c6a4e3bf2e2fcea2924bd241f4b257951c4c9d -----BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.18 (GNU/Linux) +Version: GnuPG v2.0.17 (GNU/Linux) -iJwEAQEIAAYFAk59C6oACgkQfXuS5UK5QB3XswP/Yp3wYkLqcOjD4eDQGcYT3iiw -rvI0lj8rZD1t3bSqd3P5jr+U6wbIezQPZAIB3Xr51Jaesz+ljPJrcd9Ybijeshsu -ENkPoIEkRPd7RI/s3AkYE96Eupz49Lv0HQrdYDoHPANaoivpbYiVnYUtDHPh2A+d -K7HM5MX3vzmuGSAkUQ4= -=r/XT +iEYEAREKAAYFAk6WDuMACgkQuUQtlDBCeQJexwCeJFAgOC7Pv8Og2zSobIfRK49E +yNYAn3v+1IPpicjUm9bx0IBV3Qr3Iosl +=j9tr -----END PGP SIGNATURE----- diff --git a/dev-libs/icu/files/icu-4.8.1-fix_nan.patch b/dev-libs/icu/files/icu-4.8.1-fix_nan.patch new file mode 100644 index 000000000000..971d66d8bc30 --- /dev/null +++ b/dev-libs/icu/files/icu-4.8.1-fix_nan.patch @@ -0,0 +1,68 @@ +https://bugs.gentoo.org/show_bug.cgi?id=380827
+http://bugs.icu-project.org/trac/ticket/8561
+http://bugs.icu-project.org/trac/changeset/30689
+http://code.google.com/p/chromium/issues/detail?id=92847
+
+--- source/i18n/digitlst.cpp.orig 2011-07-19 23:16:00.000000000 +0200 ++++ source/i18n/digitlst.cpp 2011-10-12 23:47:08.000000000 +0200 +@@ -60,6 +60,18 @@ + + U_NAMESPACE_BEGIN + ++static void
++loadDecimalChar() {
++ if (gDecimal == 0) {
++ char rep[MAX_DIGITS];
++ // For machines that decide to change the decimal on you,
++ // and try to be too smart with localization.
++ // This normally should be just a '.'.
++ sprintf(rep, "%+1.1f", 1.0);
++ gDecimal = rep[2];
++ }
++}
++
+ // ------------------------------------- + // default constructor + +@@ -408,15 +420,6 @@ + } + DigitList *nonConstThis = const_cast<DigitList *>(this); + +- if (gDecimal == 0) { +- char rep[MAX_DIGITS]; +- // For machines that decide to change the decimal on you, +- // and try to be too smart with localization. +- // This normally should be just a '.'. +- sprintf(rep, "%+1.1f", 1.0); +- gDecimal = rep[2]; +- } +- + if (isZero()) { + nonConstThis->fDouble = 0.0; + if (decNumberIsNegative(fDecNumber)) { +@@ -451,6 +454,7 @@ + } + U_ASSERT(uprv_strlen(&s[0]) < MAX_DBL_DIGITS+18); + ++ loadDecimalChar();
+ if (gDecimal != '.') { + char *decimalPt = strchr(s, '.'); + if (decimalPt != NULL) { +@@ -741,6 +745,17 @@ + sprintf(rep, "%+1.*e", MAX_DBL_DIGITS - 1, source); + U_ASSERT(uprv_strlen(rep) < sizeof(rep)); + ++ // uprv_decNumberFromString() will parse the string expecting '.' as a
++ // decimal separator, however sprintf() can use ',' in certain locales.
++ // Overwrite a different decimal separator with '.' here before proceeding.
++ loadDecimalChar();
++ if (gDecimal != '.') {
++ char *decimalPt = strchr(rep, gDecimal);
++ if (decimalPt != NULL) {
++ *decimalPt = '.';
++ }
++ }
++
+ // Create a decNumber from the string. + uprv_decNumberFromString(fDecNumber, rep, &fContext); + uprv_decNumberTrim(fDecNumber); diff --git a/dev-libs/icu/icu-4.8.1-r2.ebuild b/dev-libs/icu/icu-4.8.1-r2.ebuild new file mode 100644 index 000000000000..5cbd8276bad2 --- /dev/null +++ b/dev-libs/icu/icu-4.8.1-r2.ebuild @@ -0,0 +1,91 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/icu/icu-4.8.1-r2.ebuild,v 1.1 2011/10/12 22:04:09 phajdan.jr Exp $ + +EAPI="3" + +inherit versionator + +MAJOR_VERSION="$(get_version_component_range 1)" +MINOR_VERSION="$(get_version_component_range 2)" +if [[ "${PV}" =~ ^[[:digit:]]+\.[[:digit:]]+(_rc[[:digit:]]*)?$ ]]; then + MICRO_VERSION="0" +else + MICRO_VERSION="$(get_version_component_range 3)" +fi + +DESCRIPTION="International Components for Unicode" +HOMEPAGE="http://www.icu-project.org/" + +BASE_URI="http://download.icu-project.org/files/icu4c/${PV/_/}" +SRC_ARCHIVE="icu4c-${PV//./_}-src.tgz" +DOCS_ARCHIVE="icu4c-${PV//./_}-docs.zip" + +SRC_URI="${BASE_URI}/${SRC_ARCHIVE} + doc? ( ${BASE_URI}/${DOCS_ARCHIVE} )" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +IUSE="debug doc examples static-libs" + +DEPEND="doc? ( app-arch/unzip )" +RDEPEND="" + +S="${WORKDIR}/${PN}/source" + +QA_DT_NEEDED="/usr/lib.*/libicudata\.so\.${MAJOR_VERSION}${MINOR_VERSION}\.${MICRO_VERSION}" + +src_unpack() { + unpack "${SRC_ARCHIVE}" + if use doc; then + mkdir docs + pushd docs > /dev/null + unpack "${DOCS_ARCHIVE}" + popd > /dev/null + fi +} + +src_prepare() { + # Do not hardcode flags into icu-config. + # https://ssl.icu-project.org/trac/ticket/6102 + local variable + for variable in CFLAGS CPPFLAGS CXXFLAGS FFLAGS LDFLAGS; do + sed -i -e "/^${variable} =.*/s:@${variable}@::" config/Makefile.inc.in || die "sed failed" + done + + epatch "${FILESDIR}/icu-4.8.1-fix_binformat_fonts.patch" + epatch "${FILESDIR}/icu-4.8.1-fix_nan.patch" +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable examples samples) \ + $(use_enable static-libs static) +} + +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 check || die "emake check failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "emake install failed" + + dohtml ../readme.html + dodoc ../unicode-license.txt + if use doc; then + insinto /usr/share/doc/${PF}/html/api + doins -r "${WORKDIR}/docs/"* || die "doins failed" + fi +} |