diff -udprN /usr/ports/devel/icu/Makefile ./Makefile --- /usr/ports/devel/icu/Makefile 2017-04-07 22:06:07.000000000 +0000 +++ ./Makefile 2017-04-21 06:32:28.691886000 +0000 @@ -2,12 +2,12 @@ # $FreeBSD: head/devel/icu/Makefile 437961 2017-04-07 22:06:07Z rezny $ PORTNAME= icu -DISTVERSION= 58_2 -PORTREVISION?= 1 # keep for icu-lx +DISTVERSION= 59.1 +#PORTREVISION?= 1 # keep for icu-lx PORTEPOCH?= 1 CATEGORIES?= devel -MASTER_SITES= http://download.icu-project.org/files/icu4c/${PORTVERSION}/ -DISTNAME= icu4c-${DISTVERSION}-src +MASTER_SITES= http://download.icu-project.org/files/icu4c/${PORTVERSION}rc/ +DISTNAME= icu4c-${DISTVERSION:C/\..*//}rc-src MAINTAINER= office@FreeBSD.org COMMENT?= International Components for Unicode (from IBM) diff -udprN /usr/ports/devel/icu/distinfo ./distinfo --- /usr/ports/devel/icu/distinfo 2016-12-10 00:43:33.000000000 +0000 +++ ./distinfo 2017-04-21 06:03:00.342832000 +0000 @@ -1,3 +1,3 @@ -TIMESTAMP = 1481218489 -SHA256 (icu4c-58_2-src.tgz) = 2b0a4410153a9b20de0e20c7d8b66049a72aef244b53683d0d7521371683da0c -SIZE (icu4c-58_2-src.tgz) = 23369902 +TIMESTAMP = 1492732189 +SHA256 (icu4c-59rc-src.tgz) = 2375d4b64d0696bde4f9e73d919f8083609992d890bdece580176bc3b2937c9c +SIZE (icu4c-59rc-src.tgz) = 22711328 diff -udprN /usr/ports/devel/icu/files/patch-r39484 ./files/patch-r39484 --- /usr/ports/devel/icu/files/patch-r39484 2016-11-19 18:21:20.000000000 +0000 +++ ./files/patch-r39484 1970-01-01 00:00:00.000000000 +0000 @@ -1,148 +0,0 @@ -https://ssl.icu-project.org/trac/ticket/12827 - -Index: test/intltest/apicoll.h -=================================================================== ---- test/intltest/apicoll.h (revision 39483) -+++ test/intltest/apicoll.h (revision 39484) -@@ -35,6 +35,7 @@ class CollationAPITest: public IntlTestCollator { - * - displayable name in the desired locale - */ - void TestProperty(/* char* par */); -+ void TestKeywordValues(); - - /** - * This tests the RuleBasedCollator -Index: test/intltest/apicoll.cpp -=================================================================== ---- test/intltest/apicoll.cpp (revision 39483) -+++ test/intltest/apicoll.cpp (revision 39484) -@@ -81,17 +81,10 @@ CollationAPITest::TestProperty(/* char* par */) - logln("Test ctors : "); - col = Collator::createInstance(Locale::getEnglish(), success); - if (U_FAILURE(success)){ -- errcheckln(success, "Default Collator creation failed. - %s", u_errorName(success)); -+ errcheckln(success, "English Collator creation failed. - %s", u_errorName(success)); - return; - } - -- StringEnumeration* kwEnum = col->getKeywordValuesForLocale("", Locale::getEnglish(),true,success); -- if (U_FAILURE(success)){ -- errcheckln(success, "Get Keyword Values for Locale failed. - %s", u_errorName(success)); -- return; -- } -- delete kwEnum; -- - col->getVersion(versionArray); - // Check for a version greater than some value rather than equality - // so that we need not update the expected version each time. -@@ -231,6 +224,29 @@ CollationAPITest::TestProperty(/* char* par */) - delete junk; - } - -+void CollationAPITest::TestKeywordValues() { -+ IcuTestErrorCode errorCode(*this, "TestKeywordValues"); -+ LocalPointer col(Collator::createInstance(Locale::getEnglish(), errorCode)); -+ if (errorCode.logIfFailureAndReset("English Collator creation failed")) { -+ return; -+ } -+ -+ LocalPointer kwEnum( -+ col->getKeywordValuesForLocale("collation", Locale::getEnglish(), TRUE, errorCode)); -+ if (errorCode.logIfFailureAndReset("Get Keyword Values for English Collator failed")) { -+ return; -+ } -+ assertTrue("expect at least one collation tailoring for English", kwEnum->count(errorCode) > 0); -+ const char *kw; -+ UBool hasStandard = FALSE; -+ while ((kw = kwEnum->next(NULL, errorCode)) != NULL) { -+ if (strcmp(kw, "standard") == 0) { -+ hasStandard = TRUE; -+ } -+ } -+ assertTrue("expect at least the 'standard' collation tailoring for English", hasStandard); -+} -+ - void - CollationAPITest::TestRuleBasedColl() - { -@@ -2466,6 +2482,7 @@ void CollationAPITest::runIndexedTest( int32_t ind - if (exec) logln("TestSuite CollationAPITest: "); - TESTCASE_AUTO_BEGIN; - TESTCASE_AUTO(TestProperty); -+ TESTCASE_AUTO(TestKeywordValues); - TESTCASE_AUTO(TestOperators); - TESTCASE_AUTO(TestDuplicate); - TESTCASE_AUTO(TestCompare); -Index: i18n/ucol_res.cpp -=================================================================== ---- i18n/ucol_res.cpp (revision 39483) -+++ i18n/ucol_res.cpp (revision 39484) -@@ -680,6 +680,7 @@ ucol_getKeywordValuesForLocale(const char* /*key*/ - return NULL; - } - memcpy(en, &defaultKeywordValues, sizeof(UEnumeration)); -+ ulist_resetList(sink.values); // Initialize the iterator. - en->context = sink.values; - sink.values = NULL; // Avoid deletion in the sink destructor. - return en; -Index: common/ulist.c -=================================================================== ---- common/ulist.c (revision 39483) -+++ common/ulist.c (revision 39484) -@@ -29,7 +29,6 @@ struct UList { - UListNode *tail; - - int32_t size; -- int32_t currentIndex; - }; - - static void ulist_addFirstItem(UList *list, UListNode *newItem); -@@ -51,7 +50,6 @@ U_CAPI UList *U_EXPORT2 ulist_createEmptyList(UErr - newList->head = NULL; - newList->tail = NULL; - newList->size = 0; -- newList->currentIndex = -1; - - return newList; - } -@@ -80,8 +78,9 @@ static void ulist_removeItem(UList *list, UListNod - } else { - p->next->previous = p->previous; - } -- list->curr = NULL; -- list->currentIndex = 0; -+ if (p == list->curr) { -+ list->curr = p->next; -+ } - --list->size; - if (p->forceDelete) { - uprv_free(p->data); -@@ -150,7 +149,6 @@ U_CAPI void U_EXPORT2 ulist_addItemBeginList(UList - newItem->next = list->head; - list->head->previous = newItem; - list->head = newItem; -- list->currentIndex++; - } - - list->size++; -@@ -193,7 +191,6 @@ U_CAPI void *U_EXPORT2 ulist_getNext(UList *list) - - curr = list->curr; - list->curr = curr->next; -- list->currentIndex++; - - return curr->data; - } -@@ -209,7 +206,6 @@ U_CAPI int32_t U_EXPORT2 ulist_getListSize(const U - U_CAPI void U_EXPORT2 ulist_resetList(UList *list) { - if (list != NULL) { - list->curr = list->head; -- list->currentIndex = 0; - } - } - -@@ -272,4 +268,3 @@ U_CAPI void U_EXPORT2 ulist_reset_keyword_values_i - U_CAPI UList * U_EXPORT2 ulist_getListFromEnum(UEnumeration *en) { - return (UList *)(en->context); - } -- diff -udprN /usr/ports/devel/icu/pkg-plist ./pkg-plist --- /usr/ports/devel/icu/pkg-plist 2016-11-19 18:21:20.000000000 +0000 +++ ./pkg-plist 2017-04-21 06:41:06.902897000 +0000 @@ -1,3 +1,4 @@ +sbin/escapesrc sbin/icupkg sbin/gensprep sbin/gennorm2 @@ -44,6 +45,8 @@ include/unicode/bytestrie.h include/unicode/bytestriebuilder.h include/unicode/calendar.h include/unicode/caniter.h +include/unicode/casemap.h +include/unicode/char16ptr.h include/unicode/chariter.h include/unicode/choicfmt.h include/unicode/coleitr.h @@ -63,6 +66,7 @@ include/unicode/dtitvfmt.h include/unicode/dtitvinf.h include/unicode/dtptngen.h include/unicode/dtrule.h +include/unicode/edits.h include/unicode/enumset.h include/unicode/errorcode.h include/unicode/fieldpos.h