]>
Commit | Line | Data |
---|---|---|
73c04bcf A |
1 | #****************************************************************************** |
2 | # | |
51004dcb | 3 | # Copyright (C) 1999-2013, International Business Machines |
73c04bcf A |
4 | # Corporation and others. All Rights Reserved. |
5 | # | |
6 | #****************************************************************************** | |
b75a7d8f A |
7 | ## Makefile.in for ICU - layout |
8 | ||
73c04bcf | 9 | ## Source directory information |
b75a7d8f A |
10 | srcdir = @srcdir@ |
11 | top_srcdir = @top_srcdir@ | |
12 | ||
13 | top_builddir = .. | |
14 | ||
73c04bcf | 15 | ## All the flags and other definitions are included here. |
b75a7d8f A |
16 | include $(top_builddir)/icudefs.mk |
17 | ||
18 | ## Build directory information | |
19 | subdir = layout | |
20 | ||
21 | ## Extra files to remove for 'make clean' | |
374ca955 | 22 | CLEANFILES = *~ $(DEPS) $(IMPORT_LIB) $(MIDDLE_IMPORT_LIB) $(FINAL_IMPORT_LIB) |
b75a7d8f A |
23 | |
24 | ## Target information | |
25 | ||
374ca955 | 26 | TARGET_STUBNAME=$(LAYOUT_STUBNAME) |
b75a7d8f A |
27 | |
28 | ifneq ($(ENABLE_STATIC),) | |
374ca955 | 29 | TARGET = $(LIBDIR)/$(LIBSICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(A) |
b75a7d8f A |
30 | endif |
31 | ||
32 | ifneq ($(ENABLE_SHARED),) | |
374ca955 | 33 | SO_TARGET = $(LIBDIR)/$(LIBICU)$(TARGET_STUBNAME)$(ICULIBSUFFIX).$(SO) |
73c04bcf | 34 | ALL_SO_TARGETS = $(SO_TARGET) $(MIDDLE_SO_TARGET) $(FINAL_SO_TARGET) $(SHARED_OBJECT) |
374ca955 A |
35 | |
36 | ifeq ($(ENABLE_SO_VERSION_DATA),1) | |
37 | SO_VERSION_DATA = layout.res | |
b75a7d8f A |
38 | endif |
39 | ||
374ca955 A |
40 | ifeq ($(OS390BATCH),1) |
41 | BATCH_TARGET = $(BATCH_LAYOUT_TARGET) | |
42 | BATCH_LIBS = $(BATCH_LIBICUUC) -lm | |
43 | endif # OS390BATCH | |
44 | ||
45 | endif # ENABLE_SHARED | |
46 | ||
47 | ALL_TARGETS = $(TARGET) $(ALL_SO_TARGETS) $(BATCH_TARGET) | |
b75a7d8f A |
48 | |
49 | DYNAMICCPPFLAGS = $(SHAREDLIBCPPFLAGS) | |
50 | DYNAMICCFLAGS = $(SHAREDLIBCFLAGS) | |
51 | DYNAMICCXXFLAGS = $(SHAREDLIBCXXFLAGS) | |
46f4442e A |
52 | CFLAGS += $(LIBCFLAGS) |
53 | CXXFLAGS += $(LIBCXXFLAGS) | |
b75a7d8f | 54 | |
73c04bcf | 55 | CPPFLAGS += -I$(srcdir) -I$(srcdir)/.. -I$(top_srcdir)/common -I$(srcdir)/unicode $(LIBCPPFLAGS) |
b75a7d8f | 56 | DEFS += -DU_LAYOUT_IMPLEMENTATION |
73c04bcf | 57 | LDFLAGS += $(LDFLAGSICULE) |
b75a7d8f A |
58 | LIBS = $(LIBICUUC) $(DEFAULT_LIBS) |
59 | ||
73c04bcf | 60 | OBJECTS = LEFontInstance.o \ |
b75a7d8f A |
61 | OpenTypeLayoutEngine.o \ |
62 | ThaiLayoutEngine.o \ | |
63 | ThaiShaping.o \ | |
64 | ThaiStateTables.o \ | |
65 | ArabicLayoutEngine.o \ | |
66 | GXLayoutEngine.o \ | |
67 | HanLayoutEngine.o \ | |
68 | IndicLayoutEngine.o \ | |
69 | LayoutEngine.o \ | |
70 | ContextualGlyphSubstProc.o \ | |
71 | IndicRearrangementProcessor.o \ | |
72 | LigatureSubstProc.o \ | |
73 | LookupTables.o \ | |
74 | MorphTables.o \ | |
75 | NonContextualGlyphSubstProc.o \ | |
76 | SegmentArrayProcessor.o \ | |
77 | SegmentSingleProcessor.o \ | |
78 | SimpleArrayProcessor.o \ | |
79 | SingleTableProcessor.o \ | |
80 | StateTableProcessor.o \ | |
81 | SubtableProcessor.o \ | |
82 | TrimmedArrayProcessor.o \ | |
83 | AlternateSubstSubtables.o \ | |
84 | AnchorTables.o \ | |
b75a7d8f | 85 | ArabicShaping.o \ |
374ca955 | 86 | CanonData.o \ |
73c04bcf | 87 | CanonShaping.o \ |
b75a7d8f A |
88 | ClassDefinitionTables.o \ |
89 | ContextualSubstSubtables.o \ | |
90 | CoverageTables.o \ | |
91 | CursiveAttachmentSubtables.o \ | |
92 | DeviceTables.o \ | |
93 | ExtensionSubtables.o \ | |
94 | Features.o \ | |
95 | GDEFMarkFilter.o \ | |
96 | GlyphDefinitionTables.o \ | |
97 | GlyphIterator.o \ | |
374ca955 | 98 | GlyphLookupTables.o \ |
b75a7d8f | 99 | GlyphPosnLookupProc.o \ |
73c04bcf | 100 | GlyphPositionAdjustments.o \ |
b75a7d8f A |
101 | GlyphPositioningTables.o \ |
102 | GlyphSubstLookupProc.o \ | |
103 | GlyphSubstitutionTables.o \ | |
b75a7d8f A |
104 | IndicClassTables.o \ |
105 | IndicReordering.o \ | |
374ca955 A |
106 | LEInsertionList.o \ |
107 | LEGlyphStorage.o \ | |
b75a7d8f A |
108 | LigatureSubstSubtables.o \ |
109 | LookupProcessor.o \ | |
110 | Lookups.o \ | |
111 | MarkArrays.o \ | |
112 | MarkToBasePosnSubtables.o \ | |
113 | MarkToLigaturePosnSubtables.o \ | |
114 | MarkToMarkPosnSubtables.o \ | |
73c04bcf | 115 | MirroredCharData.o \ |
b75a7d8f A |
116 | MPreFixups.o \ |
117 | MultipleSubstSubtables.o \ | |
118 | OpenTypeUtilities.o \ | |
119 | PairPositioningSubtables.o \ | |
120 | ScriptAndLanguage.o \ | |
121 | ScriptAndLanguageTags.o \ | |
73c04bcf | 122 | ShapingTypeData.o \ |
b75a7d8f A |
123 | SinglePositioningSubtables.o \ |
124 | SingleSubstitutionSubtables.o \ | |
125 | SubstitutionLookups.o \ | |
73c04bcf A |
126 | ValueRecords.o \ |
127 | KhmerLayoutEngine.o \ | |
128 | KhmerReordering.o \ | |
129 | TibetanLayoutEngine.o \ | |
130 | TibetanReordering.o \ | |
131 | HangulLayoutEngine.o \ | |
46f4442e | 132 | KernTable.o \ |
51004dcb A |
133 | loengine.o \ |
134 | ContextualGlyphInsertionProc2.o \ | |
135 | ContextualGlyphSubstProc2.o \ | |
136 | GXLayoutEngine2.o \ | |
137 | IndicRearrangementProcessor2.o \ | |
138 | LigatureSubstProc2.o \ | |
139 | MorphTables2.o \ | |
140 | NonContextualGlyphSubstProc2.o \ | |
141 | SegmentArrayProcessor2.o \ | |
142 | SegmentSingleProcessor2.o \ | |
143 | SimpleArrayProcessor2.o \ | |
144 | SingleTableProcessor2.o \ | |
145 | StateTableProcessor2.o \ | |
146 | SubtableProcessor2.o \ | |
147 | TrimmedArrayProcessor2.o | |
73c04bcf A |
148 | |
149 | ## Header files to install | |
46f4442e | 150 | HEADERS= $(srcdir)/LayoutEngine.h $(srcdir)/LE*.h $(srcdir)/loengine.h |
b75a7d8f A |
151 | |
152 | STATIC_OBJECTS = $(OBJECTS:.o=.$(STATIC_O)) | |
153 | ||
154 | DEPS = $(OBJECTS:.o=.d) | |
155 | ||
73c04bcf | 156 | -include Makefile.local |
b75a7d8f A |
157 | |
158 | ## List of phony targets | |
159 | .PHONY : all all-local install install-local clean clean-local \ | |
160 | distclean distclean-local install-library install-headers dist \ | |
4388f060 | 161 | dist-local check check-local check-exhaustive |
b75a7d8f A |
162 | |
163 | ## Clear suffix list | |
164 | .SUFFIXES : | |
165 | ||
166 | ## List of standard targets | |
167 | all: all-local | |
168 | install: install-local | |
169 | clean: clean-local | |
170 | distclean : distclean-local | |
171 | dist: dist-local | |
172 | check: all check-local | |
173 | ||
4388f060 A |
174 | check-exhaustive: check |
175 | ||
b75a7d8f A |
176 | all-local: $(ALL_TARGETS) |
177 | ||
73c04bcf | 178 | install-local: install-headers install-library |
b75a7d8f A |
179 | |
180 | install-library: all-local | |
181 | $(MKINSTALLDIRS) $(DESTDIR)$(libdir) | |
182 | ifneq ($(ENABLE_STATIC),) | |
374ca955 | 183 | $(INSTALL-L) $(TARGET) $(DESTDIR)$(libdir) |
b75a7d8f A |
184 | endif |
185 | ifneq ($(ENABLE_SHARED),) | |
374ca955 | 186 | $(INSTALL-L) $(FINAL_SO_TARGET) $(DESTDIR)$(libdir) |
b75a7d8f | 187 | ifneq ($(FINAL_SO_TARGET),$(SO_TARGET)) |
374ca955 | 188 | cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(SO_TARGET)) |
b75a7d8f | 189 | ifneq ($(FINAL_SO_TARGET),$(MIDDLE_SO_TARGET)) |
374ca955 | 190 | cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_SO_TARGET)) && ln -s $(notdir $(FINAL_SO_TARGET)) $(notdir $(MIDDLE_SO_TARGET)) |
b75a7d8f A |
191 | endif |
192 | endif | |
b75a7d8f | 193 | ifneq ($(IMPORT_LIB_EXT),) |
374ca955 A |
194 | $(INSTALL-L) $(FINAL_IMPORT_LIB) $(DESTDIR)$(libdir) |
195 | ifneq ($(IMPORT_LIB),$(FINAL_IMPORT_LIB)) | |
196 | cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(IMPORT_LIB)) | |
197 | endif | |
b75a7d8f | 198 | ifneq ($(MIDDLE_IMPORT_LIB),$(FINAL_IMPORT_LIB)) |
374ca955 | 199 | cd $(DESTDIR)$(libdir) && $(RM) $(notdir $(MIDDLE_IMPORT_LIB)) && ln -s $(notdir $(FINAL_IMPORT_LIB)) $(notdir $(MIDDLE_IMPORT_LIB)) |
b75a7d8f A |
200 | endif |
201 | endif | |
46f4442e | 202 | endif |
b75a7d8f | 203 | |
b75a7d8f A |
204 | install-headers: |
205 | $(MKINSTALLDIRS) $(DESTDIR)$(includedir)/layout | |
206 | @for file in $(HEADERS); do \ | |
207 | echo "$(INSTALL_DATA) $$file $(DESTDIR)$(includedir)/layout"; \ | |
208 | $(INSTALL_DATA) $$file $(DESTDIR)$(includedir)/layout || exit; \ | |
209 | done | |
b75a7d8f A |
210 | |
211 | dist-local: | |
212 | ||
213 | clean-local: | |
214 | test -z "$(CLEANFILES)" || $(RMV) $(CLEANFILES) | |
73c04bcf | 215 | $(RMV) $(OBJECTS) $(STATIC_OBJECTS) $(ALL_TARGETS) $(SO_VERSION_DATA) |
b75a7d8f A |
216 | |
217 | distclean-local: clean-local | |
218 | $(RMV) Makefile | |
219 | ||
220 | check-local: | |
221 | ||
222 | Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status | |
223 | cd $(top_builddir) \ | |
224 | && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status | |
225 | ||
226 | ifneq ($(ENABLE_STATIC),) | |
46f4442e A |
227 | $(TARGET): $(STATIC_OBJECTS) |
228 | $(AR) $(ARFLAGS) $(AR_OUTOPT)$@ $^ | |
b75a7d8f A |
229 | $(RANLIB) $@ |
230 | endif | |
231 | ||
232 | ifneq ($(ENABLE_SHARED),) | |
73c04bcf | 233 | $(SHARED_OBJECT): $(OBJECTS) $(SO_VERSION_DATA) |
b75a7d8f | 234 | $(SHLIB.cc) $(LD_SONAME) $(OUTOPT)$@ $^ $(LIBS) |
4388f060 A |
235 | ifeq ($(ENABLE_RPATH),YES) |
236 | ifneq ($(wildcard $(libdir)/$(MIDDLE_SO_TARGET)),) | |
237 | $(warning RPATH warning: --enable-rpath means test programs may use existing $(libdir)/$(MIDDLE_SO_TARGET)) | |
238 | endif | |
239 | endif | |
374ca955 A |
240 | |
241 | ifeq ($(OS390BATCH),1) | |
73c04bcf | 242 | $(BATCH_TARGET):$(OBJECTS) |
374ca955 A |
243 | $(SHLIB.cc) $(LD_SONAME) $(OUTOPT)$@ $^ $(BATCH_LIBS) |
244 | endif # OS390BATCH | |
73c04bcf | 245 | endif # ENABLE_SHARED |
b75a7d8f A |
246 | |
247 | ifeq (,$(MAKECMDGOALS)) | |
248 | -include $(DEPS) | |
249 | else | |
250 | ifneq ($(patsubst %clean,,$(MAKECMDGOALS)),) | |
251 | -include $(DEPS) | |
252 | endif | |
253 | endif |