diff options
author | Tor Lillqvist <tml@iki.fi> | 2012-12-27 19:23:04 +0200 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2012-12-27 19:23:04 +0200 |
commit | 879f3aa79f524658f0698717e3eef5c361310531 (patch) | |
tree | bb31cfe26e566945349ed95e5fbb224a11f46016 | |
parent | b3c6ae8f5022b5f600043857151c1aff3b6a01ba (diff) |
Fix icu cross-compilation
We need to pass the location of the icu build root for the BUILD platform with
the --with-cross-build option when configuring icu for cross-compilation (to
the HOST platform). I.e. we always need to build it for the BUILD
platform. Surely this could be done in a more elegant way, but I got lost in
the mess, and just hacked it in the cross-toolset rule in Makefile.in.
Change-Id: Ia5e9d13d01067c6dded1fdc86c56f8f39aae6bc8
-rw-r--r-- | Makefile.in | 6 | ||||
-rw-r--r-- | icu/ExternalProject_icu.mk | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/Makefile.in b/Makefile.in index d4d4b9f465e5..2a56db0ae489 100644 --- a/Makefile.in +++ b/Makefile.in @@ -292,7 +292,13 @@ build-nocheck : export SKIP_TESTS := YES build-nocheck : build cross-toolset: bootstrap fetch +# We need to build icu for the build platform, as building icu for the host +# platform requires tools built as part of icu that can run on the build +# platform. see --with-cross-build in icu/ExternalProject_icu.mk + $(GNUMAKE) gb_Side=build icu +# cd cross_toolset && $(GNUMAKE) -j $(PARALLELISM) $(GMAKE_OPTIONS) +# ifneq (,$(filter DESKTOP,$(BUILD_TYPE))) ifneq (WNT,$(OS)) # We need to build nss for nsinstall... See NSINSTALL=... in nss/makefile.mk diff --git a/icu/ExternalProject_icu.mk b/icu/ExternalProject_icu.mk index 0758d3777e89..2be2957bedca 100644 --- a/icu/ExternalProject_icu.mk +++ b/icu/ExternalProject_icu.mk @@ -37,7 +37,7 @@ $(call gb_ExternalProject_get_state_target,icu,build) : $(if $(filter YES,$(MINGW_SHARED_GCCLIB)),-shared-libgcc)" \ ./configure $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) \ - --with-cross-build=$(call gb_UnpackedTarball_get_dir,icu)/source) \ + --with-cross-build=$(subst $(INPATH),$(INPATH_FOR_BUILD),$(call gb_UnpackedTarball_get_dir,icu))/source) \ --enable-layout --disable-static --enable-shared --disable-samples \ && $(GNUMAKE) \ && for lib in icudata icuin icuuc icule icutu; do \ @@ -76,7 +76,7 @@ $(call gb_ExternalProject_get_state_target,icu,build) : $(if $(filter TRUE,$(DISABLE_DYNLOADING)),--enable-static --disable-shared,\ --disable-static --enable-shared $(if $(filter ANDROID,$(OS)),--with-library-suffix=lo)) \ $(if $(filter YES,$(CROSS_COMPILING)),--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM)\ - --with-cross-build=$(call gb_UnpackedTarball_get_dir,icu)/source)\ + --with-cross-build=$(subst $(INPATH),$(INPATH_FOR_BUILD),$(call gb_UnpackedTarball_get_dir,icu))/source)\ && $(GNUMAKE) \ && touch $@ |