CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Ports :: Packages :: Bugs :: Links :: About :: Donors
icu: updated to 58.2
authorVictor Martinez <pitillo@ono.com>
Tue, 3 Jan 2017 19:29:22 +0000 (20:29 +0100)
committerVictor Martinez <pitillo@ono.com>
Tue, 3 Jan 2017 19:29:22 +0000 (20:29 +0100)
icu/.footprint
icu/.md5sum
icu/Pkgfile
icu/icu-58.1-iterator.patch [new file with mode: 0644]
icu/icu-58.1-remove-bashisms.patch [new file with mode: 0644]

index 7df12b6302ff0c57a886205686cd6cd23840cdd9..cacb730b5cb4ceb82291608c8ccce8d01b84e1e0 100644 (file)
@@ -12,22 +12,6 @@ drwxr-xr-x   root/root       usr/bin/
 -rwxr-xr-x     root/root       usr/bin/pkgdata
 -rwxr-xr-x     root/root       usr/bin/uconv
 drwxr-xr-x     root/root       usr/include/
-drwxr-xr-x     root/root       usr/include/layout/
--rw-r--r--     root/root       usr/include/layout/LEFontInstance.h
--rw-r--r--     root/root       usr/include/layout/LEGlyphFilter.h
--rw-r--r--     root/root       usr/include/layout/LEGlyphStorage.h
--rw-r--r--     root/root       usr/include/layout/LEInsertionList.h
--rw-r--r--     root/root       usr/include/layout/LELanguages.h
--rw-r--r--     root/root       usr/include/layout/LEScripts.h
--rw-r--r--     root/root       usr/include/layout/LESwaps.h
--rw-r--r--     root/root       usr/include/layout/LETableReference.h
--rw-r--r--     root/root       usr/include/layout/LETypes.h
--rw-r--r--     root/root       usr/include/layout/LayoutEngine.h
--rw-r--r--     root/root       usr/include/layout/ParagraphLayout.h
--rw-r--r--     root/root       usr/include/layout/RunArrays.h
--rw-r--r--     root/root       usr/include/layout/loengine.h
--rw-r--r--     root/root       usr/include/layout/playout.h
--rw-r--r--     root/root       usr/include/layout/plruns.h
 drwxr-xr-x     root/root       usr/include/unicode/
 -rw-r--r--     root/root       usr/include/unicode/alphaindex.h
 -rw-r--r--     root/root       usr/include/unicode/appendable.h
@@ -101,6 +85,7 @@ drwxr-xr-x   root/root       usr/include/unicode/
 -rw-r--r--     root/root       usr/include/unicode/scientificnumberformatter.h
 -rw-r--r--     root/root       usr/include/unicode/search.h
 -rw-r--r--     root/root       usr/include/unicode/selfmt.h
+-rw-r--r--     root/root       usr/include/unicode/simpleformatter.h
 -rw-r--r--     root/root       usr/include/unicode/simpletz.h
 -rw-r--r--     root/root       usr/include/unicode/smpdtfmt.h
 -rw-r--r--     root/root       usr/include/unicode/sortkey.h
@@ -121,6 +106,7 @@ drwxr-xr-x  root/root       usr/include/unicode/
 -rw-r--r--     root/root       usr/include/unicode/tzrule.h
 -rw-r--r--     root/root       usr/include/unicode/tztrans.h
 -rw-r--r--     root/root       usr/include/unicode/ubidi.h
+-rw-r--r--     root/root       usr/include/unicode/ubiditransform.h
 -rw-r--r--     root/root       usr/include/unicode/ubrk.h
 -rw-r--r--     root/root       usr/include/unicode/ucal.h
 -rw-r--r--     root/root       usr/include/unicode/ucasemap.h
@@ -171,6 +157,7 @@ drwxr-xr-x  root/root       usr/include/unicode/
 -rw-r--r--     root/root       usr/include/unicode/upluralrules.h
 -rw-r--r--     root/root       usr/include/unicode/uregex.h
 -rw-r--r--     root/root       usr/include/unicode/uregion.h
+-rw-r--r--     root/root       usr/include/unicode/ureldatefmt.h
 -rw-r--r--     root/root       usr/include/unicode/urename.h
 -rw-r--r--     root/root       usr/include/unicode/urep.h
 -rw-r--r--     root/root       usr/include/unicode/ures.h
@@ -200,41 +187,33 @@ drwxr-xr-x        root/root       usr/include/unicode/
 -rw-r--r--     root/root       usr/include/unicode/vtzone.h
 drwxr-xr-x     root/root       usr/lib/
 drwxr-xr-x     root/root       usr/lib/icu/
-drwxr-xr-x     root/root       usr/lib/icu/56.1/
--rw-r--r--     root/root       usr/lib/icu/56.1/Makefile.inc
--rw-r--r--     root/root       usr/lib/icu/56.1/pkgdata.inc
+drwxr-xr-x     root/root       usr/lib/icu/58.2/
+-rw-r--r--     root/root       usr/lib/icu/58.2/Makefile.inc
+-rw-r--r--     root/root       usr/lib/icu/58.2/pkgdata.inc
 lrwxrwxrwx     root/root       usr/lib/icu/Makefile.inc -> current/Makefile.inc
-lrwxrwxrwx     root/root       usr/lib/icu/current -> 56.1
+lrwxrwxrwx     root/root       usr/lib/icu/current -> 58.2
 lrwxrwxrwx     root/root       usr/lib/icu/pkgdata.inc -> current/pkgdata.inc
-lrwxrwxrwx     root/root       usr/lib/libicudata.so -> libicudata.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicudata.so.56 -> libicudata.so.56.1
--rwxr-xr-x     root/root       usr/lib/libicudata.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicui18n.so -> libicui18n.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicui18n.so.56 -> libicui18n.so.56.1
--rwxr-xr-x     root/root       usr/lib/libicui18n.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicuio.so -> libicuio.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicuio.so.56 -> libicuio.so.56.1
--rwxr-xr-x     root/root       usr/lib/libicuio.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicule.so -> libicule.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicule.so.56 -> libicule.so.56.1
--rwxr-xr-x     root/root       usr/lib/libicule.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libiculx.so -> libiculx.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libiculx.so.56 -> libiculx.so.56.1
--rwxr-xr-x     root/root       usr/lib/libiculx.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicutest.so -> libicutest.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicutest.so.56 -> libicutest.so.56.1
--rwxr-xr-x     root/root       usr/lib/libicutest.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicutu.so -> libicutu.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicutu.so.56 -> libicutu.so.56.1
--rwxr-xr-x     root/root       usr/lib/libicutu.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicuuc.so -> libicuuc.so.56.1
-lrwxrwxrwx     root/root       usr/lib/libicuuc.so.56 -> libicuuc.so.56.1
--rwxr-xr-x     root/root       usr/lib/libicuuc.so.56.1
+lrwxrwxrwx     root/root       usr/lib/libicudata.so -> libicudata.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicudata.so.58 -> libicudata.so.58.2
+-rwxr-xr-x     root/root       usr/lib/libicudata.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicui18n.so -> libicui18n.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicui18n.so.58 -> libicui18n.so.58.2
+-rwxr-xr-x     root/root       usr/lib/libicui18n.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicuio.so -> libicuio.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicuio.so.58 -> libicuio.so.58.2
+-rwxr-xr-x     root/root       usr/lib/libicuio.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicutest.so -> libicutest.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicutest.so.58 -> libicutest.so.58.2
+-rwxr-xr-x     root/root       usr/lib/libicutest.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicutu.so -> libicutu.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicutu.so.58 -> libicutu.so.58.2
+-rwxr-xr-x     root/root       usr/lib/libicutu.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicuuc.so -> libicuuc.so.58.2
+lrwxrwxrwx     root/root       usr/lib/libicuuc.so.58 -> libicuuc.so.58.2
+-rwxr-xr-x     root/root       usr/lib/libicuuc.so.58.2
 drwxr-xr-x     root/root       usr/lib/pkgconfig/
 -rw-r--r--     root/root       usr/lib/pkgconfig/icu-i18n.pc
 -rw-r--r--     root/root       usr/lib/pkgconfig/icu-io.pc
--rw-r--r--     root/root       usr/lib/pkgconfig/icu-le.pc
--rw-r--r--     root/root       usr/lib/pkgconfig/icu-lx.pc
 -rw-r--r--     root/root       usr/lib/pkgconfig/icu-uc.pc
 drwxr-xr-x     root/root       usr/sbin/
 -rwxr-xr-x     root/root       usr/sbin/genccode
@@ -244,11 +223,12 @@ drwxr-xr-x        root/root       usr/sbin/
 -rwxr-xr-x     root/root       usr/sbin/icupkg
 drwxr-xr-x     root/root       usr/share/
 drwxr-xr-x     root/root       usr/share/icu/
-drwxr-xr-x     root/root       usr/share/icu/56.1/
-drwxr-xr-x     root/root       usr/share/icu/56.1/config/
--rw-r--r--     root/root       usr/share/icu/56.1/config/mh-linux
--rwxr-xr-x     root/root       usr/share/icu/56.1/install-sh
--rwxr-xr-x     root/root       usr/share/icu/56.1/mkinstalldirs
+drwxr-xr-x     root/root       usr/share/icu/58.2/
+-rw-r--r--     root/root       usr/share/icu/58.2/LICENSE
+drwxr-xr-x     root/root       usr/share/icu/58.2/config/
+-rw-r--r--     root/root       usr/share/icu/58.2/config/mh-linux
+-rwxr-xr-x     root/root       usr/share/icu/58.2/install-sh
+-rwxr-xr-x     root/root       usr/share/icu/58.2/mkinstalldirs
 drwxr-xr-x     root/root       usr/share/man/
 drwxr-xr-x     root/root       usr/share/man/man1/
 -rw-r--r--     root/root       usr/share/man/man1/derb.1.gz
index 760d5855ba304e37f9800797a01fd07046ce204a..3b6fc6bb3eeebf8537780af759c78c0809f5dc78 100644 (file)
@@ -1 +1,3 @@
-c4a2d71ff56aec5ebfab2a3f059be99d  icu4c-56_1-src.tgz
+dd2f8f55d76584edaeb975f7dd7f47f9  icu-58.1-iterator.patch
+f39223f2dcbfe36fb758e59195dc651d  icu-58.1-remove-bashisms.patch
+fac212b32b7ec7ab007a12dff1f3aea1  icu4c-58_2-src.tgz
index fed2e2a498d3708da48ee8ec356ed4ba0a979649..c32bf9410596d4dce2e8d40259f00dc16610bba8 100644 (file)
@@ -5,13 +5,23 @@
 # Packager: Younes Hafri, ycrux at club-internet dot fr
 
 name=icu
-version=56.1
+version=58.2
 release=1
-source=(http://download.icu-project.org/files/icu4c/$version/icu4c-${version//./_}-src.tgz)
+source=(http://download.icu-project.org/files/icu4c/$version/icu4c-${version//./_}-src.tgz
+        icu-58.1-remove-bashisms.patch icu-58.1-iterator.patch)
 
 build() {
   cd icu/source
+
+  patch -p1 -i $SRC/icu-58.1-remove-bashisms.patch
+  patch -p1 -i $SRC/icu-58.1-iterator.patch
+
+  # icu tries to use clang by default
+  [ "$CC" ] || export CC=gcc
+  [ "$CXX" ] || export CXX=g++
+
   sed -i -e "s:LDFLAGSICUDT=-nodefaultlibs -nostdlib:LDFLAGSICUDT=:" config/mh-linux
+
   ./configure \
     --prefix=/usr \
     --disable-samples \
@@ -19,6 +29,4 @@ build() {
 
   make
   make DESTDIR=$PKG install
-
-  rm $PKG/usr/share/icu/$version/license.html
 }
diff --git a/icu/icu-58.1-iterator.patch b/icu/icu-58.1-iterator.patch
new file mode 100644 (file)
index 0000000..6f52375
--- /dev/null
@@ -0,0 +1,127 @@
+source: http://bugs.icu-project.org/trac/changeset/39484/\r
+\r
+\r
+Index: icu/common/ulist.c\r
+===================================================================\r
+--- icu/common/ulist.c (revision 39483)\r
++++ icu/common/ulist.c (revision 39484)\r
+@@ -30,5 +30,4 @@\r
+     \r
+     int32_t size;\r
+-    int32_t currentIndex;\r
+ };\r
\r
+@@ -52,5 +51,4 @@\r
+     newList->tail = NULL;\r
+     newList->size = 0;\r
+-    newList->currentIndex = -1;\r
+     \r
+     return newList;\r
+@@ -81,6 +79,7 @@\r
+         p->next->previous = p->previous;\r
+     }\r
+-    list->curr = NULL;\r
+-    list->currentIndex = 0;\r
++    if (p == list->curr) {\r
++        list->curr = p->next;\r
++    }\r
+     --list->size;\r
+     if (p->forceDelete) {\r
+@@ -151,5 +150,4 @@\r
+         list->head->previous = newItem;\r
+         list->head = newItem;\r
+-        list->currentIndex++;\r
+     }\r
+     \r
+@@ -194,5 +192,4 @@\r
+     curr = list->curr;\r
+     list->curr = curr->next;\r
+-    list->currentIndex++;\r
+     \r
+     return curr->data;\r
+@@ -210,5 +207,4 @@\r
+     if (list != NULL) {\r
+         list->curr = list->head;\r
+-        list->currentIndex = 0;\r
+     }\r
+ }\r
+@@ -273,3 +269,2 @@\r
+     return (UList *)(en->context);\r
+ }\r
+-\r
+Index: icu/i18n/ucol_res.cpp\r
+===================================================================\r
+--- icu/i18n/ucol_res.cpp      (revision 39483)\r
++++ icu/i18n/ucol_res.cpp      (revision 39484)\r
+@@ -681,4 +681,5 @@\r
+     }\r
+     memcpy(en, &defaultKeywordValues, sizeof(UEnumeration));\r
++    ulist_resetList(sink.values);  // Initialize the iterator.\r
+     en->context = sink.values;\r
+     sink.values = NULL;  // Avoid deletion in the sink destructor.\r
+Index: icu/test/intltest/apicoll.cpp\r
+===================================================================\r
+--- icu/test/intltest/apicoll.cpp      (revision 39483)\r
++++ icu/test/intltest/apicoll.cpp      (revision 39484)\r
+@@ -82,14 +82,7 @@\r
+     col = Collator::createInstance(Locale::getEnglish(), success);\r
+     if (U_FAILURE(success)){\r
+-        errcheckln(success, "Default Collator creation failed. - %s", u_errorName(success));\r
+-        return;\r
+-    }\r
+-\r
+-    StringEnumeration* kwEnum = col->getKeywordValuesForLocale("", Locale::getEnglish(),true,success);\r
+-    if (U_FAILURE(success)){\r
+-        errcheckln(success, "Get Keyword Values for Locale failed. - %s", u_errorName(success));\r
+-        return;\r
+-    }\r
+-    delete kwEnum;\r
++        errcheckln(success, "English Collator creation failed. - %s", u_errorName(success));\r
++        return;\r
++    }\r
\r
+     col->getVersion(versionArray);\r
+@@ -230,4 +223,27 @@\r
+     delete aFrCol;\r
+     delete junk;\r
++}\r
++\r
++void CollationAPITest::TestKeywordValues() {\r
++    IcuTestErrorCode errorCode(*this, "TestKeywordValues");\r
++    LocalPointer<Collator> col(Collator::createInstance(Locale::getEnglish(), errorCode));\r
++    if (errorCode.logIfFailureAndReset("English Collator creation failed")) {\r
++        return;\r
++    }\r
++\r
++    LocalPointer<StringEnumeration> kwEnum(\r
++        col->getKeywordValuesForLocale("collation", Locale::getEnglish(), TRUE, errorCode));\r
++    if (errorCode.logIfFailureAndReset("Get Keyword Values for English Collator failed")) {\r
++        return;\r
++    }\r
++    assertTrue("expect at least one collation tailoring for English", kwEnum->count(errorCode) > 0);\r
++    const char *kw;\r
++    UBool hasStandard = FALSE;\r
++    while ((kw = kwEnum->next(NULL, errorCode)) != NULL) {\r
++        if (strcmp(kw, "standard") == 0) {\r
++            hasStandard = TRUE;\r
++        }\r
++    }\r
++    assertTrue("expect at least the 'standard' collation tailoring for English", hasStandard);\r
+ }\r
\r
+@@ -2467,4 +2483,5 @@\r
+     TESTCASE_AUTO_BEGIN;\r
+     TESTCASE_AUTO(TestProperty);\r
++    TESTCASE_AUTO(TestKeywordValues);\r
+     TESTCASE_AUTO(TestOperators);\r
+     TESTCASE_AUTO(TestDuplicate);\r
+Index: icu/test/intltest/apicoll.h\r
+===================================================================\r
+--- icu/test/intltest/apicoll.h        (revision 39483)\r
++++ icu/test/intltest/apicoll.h        (revision 39484)\r
+@@ -36,4 +36,5 @@\r
+      */\r
+     void TestProperty(/* char* par */);\r
++    void TestKeywordValues();\r
\r
+     /**\r
diff --git a/icu/icu-58.1-remove-bashisms.patch b/icu/icu-58.1-remove-bashisms.patch
new file mode 100644 (file)
index 0000000..ef60ce4
--- /dev/null
@@ -0,0 +1,224 @@
+diff -ruN a/config/Makefile.inc.in b/config/Makefile.inc.in
+--- a/config/Makefile.inc.in   2016-09-09 23:28:18.000000000 +0200
++++ b/config/Makefile.inc.in   2016-11-05 19:43:07.688466668 +0100
+@@ -124,12 +124,6 @@
+ # with usually. Many applications will want to add $(ICULIBS_I18N) as well. 
+ ICULIBS = $(ICULIBS_BASE) $(ICULIBS_I18N) $(ICULIBS_COMMON) $(ICULIBS_DATA) 
+-# Proper echo newline handling is needed in icu-config
+-ECHO_N=@ICU_ECHO_N@
+-ECHO_C=@ICU_ECHO_C@
+-# Not currently being used but good to have for proper tab handling
+-ECHO_T=@ICU_ECHO_T@
+-
+ ##################################################################
+ ##################################################################
+ #
+diff -ruN a/config/icu-config-bottom b/config/icu-config-bottom
+--- a/config/icu-config-bottom 2016-09-09 23:28:18.000000000 +0200
++++ b/config/icu-config-bottom 2016-11-05 19:49:00.854481361 +0100
+@@ -218,65 +218,65 @@
+           ;;
+       --cflags)
+-          echo $ECHO_N "${CFLAGS} ${ECHO_C}"
++          printf "%s" "${CFLAGS} "
+           ;;
+       --cc)
+-          echo $ECHO_N "${CC} ${ECHO_C}"
++          printf "%s" "${CC} "
+           ;;
+       --cxx)
+-          echo $ECHO_N "${CXX} ${ECHO_C}"
++          printf "%s" "${CXX} "
+           ;;
+       --cxxflags)
+-          echo $ECHO_N "${CXXFLAGS} ${ECHO_C}"
++          printf "%s" "${CXXFLAGS} "
+           ;;
+       --cppflags)
+           # Don't echo the -I. - it's unneeded.
+-          echo $ECHO_N "${CPPFLAGS} ${ECHO_C}" | sed -e 's/-I. //'
++          printf "%s" "${CPPFLAGS} " | sed -e 's/-I. //'
+           ;;
+       --cppflags-searchpath)
+-          echo $ECHO_N "-I${prefix}/include ${ECHO_C}"
++          printf "%s" "-I${prefix}/include "
+           ;;
+       --cppflags-dynamic)
+-          echo $ECHO_N "${SHAREDLIBCPPFLAGS} ${ECHO_C}"
++          printf "%s" "${SHAREDLIBCPPFLAGS} "
+           ;;
+       --cxxflags-dynamic)
+-          echo $ECHO_N "${SHAREDLIBCXXFLAGS} ${ECHO_C}"
++          printf "%s" "${SHAREDLIBCXXFLAGS} "
+           ;;
+       --cflags-dynamic)
+-          echo $ECHO_N "${SHAREDLIBCFLAGS} ${ECHO_C}"
++          printf "%s" "${SHAREDLIBCFLAGS} "
+           ;;
+       --ldflags-system)
+-          echo $ECHO_N "${LIBS} ${ECHO_C}"
++          printf "%s" "${LIBS} "
+           ;;
+       --ldflags)
+-          echo $ECHO_N "${LDFLAGS} ${ICULIBS} ${ECHO_C}"
++          printf "%s" "${LDFLAGS} ${ICULIBS} "
+ # $RPATH_LDFLAGS
+           ;;
+       --ldflags-libsonly)
+-          echo $ECHO_N "${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA} ${ECHO_C}"
++          printf "%s" "${ICULIBS_I18N} ${ICULIBS_COMMON} ${ICULIBS_DATA} "
+           ;;
+       --ldflags-icuio)
+-          echo $ECHO_N " ${ICULIBS_ICUIO} ${ECHO_C}"
++          printf "%s" " ${ICULIBS_ICUIO} "
+           ;;
+       --ldflags-obsolete)
+-          echo $ECHO_N "${ICULIBS_OBSOLETE} ${ECHO_C}"
++          printf "%s" "${ICULIBS_OBSOLETE} "
+           ;;
+       --ldflags-toolutil)
+-          echo $ECHO_N " ${ICULIBS_TOOLUTIL} ${ECHO_C}"
++          printf "%s" " ${ICULIBS_TOOLUTIL} "
+           ;;
+       --ldflags-layout)
+@@ -285,7 +285,7 @@
+           ;;
+       --ldflags-searchpath)
+-          echo $ECHO_N "-L${libdir} ${ECHO_C}"
++          printf "%s" "-L${libdir} "
+           ;;
+       --detect-prefix)
+@@ -321,47 +321,47 @@
+           ;;
+       --shared-datadir)
+-          echo $ECHO_N "${datadir} ${ECHO_C}"
++          printf "%s" "${datadir} "
+           ;;
+         --incfile)
+-          echo $ECHO_N "${pkglibdir}/Makefile.inc ${ECHO_C}"
++          printf "%s" "${pkglibdir}/Makefile.inc "
+           ;;
+       --incpkgdatafile)
+-          echo $ECHO_N "${pkglibdir}/pkgdata.inc ${ECHO_C}"
++          printf "%s" "${pkglibdir}/pkgdata.inc "
+           ;;
+       --icudata)
+-          echo $ECHO_N "${ICUDATA_NAME} ${ECHO_C}"
++          printf "%s" "${ICUDATA_NAME} "
+           ;;
+       --icudata-mode)
+-          echo $ECHO_N "${PKGDATA_MODE} ${ECHO_C}"
++          printf "%s" "${PKGDATA_MODE} "
+           ;;
+       --icudata-install-dir)
+-        echo $ECHO_N "${ICUPKGDATA_DIR} ${ECHO_C}"
++        printf "%s" "${ICUPKGDATA_DIR} "
+           ;;
+       --icudatadir)
+-          echo $ECHO_N "${ICUDATA_DIR} ${ECHO_C}"
++          printf "%s" "${ICUDATA_DIR} "
+           ;;
+       --shlib-c)
+-          echo $ECHO_N "${SHLIB_c} ${ECHO_C}"
++          printf "%s" "${SHLIB_c} "
+           ;;
+       --shlib-cc)
+-          echo $ECHO_N "${SHLIB_cc} ${ECHO_C}"
++          printf "%s" "${SHLIB_cc} "
+           ;;
+       --version)
+-          echo $ECHO_N $VERSION
++          printf "%s" "$VERSION"
+           ;;
+       --unicode-version)
+-          echo $ECHO_N $UNICODE_VERSION
++          printf "%s" "$UNICODE_VERSION"
+           ;;
+       --host)
+diff -ruN a/configure.ac b/configure.ac
+--- a/configure.ac     2016-10-04 21:30:20.000000000 +0200
++++ b/configure.ac     2016-11-05 19:43:07.688466668 +0100
+@@ -22,24 +22,6 @@
+ PACKAGE="icu"
+ AC_SUBST(PACKAGE)
+-# Use custom echo test for newline option
+-# Current autoconf (2.65) gives incorrect echo newline option
+-# for icu-config
+-# This may be removed later - mow (June 17, 2010)
+-ICU_ECHO_C= ICU_ECHO_N= ICU_ECHO_T=
+-case `/bin/sh -c "echo -n x"` in
+--n*)
+-  case `/bin/sh -c "echo 'x\c'"` in
+-  *c*) ICU_ECHO_T=' ';;     # ECHO_T is single tab character.
+-  *)   ICU_ECHO_C='\c';;
+-  esac;;
+-*)
+-  ICU_ECHO_N='-n';;
+-esac
+-AC_SUBST(ICU_ECHO_N)
+-AC_SUBST(ICU_ECHO_C)
+-AC_SUBST(ICU_ECHO_T)
+-
+ AC_MSG_CHECKING(for ICU version numbers)
+ # Get the ICU version from uversion.h or other headers
+diff -ruN a/icudefs.mk.in b/icudefs.mk.in
+--- a/icudefs.mk.in    2016-09-09 23:28:18.000000000 +0200
++++ b/icudefs.mk.in    2016-11-05 19:43:07.688466668 +0100
+@@ -157,11 +157,6 @@
+ ENABLE_STATIC = @ENABLE_STATIC@
+ ENABLE_SHARED = @ENABLE_SHARED@
+-# Echo w/o newline
+-
+-#ECHO_N = @ICU_ECHO_N@
+-#ECHO_C = @ICU_ECHO_C@
+-
+ # Commands to compile
+ COMPILE.c=    $(CC) $(CPPFLAGS) $(DEFS) $(CFLAGS) -c
+ COMPILE.cc=   $(CXX) $(CPPFLAGS) $(DEFS) $(CXXFLAGS) -c
+diff -ruN a/test/hdrtst/Makefile.in b/test/hdrtst/Makefile.in
+--- a/test/hdrtst/Makefile.in  2016-09-28 06:17:24.000000000 +0200
++++ b/test/hdrtst/Makefile.in  2016-11-05 19:43:07.688466668 +0100
+@@ -35,9 +35,6 @@
+ include $(shell icu-config --incfile)
+ DIRS=$(prefix)/include/unicode
+ LDIRS=$(prefix)/include/layout
+-ECHO_T=@ECHO_T@
+-ECHO_C=@ECHO_C@
+-ECHO_N=@ECHO_N@
+ all: 
+       @echo Please read this Makefile for more information.