diff options
author | ryoon <ryoon@pkgsrc.org> | 2015-10-09 23:15:34 +0000 |
---|---|---|
committer | ryoon <ryoon@pkgsrc.org> | 2015-10-09 23:15:34 +0000 |
commit | 10fb3f0475332a795e2e3e6f06a06c6c333a4859 (patch) | |
tree | 3f4cd3708730e54afd3d95078b9f69f53d12eb72 /textproc/icu | |
parent | a3e5c167091e5d8115f75855ec2bc8038b38bfee (diff) | |
download | pkgsrc-10fb3f0475332a795e2e3e6f06a06c6c333a4859.tar.gz |
Update to 56.1
Changelog:
Release Overview
The features for this release include support of CLDR 28 and Unicode 8.0.
For more details, including migration issues, see below.
Common Changes
CLDR 28: For details of the many changes in CLDR, see CLDR 28.
Unicode data updated to Unicode 8.0: 41 new emoji characters, 5,771 new ideographs for Chinese/Japanese/Korean, 6 new scripts, improved character properties data, etc.
ICU data size reduced by about 7.2% (1.8MB) via sharing string values across resource bundles. [#11537]
DateIntervalFormat now handles intervals with seconds, and sets FieldPosition more consistently. [#11706, #11726]
DateFormat::createInstanceForSkeleton() caches DateFormat patterns rather than DateTimePatternGenerator instances, for better performance (for cache hits) and lower heap memory consumption. [#11780]
StringSearch (based on collation) defaults to matches on normalization boundaries rather than grapheme cluster boundaries, which yields more matches on Indic text. [#11750]
RuleBasedNumberFormat (spelled-out numbers) now handles rounding (Java only), infinity, NaN. [#11653, #11760, #8223]
Most of the old Normalizer/unorm.h had been replaced by (and reimplemented via) Normalizer2, and is now deprecated. [#7303]
COLON has been withdrawn as a date pattern character corresponding to the date field [UDAT_]TIME_SEPARATOR_FIELD; there is currently no pattern character corresponding to that field. [#11773]
Support for locale key "cf" to specify currency format style, and interaction with NumberFormat values for UNumberFormatStyle: [#11787]
For NumberFormat style UNUM_CURRENCY / CURRENCYSTYLE, the default is "standard" currency style (typically using minus sign for negative numbers), but the new locale key "cf" may be used with values "standard" or "account" to specify currency format style ("account" indicates accounting style, often using parentheses for negative numbers).
For other NumberFormat styles, the locale key "cf" is ignored (they override the locale preference):
UNUM_CURRENCY_ISO / ISOCURRENCYSTYLE
UNUM_CURRENCY_PLURAL / PLURALCURRENCYSTYLE
UNUM_CURRENCY_ACCOUNTING / ACCOUNTINGCURRENCYSTYLE
UNUM_CASH_CURRENCY / CASHCURRENCYSTYLE
A new NumberFormat style is availble to explicitly specify standard style, ignoring the the locale key "cf"
UNUM_CURRENCY_STANDARD / STANDARDCURRENCYSTYLE
ICU4C Specific Changes
C API support for CompactDecimalFormat via UNumberFormatStyle additions: UNUM_DECIMAL_COMPACT_SHORT, UNUM_DECIMAL_COMPACT_LONG [#11693]
Larger UnicodeString object stores more characters inside the object without heap allocation; the UnicodeString object size is now build-time-configurable. [#11551]
On 64-bit machines, increase from object size 40 bytes with 15 internal UChars to a new default of 64 bytes with 27 UChars.
Some C++ classes now have swap() and moveFrom() methods, and support C++11 move semantics on compilers that support them. [#10086]
UnicodeString, LocalPointer, LocalArray
DecimalFormat code refactored to fix bugs, improve maintainability, and improve performance. [#10458]
New FilteredBreakIterator suppresses certain segment boundaries. For example, it can suppress the sentence boundary in the middle of "Mr. Smith". [#11248]
The internal, shared cache has been changed from unbounded to bounded. [#11767]
For [U]BreakIterator with type UBRK_SENTENCE, the locale key "ss" can now be used with value "standard" to specify that standard sentence break suppression data should be used, or with value "none" to indicate that no break suppression data should be used (the default). [#11770]
Collator: first-time startup time improved 20% due to precalculated unsafe-backward table [#11886]
A number of memory leaks and buffer overruns have been fixed based on static code analysis, mostly in data build tools
Diffstat (limited to 'textproc/icu')
-rw-r--r-- | textproc/icu/Makefile | 5 | ||||
-rw-r--r-- | textproc/icu/PLIST | 20 | ||||
-rw-r--r-- | textproc/icu/distinfo | 17 | ||||
-rw-r--r-- | textproc/icu/patches/patch-common_putil.cpp | 6 | ||||
-rw-r--r-- | textproc/icu/patches/patch-common_ucnv__io.cpp | 15 | ||||
-rw-r--r-- | textproc/icu/patches/patch-common_unicode_platform.h | 14 | ||||
-rw-r--r-- | textproc/icu/patches/patch-configure | 18 | ||||
-rw-r--r-- | textproc/icu/patches/patch-configure.ac | 16 |
8 files changed, 47 insertions, 64 deletions
diff --git a/textproc/icu/Makefile b/textproc/icu/Makefile index 901db617d07..8f873f1ba50 100644 --- a/textproc/icu/Makefile +++ b/textproc/icu/Makefile @@ -1,7 +1,6 @@ -# $NetBSD: Makefile,v 1.100 2015/09/29 02:15:54 tnn Exp $ +# $NetBSD: Makefile,v 1.101 2015/10/09 23:15:34 ryoon Exp $ -DISTNAME= icu4c-55_1-src -PKGREVISION= 1 +DISTNAME= icu4c-56_1-src PKGNAME= ${DISTNAME:S/4c//:S/-src//:S/_/./g} CATEGORIES= textproc MASTER_SITES= http://download.icu-project.org/files/icu4c/${PKGVERSION_NOREV}/ diff --git a/textproc/icu/PLIST b/textproc/icu/PLIST index 18dd2bff3be..75f6dc0b4fc 100644 --- a/textproc/icu/PLIST +++ b/textproc/icu/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.33 2015/04/06 07:22:54 adam Exp $ +@comment $NetBSD: PLIST,v 1.34 2015/10/09 23:15:34 ryoon Exp $ bin/derb bin/genbrk bin/gencfu @@ -201,35 +201,35 @@ lib/icu/current lib/icu/pkgdata.inc lib/libicudata.a lib/libicudata.so -lib/libicudata.so.55 +lib/libicudata.so.56 lib/libicudata.so.${PKGVERSION} lib/libicui18n.a lib/libicui18n.so -lib/libicui18n.so.55 +lib/libicui18n.so.56 lib/libicui18n.so.${PKGVERSION} lib/libicuio.a lib/libicuio.so -lib/libicuio.so.55 +lib/libicuio.so.56 lib/libicuio.so.${PKGVERSION} lib/libicule.a lib/libicule.so -lib/libicule.so.55 +lib/libicule.so.56 lib/libicule.so.${PKGVERSION} lib/libiculx.a lib/libiculx.so -lib/libiculx.so.55 +lib/libiculx.so.56 lib/libiculx.so.${PKGVERSION} lib/libicutest.a lib/libicutest.so -lib/libicutest.so.55 +lib/libicutest.so.56 lib/libicutest.so.${PKGVERSION} lib/libicutu.a lib/libicutu.so -lib/libicutu.so.55 +lib/libicutu.so.56 lib/libicutu.so.${PKGVERSION} lib/libicuuc.a lib/libicuuc.so -lib/libicuuc.so.55 +lib/libicuuc.so.56 lib/libicuuc.so.${PKGVERSION} lib/pkgconfig/icu-i18n.pc lib/pkgconfig/icu-io.pc @@ -255,7 +255,7 @@ sbin/gencmn sbin/gennorm2 sbin/gensprep sbin/icupkg -share/icu/${PKGVERSION}/config/${MH_NAME} +share/icu/${PKGVERSION}/config/mh-bsd-gcc share/icu/${PKGVERSION}/install-sh share/icu/${PKGVERSION}/license.html share/icu/${PKGVERSION}/mkinstalldirs diff --git a/textproc/icu/distinfo b/textproc/icu/distinfo index 58fb3ef1a6f..5ed369b631a 100644 --- a/textproc/icu/distinfo +++ b/textproc/icu/distinfo @@ -1,22 +1,21 @@ -$NetBSD: distinfo,v 1.55 2015/09/29 02:15:54 tnn Exp $ +$NetBSD: distinfo,v 1.56 2015/10/09 23:15:34 ryoon Exp $ -SHA1 (icu4c-55_1-src.tgz) = 3bb301c11be0e239c653e8aa2925c53f6f4dc88d -RMD160 (icu4c-55_1-src.tgz) = 94dcaaac13b41de3588b01f39febe1b1cbd5765d -Size (icu4c-55_1-src.tgz) = 25600847 bytes +SHA1 (icu4c-56_1-src.tgz) = e4494ce9425c469f138bb6e1ae06faf7fa0cf3de +RMD160 (icu4c-56_1-src.tgz) = 1ef7f377283a379654ebb051b7439c2cc6151da0 +Size (icu4c-56_1-src.tgz) = 25721871 bytes SHA1 (patch-aa) = fd5c513e75ca17a46be4ed010455bda63731afff SHA1 (patch-ab) = 32f0e4c241535e37e4cad9b871ed3d36b4184199 SHA1 (patch-ac) = e7cee161315321d2580074054d87714b55319886 SHA1 (patch-acinclude.m4) = f7de1a16aad0ca77c4bbc457ba76b6171199ce09 SHA1 (patch-ad) = c2a9469bf896b5f0702d5795c3b1c2b394893663 SHA1 (patch-af) = 07421b669780e5eea5dc455cc39ca9737c0f728a -SHA1 (patch-common_putil.cpp) = 3d35bdea709ded1ae5926729fb23995ca8734687 +SHA1 (patch-common_putil.cpp) = 3058a542bcb2fdfa34b36acf389570990acd0da5 SHA1 (patch-common_putilimp.h) = a68faa97c2bffeecaca1586e26f5bbe48e71b262 -SHA1 (patch-common_ucnv__io.cpp) = d521ac029edece65de06d5e1e8a8814269b0489e SHA1 (patch-common_umutex.h) = 096d3e15ef7b84533456af4570ed70747a4ef70c -SHA1 (patch-common_unicode_platform.h) = 82786dff790782eb07cdc527061de33e771ec63c +SHA1 (patch-common_unicode_platform.h) = 8b7b8bcf6f5185225a1ca516ac212a495f7b47e8 SHA1 (patch-common_uposixdefs.h) = 02dedd10282961dec66673069796122b447dac33 SHA1 (patch-config_icu-config-bottom) = 168b89ee9180d4ae545125866ee91eb004010501 SHA1 (patch-config_mh-scoosr5) = 47703dcc184f58c0382da3225f849424ab74d472 -SHA1 (patch-configure) = 430389c77d35b93f1831e0444598eb86f61e315b -SHA1 (patch-configure.ac) = babf9edd0bef353e9fb8c47917658c0a65af5a36 +SHA1 (patch-configure) = 429c0b3eb3f7d0a8cf3d01a9bc359132eebe8cf4 +SHA1 (patch-configure.ac) = b0291cf02351cbad9b0c7340baea9eb81cabb158 SHA1 (patch-tools-toolutil-pkg_genc.c) = b5a9eb679908d9f579ff095c5389ec1aa8df8e1e diff --git a/textproc/icu/patches/patch-common_putil.cpp b/textproc/icu/patches/patch-common_putil.cpp index 8771b608edc..ee65d796fe1 100644 --- a/textproc/icu/patches/patch-common_putil.cpp +++ b/textproc/icu/patches/patch-common_putil.cpp @@ -1,10 +1,10 @@ -$NetBSD: patch-common_putil.cpp,v 1.1 2014/10/26 19:46:48 bsiegert Exp $ +$NetBSD: patch-common_putil.cpp,v 1.2 2015/10/09 23:15:34 ryoon Exp $ ---- common/putil.cpp.orig 2014-10-25 17:54:47.000000000 +0000 +--- common/putil.cpp.orig 2015-10-08 03:53:44.000000000 +0000 +++ common/putil.cpp @@ -117,6 +117,14 @@ #endif - + /* + * Mac OS X 10.4 doesn't use its localtime_r() declaration in <time.h> if either _ANSI_SOURCE or _POSIX_C_SOURCE is #defined. + */ diff --git a/textproc/icu/patches/patch-common_ucnv__io.cpp b/textproc/icu/patches/patch-common_ucnv__io.cpp deleted file mode 100644 index 933d782a170..00000000000 --- a/textproc/icu/patches/patch-common_ucnv__io.cpp +++ /dev/null @@ -1,15 +0,0 @@ -$NetBSD: patch-common_ucnv__io.cpp,v 1.1 2015/09/29 02:15:54 tnn Exp $ - -Debian CVE-2015-1270.patch - ---- common/ucnv_io.cpp.orig 2015-03-27 21:10:42.000000000 +0000 -+++ common/ucnv_io.cpp -@@ -744,7 +744,7 @@ ucnv_io_getConverterName(const char *ali - * the name begins with 'x-'. If it does, strip it off and try - * again. This behaviour is similar to how ICU4J does it. - */ -- if (aliasTmp[0] == 'x' || aliasTmp[1] == '-') { -+ if (aliasTmp[0] == 'x' && aliasTmp[1] == '-') { - aliasTmp = aliasTmp+2; - } else { - break; diff --git a/textproc/icu/patches/patch-common_unicode_platform.h b/textproc/icu/patches/patch-common_unicode_platform.h index 32377d836ee..d584c3724c4 100644 --- a/textproc/icu/patches/patch-common_unicode_platform.h +++ b/textproc/icu/patches/patch-common_unicode_platform.h @@ -1,17 +1,17 @@ -$NetBSD: patch-common_unicode_platform.h,v 1.6 2013/12/03 21:16:06 bsiegert Exp $ +$NetBSD: patch-common_unicode_platform.h,v 1.7 2015/10/09 23:15:34 ryoon Exp $ ---- common/unicode/platform.h.orig 2013-10-04 20:49:10.000000000 +0000 +--- common/unicode/platform.h.orig 2015-10-08 03:53:34.000000000 +0000 +++ common/unicode/platform.h -@@ -151,7 +151,7 @@ +@@ -159,7 +159,7 @@ # else # define U_PLATFORM U_PF_DARWIN # endif -#elif defined(BSD) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__MirBSD__) +#elif defined(BSD) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__MirBSD__) || defined(__DragonFly__) - # define U_PLATFORM U_PF_BSD - #elif defined(sun) || defined(__sun) - /* Check defined(__SVR4) || defined(__svr4__) to distinguish Solaris from SunOS? */ -@@ -379,6 +379,18 @@ + # if defined(__FreeBSD__) + # include <sys/endian.h> + # endif +@@ -388,6 +388,18 @@ # define U_IS_BIG_ENDIAN 1 #elif defined(__LITTLE_ENDIAN__) || defined(_LITTLE_ENDIAN) # define U_IS_BIG_ENDIAN 0 diff --git a/textproc/icu/patches/patch-configure b/textproc/icu/patches/patch-configure index d14798d9de3..80797536fa1 100644 --- a/textproc/icu/patches/patch-configure +++ b/textproc/icu/patches/patch-configure @@ -1,12 +1,12 @@ -$NetBSD: patch-configure,v 1.7 2015/08/31 15:26:19 sevan Exp $ +$NetBSD: patch-configure,v 1.8 2015/10/09 23:15:34 ryoon Exp $ Portability fix. Solaris seems to need -std=c99 with recent pkgsrc so keep it. Add support for Bitrig. ---- configure.orig Fri Mar 27 21:17:48 2015 +--- configure.orig 2015-10-08 04:00:24.000000000 +0000 +++ configure -@@ -5147,7 +5147,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ +@@ -5174,7 +5174,7 @@ rm -f core conftest.err conftest.$ac_obj *-*-cygwin) icu_cv_host_frag=mh-cygwin-msvc ;; esac fi ;; @@ -15,7 +15,7 @@ Add support for Bitrig. *-*-aix*) if test "$GCC" = yes; then icu_cv_host_frag=mh-aix-gcc -@@ -5172,6 +5172,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ +@@ -5199,6 +5199,7 @@ rm -f core conftest.err conftest.$ac_obj *-dec-osf*) icu_cv_host_frag=mh-alpha-osf ;; *-*-nto*) icu_cv_host_frag=mh-qnx ;; *-ncr-*) icu_cv_host_frag=mh-mpras ;; @@ -23,10 +23,10 @@ Add support for Bitrig. *) icu_cv_host_frag=mh-unknown ;; esac -@@ -5682,6 +5683,29 @@ if test "x$ac_cv_header_elf_h" = "xyes"; then - CONFIG_CPPFLAGS="$CONFIG_CPPFLAGS -DU_HAVE_ELF_H=1"; +@@ -5736,6 +5737,29 @@ if test "x$plugins" = "xtrue"; then fi + +# check if sys/atomic.h is present. +for ac_header in sys/atomic.h +do : @@ -52,8 +52,8 @@ Add support for Bitrig. + U_ENABLE_DYLOAD=1 enable=yes - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable dynamic loading of plugins" >&5 -@@ -7655,7 +7679,7 @@ ICUDATA_CHAR=$U_ENDIAN_CHAR + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable dynamic loading of plugins. Ignored if plugins disabled." >&5 +@@ -7729,7 +7753,7 @@ ICUDATA_CHAR=$U_ENDIAN_CHAR case "${host}" in *-*-solaris*) platform=U_SOLARIS ;; *-*-linux*|*-*-gnu|*-*-k*bsd*-gnu|*-*-kopensolaris*-gnu) platform=U_LINUX ;; @@ -62,7 +62,7 @@ Add support for Bitrig. *-*-aix*) platform=U_AIX ;; *-*-hpux*) platform=U_HPUX ;; *-apple-darwin*|*-apple-rhapsody*) platform=U_DARWIN ;; -@@ -7691,13 +7715,13 @@ fi +@@ -7765,13 +7789,13 @@ fi # Now that we're done using CPPFLAGS etc. for tests, we can change it # for build. diff --git a/textproc/icu/patches/patch-configure.ac b/textproc/icu/patches/patch-configure.ac index 77581c1802f..121f7123a6e 100644 --- a/textproc/icu/patches/patch-configure.ac +++ b/textproc/icu/patches/patch-configure.ac @@ -1,15 +1,15 @@ -$NetBSD: patch-configure.ac,v 1.4 2015/08/31 15:26:19 sevan Exp $ +$NetBSD: patch-configure.ac,v 1.5 2015/10/09 23:15:34 ryoon Exp $ * Detect NetBSD libatomic * test(1) portability fix * Add support for Bitrig ---- configure.ac.orig Fri Mar 27 21:17:48 2015 +--- configure.ac.orig 2015-10-08 04:00:26.000000000 +0000 +++ configure.ac -@@ -409,6 +409,18 @@ if test "x$ac_cv_header_elf_h" = "xyes"; then - CONFIG_CPPFLAGS="$CONFIG_CPPFLAGS -DU_HAVE_ELF_H=1"; +@@ -427,6 +427,18 @@ if test "x$plugins" = "xtrue"; then fi + +# check if sys/atomic.h is present. +AC_CHECK_HEADERS([sys/atomic.h]) +case "${host}" in @@ -24,8 +24,8 @@ $NetBSD: patch-configure.ac,v 1.4 2015/08/31 15:26:19 sevan Exp $ + U_ENABLE_DYLOAD=1 enable=yes - AC_MSG_CHECKING([whether to enable dynamic loading of plugins]) -@@ -1234,7 +1246,7 @@ ICUDATA_CHAR=$U_ENDIAN_CHAR + AC_MSG_CHECKING([whether to enable dynamic loading of plugins. Ignored if plugins disabled.]) +@@ -1251,7 +1263,7 @@ ICUDATA_CHAR=$U_ENDIAN_CHAR case "${host}" in *-*-solaris*) platform=U_SOLARIS ;; *-*-linux*|*-*-gnu|*-*-k*bsd*-gnu|*-*-kopensolaris*-gnu) platform=U_LINUX ;; @@ -34,7 +34,7 @@ $NetBSD: patch-configure.ac,v 1.4 2015/08/31 15:26:19 sevan Exp $ *-*-aix*) platform=U_AIX ;; *-*-hpux*) platform=U_HPUX ;; *-apple-darwin*|*-apple-rhapsody*) platform=U_DARWIN ;; -@@ -1253,6 +1265,7 @@ case "${host}" in +@@ -1270,6 +1282,7 @@ case "${host}" in *-*-beos) platform=U_BEOS ;; *-*-irix*) platform=U_IRIX ;; *-ncr-*) platform=U_MPRAS ;; @@ -42,7 +42,7 @@ $NetBSD: patch-configure.ac,v 1.4 2015/08/31 15:26:19 sevan Exp $ *) platform=U_UNKNOWN_PLATFORM ;; esac AC_SUBST(ICUDATA_CHAR) -@@ -1270,13 +1283,13 @@ fi +@@ -1287,13 +1300,13 @@ fi # Now that we're done using CPPFLAGS etc. for tests, we can change it # for build. |