From b92a0d9208e1b1a33818a3c451e9952963295f6c Mon Sep 17 00:00:00 2001 From: Peter Foley Date: Tue, 25 Dec 2012 17:39:43 -0500 Subject: convert icu to gbuild and add to tail_build Change-Id: Id7d8bc05b1393cc2bae4a531c8a47f62df24b1d6 Reviewed-on: https://gerrit.libreoffice.org/1488 Reviewed-by: Tor Lillqvist Tested-by: Tor Lillqvist --- icu/ExternalPackage_icu.mk | 88 ++++++++++ icu/ExternalProject_icu.mk | 85 ++++++++++ icu/Makefile | 7 + icu/Module_icu.mk | 21 +++ icu/UnpackedTarball_icu.mk | 44 +++++ icu/UnpackedTarball_icu_data.mk | 14 ++ icu/icu4c-buffer-overflow.patch | 4 +- icu/icu4c-mkdir.patch | 2 +- icu/icu4c-solarisgcc.patch | 18 +- icu/icu4c-warnings.patch | 2 +- icu/makefile.mk | 352 ---------------------------------------- icu/prj/build.lst | 2 - icu/prj/d.lst | 49 ------ icu/prj/dmake | 0 14 files changed, 272 insertions(+), 416 deletions(-) create mode 100644 icu/ExternalPackage_icu.mk create mode 100644 icu/ExternalProject_icu.mk create mode 100644 icu/Makefile create mode 100644 icu/Module_icu.mk create mode 100644 icu/UnpackedTarball_icu.mk create mode 100644 icu/UnpackedTarball_icu_data.mk delete mode 100644 icu/makefile.mk delete mode 100644 icu/prj/dmake (limited to 'icu') diff --git a/icu/ExternalPackage_icu.mk b/icu/ExternalPackage_icu.mk new file mode 100644 index 000000000000..8c4f252c1ccb --- /dev/null +++ b/icu/ExternalPackage_icu.mk @@ -0,0 +1,88 @@ +# -*- 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_ExternalPackage_ExternalPackage,icu,icu)) + +$(eval $(call gb_ExternalPackage_use_external_project,icu,icu)) +ifeq ($(OS),WNT) +ifeq ($(COM),GCC) + +$(eval $(call gb_ExternalPackage_add_files,icu,bin,\ + source/lib/libicudt$(ICU_MAJOR)$(ICU_MINOR).dll \ + source/lib/libicuuc$(ICU_MAJOR)$(ICU_MINOR).dll \ + source/lib/libicuin$(ICU_MAJOR)$(ICU_MINOR).dll \ + source/lib/libicule$(ICU_MAJOR)$(ICU_MINOR).dll \ + source/lib/libicutu$(ICU_MAJOR)$(ICU_MINOR).dll \ + source/bin/genccode.exe \ + source/bin/genbrk.exe \ + source/bin/gencmn.exe \ +)) + +else +$(eval $(call gb_ExternalPackage_add_files,icu,lib,\ + source/lib/icudt.lib \ + source/lib/icuuc.lib \ + source/lib/icuin.lib \ + source/lib/icule.lib \ + source/lib/icutu.lib\ +)) +$(eval $(call gb_ExternalPackage_add_files,icu,bin,\ + source/lib/icudt$(ICU_MAJOR).dll \ + source/lib/icuuc$(ICU_MAJOR).dll \ + source/lib/icuin$(ICU_MAJOR).dll \ + source/lib/icule$(ICU_MAJOR).dll \ + source/lib/icutu$(ICU_MAJOR).dll \ + source/bin/genccode.exe \ + source/bin/genbrk.exe \ + source/bin/gencmn.exe \ +)) +endif +else # $(OS) +ifeq ($(DISABLE_DYNLOADING),TRUE) +$(eval $(call gb_ExternalPackage_add_files,icu,lib,\ + source/lib/libicudata.a \ + source/lib/libicuuc.a \ + source/lib/libicui18n.a \ + source/lib/libicule.a \ + source/lib/libicutu.a \ +)) +else ifeq ($(OS),ANDROID) +$(eval $(call gb_ExternalPackage_add_files,icu,lib,\ + source/lib/libicudatalo.so \ + source/lib/libicuuclo.so \ + source/lib/libicui18nlo.so \ + source/lib/libiculelo.so \ + source/lib/libicutulo.so \ +)) +else +$(eval $(call gb_ExternalPackage_add_files,icu,lib,\ + source/lib/libicudata.$(gb_Library_DLLEXT).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ + source/lib/libicudata.$(gb_Library_DLLEXT).$(ICU_MAJOR) \ + source/lib/libicudata.$(gb_Library_DLLEXT) \ + source/lib/libicuuc.$(gb_Library_DLLEXT).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ + source/lib/libicuuc.$(gb_Library_DLLEXT).$(ICU_MAJOR) \ + source/lib/libicuuc.$(gb_Library_DLLEXT) \ + source/lib/libicui18n.$(gb_Library_DLLEXT).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ + source/lib/libicui18n.$(gb_Library_DLLEXT).$(ICU_MAJOR) \ + source/lib/libicui18n.$(gb_Library_DLLEXT) \ + source/lib/libicule.$(gb_Library_DLLEXT).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ + source/lib/libicule.$(gb_Library_DLLEXT).$(ICU_MAJOR) \ + source/lib/libicule.$(gb_Library_DLLEXT) \ + source/lib/libicutu.$(gb_Library_DLLEXT).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ + source/lib/libicutu.$(gb_Library_DLLEXT).$(ICU_MAJOR) \ + source/lib/libicutu.$(gb_Library_DLLEXT) \ +)) +$(eval $(call gb_ExternalPackage_add_files,icu,bin,\ + source/bin/genccode \ + source/bin/genbrk \ + source/bin/gencmn \ +)) +endif +endif +# vim: set noet sw=4 ts=4: 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: diff --git a/icu/Makefile b/icu/Makefile new file mode 100644 index 000000000000..ccb1c85a04da --- /dev/null +++ b/icu/Makefile @@ -0,0 +1,7 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- + +module_directory:=$(dir $(realpath $(firstword $(MAKEFILE_LIST)))) + +include $(module_directory)/../solenv/gbuild/partial_build.mk + +# vim: set noet sw=4 ts=4: diff --git a/icu/Module_icu.mk b/icu/Module_icu.mk new file mode 100644 index 000000000000..524147b1e960 --- /dev/null +++ b/icu/Module_icu.mk @@ -0,0 +1,21 @@ +# -*- 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_Module_Module,icu)) + +ifeq ($(SYSTEM_ICU),NO) +$(eval $(call gb_Module_add_targets,icu,\ + UnpackedTarball_icu \ + UnpackedTarball_icu_data \ + ExternalPackage_icu \ + ExternalProject_icu \ +)) +endif + +# vim: set noet sw=4 ts=4: diff --git a/icu/UnpackedTarball_icu.mk b/icu/UnpackedTarball_icu.mk new file mode 100644 index 000000000000..ed58c3285422 --- /dev/null +++ b/icu/UnpackedTarball_icu.mk @@ -0,0 +1,44 @@ +# -*- 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_UnpackedTarball_UnpackedTarball,icu)) + +$(eval $(call gb_UnpackedTarball_set_tarball,icu,$(ICU_TARBALL))) + +# Save space when using a bundled ICU by leaving out unneeded parts of the ICU data. Generated by +# the interactive web tool at http://apps.icu-project.org/datacustom/ICUData49.html by dropping +# the "Charset Mapping Tables". Probably we could carefully cherry-pick other items in the data to +# be dropped, too. A bit tedious using that web tool, though. + +# If you do that, upload a new subset data zip file with just the MD5 part of the name changed +# appropriately. Let's not bother trying to list what stuff has been removed in the file name. +# Describe it in the comment above instead. +$(call gb_UnpackedTarball_get_target,icu): $(call gb_UnpackedTarball_get_target,icu_data) +$(eval $(call gb_UnpackedTarball_set_post_action,icu,\ + cp $(call gb_UnpackedTarball_get_dir,icu_data)/icudt49l.dat \ + $(call gb_UnpackedTarball_get_dir,icu)/source/data/in/ \ +)) + +$(eval $(call gb_UnpackedTarball_add_patches,icu,\ + icu/icu4c-bsd.patch \ + icu/icu4c-build.patch \ + icu/icu4c.8198.revert.icu5431.patch \ + icu/icu4c.7601.Indic-ccmp.patch \ + icu/icu4c-aix.patch \ + icu/icu4c-wchar_t.patch \ + icu/icu4c-warnings.patch \ + icu/icu4c.9313.cygwin.patch \ + icu/icu4c-macosx.patch \ + icu/icu4c-solarisgcc.patch \ + icu/icu4c-mkdir.patch \ + icu/icu4c-buffer-overflow.patch \ + icu/icu4c-$(if $(filter ANDROID,$(OS)),android,rpath).patch \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/icu/UnpackedTarball_icu_data.mk b/icu/UnpackedTarball_icu_data.mk new file mode 100644 index 000000000000..25274f1a595f --- /dev/null +++ b/icu/UnpackedTarball_icu_data.mk @@ -0,0 +1,14 @@ +# -*- 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_UnpackedTarball_UnpackedTarball,icu_data)) + +$(eval $(call gb_UnpackedTarball_set_tarball,icu_data,$(ICU_DATA_SUBSET_ZIP))) + +# vim: set noet sw=4 ts=4: diff --git a/icu/icu4c-buffer-overflow.patch b/icu/icu4c-buffer-overflow.patch index 8966be894941..7385d3b470d9 100644 --- a/icu/icu4c-buffer-overflow.patch +++ b/icu/icu4c-buffer-overflow.patch @@ -9,8 +9,8 @@ E: icu bufferoverflowstrncat pkgdata.cpp:299:87 Index: icu/source/tools/pkgdata/pkgdata.cpp =================================================================== ---- misc/build/icu.orig/source/tools/pkgdata/pkgdata.cpp -+++ misc/build/icu/source/tools/pkgdata/pkgdata.cpp +--- build/icu.orig/source/tools/pkgdata/pkgdata.cpp ++++ build/icu/source/tools/pkgdata/pkgdata.cpp @@ -1914,12 +1914,12 @@ static void loadLists(UPKGOptions *o, UE const char cmd[] = "icu-config --incpkgdatafile"; diff --git a/icu/icu4c-mkdir.patch b/icu/icu4c-mkdir.patch index 89249ea15858..859220c37207 100644 --- a/icu/icu4c-mkdir.patch +++ b/icu/icu4c-mkdir.patch @@ -1,5 +1,5 @@ --- misc/icu/source/dataMakefile.in.sav 2012-04-05 22:49:20.000000000 +0200 -+++ misc/build/icu/source/data/Makefile.in 2012-12-04 14:24:40.548026700 +0100 ++++ build/icu/source/data/Makefile.in 2012-12-04 14:24:40.548026700 +0100 @@ -346,6 +346,7 @@ ifeq ($(PKGDATA_MODE),dll) SO_VERSION_DATA = $(OUTTMPDIR)/icudata.res diff --git a/icu/icu4c-solarisgcc.patch b/icu/icu4c-solarisgcc.patch index d61ad3278294..11b13cfc050f 100644 --- a/icu/icu4c-solarisgcc.patch +++ b/icu/icu4c-solarisgcc.patch @@ -1,6 +1,6 @@ -diff -uriwb misc/build/icu.old/source/aclocal.m4 misc/build/icu/source/aclocal.m4 ---- misc/build/icu.old/source/aclocal.m4 2012-04-05 21:49:28.000000000 +0100 -+++ misc/build/icu/source/aclocal.m4 2012-06-21 15:44:57.299256932 +0100 +diff -uriwb build/icu.old/source/aclocal.m4 misc/build/icu/source/aclocal.m4 +--- build/icu.old/source/aclocal.m4 2012-04-05 21:49:28.000000000 +0100 ++++ build/icu/source/aclocal.m4 2012-06-21 15:44:57.299256932 +0100 @@ -455,7 +455,7 @@ case "${host}" in *-*-solaris*) @@ -21,9 +21,9 @@ diff -uriwb misc/build/icu.old/source/aclocal.m4 misc/build/icu/source/aclocal.m else case "${host}" in *-*-cygwin) -diff -uriwb misc/build/icu.old/source/common/uposixdefs.h misc/build/icu/source/common/uposixdefs.h ---- misc/build/icu.old/source/common/uposixdefs.h 2012-04-05 21:46:18.000000000 +0100 -+++ misc/build/icu/source/common/uposixdefs.h 2012-06-21 15:45:17.613369477 +0100 +diff -uriwb build/icu.old/source/common/uposixdefs.h misc/build/icu/source/common/uposixdefs.h +--- build/icu.old/source/common/uposixdefs.h 2012-04-05 21:46:18.000000000 +0100 ++++ build/icu/source/common/uposixdefs.h 2012-06-21 15:45:17.613369477 +0100 @@ -52,7 +52,7 @@ * * z/OS needs this definition for timeval and to get usleep. @@ -33,9 +33,9 @@ diff -uriwb misc/build/icu.old/source/common/uposixdefs.h misc/build/icu/source/ # define _XOPEN_SOURCE_EXTENDED 1 #endif -diff -uriwb misc/build/icu.old/source/configure misc/build/icu/source/configure ---- misc/build/icu.old/source/configure 2012-04-05 21:49:28.000000000 +0100 -+++ misc/build/icu/source/configure 2012-06-21 15:44:42.817030445 +0100 +diff -uriwb build/icu.old/source/configure misc/build/icu/source/configure +--- build/icu.old/source/configure 2012-04-05 21:49:28.000000000 +0100 ++++ build/icu/source/configure 2012-06-21 15:44:42.817030445 +0100 @@ -4264,7 +4264,7 @@ case "${host}" in *-*-solaris*) diff --git a/icu/icu4c-warnings.patch b/icu/icu4c-warnings.patch index 8ac632c42c6c..72566bc5e8ab 100644 --- a/icu/icu4c-warnings.patch +++ b/icu/icu4c-warnings.patch @@ -1,4 +1,4 @@ ---- misc/icu/source/common/unicode/ +--- misc/icu/source/common/unicode/utf16.h +++ misc/build/icu/source/common/unicode/utf16.h @@ -316,6 +316,7 @@ (s)[(i)++]=(uint16_t)(((c)&0x3ff)|0xdc00); \ diff --git a/icu/makefile.mk b/icu/makefile.mk deleted file mode 100644 index f20d9b5f223f..000000000000 --- a/icu/makefile.mk +++ /dev/null @@ -1,352 +0,0 @@ -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2000, 2010 Oracle and/or its affiliates. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# This file is part of OpenOffice.org. -# -# OpenOffice.org is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License version 3 -# only, as published by the Free Software Foundation. -# -# OpenOffice.org is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License version 3 for more details -# (a copy is included in the LICENSE file that accompanied this code). -# -# You should have received a copy of the GNU Lesser General Public License -# version 3 along with OpenOffice.org. If not, see -# -# for a copy of the LGPLv3 License. -# -#************************************************************************* -PRJ=. - -PRJNAME=icu -TARGET=so_icu - -# --- Settings ----------------------------------------------------- - -.INCLUDE : settings.mk - -# --- Files -------------------------------------------------------- - -TARFILE_NAME=icu4c-49_1_1-src -TARFILE_MD5=7c53f83e0327343f4060c0eb83842daf -TARFILE_ROOTDIR=icu - -#icu4c.7601.Indic-ccmp.patch -#http://bugs.icu-project.org/trac/ticket/7601 ccmp feature for Indic Languages - -#icu4c.8198.revert.icu5431.patch -#http://bugs.icu-project.org/trac/ticket/8198 rendering with 0D30 and 0D31 - -PATCH_FILES=\ - icu4c-bsd.patch \ - icu4c-build.patch \ - icu4c.8198.revert.icu5431.patch \ - icu4c.7601.Indic-ccmp.patch \ - icu4c-aix.patch \ - icu4c-wchar_t.patch \ - icu4c-warnings.patch \ - icu4c.9313.cygwin.patch \ - icu4c-macosx.patch \ - icu4c-solarisgcc.patch \ - icu4c-mkdir.patch \ - icu4c-buffer-overflow.patch \ - -.IF "$(OS)"=="ANDROID" -PATCH_FILES+=\ - icu4c-android.patch -icu_CFLAGS+=-fvisibility=hidden -icu_CXXFLAGS+=-fvisibility=hidden -.ELSE -PATCH_FILES+=\ - icu4c-rpath.patch -.ENDIF - -.IF "$(HAVE_GCC_BUILTIN_ATOMIC)"=="TRUE" -EXTRA_CDEFS+=-DU_HAVE_GCC_ATOMICS=1 -.ELSE -EXTRA_CDEFS+=-DU_HAVE_GCC_ATOMICS=0 -.ENDIF - -# Save space when using a bundled ICU by leaving out unneeded parts of the ICU data. Generated by -# the interactive web tool at http://apps.icu-project.org/datacustom/ICUData49.html by dropping -# the "Charset Mapping Tables". Probably we could carefully cherry-pick other items in the data to -# be dropped, too. A bit tedious using that web tool, though. - -# If you do that, upload a new subset data zip file with just the MD5 part of the name changed -# appropriately. Let's not bother trying to list what stuff has been removed in the file name. -# Describe it in the comment above instead. -CONFIGURE_ACTION=unzip $(TARFILE_LOCATION)/$(ICU_DATA_SUBSET_ZIP) && mv icudt49l.dat data/in && - -.IF "$(OS)"!="WNT" - -.IF "$(SYSBASE)"!="" -icu_CFLAGS+=-I$(SYSBASE)$/usr$/include -.IF "$(COMNAME)"=="sunpro5" -icu_CFLAGS+=$(C_RESTRICTIONFLAGS) -.ENDIF # "$(COMNAME)"=="sunpro5" -# add SYSBASE libraries and make certain that they are found *after* the -# icu build internal libraries - in case that icu is available in SYSBASE -# as well -icu_LDFLAGS+= -L../lib -L../../lib -L../stubdata -L../../stubdata -L$(SYSBASE)$/usr$/lib -.ENDIF # "$(SYSBASE)"!="" - -.IF "$(OS)"=="MACOSX" -.IF "$(EXTRA_CFLAGS)"!="" -CPP:=gcc -E $(EXTRA_CFLAGS) -CXX:=g++ $(EXTRA_CFLAGS) -CC:=gcc $(EXTRA_CFLAGS) -.EXPORT : CPP -.ENDIF # "$(EXTRA_CFLAGS)"!="" -.ENDIF # "$(OS)"=="MACOSX" - -.IF "$(debug)" != "" -icu_CFLAGS+=-g $(ARCH_FLAGS) -icu_CXXFLAGS+=-g $(ARCH_FLAGS) -.ELIF "$(COM)"=="GCC" -icu_CFLAGS+=-O2 -fno-strict-aliasing $(ARCH_FLAGS) -icu_CXXFLAGS+=-O2 -fno-strict-aliasing $(ARCH_FLAGS) -.ELSE -icu_CFLAGS+=-O $(ARCH_FLAGS) -icu_CXXFLAGS+=-O $(ARCH_FLAGS) -.ENDIF -icu_LDFLAGS+=$(EXTRA_LINKFLAGS) - -# until someone introduces SOLARIS 64-bit builds -.IF "$(OS)"=="SOLARIS" -DISABLE_64BIT=--enable-64bit-libs=no -.ENDIF # "$(OS)"=="SOLARIS" - -.IF "$(OS)"=="AIX" -DISABLE_64BIT=--enable-64bit-libs=no -LDFLAGSADD+=$(LINKFLAGS) $(LINKFLAGSRUNPATH_OOO) -.ENDIF # "$(OS)"=="AIX" - -.IF "$(HAVE_LD_HASH_STYLE)" == "TRUE" -LDFLAGSADD += -Wl,--hash-style=$(WITH_LINKER_HASH_STYLE) -.ENDIF - -.IF "$(OS)"=="IOS" -# Let's try this... -icu_CFLAGS+=-DUCONFIG_NO_FILE_IO -icu_CXXFLAGS+=-DUCONFIG_NO_FILE_IO -.ENDIF - -.IF "$(OS)"=="ANDROID" -# Problems with uint64_t on Android unless disabling strictness -DISABLE_STRICT=--disable-strict -icu_CFLAGS+=-fno-omit-frame-pointer -icu_CXXFLAGS+=-fno-omit-frame-pointer -.ENDIF - -.IF "$(OS)"=="IOS" || "$(OS)"=="ANDROID" -# Problems on Android unless disabling dynamic loading -DISABLE_DYLOAD=--disable-dyload -.ENDIF - -.IF "$(HAVE_LD_BSYMBOLIC_FUNCTIONS)" == "TRUE" -LDFLAGSADD += -Wl,-Bsymbolic-functions -Wl,--dynamic-list-cpp-new -Wl,--dynamic-list-cpp-typeinfo -.ENDIF - -CONFIGURE_DIR=source - -.IF "$(DISABLE_DYNLOADING)" == "TRUE" -STATIC_OR_SHARED=--enable-static --disable-shared -.ELSE -STATIC_OR_SHARED=--disable-static --enable-shared -.ENDIF - -.IF "$(CROSS_COMPILING)"=="YES" -# We require that the cross-build-toolset target from the top Makefile(.in) has bee built -BUILD_AND_HOST=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) --with-cross-build=$(posix_PWD)/$(INPATH_FOR_BUILD)/misc/build/icu/source -.ENDIF - -.IF "$(OS)"=="ANDROID" -.IF "$(DISABLE_DYNLOADING)" != "TRUE" -LIBRARY_SUFFIX= --with-library-suffix=lo -.ENDIF -# Just so that some executables that nobody will run anyway get built... -icu_LDFLAGS+=-lgnustl_shared -lm -.ENDIF - -CONFIGURE_ACTION+=sh -c 'CPPFLAGS="$(EXTRA_CDEFS)" CFLAGS="$(icu_CFLAGS)" CXXFLAGS="$(icu_CXXFLAGS)" LDFLAGS="$(icu_LDFLAGS) $(LDFLAGSADD)" \ -./configure --enable-layout --disable-samples $(STATIC_OR_SHARED) $(BUILD_AND_HOST) $(DISABLE_64BIT) $(DISABLE_STRICT) $(DISABLE_DYLOAD) $(LIBRARY_SUFFIX)' - -.IF "$(OS)" == "MACOSX" -CONFIGURE_ACTION += \ - --prefix=/@.__________________________________________________$(EXTRPATH) -.END - -CONFIGURE_FLAGS= - -# Use of -# CONFIGURE_ACTION=sh -c 'CFLAGS=-O CXXFLAGS=-O ./configure' -# CONFIGURE_FLAGS=--enable-layout --enable-static --enable-shared=yes --enable-64bit-libs=no -# doesn't work as it would result in -# sh -c 'CFLAGS=-O CXXFLAGS=-O ./configure' --enable-layout ... -# note the position of the single quotes. - -BUILD_DIR=$(CONFIGURE_DIR) -BUILD_ACTION=$(AUGMENT_LIBRARY_PATH) $(GNUMAKE) -j$(EXTMAXPROCESS) -.IF "$(DISABLE_DYNLOADING)" == "TRUE" -OUT2LIB= \ - $(BUILD_DIR)$/lib$/libicudata.a \ - $(BUILD_DIR)$/lib$/libicuuc.a \ - $(BUILD_DIR)$/lib$/libicui18n.a \ - $(BUILD_DIR)$/lib$/libicule.a \ - $(BUILD_DIR)$/lib$/libicutu.a -.ELIF "$(OS)"=="ANDROID" # The no longer normal, non-DISABLE_DYNLOADING case for Android -BUILD_ACTION+= && cat uconfig.h.prepend common/unicode/uconfig.h >common/unicode/uconfig.h.new && mv common/unicode/uconfig.h.new common/unicode/uconfig.h -OUT2LIB= \ - $(BUILD_DIR)$/lib$/libicudatalo.so \ - $(BUILD_DIR)$/lib$/libicuuclo.so \ - $(BUILD_DIR)$/lib$/libicui18nlo.so \ - $(BUILD_DIR)$/lib$/libiculelo.so \ - $(BUILD_DIR)$/lib$/libicutulo.so -.ELSE -OUT2LIB= \ - $(BUILD_DIR)$/lib$/libicudata$(DLLPOST).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ - $(BUILD_DIR)$/lib$/libicudata$(DLLPOST).$(ICU_MAJOR) \ - $(BUILD_DIR)$/lib$/libicudata$(DLLPOST) \ - $(BUILD_DIR)$/lib$/libicuuc$(DLLPOST).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ - $(BUILD_DIR)$/lib$/libicuuc$(DLLPOST).$(ICU_MAJOR) \ - $(BUILD_DIR)$/lib$/libicuuc$(DLLPOST) \ - $(BUILD_DIR)$/lib$/libicui18n$(DLLPOST).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ - $(BUILD_DIR)$/lib$/libicui18n$(DLLPOST).$(ICU_MAJOR) \ - $(BUILD_DIR)$/lib$/libicui18n$(DLLPOST) \ - $(BUILD_DIR)$/lib$/libicule$(DLLPOST).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ - $(BUILD_DIR)$/lib$/libicule$(DLLPOST).$(ICU_MAJOR) \ - $(BUILD_DIR)$/lib$/libicule$(DLLPOST) \ - $(BUILD_DIR)$/lib$/libicutu$(DLLPOST).$(ICU_MAJOR).$(ICU_MINOR).$(ICU_MICRO) \ - $(BUILD_DIR)$/lib$/libicutu$(DLLPOST).$(ICU_MAJOR) \ - $(BUILD_DIR)$/lib$/libicutu$(DLLPOST) - -OUT2BIN_NONE= \ - $(BUILD_DIR)$/bin$/genccode \ - $(BUILD_DIR)$/bin$/genbrk \ - $(BUILD_DIR)$/bin$/gencmn -.ENDIF - -.ENDIF - -.IF "$(OS)"=="WNT" -CONFIGURE_DIR=source -.IF "$(COM)"=="GCC" -.IF "$(MINGW_SHARED_GCCLIB)"=="YES" -icu_LDFLAGS+=-shared-libgcc -.ENDIF -icu_LDFLAGS+=-L$(COMPATH)$/lib -icu_LIBS= -.IF "$(MINGW_SHARED_GXXLIB)"=="YES" -icu_LIBS+=$(MINGW_SHARED_LIBSTDCPP) -.ENDIF -icu_LDFLAGS+=-Wl,--enable-runtime-pseudo-reloc-v2 - -.IF "$(CROSS_COMPILING)"=="YES" -# We require that the cross-build-toolset target from the top Makefile(.in) has bee built -BUILD_AND_HOST=--build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) --with-cross-build=$(posix_PWD)/$(INPATH_FOR_BUILD)/misc/build/icu/source -.ELSE -BUILD_AND_HOST=--build=i586-pc-mingw32 --enable-64bit-libs=no -.ENDIF - -CONFIGURE_ACTION+=sh -c 'CPPFLAGS="$(EXTRA_CDEFS)" CFLAGS="-O -D_MT" CXXFLAGS="-O -D_MT" LDFLAGS="$(icu_LDFLAGS)" LIBS="$(icu_LIBS)" \ -./configure $(BUILD_AND_HOST) --enable-layout --disable-static --enable-shared --disable-samples' - -CONFIGURE_FLAGS= - -# Use of -# CONFIGURE_ACTION=sh -c 'CFLAGS=-O CXXFLAGS=-O ./configure' -# CONFIGURE_FLAGS=--enable-layout --enable-static --enable-shared=yes --enable-64bit-libs=no -# doesn't work as it would result in -# sh -c 'CFLAGS=-O CXXFLAGS=-O ./configure' --enable-layout ... -# note the position of the single quotes. - -BUILD_DIR=$(CONFIGURE_DIR) -BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS) -OUT2LIB= - -OUT2BIN= \ - $(BUILD_DIR)$/lib$/icudt$(ICU_MAJOR)$(ICU_MINOR)$(DLLPOST) \ - $(BUILD_DIR)$/lib$/icuuc$(ICU_MAJOR)$(ICU_MINOR)$(DLLPOST) \ - $(BUILD_DIR)$/lib$/icuin$(ICU_MAJOR)$(ICU_MINOR)$(DLLPOST) \ - $(BUILD_DIR)$/lib$/icule$(ICU_MAJOR)$(ICU_MINOR)$(DLLPOST) \ - $(BUILD_DIR)$/lib$/icutu$(ICU_MAJOR)$(ICU_MINOR)$(DLLPOST) \ - $(BUILD_DIR)$/bin$/genccode.exe \ - $(BUILD_DIR)$/bin$/genbrk.exe \ - $(BUILD_DIR)$/bin$/gencmn.exe - -.ELSE -BUILD_DIR=source -CONFIGURE_ACTION+=bash ./runConfigureICU Cygwin/MSVC -BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS) - -OUT2LIB= \ - $(BUILD_DIR)$/lib$/icudt.lib \ - $(BUILD_DIR)$/lib$/icuin$(ICU_BUILD_LIBPOST).lib \ - $(BUILD_DIR)$/lib$/icuuc$(ICU_BUILD_LIBPOST).lib \ - $(BUILD_DIR)$/lib$/icule$(ICU_BUILD_LIBPOST).lib \ - $(BUILD_DIR)$/lib$/icutu$(ICU_BUILD_LIBPOST).lib - -OUT2BIN= \ - $(BUILD_DIR)$/lib$/icudt$(ICU_MAJOR).dll \ - $(BUILD_DIR)$/lib$/icuin$(ICU_MAJOR)$(ICU_BUILD_LIBPOST).dll \ - $(BUILD_DIR)$/lib$/icuuc$(ICU_MAJOR)$(ICU_BUILD_LIBPOST).dll \ - $(BUILD_DIR)$/lib$/icule$(ICU_MAJOR)$(ICU_BUILD_LIBPOST).dll \ - $(BUILD_DIR)$/lib$/icutu$(ICU_MAJOR)$(ICU_BUILD_LIBPOST).dll \ - $(BUILD_DIR)$/bin$/genccode.exe \ - $(BUILD_DIR)$/bin$/genbrk.exe \ - $(BUILD_DIR)$/bin$/gencmn.exe - -.ENDIF -.ENDIF # "$(OS)"=="WNT" - -#make sure that when we deliver the headers of a new icu that the timestamps -#are newer than the last icu to ensure dependencies are correctly rebuilt -INSTALL_ACTION=find . -name "*.h" -print0 | xargs -0 touch - -# --- Targets ------------------------------------------------------ - -.INCLUDE : set_ext.mk -.INCLUDE : target.mk -.INCLUDE : tg_ext.mk - -.IF "$(BINARY_PATCH_FILES)"!="" - -$(PACKAGE_DIR)$/so_add_binary : $(PACKAGE_DIR)$/$(ADD_FILES_FLAG_FILE) - cd $(PACKAGE_DIR) && gunzip -c $(BACK_PATH)$(BINARY_PATCH_FILES) | tar -xvf - - $(TOUCH) $(PACKAGE_DIR)$/so_add_binary - -$(PACKAGE_DIR)$/$(CONFIGURE_FLAG_FILE) : $(PACKAGE_DIR)$/so_add_binary - -.ENDIF - -.IF "$(OS)$(COM)"=="WNTGCC" -ALLTAR : \ - $(LB)$/icudata.lib \ - $(LB)$/icuin$(ICU_BUILD_LIBPOST).lib \ - $(LB)$/icuuc$(ICU_BUILD_LIBPOST).lib \ - $(LB)$/icule$(ICU_BUILD_LIBPOST).lib \ - $(LB)$/icutu$(ICU_BUILD_LIBPOST).lib - -$(LB)$/icudata.lib : $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE) - $(TOUCH) $@ - -$(LB)$/icuin$(ICU_BUILD_LIBPOST).lib : $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE) - $(TOUCH) $@ - -$(LB)$/icuuc$(ICU_BUILD_LIBPOST).lib : $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE) - $(TOUCH) $@ - -$(LB)$/icule$(ICU_BUILD_LIBPOST).lib : $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE) - $(TOUCH) $@ - -$(LB)$/icutu$(ICU_BUILD_LIBPOST).lib : $(PACKAGE_DIR)$/$(PREDELIVER_FLAG_FILE) - $(TOUCH) $@ -.ENDIF diff --git a/icu/prj/build.lst b/icu/prj/build.lst index c633589000c6..3a1f86bf2117 100644 --- a/icu/prj/build.lst +++ b/icu/prj/build.lst @@ -1,4 +1,2 @@ ic icu : solenv external NULL ic icu usr1 - all ic_mkout NULL -ic icu nmake - u ic_icu NULL -ic icu nmake - w,vc7 ic_icu NULL diff --git a/icu/prj/d.lst b/icu/prj/d.lst index d5fc11a2a74c..e69de29bb2d1 100644 --- a/icu/prj/d.lst +++ b/icu/prj/d.lst @@ -1,49 +0,0 @@ -mkdir: %_DEST%\inc\icu -mkdir: %_DEST%\inc\external\layout -mkdir: %_DEST%\inc\external\unicode -..\%__SRC%\misc\build\icu\source\layout\*.h %_DEST%\inc\external\layout\*.h -..\%__SRC%\misc\build\icu\source\common\unicode\*.h %_DEST%\inc\external\unicode\*.h -..\%__SRC%\misc\build\icu\source\i18n\unicode\*.h %_DEST%\inc\external\unicode\*.h - -..\%__SRC%\lib\*.a %_DEST%\lib\*.a -..\%__SRC%\lib\*.lib %_DEST%\lib\*.lib -..\%__SRC%\lib\*.lib %_DEST%\lib - -..\%__SRC%\bin\*.dll %_DEST%\bin\*.dll - -..\%__SRC%\bin\genccode %_DEST%\bin\genccode -..\%__SRC%\bin\genccode.exe %_DEST%\bin\genccode.exe -..\%__SRC%\bin\genbrk %_DEST%\bin\genbrk -..\%__SRC%\bin\genbrk.exe %_DEST%\bin\genbrk.exe -..\%__SRC%\bin\gencmn %_DEST%\bin\gencmn -..\%__SRC%\bin\gencmn.exe %_DEST%\bin\gencmn.exe - -..\%__SRC%\lib\libicudata.*.*.* %_DEST%\lib\ -..\%__SRC%\lib\libicui18n.*.*.* %_DEST%\lib\ -..\%__SRC%\lib\libicule.*.*.* %_DEST%\lib\ -..\%__SRC%\lib\libicuuc.*.*.* %_DEST%\lib\ -..\%__SRC%\lib\libicutu.*.*.* %_DEST%\lib\ - -..\%__SRC%\lib\libicudata.so %_DEST%\lib\ -..\%__SRC%\lib\libicui18n.so %_DEST%\lib\ -..\%__SRC%\lib\libicule.so %_DEST%\lib\ -..\%__SRC%\lib\libicuuc.so %_DEST%\lib\ -..\%__SRC%\lib\libicutu.so %_DEST%\lib\ - -..\%__SRC%\lib\libicudatalo.so %_DEST%\lib\ -..\%__SRC%\lib\libicui18nlo.so %_DEST%\lib\ -..\%__SRC%\lib\libiculelo.so %_DEST%\lib\ -..\%__SRC%\lib\libicuuclo.so %_DEST%\lib\ -..\%__SRC%\lib\libicutulo.so %_DEST%\lib\ - -..\%__SRC%\lib\libicudata.a %_DEST%\lib\ -..\%__SRC%\lib\libicui18n.a %_DEST%\lib\ -..\%__SRC%\lib\libicule.a %_DEST%\lib\ -..\%__SRC%\lib\libicuuc.a %_DEST%\lib\ -..\%__SRC%\lib\libicutu.a %_DEST%\lib\ - -linklib: libicudata.*.*.* -linklib: libicui18n.*.*.* -linklib: libicule.*.*.* -linklib: libicuuc.*.*.* -linklib: libicutu.*.*.* diff --git a/icu/prj/dmake b/icu/prj/dmake deleted file mode 100644 index e69de29bb2d1..000000000000 -- cgit