summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Korsgaard <jacmet@sunsite.dk>2010-05-23 23:29:38 +0200
committerPeter Korsgaard <jacmet@sunsite.dk>2010-05-23 23:32:49 +0200
commitda86b5aceeb2564d10f337e7c7fec01dafa4ad3f (patch)
treec182ab67650862ecf0e011b07486d5cc320a73a6
parent6bd9ca56d9f2eba062e09b4650c1d2b66375b199 (diff)
icu: fix build with gcc >= 4.4 / JLEVEL > 1
Fix two issues with the icu build: - icu source contains an #elif without any arguments, which g++ >= 4.4 flags as an error. This is both an issue for target and host build, so restructure the .mk so any *both*patch is applied to both builds (the other patches would cause trouble with host builds) - icu build system isn't parallel make safe, use MAKE1 Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-rw-r--r--CHANGES2
-rw-r--r--package/icu/icu-both-elif-no-arguments.patch23
-rw-r--r--package/icu/icu.mk5
3 files changed, 27 insertions, 3 deletions
diff --git a/CHANGES b/CHANGES
index 6d2fbf0d7..72b21584c 100644
--- a/CHANGES
+++ b/CHANGES
@@ -3,7 +3,7 @@
Fixes all over the tree.
Updated/fixed packages: aumix, avahi, busybox, cairo, cdrkit,
- fltk, gettext, gmpc, grep, hal, iconv, libcgicc, libglib2,
+ fltk, gettext, gmpc, grep, hal, iconv, icu, libcgicc, libglib2,
libidn, libmpd, libpcap, libsoup, lmbench, ltrace, lvm2, make,
mtd-utils, mutt, netsnmp, ntp, pango, php, psmisc, qt, samba,
sshfs, startup-notification, uemacs, util-linux, vpnc
diff --git a/package/icu/icu-both-elif-no-arguments.patch b/package/icu/icu-both-elif-no-arguments.patch
new file mode 100644
index 000000000..8941c53b1
--- /dev/null
+++ b/package/icu/icu-both-elif-no-arguments.patch
@@ -0,0 +1,23 @@
+[PATCH] icu: fix #elif without arguments
+
+ParagraphLayout.cpp contains an #elif without any arguments, which
+g++ >= 4.4 flags as an error. Fix it by replacing it with an #else.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ source/layoutex/ParagraphLayout.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: source/layoutex/ParagraphLayout.cpp
+===================================================================
+--- source.orig/layoutex/ParagraphLayout.cpp
++++ source/layoutex/ParagraphLayout.cpp
+@@ -813,7 +813,7 @@ le_int32 ParagraphLayout::getLanguageCod
+
+ return nullLanguageCode;
+ }
+-#elif
++#else
+
+ // TODO - dummy implementation for right now...
+ le_int32 ParagraphLayout::getLanguageCode(const Locale *locale)
diff --git a/package/icu/icu.mk b/package/icu/icu.mk
index 589c31fbb..17f153e64 100644
--- a/package/icu/icu.mk
+++ b/package/icu/icu.mk
@@ -21,6 +21,7 @@ $(ICU_DIR)/.unpacked: $(DL_DIR)/$(ICU_SOURCE)
$(CONFIG_UPDATE) $(ICU_DIR)
cp -a $(BUILD_DIR)/icu $(BUILD_DIR)/icu-host
toolchain/patch-kernel.sh $(ICU_DIR) package/icu/ \*.patch
+ toolchain/patch-kernel.sh $(ICU_HOST_DIR) package/icu/ \*both\*.patch
touch $(ICU_DIR)/.unpacked
$(ICU_HOST_DIR)/.configured: $(ICU_DIR)/.unpacked
@@ -45,13 +46,13 @@ $(ICU_DIR)/.configured: $(ICU_HOST_DIR)/.configured
touch $(ICU_DIR)/.configured
$(ICU_HOST_DIR)/.done: $(ICU_DIR)/.configured
- $(MAKE) -C $(ICU_HOST_DIR)
+ $(MAKE1) -C $(ICU_HOST_DIR)
ln -s -f $(ICU_HOST_DIR)/bin $(ICU_DIR)/bin-host
ln -s -f $(ICU_HOST_DIR)/lib $(ICU_DIR)/lib-host
touch $(ICU_HOST_DIR)/.done
$(ICU_DIR)/.done: $(ICU_HOST_DIR)/.done
- $(MAKE) -C $(ICU_DIR)
+ $(MAKE1) -C $(ICU_DIR)
$(MAKE) -C $(ICU_DIR) install DESTDIR=$(STAGING_DIR)
$(MAKE) -C $(ICU_DIR) install DESTDIR=$(TARGET_DIR)
$(SED) "s,^default_prefix=.*,default_prefix=\'$(STAGING_DIR)/usr\',g" $(STAGING_DIR)/usr/bin/icu-config