Kaydet (Commit) 5386b763 authored tarafından Caolán McNamara's avatar Caolán McNamara

configure icu for windows via runConfigureICU Cygwin/MSVC

which should hopefully
a) work
b) unblock the upgrade path for icu

Change-Id: Ic70a627f3135e53016a4f9cfdef3fc85d55ab3e4
üst 777bbda9
Library providing Unicode support, from [http://site.icu-project.org/]. Library providing Unicode support, from [http://site.icu-project.org/].
== Makefiles ==
The procedure of creating and maintaining makefiles.zip
The automatically generated makefiles are not necessarily optimal.
The build is started from allinone/all directory, and the all.mak file is used
to build the entire module through. Each subtarget in this file is going to be
made recursively unless there is a switch RECURSE=0. If the switch is available,
for each subtarget all its prerequisites should be made earlier than the subtarget itself.
Therefore, you should order the ALL target's prerequisites so that they are going
to be built in a consistent order. Unfortunately there's no automatic process for it,
just prove the prerequisites for each subtarget and push them forward in target's ALL
prerequisites list. The changes between generated & optimized all.mak can be seen when
comparing the files from v1.5 & v1.6 of makefiles.zip.
This diff is collapsed.
This diff is collapsed.
diff -ur misc/icu/source/data/Makefile.in misc/build/icu/source/data/Makefile.in
--- misc/icu/source/data/Makefile.in Mi Jul 21 12:19:00 2010
+++ misc/build/icu/source/data/Makefile.in Mi Jul 21 12:20:58 2010
@@ -77,7 +77,7 @@
MISCSRCDIR=$(SRCDATADIR)/misc
UCMSRCDIR=$(SRCDATADIR)/mappings
COMINCDIR=$(top_srcdir)/common/unicode
-SRCLISTDEPS=Makefile $(srcdir)/Makefile.in
+SRCLISTDEPS=Makefile $(srcdir)/Makefile.in build-dir
BUILD_DIRS=$(OUTDIR) $(MAINBUILDDIR) $(BUILDDIR) $(BRKBLDDIR) $(COLBLDDIR) $(RBNFBLDDIR) $(TRANSLITBLDDIR) $(OUTTMPDIR) $(OUTTMPDIR_390STUB) $(OUTTMPDIR)/$(COLLATION_TREE) $(OUTTMPDIR)/$(RBNF_TREE) $(OUTTMPDIR)/$(TRANSLIT_TREE) $(OUTTMPDIR)/$(BREAK_TREE)
# relative lib links from pkgdata are the same as for tmp
diff -ru misc/icu/source/data/Makefile.in misc/build/icu//source/data/Makefile.in
--- misc/icu/source/data/Makefile.in Do Jan 15 08:46:48 2009
+++ misc/build/icu//source/data/Makefile.in Mi Jul 21 11:37:49 2010
@@ -132,7 +132,7 @@
# and convert it to the current type.
ifneq ($(ICUDATA_ARCHIVE),)
ICUDATA_SOURCE_ARCHIVE = $(OUTDIR)/$(ICUDATA_PLATFORM_NAME).dat
-$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR)
+$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) build-dir
$(INVOKE) $(BINDIR)/icupkg -t$(ICUDATA_CHAR) $(ICUDATA_ARCHIVE) $(ICUDATA_SOURCE_ARCHIVE)
endif
else
This source diff could not be displayed because it is too large. You can view the blob instead.
--- misc/icu/source/config/mh-cygwin-msvc 2012-05-10 11:42:22.886869800 +0100
+++ misc/build/icu/source/config/mh-cygwin-msvc 2012-05-10 11:42:45.110227500 +0100
@@ -43,10 +43,9 @@
# /GF pools strings and places them into read-only memory
# /EHsc enables exception handling
-# /Zc:wchar_t makes wchar_t a native type. Required for C++ ABI compatibility.
# -D_CRT_SECURE_NO_DEPRECATE is needed to quiet warnings about using standard C functions.
-CFLAGS+=/GF /nologo
-CXXFLAGS+=/GF /nologo /EHsc /Zc:wchar_t
+CFLAGS+=/GF /nologo /Zc:wchar_t-
+CXXFLAGS+=/GF /nologo /EHsc /Zc:wchar_t-
CPPFLAGS+=-D_CRT_SECURE_NO_DEPRECATE
DEFS+=-DWIN32
DEFS+=-DCYGWINMSVC
...@@ -49,7 +49,7 @@ PATCH_FILES=\ ...@@ -49,7 +49,7 @@ PATCH_FILES=\
icu4c-rpath.patch \ icu4c-rpath.patch \
icu4c.8320.freeserif.crash.patch \ icu4c.8320.freeserif.crash.patch \
icu4c-aix.patch \ icu4c-aix.patch \
icu4c-4_4_2-wchar_t.patch \ icu4c-wchar_t.patch \
icu4c-warnings.patch \ icu4c-warnings.patch \
icu4c-escapespace.patch \ icu4c-escapespace.patch \
icu4c-strict-c.patch \ icu4c-strict-c.patch \
...@@ -241,7 +241,7 @@ CONFIGURE_FLAGS= ...@@ -241,7 +241,7 @@ CONFIGURE_FLAGS=
# note the position of the single quotes. # note the position of the single quotes.
BUILD_DIR=$(CONFIGURE_DIR) BUILD_DIR=$(CONFIGURE_DIR)
BUILD_ACTION=$(GNUMAKE) BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS)
OUT2LIB= OUT2LIB=
OUT2BIN= \ OUT2BIN= \
...@@ -256,61 +256,25 @@ OUT2BIN= \ ...@@ -256,61 +256,25 @@ OUT2BIN= \
.ELSE .ELSE
BUILD_DIR=source BUILD_DIR=source
.IF "full_debug" == "" CONFIGURE_ACTION=bash ./runConfigureICU Cygwin/MSVC
BUILD_ACTION=$(GNUMAKE) -j$(EXTMAXPROCESS)
# Activating the debug mechanism produces incompatible libraries, you'd have
# at least to relink all modules that are directly using ICU. Note that library
# names get a 'd' appended and you'd have to edit the solenv/inc/libs.mk
# ICU*LIB macros as well. Normally you don't want all this.
#
# Instead, use the normal already existing Release build and edit the
# corresponding *.vcproj file of the section you're interested in. Make sure
# that
# - for the VCCLCompilerTool section the following line exists:
# DebugInformationFormat="3"
# - and for the VCLinkerTool the line
# GenerateDebugInformation="TRUE"
# Then delete the corresponding Release output directory, and delete the target
# flag files
# $(OUTPATH)/misc/build/so_built_so_icu
# $(OUTPATH)/misc/build/so_predeliver_so_icu
# and run dmake again, after which you may copy the resulting libraries to your
# OOo/SO installation.
ICU_BUILD_VERSION=Debug
ICU_BUILD_LIBPOST=d
.ELSE
ICU_BUILD_VERSION=Release
ICU_BUILD_LIBPOST=
.ENDIF
.IF "$(CPUNAME)" == "INTEL"
ICU_BUILD_ARCH=Win32
.ELSE
ICU_BUILD_ARCH=x64
.ENDIF
.IF "$(CCNUMVER)" >= "001600000000"
BUILD_ACTION=cd allinone && MSBuild.exe allinone.sln /p:Configuration=$(ICU_BUILD_VERSION) /p:Platform=$(ICU_BUILD_ARCH)
.ELSE
BUILD_ACTION=cd allinone && $(COMPATH)$/vcpackages$/vcbuild.exe allinone.sln "$(ICU_BUILD_VERSION)|$(ICU_BUILD_ARCH)"
.ENDIF
OUT2LIB= \ OUT2LIB= \
$(BUILD_DIR)$/..$/lib$/icudt.lib \ $(BUILD_DIR)$/lib$/icudt.lib \
$(BUILD_DIR)$/..$/lib$/icuin$(ICU_BUILD_LIBPOST).lib \ $(BUILD_DIR)$/lib$/icuin$(ICU_BUILD_LIBPOST).lib \
$(BUILD_DIR)$/..$/lib$/icuuc$(ICU_BUILD_LIBPOST).lib \ $(BUILD_DIR)$/lib$/icuuc$(ICU_BUILD_LIBPOST).lib \
$(BUILD_DIR)$/..$/lib$/icule$(ICU_BUILD_LIBPOST).lib \ $(BUILD_DIR)$/lib$/icule$(ICU_BUILD_LIBPOST).lib \
$(BUILD_DIR)$/..$/lib$/icutu$(ICU_BUILD_LIBPOST).lib $(BUILD_DIR)$/lib$/icutu$(ICU_BUILD_LIBPOST).lib
OUT2BIN= \ OUT2BIN= \
$(BUILD_DIR)$/..$/bin$/icudt$(ICU_MAJOR)$(ICU_MINOR).dll \ $(BUILD_DIR)$/lib$/icudt$(ICU_MAJOR)$(ICU_MINOR).dll \
$(BUILD_DIR)$/..$/bin$/icuin$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \ $(BUILD_DIR)$/lib$/icuin$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \
$(BUILD_DIR)$/..$/bin$/icuuc$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \ $(BUILD_DIR)$/lib$/icuuc$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \
$(BUILD_DIR)$/..$/bin$/icule$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \ $(BUILD_DIR)$/lib$/icule$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \
$(BUILD_DIR)$/..$/bin$/icutu$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \ $(BUILD_DIR)$/lib$/icutu$(ICU_MAJOR)$(ICU_MINOR)$(ICU_BUILD_LIBPOST).dll \
$(BUILD_DIR)$/..$/bin$/genccode.exe \ $(BUILD_DIR)$/bin$/genccode.exe \
$(BUILD_DIR)$/..$/bin$/genbrk.exe \ $(BUILD_DIR)$/bin$/genbrk.exe \
$(BUILD_DIR)$/..$/bin$/gencmn.exe $(BUILD_DIR)$/bin$/gencmn.exe
.ENDIF .ENDIF
.ENDIF # "$(GUI)"=="WNT" .ENDIF # "$(GUI)"=="WNT"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment