summaryrefslogtreecommitdiff
path: root/meta/recipes-support/icu
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-09-01 19:09:11 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-09-01 19:09:57 +0100
commitd62ee7eaf2ba025c3f64b2d4e10dc7cec4637612 (patch)
treef36fe3008f36ff75cbdd31b630f8f13f1f205ebb /meta/recipes-support/icu
parentcaab7fc509bf27706ff3248689f6afd04225cfda (diff)
downloadopenembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.gz
openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.bz2
openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.tar.xz
openembedded-core-d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612.zip
packages: Separate out most of the remaining packages into recipes
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta/recipes-support/icu')
-rw-r--r--meta/recipes-support/icu/files/gccfix.patch13
-rw-r--r--meta/recipes-support/icu/files/noldlibpath.patch47
-rw-r--r--meta/recipes-support/icu/files/use-g++-for-linking.patch67
-rw-r--r--meta/recipes-support/icu/icu-3.6.inc55
-rw-r--r--meta/recipes-support/icu/icu_3.6.bb3
5 files changed, 185 insertions, 0 deletions
diff --git a/meta/recipes-support/icu/files/gccfix.patch b/meta/recipes-support/icu/files/gccfix.patch
new file mode 100644
index 000000000..9291e921d
--- /dev/null
+++ b/meta/recipes-support/icu/files/gccfix.patch
@@ -0,0 +1,13 @@
+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/noldlibpath.patch b/meta/recipes-support/icu/files/noldlibpath.patch
new file mode 100644
index 000000000..eba3d805d
--- /dev/null
+++ b/meta/recipes-support/icu/files/noldlibpath.patch
@@ -0,0 +1,47 @@
+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
+
+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
new file mode 100644
index 000000000..4702abc06
--- /dev/null
+++ b/meta/recipes-support/icu/files/use-g++-for-linking.patch
@@ -0,0 +1,67 @@
+---
+ 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
new file mode 100644
index 000000000..1c611bdf3
--- /dev/null
+++ b/meta/recipes-support/icu/icu-3.6.inc
@@ -0,0 +1,55 @@
+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;apply=yes \
+ file://use-g++-for-linking.patch;apply=yes"
+SRC_URI = "${BASE_SRC_URI} \
+ file://noldlibpath.patch;apply=yes"
+SRC_URI_virtclass-native = "${BASE_SRC_URI}"
+
+LICENSE = "ICU"
+LIC_FILES_CHKSUM = "file://../license.html;md5=5c94767cedb5d6987c902ac850ded2c6"
+DEPENDS = "icu-native"
+DEPENDS_virtclass-native = ""
+
+S = "${WORKDIR}/icu/source"
+
+PARALLEL_MAKE = ""
+FULL_OPTIMIZATION_arm = "-Os"
+
+inherit autotools pkgconfig binconfig
+
+do_configure() {
+ libtoolize --force
+ gnu-configize --force
+ 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*
+}
+
+PACKAGES =+ "libicudata libicuuc libicui18n libicule libiculx libicutu libicuio"
+
+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
new file mode 100644
index 000000000..504211600
--- /dev/null
+++ b/meta/recipes-support/icu/icu_3.6.bb
@@ -0,0 +1,3 @@
+require icu-3.6.inc
+
+PR = "r6"