X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/48b980fed3435926e0b3a8d72ecb58be703a1c7a..729e4ab9bc6618bc3d8a898e575df7f4019e29ca:/icuSources/config/mh-aix-va diff --git a/icuSources/config/mh-aix-va b/icuSources/config/mh-aix-va index 39faf459..0ab91cec 100644 --- a/icuSources/config/mh-aix-va +++ b/icuSources/config/mh-aix-va @@ -1,6 +1,6 @@ ## -*-makefile-*- ## Aix-specific setup (for Visual Age 5+) -## Copyright (c) 1999-2005, International Business Machines Corporation and +## Copyright (c) 1999-2010, International Business Machines Corporation and ## others. All Rights Reserved. ## Commands to generate dependency files @@ -10,12 +10,31 @@ GEN_DEPS.cc= $(CXX) -E -M $(DEFS) $(CPPFLAGS) # -qroconst make the strings readonly, which is usually the default. # This helps in the data library, # -qproto assumes all functions are prototyped (for optimization) +# -qrtti turns on compiler RTTI, required beginning with ICU 4.6 CFLAGS += -qproto -qroconst -CXXFLAGS += -qproto -qroconst +CXXFLAGS += -qproto -qroconst -qrtti # If you readd this line, you must change the SO value #LDFLAGS += -brtl +ifeq ($(UCLN_NO_AUTO_CLEANUP),0) +# set up init point. +UCLN_FINI = ucln_fini$(TARGET_STUBNAME)_$(SO_TARGET_VERSION_MAJOR)$(ICULIBSUFFIXCNAME) +CPPFLAGS_FINI = -DUCLN_FINI=$(UCLN_FINI) +LDFLAGS_FINI = -binitfini::$(UCLN_FINI) + +CPPFLAGSICUUC += $(CPPFLAGS_FINI) +LDFLAGSICUUC += $(LDFLAGS_FINI) +CPPFLAGSICUIO += $(CPPFLAGS_FINI) +LDFLAGSICUIO += $(LDFLAGS_FINI) +CPPFLAGSICUI18N += $(CPPFLAGS_FINI) +LDFLAGSICUI18N += $(LDFLAGS_FINI) +CPPFLAGSCTESTFW += $(CPPFLAGS_FINI) +LDFLAGSCTESTFW += $(LDFLAGS_FINI) + +# ICUUC, ICUIO, ICUI18N, CTESTFW +endif + ## We need to delete things prior to linking, or else we'll get ## SEVERE ERROR: output file in use .. on AIX. ## But, shell script version should NOT delete target as we don't @@ -67,12 +86,17 @@ STATIC_O = o FINAL_SO_TARGET= $(basename $(SO_TARGET))$(SO_TARGET_VERSION).$(SO) MIDDLE_SO_TARGET= $(basename $(SO_TARGET))$(SO_TARGET_VERSION_MAJOR).$(SO) SHARED_OBJECT = $(notdir $(FINAL_SO_TARGET:.$(SO)=.$(SOBJ))) +SHARED_OBJECT_NO_VERSION= $(basename $(SO_TARGET)).$(SOBJ) ## Build archive from shared object %.a : %.so - $(AR) $(ARFLAGS) $@ $< + ln -f $< $(SHARED_OBJECT_NO_VERSION) + $(AIX_PREDELETE) $(AR) $(ARFLAGS) $@ $(SHARED_OBJECT_NO_VERSION) + rm -f $(SHARED_OBJECT_NO_VERSION) $(LIBDIR)/%.a : %.so - $(AR) $(ARFLAGS) $@ $< + ln -f $< $(SHARED_OBJECT_NO_VERSION) + $(AIX_PREDELETE) $(AR) $(ARFLAGS) $@ $(SHARED_OBJECT_NO_VERSION) + rm -f $(SHARED_OBJECT_NO_VERSION) ## Build import list from export list %.e : %.exp