diff options
author | Peter Foley <pefoley2@verizon.net> | 2012-12-25 17:39:43 -0500 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2012-12-27 15:53:39 +0000 |
commit | b92a0d9208e1b1a33818a3c451e9952963295f6c (patch) | |
tree | f468dbf463d43f6f43b56e0a0eed7bec84f00a5b /icu/ExternalProject_icu.mk | |
parent | e7f7053b227cf109c3cf733d0c698e51aed159a3 (diff) |
convert icu to gbuild and add to tail_build
Change-Id: Id7d8bc05b1393cc2bae4a531c8a47f62df24b1d6
Reviewed-on: https://gerrit.libreoffice.org/1488
Reviewed-by: Tor Lillqvist <tml@iki.fi>
Tested-by: Tor Lillqvist <tml@iki.fi>
Diffstat (limited to 'icu/ExternalProject_icu.mk')
-rw-r--r-- | icu/ExternalProject_icu.mk | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/icu/ExternalProject_icu.mk b/icu/ExternalProject_icu.mk new file mode 100644 index 000000000000..0758d3777e89 --- /dev/null +++ b/icu/ExternalProject_icu.mk @@ -0,0 +1,85 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_ExternalProject_ExternalProject,icu)) + +$(eval $(call gb_ExternalProject_use_unpacked,icu,icu)) + +$(eval $(call gb_ExternalProject_use_package,icu,icu_data)) + +$(eval $(call gb_ExternalProject_register_targets,icu,\ + build \ +)) + +icu_CPPFLAGS:="-DHAVE_GCC_ATOMICS=$(if $(filter TRUE,$(GCC_HAVE_BUILTIN_ATOMIC)),1,0)" + +ifeq ($(OS),WNT) + +ifeq ($(COM),MSC) +$(call gb_ExternalProject_get_state_target,icu,build) : + cd $(EXTERNAL_WORKDIR)/source \ + && export LIB="$(ILIB)" \ + && CFLAGS="$(SOLARINC)" CPPFLAGS="$(SOLARINC)" CXXFLAGS="$(SOLARINC)" ./runConfigureICU Cygwin/MSVC \ + && $(GNUMAKE) \ + && touch $@ +else +$(call gb_ExternalProject_get_state_target,icu,build) : + cd $(EXTERNAL_WORKDIR)/source \ + && CPPFLAGS=$(icu_CPPFLAGS) CFLAGS="-O -D_MT" CXXFLAGS="-O -D_MT" \ + LIBS="$(if $(filter YES,$(MINGW_SHARED_GXXLIB)),$(MINGW_SHARED_LIBSTDCPP))" \ + LDFLAGS="-L$(COMPATH)/lib -Wl,--enable-runtime-pseudo-reloc-v2 \ + $(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) \ + --enable-layout --disable-static --enable-shared --disable-samples \ + && $(GNUMAKE) \ + && for lib in icudata icuin icuuc icule icutu; do \ + @touch $$lib; \ + done \ + && touch $@ +endif + +else # $(OS) + +icu_CFLAGS:="$(if $(filter ANDROID,$(OS)),-fvisibility=hidden -fno-omit-frame-pointer) \ + $(if $(filter IOS,$(OS)),-DUCONFIG_NO_FILE_IO) \ + $(if $(SYSBASE),-I$(SYSBASE)/usr/include) \ + $(if $(debug),-g,\ + $(if $(filter GCC,$(COM)),-O2 -fno-strict-aliasing,-O))" +icu_CXXFLAGS:="$(if $(filter ANDROID,$(OS)),-fvisibility=hidden -fno-omit-frame-pointer) \ + $(if $(filter IOS,$(OS)),-DUCONFIG_NO_FILE_IO) \ + $(if $(debug),-g,\ + $(if $(filter GCC,$(COM)),-O2 -fno-strict-aliasing,-O))" +icu_LDFLAGS:="$(if $(filter TRUE,$(HAVE_LD_HASH_STYLE)),-Wl$(COMMA)--hash-style=$(WITH_LINKER_HASH_STYLE)) \ + $(if $(SYSBASE),-L../lib -L../../lib -L../stubdata -L../../stubdata -L$(SYSBASE)/usr/lib) \ + $(if $(filter TRUE,$(HAVE_LD_BSYMBOLIC_FUNCTIONS)),\ + -Wl$(COMMA)-Bsymbolic-functions -Wl$(COMMA)--dynamic-list-cpp-new -Wl$(COMMA)--dynamic-list-cpp-typeinfo) \ + $(if $(filter ANDROID,$(OS)),-lgnustl_shared -lm)" + +$(call gb_ExternalProject_get_state_target,icu,build) : + cd $(EXTERNAL_WORKDIR)/source \ + && CPPFLAGS=$(icu_CPPFLAGS) CFLAGS=$(icu_CFLAGS) \ + CXXFLAGS=$(icu_CXXFLAGS) LDFLAGS=$(icu_LDFLAGS) \ + ./configure \ + --enable-layout --disable-samples \ + $(if $(filter IOS ANDROID,$(OS)),--disable-dyload) \ + $(if $(filter ANDROID,$(OS)),--disable-strict) \ + $(if $(filter SOLARIS AIX,$(OS)),--disable-64bit-libs) \ + $(if $(filter MACOSX,$(OS)),--prefix=/@.__________________________________________________OOO) \ + $(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)\ + && $(GNUMAKE) \ + && touch $@ + +endif + +# vim: set noet sw=4 ts=4: |