diff --git a/icu4c/source/common/Makefile.in b/icu4c/source/common/Makefile.in index 667eef14d0d..f4fb45cb316 100644 --- a/icu4c/source/common/Makefile.in +++ b/icu4c/source/common/Makefile.in @@ -24,12 +24,14 @@ CLEANFILES = *~ $(DEPS) ## Target information +TARGET_STUBNAME=uc + ifneq ($(ENABLE_STATIC),) -TARGET = $(LIBICU)uc$(ICULIBSUFFIX).a +TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).a endif ifneq ($(ENABLE_SHARED),) -SO_TARGET = $(LIBICU)uc$(ICULIBSUFFIX).$(SO) +SO_TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(SO) ALL_SO_TARGETS = $(SO_TARGET) $(MIDDLE_SO_TARGET) $(FINAL_SO_TARGET) ifeq ($(OS390BATCH),1) @@ -110,6 +112,10 @@ ifneq ($(FINAL_SO_TARGET),$(SO_TARGET)) cd $(DESTDIR)$(libdir) && $(RM) $(SO_TARGET) && ln -s $(FINAL_SO_TARGET) $(SO_TARGET) endif endif +ifneq ($(IMPORT_LIB_EXT),) + $(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir)/$(FINAL_IMPORT_LIB) + cd $(DESTDIR)$(libdir) && $(RM) $(IMPORT_LIB) && ln -s $(FINAL_IMPORT_LIB) $(IMPORT_LIB) +endif install-headers: $(MKINSTALLDIRS) $(DESTDIR)$(includedir)/unicode diff --git a/icu4c/source/config/mh-cygwin-msvc b/icu4c/source/config/mh-cygwin-msvc index 14bda466bc0..d2d5b6c5e10 100644 --- a/icu4c/source/config/mh-cygwin-msvc +++ b/icu4c/source/config/mh-cygwin-msvc @@ -3,7 +3,7 @@ ## Copyright (c) 2001, International Business Machines Corporation and ## others. All Rights Reserved. ## -## $Id: mh-cygwin-msvc,v 1.2 2003/02/17 17:48:50 grhoten-oss Exp $ +## $Id: mh-cygwin-msvc,v 1.3 2003/03/19 01:56:29 grhoten-oss Exp $ ## Commands to generate dependency files GEN_DEPS.c= : @@ -48,6 +48,9 @@ STATIC_O = o # OUTOPT is for creating a specific output name OUTOPT = /out: +## An import library is needed for z/OS and MSVC +IMPORT_LIB_EXT = .lib + LIBICU = $(ICUPREFIX) DEFAULT_LIBS = @@ -103,7 +106,13 @@ LIBUSTDIO= $(top_builddir)/extra/ustdio/libustdio$(ICULIBSUFFIX)$(SO_TARGET_VERS ## Versioned target for a shared library. FINAL_SO_TARGET= $(basename $(SO_TARGET))$(SO_TARGET_VERSION_MAJOR)$(ICULIBSUFFIX).$(SO) -MIDDLE_SO_TARGET= +MIDDLE_SO_TARGET=$(SO_TARGET) + +## Versioned import library names. +IMPORT_LIB = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX)$(IMPORT_LIB_EXT) +IMPORT_STUBDATA_LIB = $(IMPORT_LIB) +FINAL_IMPORT_LIB = $(LIBICU)$(TARGET_STUBNAME)$(SO_TARGET_VERSION_MAJOR)$(ICULIBSUFFIX)$(IMPORT_LIB_EXT) +FINAL_IMPORT_STUBDATA_LIB = $(FINAL_IMPORT_LIB) ## Versioned libraries rules #%$(SO_TARGET_VERSION_MAJOR).$(SO): %$(SO_TARGET_VERSION)$(ICULIBSUFFIX).$(SO) diff --git a/icu4c/source/config/mh-os390 b/icu4c/source/config/mh-os390 index 17bd9fb629b..aa8bd829a76 100644 --- a/icu4c/source/config/mh-os390 +++ b/icu4c/source/config/mh-os390 @@ -3,7 +3,7 @@ ## Copyright (c) 1999-2001, International Business Machines Corporation and ## others. All Rights Reserved. ## -## $Id: mh-os390,v 1.45 2002/08/12 20:30:23 grhoten-oss Exp $ +## $Id: mh-os390,v 1.46 2003/03/19 01:56:29 grhoten-oss Exp $ ################################################################### # IMPORTANT NOTE # @@ -72,10 +72,19 @@ LD_RPATH= -I ## Environment variable to set a runtime search path LDLIBRARYPATH_ENVVAR = LIBPATH +## An import library (a.k.a. sidedeck) is needed for z/OS and MSVC +IMPORT_LIB_EXT = .lib + ## Versioned target for a shared library. FINAL_SO_TARGET= $(basename $(SO_TARGET))$(SO_TARGET_VERSION)$(ICULIBSUFFIX).$(SO) MIDDLE_SO_TARGET= $(basename $(SO_TARGET))$(SO_TARGET_VERSION_MAJOR)$(ICULIBSUFFIX).$(SO) +## Versioned import library names. +IMPORT_LIB = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX)$(IMPORT_LIB_EXT) +IMPORT_STUBDATA_LIB = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX)$(STUB_SUFFIX)$(IMPORT_LIB_EXT) +FINAL_IMPORT_LIB = $(LIBICU)$(TARGET_STUBNAME)$(SO_TARGET_VERSION_MAJOR)$(ICULIBSUFFIX)$(IMPORT_LIB_EXT) +FINAL_IMPORT_STUBDATA_LIB = $(LIBICU)$(TARGET_STUBNAME)$(SO_TARGET_VERSION)$(ICULIBSUFFIX)$(STUB_SUFFIX)$(IMPORT_LIB_EXT) + ## Shared object suffix (switch to dll for shared library build) SO = dll ## Non-shared intermediate object suffix diff --git a/icu4c/source/data/Makefile.in b/icu4c/source/data/Makefile.in index f09801f3f1c..2f3b4376986 100644 --- a/icu4c/source/data/Makefile.in +++ b/icu4c/source/data/Makefile.in @@ -112,6 +112,9 @@ $(DESTDIR)$(pkgsysconfdir)/convrtrs.txt: $(UCMSRCDIR)/convrtrs.txt install390: $(BUILDDIR)/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) +ifeq ($(PKGDATA_MODE),dll) + $(INSTALL-L) $(OUTDIR)/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX)$(IMPORT_LIB_EXT) $(DESTDIR)$(ICUPKGDATA_DIR)/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX)$(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 diff --git a/icu4c/source/extra/ustdio/Makefile.in b/icu4c/source/extra/ustdio/Makefile.in index 5ea07132469..367c45471df 100644 --- a/icu4c/source/extra/ustdio/Makefile.in +++ b/icu4c/source/extra/ustdio/Makefile.in @@ -24,12 +24,14 @@ CLEANFILES = *~ $(DEPS) ## Target information +TARGET_STUBNAME=io + ifneq ($(ENABLE_STATIC),) -TARGET = libustdio$(ICULIBSUFFIX).a +TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).a endif ifneq ($(ENABLE_SHARED),) -SO_TARGET = libustdio$(ICULIBSUFFIX).$(SO) +SO_TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(SO) ALL_SO_TARGETS = $(SO_TARGET) $(MIDDLE_SO_TARGET) $(FINAL_SO_TARGET) ifeq ($(OS390BATCH),1) @@ -90,6 +92,10 @@ ifneq ($(FINAL_SO_TARGET),$(SO_TARGET)) cd $(DESTDIR)$(libdir) && $(RM) $(SO_TARGET) && ln -s $(FINAL_SO_TARGET) $(SO_TARGET) endif endif +ifneq ($(IMPORT_LIB_EXT),) + $(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir)/$(FINAL_IMPORT_LIB) + cd $(DESTDIR)$(libdir) && $(RM) $(IMPORT_LIB) && ln -s $(FINAL_IMPORT_LIB) $(IMPORT_LIB) +endif install-headers: $(MKINSTALLDIRS) $(DESTDIR)$(includedir)/unicode diff --git a/icu4c/source/i18n/Makefile.in b/icu4c/source/i18n/Makefile.in index c48debf8fd1..1155787b5f5 100644 --- a/icu4c/source/i18n/Makefile.in +++ b/icu4c/source/i18n/Makefile.in @@ -24,12 +24,14 @@ CLEANFILES = *~ $(DEPS) ## Target information +TARGET_STUBNAME=i18n + ifneq ($(ENABLE_STATIC),) -TARGET = $(LIBICU)i18n$(ICULIBSUFFIX).a +TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).a endif ifneq ($(ENABLE_SHARED),) -SO_TARGET = $(LIBICU)i18n$(ICULIBSUFFIX).$(SO) +SO_TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(SO) ALL_SO_TARGETS = $(SO_TARGET) $(MIDDLE_SO_TARGET) $(FINAL_SO_TARGET) ifeq ($(OS390BATCH),1) @@ -105,6 +107,10 @@ ifneq ($(FINAL_SO_TARGET),$(SO_TARGET)) cd $(DESTDIR)$(libdir) && $(RM) $(SO_TARGET) && ln -s $(FINAL_SO_TARGET) $(SO_TARGET) endif endif +ifneq ($(IMPORT_LIB_EXT),) + $(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir)/$(FINAL_IMPORT_LIB) + cd $(DESTDIR)$(libdir) && $(RM) $(IMPORT_LIB) && ln -s $(FINAL_IMPORT_LIB) $(IMPORT_LIB) +endif install-headers: $(MKINSTALLDIRS) $(DESTDIR)$(includedir)/unicode diff --git a/icu4c/source/layout/Makefile.in b/icu4c/source/layout/Makefile.in index bd73c18c69c..1bf61030218 100644 --- a/icu4c/source/layout/Makefile.in +++ b/icu4c/source/layout/Makefile.in @@ -145,6 +145,11 @@ ifneq ($(FINAL_SO_TARGET),$(SO_TARGET)) cd $(DESTDIR)$(libdir) && $(RM) $(SO_TARGET) && ln -s $(FINAL_SO_TARGET) $(SO_TARGET) endif endif +ifneq ($(IMPORT_LIB_EXT),) + $(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir)/$(FINAL_IMPORT_LIB) + cd $(DESTDIR)$(libdir) && $(RM) $(IMPORT_LIB) && ln -s $(FINAL_IMPORT_LIB) $(IMPORT_LIB) +endif + install-headers: $(MKINSTALLDIRS) $(DESTDIR)$(includedir)/layout diff --git a/icu4c/source/stubdata/Makefile.in b/icu4c/source/stubdata/Makefile.in index 738966ba6c7..74d9bce1f46 100644 --- a/icu4c/source/stubdata/Makefile.in +++ b/icu4c/source/stubdata/Makefile.in @@ -24,12 +24,16 @@ CLEANFILES = *~ $(DEPS) ## Target information +TARGET_STUBNAME=data + ifneq ($(ENABLE_STATIC),) -TARGET = $(LIBICU)data$(ICULIBSUFFIX).a +TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).a endif ifneq ($(ENABLE_SHARED),) -SO_TARGET = $(LIBICU)data$(ICULIBSUFFIX)$(STUB_SUFFIX).$(SO) +SO_TARGET = $(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX)$(STUB_SUFFIX).$(SO) +IMPORT_LIB := $(IMPORT_STUBDATA_LIB) +FINAL_IMPORT_LIB := $(FINAL_IMPORT_STUBDATA_LIB) ALL_SO_TARGETS = $(SO_TARGET) $(MIDDLE_SO_TARGET) $(FINAL_SO_TARGET) $(BATCH_STUB_TARGET) endif @@ -82,6 +86,10 @@ ifneq ($(FINAL_SO_TARGET),$(SO_TARGET)) cd $(DESTDIR)$(libdir) && $(RM) $(SO_TARGET) && ln -s $(FINAL_SO_TARGET) $(SO_TARGET) endif endif +ifneq ($(IMPORT_LIB_EXT),) + $(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir)/$(FINAL_IMPORT_LIB) + cd $(DESTDIR)$(libdir) && $(RM) $(IMPORT_LIB) && ln -s $(FINAL_IMPORT_LIB) $(IMPORT_LIB) +endif dist-local: