diff --git a/icu4c/source/common/unicode/platform.h.in b/icu4c/source/common/unicode/platform.h.in index e1dcfdc148..fc6249a153 100644 --- a/icu4c/source/common/unicode/platform.h.in +++ b/icu4c/source/common/unicode/platform.h.in @@ -201,7 +201,7 @@ typedef unsigned int uint32_t; /* Character data types */ /*===========================================================================*/ -#if defined(OS390) || defined(OS400) +#if ((defined(OS390) && (!defined(__CHARSET_LIB) || !__CHARSET_LIB))) || defined(OS400) # define U_CHARSET_FAMILY 1 #endif diff --git a/icu4c/source/config/mh-os390 b/icu4c/source/config/mh-os390 index c4a6913fe0..2927f6b1f0 100644 --- a/icu4c/source/config/mh-os390 +++ b/icu4c/source/config/mh-os390 @@ -103,8 +103,6 @@ IMPORT_LIB = $(basename $(notdir $(SO_TARGET)))$(IMPORT_LIB_EXT) MIDDLE_IMPORT_LIB = $(basename $(notdir $(MIDDLE_SO_TARGET)))$(IMPORT_LIB_EXT) FINAL_IMPORT_LIB = $(basename $(notdir $(FINAL_SO_TARGET)))$(IMPORT_LIB_EXT) -## Shared object suffix (switch to dll for shared library build) -SO = dll ## Non-shared intermediate object suffix STATIC_O = o @@ -146,6 +144,17 @@ LIBICUIO= $(top_builddir)/io/$(LIBICU)io$(ICULIBSUFFIX)$(SO_TARGET_VERSION).x LIBCTESTFW= $(top_builddir)/tools/ctestfw/$(LIBICU)test$(ICULIBSUFFIX)$(SO_TARGET_VERSION).x LIBICUTOOLUTIL= $(top_builddir)/tools/toolutil/$(LIBICU)tu$(ICULIBSUFFIX)$(SO_TARGET_VERSION).x +ifneq (${ICUDATA_CHAR},e) +## We're in ASCII mode. +CFLAGS += -Wc,"ascii" +CXXFLAGS += -Wc,"ascii" +SO = so +else +## We're in EBCDIC mode. +## Shared object suffix +SO = dll +endif + ## Special 390 rules ## Build archive from object diff --git a/icu4c/source/icudefs.mk.in b/icu4c/source/icudefs.mk.in index 331c8363e3..9fea259731 100644 --- a/icu4c/source/icudefs.mk.in +++ b/icu4c/source/icudefs.mk.in @@ -44,7 +44,8 @@ ICUDATA_DIR = @pkgicudatadir@/$(PACKAGE)$(ICULIBSUFFIX)/$(VERSION) ICUDATA_BASENAME_VERSION = $(ICUPREFIX)dt@LIB_VERSION_MAJOR@ ICUDATA_ENTRY_POINT = $(ICUDATA_BASENAME_VERSION) -ICUDATA_PLATFORM_NAME = $(ICUDATA_BASENAME_VERSION)@ICUDATA_CHAR@ +ICUDATA_CHAR = @ICUDATA_CHAR@ +ICUDATA_PLATFORM_NAME = $(ICUDATA_BASENAME_VERSION)$(ICUDATA_CHAR) PKGDATA_LIBSTATICNAME = -L $(STATIC_PREFIX)$(ICUPREFIX)$(DATA_STUBNAME)$(ICULIBSUFFIX) ifeq ($(strip $(PKGDATA_MODE)),) PKGDATA_MODE=@DATA_PACKAGING_MODE@