blob: 225444e326c5efb8eedf0313f0ab583ae958d3f4 [file] [log] [blame]
Ebrahim Byagowi51933572020-08-11 23:51:59 +04301# Process this file with automake to produce Makefile.in
2
3NULL =
4SUBDIRS =
5DIST_SUBDIRS =
6BUILT_SOURCES =
7EXTRA_DIST =
8CLEANFILES =
9DISTCLEANFILES =
10MAINTAINERCLEANFILES =
11DISTCHECK_CONFIGURE_FLAGS = --enable-introspection
12TESTS =
13check_PROGRAMS =
14
Khaled Hosny605bb1e2022-07-19 21:15:21 +020015EXTRA_DIST += harfbuzz.cc harfbuzz-subset.cc
Ebrahim Byagowi51933572020-08-11 23:51:59 +043016EXTRA_DIST += meson.build
17EXTRA_DIST += fix_get_types.py
18
19# Convenience targets:
20lib: $(BUILT_SOURCES) libharfbuzz.la
21libs: $(BUILT_SOURCES) $(lib_LTLIBRARIES)
22tiny:
23 $(MAKE) $(AM_MAKEFLAGS) CPPFLAGS="-Os -DHB_TINY $(CPPFLAGS)" libs
24tinyz:
25 $(MAKE) $(AM_MAKEFLAGS) CPPFLAGS="-Oz -DHB_TINY $(CPPFLAGS)" libs
26
27lib_LTLIBRARIES = libharfbuzz.la
28
29include Makefile.sources
30
31HBCFLAGS =
32HBLIBS =
33HBNONPCLIBS =
34HBDEPS =
35HBSOURCES = $(HB_BASE_sources)
36HBSOURCES += $(HB_BASE_RAGEL_GENERATED_sources)
37HBHEADERS = $(HB_BASE_headers)
38
39if HAVE_PTHREAD
40HBCFLAGS += $(PTHREAD_CFLAGS)
41HBNONPCLIBS += $(PTHREAD_LIBS)
42endif
43
44if HAVE_GLIB
45HBCFLAGS += $(GLIB_CFLAGS)
46HBLIBS += $(GLIB_LIBS)
47HBDEPS += $(GLIB_DEPS)
48HBSOURCES += $(HB_GLIB_sources)
49HBHEADERS += $(HB_GLIB_headers)
50endif
51
52if HAVE_FREETYPE
53HBCFLAGS += $(FREETYPE_CFLAGS)
54HBLIBS += $(FREETYPE_LIBS)
55HBDEPS += $(FREETYPE_DEPS)
56HBSOURCES += $(HB_FT_sources)
57HBHEADERS += $(HB_FT_headers)
58endif
59
60if HAVE_GRAPHITE2
61HBCFLAGS += $(GRAPHITE2_CFLAGS)
62HBLIBS += $(GRAPHITE2_LIBS)
63HBDEPS += $(GRAPHITE2_DEPS)
64HBSOURCES += $(HB_GRAPHITE2_sources)
65HBHEADERS += $(HB_GRAPHITE2_headers)
66endif
67
68if HAVE_UNISCRIBE
69HBCFLAGS += $(UNISCRIBE_CFLAGS)
70HBNONPCLIBS += $(UNISCRIBE_LIBS)
71HBSOURCES += $(HB_UNISCRIBE_sources)
72HBHEADERS += $(HB_UNISCRIBE_headers)
73endif
74
75if HAVE_DIRECTWRITE
76HBCFLAGS += $(DIRECTWRITE_CXXFLAGS)
77HBNONPCLIBS += $(DIRECTWRITE_LIBS)
78HBSOURCES += $(HB_DIRECTWRITE_sources)
79HBHEADERS += $(HB_DIRECTWRITE_headers)
80endif
81
82if HAVE_GDI
83HBCFLAGS += $(GDI_CXXFLAGS)
84HBNONPCLIBS += $(GDI_LIBS)
85HBSOURCES += $(HB_GDI_sources)
86HBHEADERS += $(HB_GDI_headers)
87endif
88
89if HAVE_CORETEXT
90HBCFLAGS += $(CORETEXT_CFLAGS)
91HBNONPCLIBS += $(CORETEXT_LIBS)
92HBSOURCES += $(HB_CORETEXT_sources)
93HBHEADERS += $(HB_CORETEXT_headers)
94endif
95
96
97BUILT_SOURCES += \
98 hb-version.h
99
100$(srcdir)/hb-version.h: hb-version.h.in $(top_srcdir)/configure.ac
101 $(AM_V_GEN) $(SED) \
102 -e 's/[@]HB_VERSION_MAJOR@/$(HB_VERSION_MAJOR)/' \
103 -e 's/[@]HB_VERSION_MINOR@/$(HB_VERSION_MINOR)/' \
104 -e 's/[@]HB_VERSION_MICRO@/$(HB_VERSION_MICRO)/' \
105 -e 's/[@]HB_VERSION@/$(HB_VERSION)/' \
106 "$<" > "$@" || ($(RM) "$@"; false)
107
108# Put the library together
109
110HBLIBS += $(HBNONPCLIBS)
111
112if OS_WIN32
113export_symbols = -export-symbols harfbuzz.def
114harfbuzz_def_dependency = harfbuzz.def
115export_symbols_subset = -export-symbols harfbuzz-subset.def
116harfbuzz_subset_def_dependency = harfbuzz-subset.def
117export_symbols_icu = -export-symbols harfbuzz-icu.def
118harfbuzz_icu_def_dependency = harfbuzz-icu.def
119export_symbols_gobject = -export-symbols harfbuzz-gobject.def
120harfbuzz_gobject_def_dependency = harfbuzz-gobject.def
121chosen_linker = $(CXXLINK)
122else
123if WITH_LIBSTDCXX
124chosen_linker = $(CXXLINK)
125else
126if HAVE_GCC
127# Use a C linker for GCC, not C++; Don't link to libstdc++
128chosen_linker = $(LINK)
129else
130chosen_linker = $(CXXLINK)
131endif
132endif
133endif
134
135@CODE_COVERAGE_RULES@
136
137base_link_flags = $(AM_LDFLAGS) -lm -version-info $(HB_LIBTOOL_VERSION_INFO) -no-undefined
138libharfbuzz_la_LINK = $(chosen_linker) $(libharfbuzz_la_LDFLAGS)
139libharfbuzz_la_SOURCES = $(HBSOURCES) $(HBHEADERS)
140libharfbuzz_la_CPPFLAGS = $(HBCFLAGS) $(CODE_COVERAGE_CFLAGS)
141libharfbuzz_la_LDFLAGS = $(base_link_flags) $(export_symbols) $(CODE_COVERAGE_LDFLAGS)
142libharfbuzz_la_LIBADD = $(HBLIBS)
143EXTRA_libharfbuzz_la_DEPENDENCIES = $(harfbuzz_def_dependency)
144pkginclude_HEADERS = $(HBHEADERS)
145nodist_pkginclude_HEADERS =
146pkgconfigdir = $(libdir)/pkgconfig
147pkgconfig_DATA = harfbuzz.pc
Ebrahim Byagowief2e3802020-08-12 00:50:33 +0430148cmakedir = $(libdir)/cmake/harfbuzz
149cmake_DATA = harfbuzz-config.cmake
150EXTRA_DIST += hb-version.h.in harfbuzz.pc.in harfbuzz-config.cmake.in
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430151
152lib_LTLIBRARIES += libharfbuzz-subset.la
153libharfbuzz_subset_la_LINK = $(chosen_linker) $(libharfbuzz_subset_la_LDFLAGS)
154libharfbuzz_subset_la_SOURCES = $(HB_SUBSET_sources)
155libharfbuzz_subset_la_CPPFLAGS = $(HBCFLAGS) $(CODE_COVERAGE_CFLAGS)
156libharfbuzz_subset_la_LDFLAGS = $(base_link_flags) $(export_symbols_subset) $(CODE_COVERAGE_LDFLAGS)
157libharfbuzz_subset_la_LIBADD = libharfbuzz.la
158EXTRA_libharfbuzz_subset_la_DEPENDENCIES = $(harfbuzz_subset_def_dependency)
159pkginclude_HEADERS += $(HB_SUBSET_headers)
160pkgconfig_DATA += harfbuzz-subset.pc
161EXTRA_DIST += harfbuzz-subset.pc.in
162
Khaled Hosny605bb1e2022-07-19 21:15:21 +0200163harfbuzz-subset.cc: Makefile.sources
164 $(AM_V_GEN) \
Khaled Hosnyd6e55f12022-07-30 23:35:47 +0200165 LANG=C; \
Khaled Hosny605bb1e2022-07-19 21:15:21 +0200166 for f in \
167 $(HB_BASE_sources) \
168 $(HB_SUBSET_sources) \
169 ; do echo '#include "'$$f'"'; done | \
170 sort -u | \
171 grep '[.]cc"' > $(srcdir)/harfbuzz-subset.cc \
172 || ($(RM) $(srcdir)/harfbuzz-subset.cc; false)
173BUILT_SOURCES += harfbuzz-subset.cc
174
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430175if HAVE_ICU
176if HAVE_ICU_BUILTIN
177HBCFLAGS += $(ICU_CFLAGS)
178HBLIBS += $(ICU_LIBS)
179HBSOURCES += $(HB_ICU_sources)
180HBHEADERS += $(HB_ICU_headers)
181else
182lib_LTLIBRARIES += libharfbuzz-icu.la
183libharfbuzz_icu_la_SOURCES = $(HB_ICU_sources)
184libharfbuzz_icu_la_CPPFLAGS = $(HBCFLAGS) $(ICU_CFLAGS) $(CODE_COVERAGE_CFLAGS)
185libharfbuzz_icu_la_LDFLAGS = $(base_link_flags) $(export_symbols_icu) $(CODE_COVERAGE_LDFLAGS)
186libharfbuzz_icu_la_LIBADD = $(ICU_LIBS) libharfbuzz.la
187EXTRA_libharfbuzz_icu_la_DEPENDENCIES = $(harfbuzz_icu_def_dependency)
188pkginclude_HEADERS += $(HB_ICU_headers)
189pkgconfig_DATA += harfbuzz-icu.pc
190endif
191endif
192EXTRA_DIST += harfbuzz-icu.pc.in
193
194if HAVE_GOBJECT
195lib_LTLIBRARIES += libharfbuzz-gobject.la
196libharfbuzz_gobject_la_LINK = $(chosen_linker) $(libharfbuzz_gobject_la_LDFLAGS)
197libharfbuzz_gobject_la_SOURCES = $(HB_GOBJECT_DIST_sources)
198nodist_libharfbuzz_gobject_la_SOURCES = $(HB_GOBJECT_NODIST_sources)
199libharfbuzz_gobject_la_CPPFLAGS = $(HBCFLAGS) $(GOBJECT_CFLAGS) $(CODE_COVERAGE_CFLAGS)
200libharfbuzz_gobject_la_LDFLAGS = $(base_link_flags) $(CODE_COVERAGE_LDFLAGS)
201libharfbuzz_gobject_la_LIBADD = $(GOBJECT_LIBS) libharfbuzz.la
202EXTRA_libharfbuzz_gobject_la_DEPENDENCIES = $(harfbuzz_gobject_def_dependency)
203pkginclude_HEADERS += $(HB_GOBJECT_DIST_headers)
204nodist_pkginclude_HEADERS += $(HB_GOBJECT_NODIST_headers)
205pkgconfig_DATA += harfbuzz-gobject.pc
206
207BUILT_SOURCES += \
208 $(HB_GOBJECT_ENUM_sources) \
209 $(HB_GOBJECT_ENUM_headers) \
210 $(NULL)
211DISTCLEANFILES += \
212 $(HB_GOBJECT_ENUM_sources) \
213 $(HB_GOBJECT_ENUM_headers) \
214 $(NULL)
215hb-gobject-enums.%: hb-gobject-enums.%.tmpl $(HBHEADERS)
216 $(AM_V_GEN) PYTHONIOENCODING=UTF-8 $(GLIB_MKENUMS) \
217 --identifier-prefix hb_ --symbol-prefix hb_gobject \
218 --template $^ | \
219 sed 's/_t_get_type/_get_type/g; s/_T (/ (/g' > "$@" \
220 || ($(RM) "$@"; false)
221endif
222EXTRA_DIST += \
223 harfbuzz-gobject.pc.in \
224 hb-gobject-enums.cc.tmpl \
225 hb-gobject-enums.h.tmpl \
226 $(NULL)
227
228
229%.pc: %.pc.in $(top_builddir)/config.status
230 $(AM_V_GEN) \
231 $(SED) -e 's@%prefix%@$(prefix)@g' \
232 -e 's@%exec_prefix%@$(exec_prefix)@g' \
233 -e 's@%libdir%@$(libdir)@g' \
234 -e 's@%includedir%@$(includedir)@g' \
235 -e 's@%libs_private%@$(HBNONPCLIBS)@g' \
236 -e 's@%requires_private%@$(HBDEPS)@g' \
237 -e 's@%VERSION%@$(VERSION)@g' \
238 "$<" > "$@" \
239 || ($(RM) "$@"; false)
240
241CLEANFILES += $(pkgconfig_DATA)
242
243
244DEF_FILES = harfbuzz.def harfbuzz-subset.def harfbuzz-icu.def harfbuzz-deprecated-symbols.txt
245if HAVE_GOBJECT
246DEF_FILES += harfbuzz-gobject.def
247endif
248check: $(DEF_FILES) # For check-symbols.sh
249CLEANFILES += $(DEF_FILES)
Behdad Esfahbod5efa04c2021-03-02 16:26:41 -0700250harfbuzz.def: $(top_builddir)/config.status
Behdad Esfahbodd351bbf2021-03-02 16:24:54 -0700251harfbuzz.def: $(HBHEADERS)
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430252 $(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
253harfbuzz-subset.def: $(HB_SUBSET_headers)
254 $(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
255harfbuzz-icu.def: $(HB_ICU_headers)
256 $(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
257harfbuzz-gobject.def: $(HB_GOBJECT_headers)
258 $(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
259harfbuzz-deprecated-symbols.txt: $(srcdir)/hb-deprecated.h
260 $(AM_V_GEN) PLAIN_LIST=1 $(srcdir)/gen-def.py "$@" $^
261
262
263GENERATORS = \
David Corbett7bffb5d2020-08-11 19:24:46 -0400264 gen-arabic-joining-list.py \
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430265 gen-arabic-table.py \
266 gen-def.py \
267 gen-emoji-table.py \
268 gen-harfbuzzcc.py \
269 gen-hb-version.py \
270 gen-indic-table.py \
271 gen-os2-unicode-ranges.py \
272 gen-ragel-artifacts.py \
273 gen-tag-table.py \
274 gen-ucd-table.py \
275 gen-use-table.py \
276 gen-vowel-constraints.py \
277 $(NULL)
278EXTRA_DIST += $(GENERATORS)
279
280built-sources: $(BUILT_SOURCES)
281
282.PHONY: built-sources
283
284RAGEL_GENERATED = \
285 $(patsubst %,$(srcdir)/%,$(HB_BASE_RAGEL_GENERATED_sources)) \
286 $(NULL)
287BUILT_SOURCES += $(RAGEL_GENERATED)
288EXTRA_DIST += \
289 $(HB_BASE_RAGEL_sources) \
290 $(NULL)
291# We decided to add ragel-generated files to git...
292#MAINTAINERCLEANFILES += $(RAGEL_GENERATED)
293$(srcdir)/%.hh: $(srcdir)/%.rl
294 $(AM_V_GEN)(cd $(srcdir) && $(RAGEL) -e -F1 -o "$*.hh" "$*.rl") \
295 || ($(RM) "$@"; false)
296
297harfbuzz.cc: Makefile.sources
298 $(AM_V_GEN) \
Khaled Hosnyd6e55f12022-07-30 23:35:47 +0200299 LANG=C; \
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430300 for f in \
301 $(HB_BASE_sources) \
302 $(HB_GLIB_sources) \
303 $(HB_FT_sources) \
304 $(HB_GRAPHITE2_sources) \
305 $(HB_UNISCRIBE_sources) \
306 $(HB_GDI_sources) \
307 $(HB_DIRECTWRITE_sources) \
308 $(HB_CORETEXT_sources) \
309 ; do echo '#include "'$$f'"'; done | \
Khaled Hosny605bb1e2022-07-19 21:15:21 +0200310 sort -u | \
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430311 grep '[.]cc"' > $(srcdir)/harfbuzz.cc \
312 || ($(RM) $(srcdir)/harfbuzz.cc; false)
313BUILT_SOURCES += harfbuzz.cc
314
315noinst_PROGRAMS = \
316 main \
317 test \
318 test-buffer-serialize \
319 test-ot-meta \
320 test-ot-name \
321 test-ot-glyphname \
322 test-gpos-size-params \
323 test-gsub-would-substitute \
Behdad Esfahbod826639f2022-08-02 12:18:18 -0600324 test-use-table \
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430325 $(NULL)
326bin_PROGRAMS =
327
328main_SOURCES = main.cc
329main_CPPFLAGS = $(HBCFLAGS)
330main_LDADD = libharfbuzz.la $(HBLIBS)
331
332test_SOURCES = test.cc
333test_CPPFLAGS = $(HBCFLAGS) $(FREETYPE_CFLAGS)
334test_LDADD = libharfbuzz.la $(HBLIBS) $(FREETYPE_LIBS)
335
336test_buffer_serialize_SOURCES = test-buffer-serialize.cc
337test_buffer_serialize_CPPFLAGS = $(HBCFLAGS)
338test_buffer_serialize_LDADD = libharfbuzz.la $(HBLIBS)
339
340test_ot_meta_SOURCES = test-ot-meta.cc
341test_ot_meta_CPPFLAGS = $(HBCFLAGS)
342test_ot_meta_LDADD = libharfbuzz.la $(HBLIBS)
343
344test_ot_name_SOURCES = test-ot-name.cc
345test_ot_name_CPPFLAGS = $(HBCFLAGS)
346test_ot_name_LDADD = libharfbuzz.la $(HBLIBS)
347
348test_ot_glyphname_SOURCES = test-ot-glyphname.cc
349test_ot_glyphname_CPPFLAGS = $(HBCFLAGS)
350test_ot_glyphname_LDADD = libharfbuzz.la $(HBLIBS)
351
Behdad Esfahbod826639f2022-08-02 12:18:18 -0600352test_use_table_SOURCES = test-use-table.cc
353test_use_table_CPPFLAGS = $(HBCFLAGS)
354test_use_table_LDADD = libharfbuzz.la $(HBLIBS)
355
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430356test_gpos_size_params_SOURCES = test-gpos-size-params.cc
357test_gpos_size_params_CPPFLAGS = $(HBCFLAGS)
358test_gpos_size_params_LDADD = libharfbuzz.la $(HBLIBS)
359
360test_gsub_would_substitute_SOURCES = test-gsub-would-substitute.cc
361test_gsub_would_substitute_CPPFLAGS = $(HBCFLAGS) $(FREETYPE_CFLAGS)
362test_gsub_would_substitute_LDADD = libharfbuzz.la $(HBLIBS) $(FREETYPE_LIBS)
363
Behdad Esfahbod11135152021-11-01 20:23:12 -0600364COMPILED_TESTS = \
365 test-algs \
366 test-array \
Behdad Esfahbod68937232022-02-11 13:16:25 -0600367 test-bimap \
Behdad Esfahbod11135152021-11-01 20:23:12 -0600368 test-iter \
Behdad Esfahbod68937232022-02-11 13:16:25 -0600369 test-machinery \
Behdad Esfahbodc30f6832021-11-01 22:29:14 -0600370 test-map \
Behdad Esfahbod11135152021-11-01 20:23:12 -0600371 test-number \
372 test-ot-tag \
373 test-priority-queue \
Behdad Esfahboddcd18da2021-11-01 20:55:30 -0600374 test-set \
Behdad Esfahbod76c6f412022-01-23 10:43:37 -0700375 test-serialize \
Behdad Esfahbod11135152021-11-01 20:23:12 -0600376 test-unicode-ranges \
377 test-vector \
Behdad Esfahbod11135152021-11-01 20:23:12 -0600378 test-repacker \
Garret Rieger2264df62022-08-05 18:33:03 +0000379 test-classdef-graph \
Behdad Esfahbod11135152021-11-01 20:23:12 -0600380 $(NULL)
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430381COMPILED_TESTS_CPPFLAGS = $(HBCFLAGS) -DMAIN -UNDEBUG
382COMPILED_TESTS_LDADD = libharfbuzz.la $(HBLIBS)
383check_PROGRAMS += $(COMPILED_TESTS)
384TESTS += $(COMPILED_TESTS)
385
386test_algs_SOURCES = test-algs.cc hb-static.cc
387test_algs_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
388test_algs_LDADD = $(COMPILED_TESTS_LDADD)
389
390test_array_SOURCES = test-array.cc
391test_array_CPPFLAGS = $(HBCFLAGS)
392test_array_LDADD = libharfbuzz.la $(HBLIBS)
393
Behdad Esfahbod68937232022-02-11 13:16:25 -0600394test_bimap_SOURCES = test-bimap.cc hb-static.cc
395test_bimap_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
396test_bimap_LDADD = $(COMPILED_TESTS_LDADD)
Garret Rieger1584d3c2020-10-28 17:49:09 -0700397
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430398test_iter_SOURCES = test-iter.cc hb-static.cc
399test_iter_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
400test_iter_LDADD = $(COMPILED_TESTS_LDADD)
401
Behdad Esfahbod68937232022-02-11 13:16:25 -0600402test_machinery_SOURCES = test-machinery.cc hb-static.cc
403test_machinery_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
404test_machinery_LDADD = $(COMPILED_TESTS_LDADD)
405
Behdad Esfahbodc30f6832021-11-01 22:29:14 -0600406test_map_SOURCES = test-map.cc hb-static.cc
407test_map_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
408test_map_LDADD = $(COMPILED_TESTS_LDADD)
409
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430410test_number_SOURCES = test-number.cc hb-number.cc
411test_number_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
412test_number_LDADD = $(COMPILED_TESTS_LDADD)
413
414test_ot_tag_SOURCES = hb-ot-tag.cc
415test_ot_tag_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
416test_ot_tag_LDADD = $(COMPILED_TESTS_LDADD)
417
Behdad Esfahbod68937232022-02-11 13:16:25 -0600418test_priority_queue_SOURCES = test-priority-queue.cc hb-static.cc
419test_priority_queue_CPPFLAGS = $(HBCFLAGS)
420test_priority_queue_LDADD = libharfbuzz.la $(HBLIBS)
421
Garret Riegerf6a242b2022-07-27 18:58:41 +0000422test_repacker_SOURCES = test-repacker.cc hb-static.cc graph/gsubgpos-context.cc
Behdad Esfahbod68937232022-02-11 13:16:25 -0600423test_repacker_CPPFLAGS = $(HBCFLAGS)
424test_repacker_LDADD = libharfbuzz.la libharfbuzz-subset.la $(HBLIBS)
425
Garret Rieger2264df62022-08-05 18:33:03 +0000426test_classdef_graph_SOURCES = graph/test-classdef-graph.cc hb-static.cc graph/gsubgpos-context.cc
427test_classdef_graph_CPPFLAGS = $(HBCFLAGS)
428test_classdef_graph_LDADD = libharfbuzz.la libharfbuzz-subset.la $(HBLIBS)
429
Behdad Esfahboddcd18da2021-11-01 20:55:30 -0600430test_set_SOURCES = test-set.cc hb-static.cc
431test_set_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
432test_set_LDADD = $(COMPILED_TESTS_LDADD)
433
Behdad Esfahbod76c6f412022-01-23 10:43:37 -0700434test_serialize_SOURCES = test-serialize.cc hb-static.cc
435test_serialize_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
436test_serialize_LDADD = $(COMPILED_TESTS_LDADD)
437
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430438test_unicode_ranges_SOURCES = test-unicode-ranges.cc
439test_unicode_ranges_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
440test_unicode_ranges_LDADD = $(COMPILED_TESTS_LDADD)
441
Behdad Esfahboddcd18da2021-11-01 20:55:30 -0600442test_vector_SOURCES = test-vector.cc hb-static.cc
443test_vector_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
444test_vector_LDADD = $(COMPILED_TESTS_LDADD)
445
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430446dist_check_SCRIPTS = \
447 check-c-linkage-decls.py \
448 check-externs.py \
449 check-header-guards.py \
450 check-includes.py \
451 check-static-inits.py \
452 check-symbols.py \
453 $(NULL)
454TESTS += $(dist_check_SCRIPTS)
455
456if !WITH_LIBSTDCXX
457dist_check_SCRIPTS += \
458 check-libstdc++.py \
459 $(NULL)
460endif
461
462TESTS_ENVIRONMENT = \
463 srcdir="$(srcdir)" \
Xavier Claessens4266f4e2022-06-03 12:06:56 -0400464 base_srcdir="$(srcdir)" \
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430465 builddir="$(builddir)" \
466 MAKE="$(MAKE) $(AM_MAKEFLAGS)" \
467 HBSOURCES="$(HBSOURCES)" \
468 HBHEADERS="$(HBHEADERS)" \
Behdad Esfahbod13c6ad92021-06-12 11:00:19 -0600469 LDD="$(LDD)" \
470 NM="$(NM)" \
471 OBJDUMP="$(OBJDUMP)" \
472 OTOOL="$(OTOOL)" \
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430473 $(NULL)
474
475if HAVE_INTROSPECTION
476
477-include $(INTROSPECTION_MAKEFILE)
478INTROSPECTION_GIRS = HarfBuzz-0.0.gir # What does the 0 mean anyway?!
479INTROSPECTION_SCANNER_ARGS = \
480 -I$(srcdir) \
481 --warn-all --verbose \
482 --namespace=HarfBuzz \
483 --nsversion=0.0 \
484 --symbol-prefix=hb \
485 --symbol-prefix=hb_gobject \
486 --identifier-prefix=hb_ \
487 --pkg-export=harfbuzz-gobject \
488 --c-include=hb-gobject.h
489INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir)
490INTROSPECTION_SCANNER_ENV = CC="$(CC)"
491
492HarfBuzz-0.0.gir: libharfbuzz.la libharfbuzz-gobject.la
Khaled Hosny34275112022-05-30 04:46:02 +0200493HarfBuzz_0_0_gir_INCLUDES = GObject-2.0 freetype2-2.0
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430494HarfBuzz_0_0_gir_CFLAGS = \
495 $(INCLUDES) \
496 $(HBCFLAGS) \
Khaled Hosny7b9e23f2021-02-10 23:37:43 +0200497 -DHB_NO_SINGLE_HEADER_ERROR \
Ebrahim Byagowi51933572020-08-11 23:51:59 +0430498 -DHAVE_GOBJECT \
499 -DHB_EXTERN= \
500 $(NULL)
501HarfBuzz_0_0_gir_LIBS = \
502 libharfbuzz.la \
503 libharfbuzz-gobject.la \
504 $(NULL)
505HarfBuzz_0_0_gir_FILES = \
506 $(HBHEADERS) \
507 $(HBSOURCES) \
508 $(HB_GOBJECT_sources) \
509 $(HB_GOBJECT_headers) \
510 $(NULL)
511
512girdir = $(datadir)/gir-1.0
513gir_DATA = $(INTROSPECTION_GIRS)
514
515typelibdir = $(libdir)/girepository-1.0
516typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
517
518CLEANFILES += $(gir_DATA) $(typelib_DATA)
519
520endif
521
522-include $(top_srcdir)/git.mk