summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChen Qi <Qi.Chen@windriver.com>2012-12-18 13:58:36 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-12-19 17:50:01 +0000
commitd9e6b45a0abd15b24941d8d04142cd79399424ef (patch)
tree690914e243df74b173e9c45c60a24a45ce1509ed
parent871a15ba5d8eecae37f0152e50073c90c7fea16c (diff)
downloadopenembedded-core-d9e6b45a0abd15b24941d8d04142cd79399424ef.tar.gz
openembedded-core-d9e6b45a0abd15b24941d8d04142cd79399424ef.tar.bz2
openembedded-core-d9e6b45a0abd15b24941d8d04142cd79399424ef.zip
ICU: upgrade to 50.1.
Upgrade ICU to 50.1. All unnecessary patches of the previous version are dropped. [YOCTO #3557] Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
-rw-r--r--meta/recipes-support/icu/files/fix-parallel-build.patch19
-rw-r--r--meta/recipes-support/icu/files/gccfix.patch19
-rw-r--r--meta/recipes-support/icu/files/icu-add-pkgconfig-support.patch43
-rw-r--r--meta/recipes-support/icu/files/larger-cmd-size.patch27
-rw-r--r--meta/recipes-support/icu/files/noldlibpath.patch52
-rw-r--r--meta/recipes-support/icu/files/use-g++-for-linking.patch74
-rw-r--r--meta/recipes-support/icu/icu-3.6.inc75
-rw-r--r--meta/recipes-support/icu/icu.inc52
-rw-r--r--meta/recipes-support/icu/icu_3.6.bb6
-rw-r--r--meta/recipes-support/icu/icu_50.1.bb11
10 files changed, 63 insertions, 315 deletions
diff --git a/meta/recipes-support/icu/files/fix-parallel-build.patch b/meta/recipes-support/icu/files/fix-parallel-build.patch
deleted file mode 100644
index 5b01a4c26c..0000000000
--- a/meta/recipes-support/icu/files/fix-parallel-build.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Upstream-Status: pending
-
-Fix parallel builds
-
-Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
-
-Index: source/data/Makefile.in
-===================================================================
---- source.orig/data/Makefile.in 2011-09-02 02:03:37.000000000 +0400
-+++ source/data/Makefile.in 2011-09-02 02:06:26.000000000 +0400
-@@ -351,8 +351,8 @@
- endif
-
-
--build-dir: $(BUILD_DIRS)
--$(BUILD_DIRS):
-+$(MAINBUILDDIR) $(BUILD_DIRS): build-dir
-+build-dir:
- -$(MKINSTALLDIRS) $(BUILD_DIRS)
diff --git a/meta/recipes-support/icu/files/gccfix.patch b/meta/recipes-support/icu/files/gccfix.patch
deleted file mode 100644
index 755341f186..0000000000
--- a/meta/recipes-support/icu/files/gccfix.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Fixes an error which prevents compilation
-
-Upstream-Status: Pending
-
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-
-Index: source/layoutex/ParagraphLayout.cpp
-===================================================================
---- source.orig/layoutex/ParagraphLayout.cpp 2009-06-30 11:48:47.000000000 +0100
-+++ source/layoutex/ParagraphLayout.cpp 2009-06-30 11:49:06.000000000 +0100
-@@ -798,7 +798,7 @@
-
- return nullLanguageCode;
- }
--#elif
-+#else
-
- // TODO - dummy implementation for right now...
- le_int32 ParagraphLayout::getLanguageCode(const Locale *locale)
diff --git a/meta/recipes-support/icu/files/icu-add-pkgconfig-support.patch b/meta/recipes-support/icu/files/icu-add-pkgconfig-support.patch
deleted file mode 100644
index c7cd9d5d7e..0000000000
--- a/meta/recipes-support/icu/files/icu-add-pkgconfig-support.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Upstream-Status: Inappropriate [version]
-ICU-3.6 has no pkgconfig, so I add it here.
-But ICU has had pkgconfig support since 4.6.
-So this patch is inappropriate to upstream.
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-
-Index: configure.in
-=============================================================
---- a/configure.in
-+++ b/configure.in
-@@ -1057,4 +1057,7 @@ echo "This may cause ICU to fail to build. Please make sure that GNU make"
- echo "is in your PATH so that this configure script can detect its location."
- fi
-
-+AC_CONFIG_FILES([icu.pc])
-+AC_OUTPUT
-+
- $as_unset _CXX_CXXSUFFIX
-
-Index: icu.pc.in
-=============================================================
---- /dev/null
-+++ b/icu.pc.in
-@@ -0,0 +1,15 @@
-+# Process this file with autoconf to produce a pkg-config metadata file.
-+
-+prefix=@prefix@
-+exec_prefix=@exec_prefix@
-+libdir=@libdir@
-+includedir=@includedir@
-+unicode_version=@UNICODE_VERSION@
-+
-+Name: ICU
-+Description: International Component for Unicode libraries
-+Requires:
-+Version: @VERSION@
-+Libs: -L${libdir} -licui18n -licuuc -licudata
-+Libs.private: -L{libdir} -lpthread -lm
-+Cflags: -I${includedir} -O2 -pipe -g -feliminate-unused-debug-types
---
-1.7.11.2
-
diff --git a/meta/recipes-support/icu/files/larger-cmd-size.patch b/meta/recipes-support/icu/files/larger-cmd-size.patch
deleted file mode 100644
index 74a84f17ba..0000000000
--- a/meta/recipes-support/icu/files/larger-cmd-size.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Allocate a larger memory size for cmd
-
-The length of the command line can be longer than 1024 sometimes,
-which will cause a "Segmentation fault" error.
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-
-Upstream-Status: Pending
----
- tools/pkgdata/pkgdata.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tools/pkgdata/pkgdata.c b/tools/pkgdata/pkgdata.c
---- a/tools/pkgdata/pkgdata.c
-+++ b/tools/pkgdata/pkgdata.c
-@@ -439,7 +439,7 @@ main(int argc, char* argv[]) {
- /* POSIX - execute makefile */
- static int executeMakefile(const UPKGOptions *o)
- {
-- char cmd[1024];
-+ char cmd[2048];
- /*char pwd[1024];*/
- const char *make;
- int rc;
---
-1.7.10.2
-
diff --git a/meta/recipes-support/icu/files/noldlibpath.patch b/meta/recipes-support/icu/files/noldlibpath.patch
deleted file mode 100644
index 8543044b2c..0000000000
--- a/meta/recipes-support/icu/files/noldlibpath.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-Setting LD_LIBRARY_PATH is a really bad idea when cross compiling. Simplest way
-to disable this is to rename the variable as per the patch below, then its
-harmless. This is a hack.
-
-RP 10/6/2010
-
-Upstream-Status: Inappropriate [Other]
-Hacky workaround not likely to be accepted upstream.
-
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-
-Index: source/config/Makefile.inc.in
-===================================================================
---- source.orig/config/Makefile.inc.in 2010-06-10 21:49:19.000000000 +0100
-+++ source/config/Makefile.inc.in 2010-06-10 21:49:46.000000000 +0100
-@@ -126,7 +126,7 @@
- ##################################################################
- # Environment variable to set a runtime search path
- # (Overridden when necessary in -mh files)
--LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH
-+LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH2
-
- # Versioned target for a shared library
- FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION)
-Index: source/icudefs.mk.in
-===================================================================
---- source.orig/icudefs.mk.in 2010-06-10 21:51:03.000000000 +0100
-+++ source/icudefs.mk.in 2010-06-10 21:51:09.000000000 +0100
-@@ -150,7 +150,7 @@
- SHLIB.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared
-
- # Environment variable to set a runtime search path
--LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH
-+LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH2
-
- # Versioned target for a shared library.
- FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION)
-Index: source/tools/genrb/gendtjar.pl
-===================================================================
---- source.orig/tools/genrb/gendtjar.pl 2010-06-10 21:51:36.000000000 +0100
-+++ source/tools/genrb/gendtjar.pl 2010-06-10 21:52:03.000000000 +0100
-@@ -68,8 +68,8 @@
- $icuLibDir = abs_path($icuBinDir."/../lib");
- $path .=":$icuBinDir:$icuLibDir";
-
-- $libpath = $ENV{'LD_LIBRARY_PATH'}.":$icuLibDir";
-- $ENV{'LD_LIBRARY_PATH'} = $libpath;
-+ $libpath = $ENV{'LD_LIBRARY_PATH2'}.":$icuLibDir";
-+ $ENV{'LD_LIBRARY_PATH2'} = $libpath;
-
- #print ("##### LD_LIBRARY_PATH = $ENV{'LD_LIBRARY_PATH'}\n");
-
diff --git a/meta/recipes-support/icu/files/use-g++-for-linking.patch b/meta/recipes-support/icu/files/use-g++-for-linking.patch
deleted file mode 100644
index f477dadee9..0000000000
--- a/meta/recipes-support/icu/files/use-g++-for-linking.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-Use g++ for linking.
-
-Upstream-Status: Inappropriate [Other]
-Build system specific
-
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-
----
- tools/genccode/Makefile.in | 2 +-
- tools/gencmn/Makefile.in | 2 +-
- tools/genrb/Makefile.in | 2 +-
- tools/pkgdata/Makefile.in | 2 +-
- 4 files changed, 4 insertions(+), 4 deletions(-)
-
---- source.orig/tools/genccode/Makefile.in
-+++ source/tools/genccode/Makefile.in
-@@ -76,11 +76,11 @@ check-local: all-local
- Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
- $(TARGET) : $(OBJECTS)
-- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS)
-+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS)
-
-
- %.$(SECTION): $(srcdir)/%.$(SECTION).in
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
---- source.orig/tools/gencmn/Makefile.in
-+++ source/tools/gencmn/Makefile.in
-@@ -76,11 +76,11 @@ check-local: all-local
- Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
- $(TARGET) : $(OBJECTS)
-- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS)
-+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS)
-
- %.$(SECTION): $(srcdir)/%.$(SECTION).in
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
---- source.orig/tools/genrb/Makefile.in
-+++ source/tools/genrb/Makefile.in
-@@ -84,11 +84,11 @@ Makefile: $(srcdir)/Makefile.in $(top_b
-
- $(TARGET) : $(OBJECTS)
- $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS)
-
- $(DERB) : $(DERB_OBJ)
-- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS)
-+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS)
-
-
- # This line is needed to serialize builds when the gmake -j option is used.
- $(TARGET_STUB_NAME).$(SECTION): $(DERB_STUB_NAME).$(SECTION)
-
---- source.orig/tools/pkgdata/Makefile.in
-+++ source/tools/pkgdata/Makefile.in
-@@ -81,11 +81,11 @@ check-local: all-local
- Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
-
- $(TARGET) : $(OBJECTS)
-- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS)
-+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS)
-
-
- %.$(SECTION): $(srcdir)/%.$(SECTION).in
- cd $(top_builddir) \
- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
diff --git a/meta/recipes-support/icu/icu-3.6.inc b/meta/recipes-support/icu/icu-3.6.inc
deleted file mode 100644
index 8caf71c645..0000000000
--- a/meta/recipes-support/icu/icu-3.6.inc
+++ /dev/null
@@ -1,75 +0,0 @@
-SUMMARY = "International Component for Unicode libraries"
-DESCRIPTION = "The International Component for Unicode (ICU) is a mature, portable set of C/C++ and Java libraries for Unicode support, software internationalization (I18N) and globalization (G11N), giving applications the same results on all platforms."
-HOMEPAGE = "http://www-01.ibm.com/software/globalization/icu/index.jsp"
-
-BASE_SRC_URI = "ftp://ftp.software.ibm.com/software/globalization/icu/3.6/icu4c-3_6-src.tgz \
- file://gccfix.patch \
- file://fix-parallel-build.patch \
- file://use-g++-for-linking.patch \
- file://larger-cmd-size.patch \
- file://icu-add-pkgconfig-support.patch \
- "
-SRC_URI = "${BASE_SRC_URI} \
- file://noldlibpath.patch \
- "
-SRC_URI_class-native = "${BASE_SRC_URI}"
-
-LICENSE = "ICU"
-LIC_FILES_CHKSUM = "file://../license.html;md5=5c94767cedb5d6987c902ac850ded2c6"
-DEPENDS = "icu-native"
-DEPENDS_class-native = ""
-
-S = "${WORKDIR}/icu/source"
-
-PARALLEL_MAKE = ""
-FULL_OPTIMIZATION_arm = "-Os"
-
-inherit autotools pkgconfig binconfig
-
-do_configure() {
- libtoolize --force
- gnu-configize --force
- if [ "${PN}" != "icu-native" ]; then
- OLD=`pwd`
- cd ${S}
- autoconf
- cd ${OLD}
- fi
- oe_runconf
- if [ "${PN}" != "icu-native" ]; then
- # In the non-native case we need to make substitutions to use
- # the native versions of the tools
- for i in */Makefile* */*.inc */*/Makefile* */*/*.inc */*/*.inc.in ; do
- sed -i -e 's:$(INVOKE) $(BINDIR)/:$(INVOKE) :g' $i
- sed -i -e 's:$(BINDIR)/::g' $i
- done
- fi
-}
-
-do_compile() {
- oe_runmake 'CXX=${CXX}'
-}
-
-do_install_append() {
- chmod +x ${D}${libdir}/lib*
- if [ "${PN}" != "icu-native" ]; then
- install -d ${D}/${libdir}/pkgconfig
- install -m 0644 ${S}/icu.pc ${D}/${libdir}/pkgconfig
- fi
-}
-
-PACKAGES =+ "libicudata libicuuc libicui18n libicule libiculx libicutu libicuio"
-
-FILES_${PN}-dev += "${libdir}/${BPN}/"
-
-FILES_libicudata = "${libdir}/libicudata.so.*"
-FILES_libicuuc = "${libdir}/libicuuc.so.*"
-FILES_libicui18n = "${libdir}/libicui18n.so.*"
-FILES_libicule = "${libdir}/libicule.so.*"
-FILES_libiculx = "${libdir}/libiculx.so.*"
-FILES_libicutu = "${libdir}/libicutu.so.*"
-FILES_libicuio = "${libdir}/libicuio.so.*"
-
-BBCLASSEXTEND = "native"
-
-SSTATE_SCAN_FILES += "Makefile.inc"
diff --git a/meta/recipes-support/icu/icu.inc b/meta/recipes-support/icu/icu.inc
new file mode 100644
index 0000000000..f7257d13e8
--- /dev/null
+++ b/meta/recipes-support/icu/icu.inc
@@ -0,0 +1,52 @@
+SUMMARY = "International Component for Unicode libraries"
+DESCRIPTION = "The International Component for Unicode (ICU) is a mature, portable set of C/C++ and Java libraries for Unicode support, software internationalization (I18N) and globalization (G11N), giving applications the same results on all platforms."
+HOMEPAGE = "http://site.icu-project.org/"
+
+LICENSE = "ICU"
+DEPENDS = "icu-native"
+DEPENDS_class-native = ""
+
+S = "${WORKDIR}/icu/source"
+STAGING_ICU_SOURCE_DIR_NATIVE = "${STAGING_DATADIR_NATIVE}/icu"
+
+PARALLEL_MAKE = ""
+FULL_OPTIMIZATION_arm = "-Os"
+
+inherit autotools pkgconfig binconfig
+
+# ICU needs the native build directory as an argument to its --with-cross-build option when
+# cross-compiling. Taken the situation that different builds may share a common sstate-cache
+# into consideration, the native build directory needs to be staged.
+EXTRA_OECONF = "--with-cross-build=${STAGING_DATADIR_NATIVE}/icu/source"
+EXTRA_OECONF_class-native = ""
+
+# ICU puts custom m4 autoconf functions in aclocal.m4.
+# However, this file is deleted in our build system.
+# To make it work, we copy aclocal.m4 to acinclude.m4.
+# This is a bug of ICU. See bug reference:
+# http://bugs.icu-project.org/trac/ticket/9790
+do_configure_prepend() {
+ [ -f acinclude.m4 ] || cp aclocal.m4 acinclude.m4
+}
+
+do_install_append() {
+ if [ ${PN} == 'icu-native' ]; then
+ mkdir -p ${D}/${STAGING_ICU_SOURCE_DIR_NATIVE}
+ cp -r ${S} ${D}/${STAGING_ICU_SOURCE_DIR_NATIVE}
+ fi
+}
+
+PACKAGES =+ "libicudata libicuuc libicui18n libicule libiculx libicutu libicuio"
+
+FILES_${PN}-dev += "${libdir}/${BPN}/"
+
+FILES_libicudata = "${libdir}/libicudata.so.*"
+FILES_libicuuc = "${libdir}/libicuuc.so.*"
+FILES_libicui18n = "${libdir}/libicui18n.so.*"
+FILES_libicule = "${libdir}/libicule.so.*"
+FILES_libiculx = "${libdir}/libiculx.so.*"
+FILES_libicutu = "${libdir}/libicutu.so.*"
+FILES_libicuio = "${libdir}/libicuio.so.*"
+
+BBCLASSEXTEND = "native"
+
diff --git a/meta/recipes-support/icu/icu_3.6.bb b/meta/recipes-support/icu/icu_3.6.bb
deleted file mode 100644
index f50abe231c..0000000000
--- a/meta/recipes-support/icu/icu_3.6.bb
+++ /dev/null
@@ -1,6 +0,0 @@
-require icu-3.6.inc
-
-PR = "r10"
-
-SRC_URI[md5sum] = "6243f7a19e03e05403ce84e597510d4c"
-SRC_URI[sha256sum] = "5135e8d69d6206d320515df7aeee7027711ab1aef9d8dbf29571a97a9746b041"
diff --git a/meta/recipes-support/icu/icu_50.1.bb b/meta/recipes-support/icu/icu_50.1.bb
new file mode 100644
index 0000000000..8f65c6d262
--- /dev/null
+++ b/meta/recipes-support/icu/icu_50.1.bb
@@ -0,0 +1,11 @@
+require icu.inc
+
+LIC_FILES_CHKSUM = "file://../license.html;md5=4ee45701e87d34303281978e3b78ecda"
+
+PR = "r1"
+
+BASE_SRC_URI = "http://download.icu-project.org/files/icu4c/50.1/icu4c-50_1-src.tgz"
+SRC_URI = "${BASE_SRC_URI}"
+
+SRC_URI[md5sum] = "cf7bf9e56aa6c2057a8b6f464046483e"
+SRC_URI[sha256sum] = "68592b3c07d9b86100f41d0172eb1a81f3ffb2a8fef1104d7395099079ba7350" \ No newline at end of file