From b0bb3f5e7ea9e89c4d1d87f9ae3d46963cb154ad Mon Sep 17 00:00:00 2001 From: "Steven R. Loomis" Date: Wed, 14 Apr 2004 19:37:00 +0000 Subject: [PATCH] ICU-2487 move collation data X-SVN-Rev: 14964 --- icu4c/source/data/Makefile.in | 143 ++++++++++++++++++++++------------ icu4c/source/icudefs.mk.in | 3 +- 2 files changed, 95 insertions(+), 51 deletions(-) diff --git a/icu4c/source/data/Makefile.in b/icu4c/source/data/Makefile.in index 1220d3c493..bce5627028 100644 --- a/icu4c/source/data/Makefile.in +++ b/icu4c/source/data/Makefile.in @@ -20,9 +20,6 @@ subdir = data LIB_ICUDATA_NAME=lib$(ICUDATA_NAME) LIB_STATIC_ICUDATA_NAME=lib$(STATIC_PREFIX)$(ICUDATA_NAME) -# sanity! -ICUDT=$(ICUDATA_PLATFORM_NAME)_ - # Allow Windows to override these options ifeq ($(PKGDATA_OPTS),) PKGDATA_OPTS = -O $(top_builddir)/data/icupkg.inc @@ -33,15 +30,19 @@ endif top_builddir_from_tmp = $(patsubst ..%,../..%,$(top_builddir)) CURDIR:=$(CURR_FULL_DIR) -PKGDATA = $(BINDIR)/pkgdata $(PKGDATA_OPTS) -c -d $(CURDIR)/out +PKGDATA = $(BINDIR)/pkgdata $(PKGDATA_OPTS) -c -s $(CURDIR)/out/build/$(ICUDATA_PLATFORM_NAME) -d $(OUTDIR) + # OBJDATADIR must be a short path (with ..'s) to the data. SRCDATADIR=$(top_srcdir)/data OUTDIR=$(top_builddir)/data/out -BUILDDIR=$(OUTDIR)/build +OUTTMPDIR=$(top_builddir)/data/out/tmp +BUILDDIR=$(OUTDIR)/build/$(ICUDATA_PLATFORM_NAME) UNICODEDATADIR=$(SRCDATADIR)/unidata LOCSRCDIR=$(SRCDATADIR)/locales +COLSRCDIR=$(SRCDATADIR)/coll +COLBLDDIR=$(BUILDDIR)/coll TRNSSRCDIR=$(SRCDATADIR)/translit MISCSRCDIR=$(SRCDATADIR)/misc BRKSRCDIR=$(SRCDATADIR)/brkitr @@ -79,7 +80,7 @@ OS390PKG=package390 OS390INSTALL=install390 # Additional data for 390 -OS390LIST=$(BUILDDIR)/icudata390.lst +OS390LIST=$(OUTTMPDIR)/icudata390.lst endif all-local: icupkg.inc build-local packagedata testdata $(POST_DATA_BUILD) packagetest $(OS390PKG) @@ -106,7 +107,7 @@ check-local: # We don't want to try to write over files that we are using. PKGDATA_INVOKE:=$(subst :$(top_builddir)/data/out,,$(INVOKE)) $(PKGDATA_INVOKE_OPTS) -packagedata: icupkg.inc $(BUILDDIR)/icudata.lst build-local +packagedata: icupkg.inc $(OUTTMPDIR)/icudata.lst build-local ifneq ($(ENABLE_STATIC),) # Move the shared library out of the way while creating the static library # to prevent name collisions. @@ -116,56 +117,58 @@ endif ifeq ($(wildcard $(OUTDIR)/$(LIB_STATIC_ICUDATA_NAME).$(A)),$(OUTDIR)/$(LIB_STATIC_ICUDATA_NAME).$(A)) mv -f $(OUTDIR)/$(LIB_STATIC_ICUDATA_NAME).$(A) $(OUTDIR)/$(LIB_ICUDATA_NAME).$(A) endif - $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(BUILDDIR) -p $(ICUDATA_NAME) -m static $(BUILDDIR)/icudata.lst + $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBNAME) -m static $(OUTTMPDIR)/icudata.lst mv -f $(OUTDIR)/$(LIB_ICUDATA_NAME).$(A) $(OUTDIR)/$(LIB_STATIC_ICUDATA_NAME).$(A) ifeq ($(wildcard $(OUTDIR)/$(LIB_ICUDATA_NAME)-temp.$(SO)),$(OUTDIR)/$(LIB_ICUDATA_NAME)-temp.$(SO)) mv -f $(OUTDIR)/$(LIB_ICUDATA_NAME)-temp.$(SO) $(OUTDIR)/$(LIB_ICUDATA_NAME).$(SO) endif endif - $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(BUILDDIR) -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) $(BUILDDIR)/icudata.lst + $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) $(PKGDATA_LIBNAME) $(OUTTMPDIR)/icudata.lst ## Install ICU data. -install-local: $(BUILDDIR)/icudata.lst ./icupkg.inc packagedata $(OS390INSTALL) +install-local: $(OUTTMPDIR)/icudata.lst ./icupkg.inc packagedata $(OS390INSTALL) $(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(ICUPKGDATA_DIR) ifneq ($(ENABLE_STATIC),) # It is done this way just in case the $(SO) == $(A) mv -f $(OUTDIR)/$(LIB_ICUDATA_NAME).$(SO) $(OUTDIR)/$(LIB_ICUDATA_NAME)-temp.$(SO) mv -f $(OUTDIR)/$(LIB_STATIC_ICUDATA_NAME).$(A) $(OUTDIR)/$(LIB_ICUDATA_NAME).$(A) - $(PKGDATA_INVOKE) $(PKGDATA) -m static -e $(ICUDATA_ENTRY_POINT) -T $(BUILDDIR) -p $(ICUDATA_NAME) $(BUILDDIR)/icudata.lst + $(PKGDATA_INVOKE) $(PKGDATA) -m static -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBNAME) $(OUTTMPDIR)/icudata.lst mv -f $(OUTDIR)/$(LIB_ICUDATA_NAME).$(A) $(OUTDIR)/$(LIB_STATIC_ICUDATA_NAME).$(A) mv -f $(OUTDIR)/$(LIB_ICUDATA_NAME)-temp.$(SO) $(OUTDIR)/$(LIB_ICUDATA_NAME).$(SO) $(INSTALL-L) $(OUTDIR)/$(LIB_STATIC_ICUDATA_NAME).$(A) $(DESTDIR)$(ICUPKGDATA_DIR)/$(LIB_STATIC_ICUDATA_NAME).$(A) endif - $(PKGDATA_INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) -e $(ICUDATA_ENTRY_POINT) -T $(BUILDDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(BUILDDIR)/icudata.lst -I $(DESTDIR)$(ICUPKGDATA_DIR) + $(PKGDATA_INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBNAME) $(OUTTMPDIR)/icudata.lst -I $(DESTDIR)$(ICUPKGDATA_DIR) #### #### #### 390 support -install390: $(BUILDDIR)/icudata390.lst ./icupkg.inc +install390: $(OUTTMPDIR)/icudata390.lst ./icupkg.inc $(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(libdir) - $(INVOKE) $(PKGDATA) -s $(BUILDDIR) -T $(BUILDDIR)/tmp3901 -p $(ICUDATA_NAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(BUILDDIR)/icudata390.lst -m dll $(PKGDATA_VERSIONING) -I $(DESTDIR)$(ICUPKGDATA_DIR) + $(INVOKE) $(PKGDATA) -s $(BUILDDIR) -T $(OUTTMPDIR)/tmp3901 -p $(ICUDATA_NAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(OUTTMPDIR)/icudata390.lst -m dll $(PKGDATA_VERSIONING) -I $(DESTDIR)$(ICUPKGDATA_DIR) ifeq ($(PKGDATA_MODE),dll) $(INSTALL-L) $(OUTDIR)/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX)$(SO_TARGET_VERSION)$(IMPORT_LIB_EXT) $(DESTDIR)$(ICUPKGDATA_DIR)/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX)$(SO_TARGET_VERSION)$(IMPORT_LIB_EXT) endif #### $(LIB_ICUDATA_NAME)$(BATCH_SUFFIX) is the subset data for batch mode -package390: $(BUILDDIR)/icudata390.lst $(BUILDDIR)/icudata.lst ./icupkg.inc +package390: $(OUTTMPDIR)/icudata390.lst $(OUTTMPDIR)/icudata.lst ./icupkg.inc @$(MKINSTALLDIRS) $(BUILDDIR)/tmp3901 - $(INVOKE) $(PKGDATA) -s $(BUILDDIR) -T $(BUILDDIR)/tmp3901 -p $(ICUDATA_NAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(BUILDDIR)/icudata390.lst -m dll $(PKGDATA_VERSIONING) + $(INVOKE) $(PKGDATA) -s $(BUILDDIR) -T $(OUTTMPDIR)/tmp3901 -p $(ICUDATA_NAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(BUILDDIR)/icudata390.lst -m dll $(PKGDATA_VERSIONING) cp $(OUTDIR)/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX).$(SO) $(top_builddir)/stubdata/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX).$(SO) ##### Define all the data files. the build rule that depends on them is below. +# X_FILES_SHORT = just the base names (for lists) +# X_FILES = full paths (for dependency) ## DAT files - Misc. data files. DAT_FILES_SHORT=uprops.icu pnames.icu unames.icu unorm.icu cnvalias.icu ucadata.icu invuca.icu uidna.spp -DAT_FILES=$(DAT_FILES_SHORT:%=$(BUILDDIR)/$(ICUDT)%) +DAT_FILES=$(DAT_FILES_SHORT:%=$(BUILDDIR)/%) ## BRK files # ALL of these files can be deleted (the following BRK files) - they are copied BRK_FILES_SHORT=char.brk line.brk line_th.brk sent.brk word.brk title.brk word_th.brk -BRK_FILES=$(BRK_FILES_SHORT:%=$(BUILDDIR)/$(ICUDT)%) +BRK_FILES=$(BRK_FILES_SHORT:%=$(BUILDDIR)/%) # don't include thaidict.brk - it goes into a resource bundle - plus it isn't deleted ## UCM files @@ -175,14 +178,20 @@ BRK_FILES=$(BRK_FILES_SHORT:%=$(BUILDDIR)/$(ICUDT)%) -include $(UCMSRCDIR)/ucmlocal.mk ALL_UCM_SOURCE=ibm-37_P100-1995.ucm ibm-1047_P100-1995.ucm $(UCM_SOURCE_CORE) $(UCM_SOURCE_FILES) $(UCM_SOURCE_EBCDIC) $(UCM_SOURCE_LOCAL) UCM_FILES = $(ALL_UCM_SOURCE:%=$(SRCDATADIR)/%) -CNV_FILES = $(ALL_UCM_SOURCE:%.ucm=$(BUILDDIR)/$(ICUDT)%.cnv) +CNV_FILES = $(ALL_UCM_SOURCE:%.ucm=$(BUILDDIR)/%.cnv) +CNV_FILES_SHORT = $(ALL_UCM_SOURCE:%.ucm=%.cnv) ## RES files -include $(LOCSRCDIR)/resfiles.mk +-include $(COLSRCDIR)/colfiles.mk -include $(LOCSRCDIR)/reslocal.mk +-include $(COLSRCDIR)/collocal.mk RES_SOURCE= root.txt $(GENRB_SOURCE) $(GENRB_ALIAS_SOURCE) $(GENRB_SOURCE_LOCAL) RES_SRC_FILES = $(RES_SOURCE:%=$(LOCSRCDIR)/%) INSTALLED_RB_FILES = $(GENRB_SOURCE:%.txt=%) $(GENRB_SOURCE_LOCAL:%.txt=%) +COL_SOURCE= root.txt $(COLLATION_SOURCE) $(COLLATION_ALIAS_SOURCE) $(COLLATION_SOURCE_LOCAL) +COL_SRC_FILES = $(COL_SOURCE:%=$(COLSRCDIR)/%) +INSTALLED_COL_FILES = $(COLLATION_SOURCE:%.txt=%) $(COLLATION_SOURCE_LOCAL:%.txt=%) GENRBOPTS=-k -q ## TRNS files @@ -198,13 +207,25 @@ MSC_SOURCE= $(MISC_SOURCE) $(MISC_SOURCE_LOCAL) MSC_SRC_FILES=$(MSC_SOURCE:%=$(MISCSRCDIR)/%) ALL_RES_SOURCE= $(RES_SOURCE) $(TRNS_SOURCE) $(MSC_SOURCE) -RES_FILES = $(ALL_RES_SOURCE:%.txt=$(BUILDDIR)/$(ICUDT)%.res) +RES_FILES = $(ALL_RES_SOURCE:%.txt=$(BUILDDIR)/%.res) +RES_FILES_SHORT = $(ALL_RES_SOURCE:%.txt=%.res) -INDEX_FILES=$(BUILDDIR)/res_index.txt -INDEX_RES_FILES=$(INDEX_FILES:$(BUILDDIR)/%.txt=$(BUILDDIR)/$(ICUDT)%.res) +INDEX_NAME=res_index +INDEX_FILE=$(OUTTMPDIR)/$(INDEX_NAME).txt +INDEX_RES_FILE=$(INDEX_FILE:$(OUTTMPDIR)/%.txt=$(BUILDDIR)/%.res) +INDEX_RES_FILE_SHORT=$(INDEX_FILE:$(OUTTMPDIR)/%.txt=%.res) + +COLLATION_TREE=coll +COLLATION_INDEX_FILE=$(OUTTMPDIR)/$(COLLATION_TREE)/$(INDEX_NAME).txt +COLLATION_INDEX_RES=$(COLBLDDIR)/$(INDEX_NAME).res +COLLATION_INDEX_RES_SHORT=$(COLLATION_TREE)/$(INDEX_NAME).res +COLLATION_FILES = $(COL_SOURCE:%.txt=$(COLBLDDIR)/%.res) $(COLLATION_INDEX_RES) +COLLATION_FILES_SHORT = $(COL_SOURCE:%.txt=$(COLLATION_TREE)/%.res) ## All generated files -ALL_FILES = $(DAT_FILES) $(CNV_FILES) $(BRK_FILES) $(RES_FILES) $(INDEX_RES_FILES) +ALL_FILES = $(DAT_FILES) $(CNV_FILES) $(BRK_FILES) $(RES_FILES) $(INDEX_RES_FILE) $(COLLATION_FILES) +# a list to use in the .lst files (package-relative) +ALL_FILES_LIST = $(DAT_FILES_SHORT) $(CNV_FILES_SHORT) $(BRK_FILES_SHORT) $(RES_FILES_SHORT) $(INDEX_RES_FILE_SHORT) $(COLLATION_FILES_SHORT) $(COLLATION_INDEX_RES_SHORT) ##################################################### # General data build rules @@ -212,19 +233,19 @@ ALL_FILES = $(DAT_FILES) $(CNV_FILES) $(BRK_FILES) $(RES_FILES) $(INDEX_RES_FILE ## Files to remove for 'make clean' CLEANFILES = *~ icupkg.inc -$(BUILDDIR)/icudata.lst: $(SRCLISTDEPS) +$(OUTTMPDIR)/icudata.lst: $(SRCLISTDEPS) @echo "generating $@ (list of data files)" @-$(RMV) $@ - @for file in $(ALL_FILES); do \ + @for file in $(ALL_FILES_LIST); do \ echo $$file >> $@; \ done; build-local: build-dir build-data build-testdata -build-data: build-dir $(ALL_FILES) $(BUILDDIR)/icudata.lst $(OS390LIST) +build-data: build-dir $(ALL_FILES) $(OUTTMPDIR)/icudata.lst $(OS390LIST) build-dir: - -$(MKINSTALLDIRS) $(OUTDIR) $(BUILDDIR) $(TESTOUTDIR) $(TESTBUILDDIR) + -$(MKINSTALLDIRS) $(OUTDIR) $(BUILDDIR) $(COLBLDDIR) $(TESTOUTDIR) $(TESTBUILDDIR) $(OUTTMPDIR) $(OUTTMPDIR)/$(COLLATION_TREE) # Now, sections for building each kind of data. @@ -233,31 +254,31 @@ build-dir: # DAT FILES # uprops.icu -$(BUILDDIR)/$(ICUDT)uprops.icu: $(UNICODEDATADIR)/UnicodeData.txt $(UNICODEDATADIR)/BidiMirroring.txt $(BINDIR)/genprops$(EXEEXT) $(BUILDDIR)/$(ICUDT)pnames.icu +$(BUILDDIR)/uprops.icu: $(UNICODEDATADIR)/UnicodeData.txt $(UNICODEDATADIR)/BidiMirroring.txt $(BINDIR)/genprops$(EXEEXT) $(BUILDDIR)/$(ICUDT)pnames.icu $(INVOKE) $(BINDIR)/genprops -s $(UNICODEDATADIR) -i $(BUILDDIR) -d $(BUILDDIR) -u $(UNICODE_VERSION) # pnames.icu -$(BUILDDIR)/$(ICUDT)pnames.icu: $(UNICODEDATADIR)/PropertyAliases.txt $(UNICODEDATADIR)/PropertyValueAliases.txt $(UNICODEDATADIR)/Blocks.txt $(COMINCDIR)/uscript.h $(COMINCDIR)/uchar.h $(BINDIR)/genpname$(EXEEXT) +$(BUILDDIR)/pnames.icu: $(UNICODEDATADIR)/PropertyAliases.txt $(UNICODEDATADIR)/PropertyValueAliases.txt $(UNICODEDATADIR)/Blocks.txt $(COMINCDIR)/uscript.h $(COMINCDIR)/uchar.h $(BINDIR)/genpname$(EXEEXT) $(INVOKE) $(BINDIR)/genpname -d $(BUILDDIR) # unorm.icu -$(BUILDDIR)/$(ICUDT)unorm.icu: $(UNICODEDATADIR)/UnicodeData.txt $(UNICODEDATADIR)/DerivedNormalizationProps.txt $(UNICODEDATADIR)/BidiMirroring.txt $(BINDIR)/gennorm$(EXEEXT) $(BUILDDIR)/$(ICUDT)uprops.icu +$(BUILDDIR)/unorm.icu: $(UNICODEDATADIR)/UnicodeData.txt $(UNICODEDATADIR)/DerivedNormalizationProps.txt $(UNICODEDATADIR)/BidiMirroring.txt $(BINDIR)/gennorm$(EXEEXT) $(BUILDDIR)/$(ICUDT)uprops.icu $(INVOKE) $(BINDIR)/gennorm -s $(UNICODEDATADIR) -d $(BUILDDIR) -u $(UNICODE_VERSION) # ucadata.icu -$(BUILDDIR)/$(ICUDT)ucadata.icu $(BUILDDIR)/$(ICUDT)invuca.icu: $(UNICODEDATADIR)/FractionalUCA.txt $(BINDIR)/genuca$(EXEEXT) $(BUILDDIR)/$(ICUDT)unorm.icu +$(BUILDDIR)/ucadata.icu $(BUILDDIR)/$(ICUDT)invuca.icu: $(UNICODEDATADIR)/FractionalUCA.txt $(BINDIR)/genuca$(EXEEXT) $(BUILDDIR)/$(ICUDT)unorm.icu $(INVOKE) $(BINDIR)/genuca -s $(UNICODEDATADIR) -d $(BUILDDIR) -i $(BUILDDIR) # unames.icu -$(BUILDDIR)/$(ICUDT)unames.icu: $(UNICODEDATADIR)/UnicodeData.txt $(BINDIR)/gennames$(EXEEXT) +$(BUILDDIR)/unames.icu: $(UNICODEDATADIR)/UnicodeData.txt $(BINDIR)/gennames$(EXEEXT) $(INVOKE) $(BINDIR)/gennames -1 -d $(BUILDDIR) $(UNICODEDATADIR)/UnicodeData.txt -u $(UNICODE_VERSION) # cnvalias.icu -$(BUILDDIR)/$(ICUDT)cnvalias.icu: $(UCMSRCDIR)/convrtrs.txt $(BINDIR)/gencnval$(EXEEXT) +$(BUILDDIR)/cnvalias.icu: $(UCMSRCDIR)/convrtrs.txt $(BINDIR)/gencnval$(EXEEXT) $(INVOKE) $(BINDIR)/gencnval -d $(BUILDDIR) $(UCMSRCDIR)/convrtrs.txt # uidna.spp -$(BUILDDIR)/$(ICUDT)uidna.spp: $(MISCSRCDIR)/NamePrepProfile.txt $(BINDIR)/gensprep$(EXEEXT) $(BUILDDIR)/$(ICUDT)uprops.icu $(BUILDDIR)/$(ICUDT)unames.icu $(BUILDDIR)/$(ICUDT)pnames.icu +$(BUILDDIR)/uidna.spp: $(MISCSRCDIR)/NamePrepProfile.txt $(BINDIR)/gensprep$(EXEEXT) $(BUILDDIR)/uprops.icu $(BUILDDIR)/unames.icu $(BUILDDIR)/pnames.icu $(INVOKE) $(BINDIR)/gensprep -d $(BUILDDIR) -i $(BUILDDIR) -s $(MISCSRCDIR) -b uidna -n $(UNICODEDATADIR) -u 3.2.0 -k NamePrepProfile.txt #################################################### BRK @@ -266,33 +287,55 @@ $(BUILDDIR)/$(ICUDT)uidna.spp: $(MISCSRCDIR)/NamePrepProfile.txt $(BINDIR)/gensp thaidict.brk: $(SRCDATADIR)/thaidict.brk $(RMV) $@ && ln -s $(BUILDDIR) $@ -$(BUILDDIR)/$(ICUDT)%.brk: $(BRKSRCDIR)/%.txt $(BINDIR)/genbrk$(EXEEXT) $(DAT_FILES) +$(BUILDDIR)/%.brk: $(BRKSRCDIR)/%.txt $(BINDIR)/genbrk$(EXEEXT) $(DAT_FILES) $(INVOKE) $(BINDIR)/genbrk -c -i $(BUILDDIR) -r $< -o $@ #################################################### CNV # CNV FILES -$(BUILDDIR)/$(ICUDT)%.cnv: $(UCMSRCDIR)/%.ucm $(BINDIR)/makeconv$(EXEEXT) - $(INVOKE) $(BINDIR)/makeconv -p $(ICUDATA_PLATFORM_NAME) -c -d $(BUILDDIR) $(UCMSRCDIR)/$( $@; \ + echo "$(INDEX_NAME) {" >> $@; \ + echo " InstalledLocales {" >> $@; \ + for file in $(INSTALLED_COL_FILES); do \ + echo " $$file {\"\"}" >> $@; \ + done; \ + echo " }" >> $@; \ + echo "}" >> $@; + + + +### normal (locale) res all-RES: $(RES_FILES) -$(BUILDDIR)/$(ICUDT)%.res: $(LOCSRCDIR)/%.txt $(BINDIR)/genrb$(EXEEXT) $(DAT_FILES) - $(INVOKE) $(BINDIR)/genrb $(GENRBOPTS) -p $(ICUDATA_PLATFORM_NAME) -i $(BUILDDIR) -s $(LOCSRCDIR) -d $(BUILDDIR) $( $@; \ - echo "res_index {" >> $@; \ + echo "$(INDEX_NAME) {" >> $@; \ echo " InstalledLocales {" >> $@; \ for file in $(INSTALLED_RB_FILES); do \ echo " $$file {\"\"}" >> $@; \ @@ -301,10 +344,10 @@ $(BUILDDIR)/res_index.txt: $(SRCLISTDEPS) echo "}" >> $@; clean-resindex: - -$(RMV) $(BUILDDIR)/res_index.txt $(BUILDDIR)/icudata.lst + -$(RMV) $(BUILDDIR)/$(INDEX_NAME).txt $(OUTTMPDIR)/icudata.lst -$(BUILDDIR)/$(ICUDT)%.res: $(INDEX_FILES) $(BINDIR)/genrb$(EXEEXT) - $(INVOKE) $(BINDIR)/genrb $(GENRBOPTS) -p $(ICUDATA_PLATFORM_NAME) -i $(BUILDDIR) -d $(BUILDDIR) $(INDEX_FILES) +$(INDEX_RES_FILE): $(INDEX_FILE) $(BINDIR)/genrb$(EXEEXT) + $(INVOKE) $(BINDIR)/genrb $(GENRBOPTS) -i $(BUILDDIR) -d $(BUILDDIR) $(INDEX_FILE) ################################################################### Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @@ -320,11 +363,11 @@ icupkg.inc: $(srcdir)/icupkg.inc.in $(top_builddir)/config.status UCMFILES390=ebcdic-xml-us.ucm ibm-37_P100-1995.ucm ibm-1047_P100-1995.ucm ibm-4909_P100-1999.ucm ALLFILES390=uprops.icu pnames.icu unorm.icu cnvalias.icu $(UCMFILES390:.ucm=.cnv) -$(BUILDDIR)/icudata390.lst: $(SRCLISTDEPS) +$(OUTTMPDIR)/icudata390.lst: $(SRCLISTDEPS) @echo "generating $@ (list of 390 data files)" @-$(RMV) $@ @for file in $(ALLFILES390); do \ - echo $(BUILDDIR)/$(ICUDT)$$file >> $@; \ + echo $(BUILDDIR)/$$file >> $@; \ done; ######################################################################### diff --git a/icu4c/source/icudefs.mk.in b/icu4c/source/icudefs.mk.in index 28701e95ee..42f75b40d3 100644 --- a/icu4c/source/icudefs.mk.in +++ b/icu4c/source/icudefs.mk.in @@ -53,7 +53,8 @@ ICUDATA_NAME = $(ICUDATA_PLATFORM_NAME) ICUPKGDATA_DIR = $(ICUDATA_DIR) else ifeq ($(PKGDATA_MODE),dll) -ICUDATA_NAME = $(ICUPREFIX)data$(ICULIBSUFFIX) +ICUDATA_NAME = $(ICUDATA_PLATFORM_NAME) +PKGDATA_LIBNAME = -L $(ICUPREFIX)data$(ICULIBSUFFIX) ICUPKGDATA_DIR = $(libdir) else ICUDATA_NAME = $(ICUPREFIX)data