diff --git a/icu4c/source/config/Makefile.inc.in b/icu4c/source/config/Makefile.inc.in index 72e57891c0f..77709dc09ff 100644 --- a/icu4c/source/config/Makefile.inc.in +++ b/icu4c/source/config/Makefile.inc.in @@ -2,7 +2,7 @@ #****************************************************************************** # Copyright (C) 1999-2001, International Business Machines # Corporation and others. All Rights Reserved. -# $Revision: 1.19 $ +# $Revision: 1.20 $ #****************************************************************************** # This Makefile is designed to be included into projects which make use # of the ICU. @@ -101,8 +101,15 @@ ifeq ($(strip $(PKGDATA_MODE)),) PKGDATA_MODE=@DATA_PACKAGING_MODE@ endif ifeq ($(PKGDATA_MODE),common) -ICUDATA_DIR=$(pkgdatadir) +ICUDATA_DIR = $(pkgdatadir) +ICUPKGDATA_DIR = $(ICUDATA_DIR)/$(VERSION) else -ICUDATA_DIR=$(pkglibdir) +ifeq ($(PKGDATA_MODE),dll) +ICUDATA_DIR = $(pkgdatadir) +ICUPKGDATA_DIR = $(libdir) +else +ICUDATA_DIR = $(pkglibdir) +ICUPKGDATA_DIR = $(ICUDATA_DIR)/$(VERSION) +endif endif diff --git a/icu4c/source/data/Makefile.in b/icu4c/source/data/Makefile.in index 1bbff7039a7..816421f9012 100644 --- a/icu4c/source/data/Makefile.in +++ b/icu4c/source/data/Makefile.in @@ -109,29 +109,27 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status packagedata: build/icudata.lst $(top_builddir)/tools/pkgdata/icupkg.inc - ( cd build ; \ - $(INVOKE) $(PKGDATA) -e $(ICUDATA_BASENAME_VERSION) -s . -T . -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) icudata.lst ; \ - ) + cd build ; \ + $(INVOKE) $(PKGDATA) -e $(ICUDATA_BASENAME_VERSION) -s . -T . -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) icudata.lst ifeq ($(strip $(PKGDATA_MODE)), dll) $(RM) libicudata.$(SO) && ln -s $(LIB_ICUDATA_NAME).$(SO) libicudata.$(SO) ; endif packagetest: $(TESTDATAOBJDIR)/testdata.lst $(top_builddir)/tools/pkgdata/icupkg.inc - ( cd $(TESTDATAOBJDIR) ; $(INVOKE) $(PKGDATA) -T . -s . -p testdata -m common testdata.lst ) + cd $(TESTDATAOBJDIR) ; $(INVOKE) $(PKGDATA) -T . -s . -p testdata -m common testdata.lst cleanpackage: @echo Cleaning up packaged data.. - @-( cd build ; $(INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) -s . -T . -p $(ICUDATA_NAME) icudata.lst --clean 2> /dev/null) - @-( cd $(TESTDATAOBJDIR) ; $(INVOKE) $(PKGDATA) -m common -T . -s . -p testdata testdata.lst --clean 2> /dev/null ) + @-cd build ; $(INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) -s . -T . -p $(ICUDATA_NAME) icudata.lst --clean 2> /dev/null + @-cd $(TESTDATAOBJDIR) ; $(INVOKE) $(PKGDATA) -m common -T . -s . -p testdata testdata.lst --clean 2> /dev/null $(RMV) $(ICUDATA_NAME).* build/icudata.lst build/*.mak ## Install ICU data. Make a convenience link 'icudata' library if it's a library mode. install-local: build/icudata.lst $(top_builddir)/tools/pkgdata/icupkg.inc install-convrtrstxt $(OS390INSTALL) $(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(libdir) - ( cd build ; $(INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) -e $(ICUDATA_BASENAME_VERSION) -T . -s . -p $(ICUDATA_NAME) icudata.lst -I $(DESTDIR)$(libdir) ) + cd build ; $(INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) -e $(ICUDATA_BASENAME_VERSION) -T . -s . -p $(ICUDATA_NAME) icudata.lst -I $(DESTDIR)$(ICUPKGDATA_DIR) ifeq ($(strip $(PKGDATA_MODE)),dll) - $(RM) libicudata.$(SO) && ln -s $(LIB_ICUDATA_NAME).$(SO) libicudata.$(SO) ; - (cd $(DESTDIR)$(libdir); $(RM) libicudata.$(SO) && ln -s $(LIB_ICUDATA_NAME).$(SO) libicudata.$(SO)) + cd $(DESTDIR)$(ICUPKGDATA_DIR); $(RM) libicudata.$(SO) && ln -s $(LIB_ICUDATA_NAME).$(SO) libicudata.$(SO) endif install-convrtrstxt: $(top_srcdir)/../data/convrtrs.txt @@ -149,11 +147,11 @@ testdata: $(SPECIALTESTDATA) #### 390 support install390: build/icudata390.lst $(top_builddir)/tools/pkgdata/icupkg.inc $(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(libdir) - ( cd build ; $(INVOKE) $(PKGDATA) -s . -T ../tmp3901 -p $(ICUDATA_NAME)$(BATCH_STUB_SUFFIX) -e $(ICUDATA_BASENAME_VERSION) icudata390.lst -m dll -I $(DESTDIR)$(libdir)) + cd build ; $(INVOKE) $(PKGDATA) -s . -T ../tmp3901 -p $(ICUDATA_NAME)$(BATCH_STUB_SUFFIX) -e $(ICUDATA_BASENAME_VERSION) icudata390.lst -m dll -I $(DESTDIR)$(ICUPKGDATA_DIR) #### $(LIB_ICUDATA_NAME)$(BATCH_SUFFIX) is the subset data for batch mode package390: build/icudata390.lst build/icudata.lst $(top_builddir)/tools/pkgdata/icupkg.inc @$(MKINSTALLDIRS) tmp3901 - ( cd build ; $(INVOKE) $(PKGDATA) -s . -T ../tmp3901 -p $(ICUDATA_NAME)$(BATCH_STUB_SUFFIX) -e $(ICUDATA_BASENAME_VERSION) icudata390.lst -m dll) + cd build ; $(INVOKE) $(PKGDATA) -s . -T ../tmp3901 -p $(ICUDATA_NAME)$(BATCH_STUB_SUFFIX) -e $(ICUDATA_BASENAME_VERSION) icudata390.lst -m dll cp $(top_builddir)/data/$(LIB_ICUDATA_NAME)$(BATCH_STUB_SUFFIX).$(SO) $(top_builddir)/stubdata/$(LIB_ICUDATA_NAME)$(BATCH_STUB_SUFFIX).$(SO) diff --git a/icu4c/source/extra/uconv/Makefile.in b/icu4c/source/extra/uconv/Makefile.in index f6175608a9e..b809d36316d 100644 --- a/icu4c/source/extra/uconv/Makefile.in +++ b/icu4c/source/extra/uconv/Makefile.in @@ -101,7 +101,7 @@ $(RESDIR)/$(RESDIR).lst: Makefile $(srcdir)/resfiles.mk install-resfiles: $(RESFILES) $(MKINSTALLDIRS) $(DESTDIR)$(libdir)/$(PACKAGE)/$(VERSION) - $(INVOKE) $(top_builddir)/tools/pkgdata/pkgdata -p $(RESDIR) -O $(top_builddir)/tools/pkgdata/icupkg.inc -m common -d uconvmsg -I $(DESTDIR)$(libdir)/$(PACKAGE)/$(VERSION) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst + $(INVOKE) $(top_builddir)/tools/pkgdata/pkgdata -p $(RESDIR) -O $(top_builddir)/tools/pkgdata/icupkg.inc -m common -d uconvmsg -I $(DESTDIR)$(ICUDATA_DIR)/$(VERSION) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst $(RESDIR)/%.res: $(srcdir)/%.txt @$(MKINSTALLDIRS) $(RESDIR) diff --git a/icu4c/source/icudefs.mk.in b/icu4c/source/icudefs.mk.in index 493166cd690..f41ca93b5ed 100644 --- a/icu4c/source/icudefs.mk.in +++ b/icu4c/source/icudefs.mk.in @@ -42,9 +42,16 @@ ifeq ($(strip $(PKGDATA_MODE)),) PKGDATA_MODE=@DATA_PACKAGING_MODE@ endif ifeq ($(PKGDATA_MODE),common) -ICUDATA_DIR=$(pkgdatadir) +ICUDATA_DIR = $(pkgdatadir) +ICUPKGDATA_DIR = $(ICUDATA_DIR)/$(VERSION) else -ICUDATA_DIR=$(pkglibdir) +ifeq ($(PKGDATA_MODE),dll) +ICUDATA_DIR = $(pkgdatadir) +ICUPKGDATA_DIR = $(libdir) +else +ICUDATA_DIR = $(pkglibdir) +ICUPKGDATA_DIR = $(ICUDATA_DIR)/$(VERSION) +endif endif # ICU specific directories diff --git a/icu4c/source/stubdata/Makefile.in b/icu4c/source/stubdata/Makefile.in index 766c9dcb3f6..6c66a40aa3a 100644 --- a/icu4c/source/stubdata/Makefile.in +++ b/icu4c/source/stubdata/Makefile.in @@ -105,7 +105,7 @@ ifneq ($(ENABLE_STATIC),) endif ifneq ($(ENABLE_SHARED),) $(INSTALL-L) $(MIDDLE_SO_TARGET) $(DESTDIR)$(libdir)/$(MIDDLE_SO_TARGET) - $(INSTALL-L) $(SO_TARGET) $(DESTDIR)$(libdir)/$(SO_TARGET) + cd $(DESTDIR)$(libdir) && $(RM) $(SO_TARGET) && ln -s $(MIDDLE_SO_TARGET) $(SO_TARGET) endif dist-local: