1#******************************************************************************
2#
3#   Copyright (C) 1998-2014, International Business Machines
4#   Corporation and others.  All Rights Reserved.
5#
6#******************************************************************************
7## Makefile.in for ICU - icui18n.so
8## Stephen F. Booth
9
10## Source directory information
11srcdir = @srcdir@
12top_srcdir = @top_srcdir@
13
14top_builddir = ..
15
16## All the flags and other definitions are included here.
17include $(top_builddir)/icudefs.mk
18
19## Build directory information
20subdir = i18n
21
22## Extra files to remove for 'make clean'
23CLEANFILES = *~ $(DEPS) $(IMPORT_LIB) $(MIDDLE_IMPORT_LIB) $(FINAL_IMPORT_LIB)
24
25## Target information
26
27TARGET_STUBNAME=$(I18N_STUBNAME)
28
29ifneq ($(ENABLE_STATIC),)
30TARGET = $(LIBDIR)/$(LIBSICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(A)
31endif
32
33ifneq ($(ENABLE_SHARED),)
34SO_TARGET = $(LIBDIR)/$(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(SO)
35ALL_SO_TARGETS = $(SO_TARGET) $(MIDDLE_SO_TARGET) $(FINAL_SO_TARGET) $(SHARED_OBJECT)
36
37ifeq ($(ENABLE_SO_VERSION_DATA),1)
38SO_VERSION_DATA = i18n.res
39endif
40
41ifeq ($(OS390BATCH),1)
42BATCH_TARGET = $(BATCH_I18N_TARGET)
43BATCH_LIBS = $(BATCH_LIBICUUC) -lm
44endif   # OS390BATCH
45
46endif   # ENABLE_SHARED
47
48ALL_TARGETS = $(TARGET) $(ALL_SO_TARGETS) $(BATCH_TARGET)
49
50DYNAMICCPPFLAGS = $(SHAREDLIBCPPFLAGS)
51DYNAMICCFLAGS = $(SHAREDLIBCFLAGS)
52DYNAMICCXXFLAGS = $(SHAREDLIBCXXFLAGS)
53CFLAGS += $(LIBCFLAGS)
54CXXFLAGS += $(LIBCXXFLAGS)
55ifeq ($(OS390BATCH),1)
56CFLAGS += -WI
57CXXFLAGS += -WI
58endif
59
60CPPFLAGS += -I$(srcdir) -I$(top_srcdir)/common $(LIBCPPFLAGS) $(CPPFLAGSICUI18N)
61DEFS += -DU_I18N_IMPLEMENTATION
62LDFLAGS += $(LDFLAGSICUI18N)
63LIBS = $(LIBICUUC) $(DEFAULT_LIBS)
64
65OBJECTS = ucln_in.o \
66fmtable.o format.o msgfmt.o umsg.o numfmt.o unum.o decimfmt.o decimalformatpattern.o dcfmtsym.o \
67ucurr.o digitlst.o fmtable_cnv.o \
68choicfmt.o datefmt.o smpdtfmt.o reldtfmt.o dtfmtsym.o udat.o dtptngen.o udatpg.o \
69nfrs.o nfrule.o nfsubs.o rbnf.o numsys.o unumsys.o ucsdet.o \
70ucal.o calendar.o gregocal.o timezone.o simpletz.o olsontz.o \
71astro.o taiwncal.o buddhcal.o persncal.o islamcal.o japancal.o gregoimp.o hebrwcal.o \
72indiancal.o chnsecal.o cecal.o coptccal.o dangical.o ethpccal.o \
73coleitr.o coll.o sortkey.o bocsu.o ucoleitr.o \
74ucol.o ucol_res.o ucol_sit.o \
75collation.o collationsettings.o collationdata.o collationtailoring.o \
76collationdatareader.o collationdatawriter.o collationfcd.o \
77collationiterator.o utf16collationiterator.o utf8collationiterator.o uitercollationiterator.o \
78collationsets.o \
79collationcompare.o collationfastlatin.o collationkeys.o rulebasedcollator.o collationroot.o \
80collationrootelements.o collationdatabuilder.o collationbasedatabuilder.o \
81collationweights.o collationruleparser.o collationbuilder.o collationfastlatinbuilder.o \
82strmatch.o usearch.o search.o stsearch.o \
83translit.o utrans.o esctrn.o unesctrn.o funcrepl.o strrepl.o tridpars.o \
84cpdtrans.o rbt.o rbt_data.o rbt_pars.o rbt_rule.o rbt_set.o \
85nultrans.o remtrans.o casetrn.o titletrn.o tolowtrn.o toupptrn.o anytrans.o \
86name2uni.o uni2name.o nortrans.o quant.o transreg.o brktrans.o \
87regexcmp.o rematch.o repattrn.o regexst.o regextxt.o regeximp.o uregex.o uregexc.o \
88ulocdata.o measfmt.o currfmt.o curramt.o currunit.o measure.o utmscale.o \
89csdetect.o csmatch.o csr2022.o csrecog.o csrmbcs.o csrsbcs.o csrucode.o csrutf8.o inputext.o \
90wintzimpl.o windtfmt.o winnmfmt.o basictz.o dtrule.o rbtz.o tzrule.o tztrans.o vtzone.o zonemeta.o \
91upluralrules.o plurrule.o plurfmt.o selfmt.o dtitvfmt.o dtitvinf.o udateintervalformat.o \
92tmunit.o tmutamt.o tmutfmt.o currpinf.o \
93uspoof.o uspoof_impl.o uspoof_build.o uspoof_conf.o uspoof_wsconf.o decfmtst.o smpdtfst.o \
94ztrans.o zrule.o vzone.o fphdlimp.o fpositer.o locdspnm.o \
95decNumber.o decContext.o alphaindex.o tznames.o tznames_impl.o tzgnames.o \
96tzfmt.o compactdecimalformat.o gender.o region.o scriptset.o identifier_info.o \
97uregion.o reldatefmt.o quantityformatter.o measunit.o filteredbrk.o
98
99## Header files to install
100HEADERS = $(srcdir)/unicode/*.h
101
102STATIC_OBJECTS = $(OBJECTS:.o=.$(STATIC_O))
103
104DEPS = $(OBJECTS:.o=.d)
105
106-include Makefile.local
107
108## List of phony targets
109.PHONY : all all-local install install-local clean clean-local	\
110distclean distclean-local install-library install-headers dist	\
111dist-local check check-local check-exhaustive
112
113## Clear suffix list
114.SUFFIXES :
115
116## List of standard targets
117all: all-local
118install: install-local
119clean: clean-local
120distclean : distclean-local
121dist: dist-local
122check: all check-local
123
124check-exhaustive: check
125
126all-local: $(ALL_TARGETS)
127
128install-local: install-headers install-library
129
130install-library: all-local
131	$(MKINSTALLDIRS) $(DESTDIR)$(libdir)
132ifneq ($(ENABLE_STATIC),)
133	$(INSTALL-L) $(TARGET) $(DESTDIR)$(libdir)
134endif
135ifneq ($(ENABLE_SHARED),)
136	$(INSTALL-L) $(FINAL_SO_TARGET) $(DESTDIR)$(libdir)
137ifneq ($(FINAL_SO_TARGET),$(SO_TARGET))
138	cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(SO_TARGET))
139ifneq ($(FINAL_SO_TARGET),$(MIDDLE_SO_TARGET))
140	cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(MIDDLE_SO_TARGET))
141endif
142endif
143ifneq ($(IMPORT_LIB_EXT),)
144	$(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir)
145ifneq ($(IMPORT_LIB),$(FINAL_IMPORT_LIB))
146	cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(IMPORT_LIB))
147endif
148ifneq ($(MIDDLE_IMPORT_LIB),$(FINAL_IMPORT_LIB))
149	cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(MIDDLE_IMPORT_LIB))
150endif
151endif
152endif
153
154install-headers:
155	$(MKINSTALLDIRS) $(DESTDIR)$(includedir)/unicode
156	@for file in $(HEADERS); do \
157	 echo "$(INSTALL_DATA) $$file $(DESTDIR)$(includedir)/unicode"; \
158	 $(INSTALL_DATA) $$file $(DESTDIR)$(includedir)/unicode || exit; \
159	done
160
161dist-local:
162
163clean-local:
164	test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES)
165	$(RMV) $(OBJECTS) $(STATIC_OBJECTS) $(ALL_TARGETS) $(SO_VERSION_DATA)
166
167distclean-local: clean-local
168	$(RMV) Makefile
169
170check-local:
171
172Makefile: $(srcdir)/Makefile.in  $(top_builddir)/config.status
173	cd $(top_builddir) \
174	 && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
175
176ifneq ($(ENABLE_STATIC),)
177$(TARGET): $(STATIC_OBJECTS)
178	$(AR) $(ARFLAGS) $(AR_OUTOPT)$@ $^
179	$(RANLIB) $@
180endif
181
182ifneq ($(ENABLE_SHARED),)
183$(SHARED_OBJECT): $(OBJECTS) $(SO_VERSION_DATA)
184	$(SHLIB.cc) $(LD_SONAME) $(OUTOPT)$@ $^ $(LIBS)
185ifeq ($(ENABLE_RPATH),YES)
186ifneq ($(wildcard $(libdir)/$(MIDDLE_SO_TARGET)),)
187	$(warning RPATH warning: --enable-rpath means test programs may use existing $(libdir)/$(MIDDLE_SO_TARGET))
188endif
189endif
190
191ifeq ($(OS390BATCH),1)
192$(BATCH_TARGET):$(OBJECTS)
193	$(SHLIB.cc) $(LD_SONAME) $(OUTOPT)$@ $^ $(BATCH_LIBS)
194endif   # OS390BATCH
195endif   # ENABLE_SHARED
196
197ifeq (,$(MAKECMDGOALS))
198-include $(DEPS)
199else
200ifneq ($(patsubst %clean,,$(MAKECMDGOALS)),)
201-include $(DEPS)
202endif
203endif
204