]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/config/mh-aix-va
ICU-461.12.tar.gz
[apple/icu.git] / icuSources / config / mh-aix-va
index 39faf459a0b3345393ee19c8b8eaf58b5b2dfc3e..0ab91cec3055a0f8eac2ecff6b8dd8d1628de11d 100644 (file)
@@ -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