• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 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
15EXTRA_DIST += harfbuzz.cc harfbuzz-subset.cc
16EXTRA_DIST += meson.build
17EXTRA_DIST += fix_get_types.py relative_to.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)
50HB_HAS_GLIB_DEF = define HB_HAS_GLIB 1
51else
52HB_HAS_GLIB_DEF = undef HB_HAS_GLIB
53endif
54
55if HAVE_FREETYPE
56HBCFLAGS += $(FREETYPE_CFLAGS)
57HBLIBS   += $(FREETYPE_LIBS)
58HBDEPS   += $(FREETYPE_DEPS)
59HBSOURCES += $(HB_FT_sources)
60HBHEADERS += $(HB_FT_headers)
61HB_HAS_FREETYPE_DEF = define HB_HAS_FREETYPE 1
62else
63HB_HAS_FREETYPE_DEF = undef HB_HAS_FREETYPE
64endif
65
66if HAVE_GRAPHITE2
67HBCFLAGS += $(GRAPHITE2_CFLAGS)
68HBLIBS   += $(GRAPHITE2_LIBS)
69HBDEPS   += $(GRAPHITE2_DEPS)
70HBSOURCES += $(HB_GRAPHITE2_sources)
71HBHEADERS += $(HB_GRAPHITE2_headers)
72HB_HAS_GRAPHITE_DEF = define HB_HAS_GRAPHITE 1
73else
74HB_HAS_GRAPHITE_DEF = undef HB_HAS_GRAPHITE
75endif
76
77if HAVE_UNISCRIBE
78HBCFLAGS += $(UNISCRIBE_CFLAGS)
79HBNONPCLIBS += $(UNISCRIBE_LIBS)
80HBSOURCES += $(HB_UNISCRIBE_sources)
81HBHEADERS += $(HB_UNISCRIBE_headers)
82HB_HAS_UNISCRIBE_DEF = define HB_HAS_UNISCRIBE 1
83else
84HB_HAS_UNISCRIBE_DEF = undef HB_HAS_UNISCRIBE
85endif
86
87if HAVE_DIRECTWRITE
88HBCFLAGS += $(DIRECTWRITE_CXXFLAGS)
89HBNONPCLIBS += $(DIRECTWRITE_LIBS)
90HBSOURCES += $(HB_DIRECTWRITE_sources)
91HBHEADERS += $(HB_DIRECTWRITE_headers)
92HB_HAS_DIRECTWRITE_DEF = define HB_HAS_DIRECTWRITE 1
93else
94HB_HAS_DIRECTWRITE_DEF = undef HB_HAS_DIRECTWRITE
95endif
96
97if HAVE_GDI
98HBCFLAGS += $(GDI_CXXFLAGS)
99HBNONPCLIBS += $(GDI_LIBS)
100HBSOURCES += $(HB_GDI_sources)
101HBHEADERS += $(HB_GDI_headers)
102HB_HAS_GDI_DEF = define HB_HAS_GDI 1
103else
104HB_HAS_GDI_DEF = undef HB_HAS_GDI
105endif
106
107if HAVE_CORETEXT
108HBCFLAGS += $(CORETEXT_CFLAGS)
109HBNONPCLIBS += $(CORETEXT_LIBS)
110HBSOURCES += $(HB_CORETEXT_sources)
111HBHEADERS += $(HB_CORETEXT_headers)
112HB_HAS_CORETEXT_DEF = define HB_HAS_CORETEXT 1
113else
114HB_HAS_CORETEXT_DEF = undef HB_HAS_CORETEXT
115endif
116
117if HAVE_WASM
118HBCFLAGS += $(WASM_CFLAGS)
119HBNONPCLIBS += $(WASM_LIBS)
120HBSOURCES += $(HB_WASM_sources)
121HBHEADERS += $(HB_WASM_headers)
122HB_HAS_WASM_DEF = define HB_HAS_WASM 1
123else
124HB_HAS_WASM_DEF = undef HB_HAS_WASM
125endif
126
127
128BUILT_SOURCES += \
129	hb-version.h
130
131$(srcdir)/hb-version.h: hb-version.h.in $(top_srcdir)/configure.ac
132	$(AM_V_GEN) $(SED) \
133		-e 's/[@]HB_VERSION_MAJOR@/$(HB_VERSION_MAJOR)/' \
134		-e 's/[@]HB_VERSION_MINOR@/$(HB_VERSION_MINOR)/' \
135		-e 's/[@]HB_VERSION_MICRO@/$(HB_VERSION_MICRO)/' \
136		-e 's/[@]HB_VERSION@/$(HB_VERSION)/' \
137		"$<" > "$@" || ($(RM) "$@"; false)
138
139# Put the library together
140
141HBLIBS += $(HBNONPCLIBS)
142
143if OS_WIN32
144export_symbols = -export-symbols harfbuzz.def
145harfbuzz_def_dependency = harfbuzz.def
146export_symbols_subset = -export-symbols harfbuzz-subset.def
147harfbuzz_subset_def_dependency = harfbuzz-subset.def
148export_symbols_cairo = -export-symbols harfbuzz-cairo.def
149harfbuzz_cairo_def_dependency = harfbuzz-cairo.def
150export_symbols_icu = -export-symbols harfbuzz-icu.def
151harfbuzz_icu_def_dependency = harfbuzz-icu.def
152export_symbols_gobject = -export-symbols harfbuzz-gobject.def
153harfbuzz_gobject_def_dependency = harfbuzz-gobject.def
154chosen_linker = $(CXXLINK)
155else
156if WITH_LIBSTDCXX
157chosen_linker = $(CXXLINK)
158else
159if HAVE_GCC
160# Use a C linker for GCC, not C++; Don't link to libstdc++
161chosen_linker = $(LINK)
162else
163chosen_linker = $(CXXLINK)
164endif
165endif
166endif
167
168@CODE_COVERAGE_RULES@
169
170base_link_flags = $(AM_LDFLAGS) -lm -version-info $(HB_LIBTOOL_VERSION_INFO) -no-undefined
171libharfbuzz_la_LINK = $(chosen_linker) $(libharfbuzz_la_LDFLAGS)
172libharfbuzz_la_SOURCES = $(HBSOURCES) $(HBHEADERS)
173libharfbuzz_la_CPPFLAGS = $(HBCFLAGS) $(CODE_COVERAGE_CFLAGS)
174libharfbuzz_la_LDFLAGS = $(base_link_flags) $(export_symbols) $(CODE_COVERAGE_LDFLAGS)
175libharfbuzz_la_LIBADD = $(HBLIBS)
176EXTRA_libharfbuzz_la_DEPENDENCIES = $(harfbuzz_def_dependency)
177pkginclude_HEADERS = $(HBHEADERS)
178nodist_pkginclude_HEADERS =
179pkgconfigdir = $(libdir)/pkgconfig
180pkgconfig_DATA = harfbuzz.pc
181cmakedir = $(libdir)/cmake/harfbuzz
182cmake_DATA = harfbuzz-config.cmake
183EXTRA_DIST += hb-version.h.in hb-features.h.in harfbuzz.pc.in harfbuzz-config.cmake.in
184
185lib_LTLIBRARIES += libharfbuzz-subset.la
186libharfbuzz_subset_la_LINK = $(chosen_linker) $(libharfbuzz_subset_la_LDFLAGS)
187libharfbuzz_subset_la_SOURCES = $(HB_SUBSET_sources)
188libharfbuzz_subset_la_CPPFLAGS = $(HBCFLAGS) $(CODE_COVERAGE_CFLAGS)
189libharfbuzz_subset_la_LDFLAGS = $(base_link_flags) $(export_symbols_subset) $(CODE_COVERAGE_LDFLAGS)
190libharfbuzz_subset_la_LIBADD = libharfbuzz.la
191EXTRA_libharfbuzz_subset_la_DEPENDENCIES = $(harfbuzz_subset_def_dependency)
192pkginclude_HEADERS += $(HB_SUBSET_headers)
193pkgconfig_DATA += harfbuzz-subset.pc
194EXTRA_DIST += harfbuzz-subset.pc.in
195
196harfbuzz-subset.cc: Makefile.sources
197	$(AM_V_GEN) \
198	LANG=C; \
199	for f in \
200		$(HB_BASE_sources) \
201		$(HB_SUBSET_sources) \
202		; do echo '#include "'$$f'"'; done | \
203	sort -u | \
204	grep '[.]cc"' > $(srcdir)/harfbuzz-subset.cc \
205	|| ($(RM) $(srcdir)/harfbuzz-subset.cc; false)
206BUILT_SOURCES += harfbuzz-subset.cc
207
208lib_LTLIBRARIES += libharfbuzz-cairo.la
209libharfbuzz_cairo_la_LINK = $(chosen_linker) $(libharfbuzz_cairo_la_LDFLAGS)
210libharfbuzz_cairo_la_SOURCES = $(HB_CAIRO_sources)
211libharfbuzz_cairo_la_CPPFLAGS = $(HBCFLAGS) $(CAIRO_CFLAGS) $(CODE_COVERAGE_CFLAGS)
212libharfbuzz_cairo_la_LDFLAGS = $(base_link_flags) $(export_symbols_cairo) $(CODE_COVERAGE_LDFLAGS)
213libharfbuzz_cairo_la_LIBADD = $(CAIRO_LIBS) libharfbuzz.la
214EXTRA_libharfbuzz_cairo_la_DEPENDENCIES = $(harfbuzz_cairo_def_dependency)
215pkginclude_HEADERS += $(HB_CAIRO_headers)
216pkgconfig_DATA += harfbuzz-cairo.pc
217EXTRA_DIST += harfbuzz-cairo.pc.in
218
219if HAVE_ICU
220if HAVE_ICU_BUILTIN
221HBCFLAGS += $(ICU_CFLAGS)
222HBLIBS += $(ICU_LIBS)
223HBSOURCES += $(HB_ICU_sources)
224HBHEADERS += $(HB_ICU_headers)
225HB_HAS_ICU_DEF = define HB_HAS_ICU 1
226else
227lib_LTLIBRARIES += libharfbuzz-icu.la
228libharfbuzz_icu_la_SOURCES = $(HB_ICU_sources)
229libharfbuzz_icu_la_CPPFLAGS = $(HBCFLAGS) $(ICU_CFLAGS) $(CODE_COVERAGE_CFLAGS)
230libharfbuzz_icu_la_LDFLAGS = $(base_link_flags) $(export_symbols_icu) $(CODE_COVERAGE_LDFLAGS)
231libharfbuzz_icu_la_LIBADD = $(ICU_LIBS) libharfbuzz.la
232EXTRA_libharfbuzz_icu_la_DEPENDENCIES = $(harfbuzz_icu_def_dependency)
233pkginclude_HEADERS += $(HB_ICU_headers)
234pkgconfig_DATA += harfbuzz-icu.pc
235HB_HAS_ICU_DEF = undef HB_HAS_ICU
236endif
237endif
238EXTRA_DIST += harfbuzz-icu.pc.in
239
240if HAVE_GOBJECT
241lib_LTLIBRARIES += libharfbuzz-gobject.la
242libharfbuzz_gobject_la_LINK = $(chosen_linker) $(libharfbuzz_gobject_la_LDFLAGS)
243libharfbuzz_gobject_la_SOURCES = $(HB_GOBJECT_DIST_sources)
244nodist_libharfbuzz_gobject_la_SOURCES = $(HB_GOBJECT_NODIST_sources)
245libharfbuzz_gobject_la_CPPFLAGS = $(HBCFLAGS) $(GOBJECT_CFLAGS) $(CODE_COVERAGE_CFLAGS)
246libharfbuzz_gobject_la_LDFLAGS = $(base_link_flags) $(CODE_COVERAGE_LDFLAGS)
247libharfbuzz_gobject_la_LIBADD = $(GOBJECT_LIBS) libharfbuzz.la
248EXTRA_libharfbuzz_gobject_la_DEPENDENCIES = $(harfbuzz_gobject_def_dependency)
249pkginclude_HEADERS += $(HB_GOBJECT_DIST_headers)
250nodist_pkginclude_HEADERS += $(HB_GOBJECT_NODIST_headers)
251pkgconfig_DATA += harfbuzz-gobject.pc
252
253BUILT_SOURCES += \
254	$(HB_GOBJECT_ENUM_sources) \
255	$(HB_GOBJECT_ENUM_headers) \
256	$(NULL)
257DISTCLEANFILES += \
258	$(HB_GOBJECT_ENUM_sources) \
259	$(HB_GOBJECT_ENUM_headers) \
260	$(NULL)
261hb-gobject-enums.%: hb-gobject-enums.%.tmpl $(HBHEADERS)
262	$(AM_V_GEN) PYTHONIOENCODING=UTF-8 $(GLIB_MKENUMS) \
263		--identifier-prefix hb_ --symbol-prefix hb_gobject \
264		--template $^ | \
265	sed 's/_t_get_type/_get_type/g; s/_T (/ (/g' > "$@" \
266	|| ($(RM) "$@"; false)
267HB_HAS_GOBJECT_DEF = define HB_HAS_GOBJECT 1
268else
269HB_HAS_GOBJECT_DEF = undef HB_HAS_GOBJECT
270endif
271EXTRA_DIST += \
272	harfbuzz-gobject.pc.in \
273	hb-gobject-enums.cc.tmpl \
274	hb-gobject-enums.h.tmpl \
275	$(NULL)
276
277
278BUILT_SOURCES += \
279	hb-features.h
280DISTCLEANFILES += \
281	hb-features.h
282
283hb-features.h: hb-features.h.in $(top_builddir)/config.status
284	$(AM_V_GEN) $(SED) \
285		-e 's/mesondefine HB_HAS_CAIRO/$(HB_HAS_CAIRO_DEF)/' \
286		-e 's/mesondefine HB_HAS_CORETEXT/$(HB_HAS_CORETEXT_DEF)/' \
287		-e 's/mesondefine HB_HAS_DIRECTWRITE/$(HB_HAS_DIRECTWRITE_DEF)/' \
288		-e 's/mesondefine HB_HAS_FREETYPE/$(HB_HAS_FREETYPE_DEF)/' \
289		-e 's/mesondefine HB_HAS_GDI/$(HB_HAS_GDI_DEF)/' \
290		-e 's/mesondefine HB_HAS_GDI/$(HB_HAS_GDI_DEF)/' \
291		-e 's/mesondefine HB_HAS_GLIB/$(HB_HAS_GLIB_DEF)/' \
292		-e 's/mesondefine HB_HAS_GOBJECT/$(HB_HAS_GOBJECT_DEF)/' \
293		-e 's/mesondefine HB_HAS_GRAPHITE/$(HB_HAS_GRAPHITE_DEF)/' \
294		-e 's/mesondefine HB_HAS_ICU/$(HB_HAS_ICU_DEF)/' \
295		-e 's/mesondefine HB_HAS_UNISCRIBE/$(HB_HAS_UNISCRIBE_DEF)/' \
296		-e 's/mesondefine HB_HAS_WASM/$(HB_HAS_WASM_DEF)/' \
297		"$<" > "$@" || ($(RM) "$@"; false)
298
299
300%.pc: %.pc.in $(top_builddir)/config.status
301	$(AM_V_GEN) \
302	$(SED)	-e 's@%prefix%@$(prefix)@g' \
303		-e 's@%exec_prefix%@$(exec_prefix)@g' \
304		-e 's@%libdir%@$(libdir)@g' \
305		-e 's@%includedir%@$(includedir)@g' \
306		-e 's@%libs_private%@$(HBNONPCLIBS)@g' \
307		-e 's@%requires_private%@$(HBDEPS)@g' \
308		-e 's@%VERSION%@$(VERSION)@g' \
309	"$<" > "$@" \
310	|| ($(RM) "$@"; false)
311
312CLEANFILES += $(pkgconfig_DATA)
313
314
315DEF_FILES = harfbuzz.def harfbuzz-subset.def harfbuzz-icu.def harfbuzz-deprecated-symbols.txt
316if HAVE_GOBJECT
317DEF_FILES += harfbuzz-gobject.def
318endif
319check: $(DEF_FILES) # For check-symbols.sh
320CLEANFILES += $(DEF_FILES)
321harfbuzz.def: $(top_builddir)/config.status
322harfbuzz.def: $(HBHEADERS)
323	$(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
324harfbuzz-subset.def: $(HB_SUBSET_headers)
325	$(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
326harfbuzz-cairo.def: $(HB_CAIRO_headers)
327	$(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
328harfbuzz-icu.def: $(HB_ICU_headers)
329	$(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
330harfbuzz-gobject.def: $(HB_GOBJECT_headers)
331	$(AM_V_GEN) $(srcdir)/gen-def.py "$@" $^
332harfbuzz-deprecated-symbols.txt: $(srcdir)/hb-deprecated.h
333	$(AM_V_GEN) PLAIN_LIST=1 $(srcdir)/gen-def.py "$@" $^
334
335
336GENERATORS = \
337	gen-arabic-joining-list.py \
338	gen-arabic-table.py \
339	gen-def.py \
340	gen-emoji-table.py \
341	gen-harfbuzzcc.py \
342	gen-hb-version.py \
343	gen-indic-table.py \
344	gen-os2-unicode-ranges.py \
345	gen-ragel-artifacts.py \
346	gen-tag-table.py \
347	gen-ucd-table.py \
348	gen-use-table.py \
349	gen-vowel-constraints.py \
350	$(NULL)
351EXTRA_DIST += $(GENERATORS)
352
353built-sources: $(BUILT_SOURCES)
354
355.PHONY: built-sources
356
357RAGEL_GENERATED = \
358	$(patsubst %,$(srcdir)/%,$(HB_BASE_RAGEL_GENERATED_sources)) \
359	$(NULL)
360BUILT_SOURCES += $(RAGEL_GENERATED)
361EXTRA_DIST += \
362	$(HB_BASE_RAGEL_sources) \
363	$(NULL)
364# We decided to add ragel-generated files to git...
365#MAINTAINERCLEANFILES += $(RAGEL_GENERATED)
366$(srcdir)/%.hh: $(srcdir)/%.rl
367	$(AM_V_GEN)(cd $(srcdir) && $(RAGEL) -e -F1 -o "$*.hh" "$*.rl") \
368	|| ($(RM) "$@"; false)
369
370harfbuzz.cc: Makefile.sources
371	$(AM_V_GEN) \
372	LANG=C; \
373	for f in \
374		$(HB_BASE_sources) \
375		$(HB_GLIB_sources) \
376		$(HB_FT_sources) \
377		$(HB_GRAPHITE2_sources) \
378		$(HB_UNISCRIBE_sources) \
379		$(HB_GDI_sources) \
380		$(HB_DIRECTWRITE_sources) \
381		$(HB_CORETEXT_sources) \
382		; do echo '#include "'$$f'"'; done | \
383	sort -u | \
384	grep '[.]cc"' > $(srcdir)/harfbuzz.cc \
385	|| ($(RM) $(srcdir)/harfbuzz.cc; false)
386BUILT_SOURCES += harfbuzz.cc
387
388noinst_PROGRAMS = \
389	main \
390	test \
391	test-buffer-serialize \
392	test-ot-meta \
393	test-ot-name \
394	test-ot-glyphname \
395	test-gpos-size-params \
396	test-gsub-get-alternates \
397	test-gsub-would-substitute \
398	test-use-table \
399	$(NULL)
400bin_PROGRAMS =
401
402main_SOURCES = main.cc
403main_CPPFLAGS = $(HBCFLAGS)
404main_LDADD = libharfbuzz.la $(HBLIBS)
405
406test_SOURCES = test.cc
407test_CPPFLAGS = $(HBCFLAGS) $(FREETYPE_CFLAGS)
408test_LDADD = libharfbuzz.la $(HBLIBS) $(FREETYPE_LIBS)
409
410test_buffer_serialize_SOURCES = test-buffer-serialize.cc
411test_buffer_serialize_CPPFLAGS = $(HBCFLAGS)
412test_buffer_serialize_LDADD = libharfbuzz.la $(HBLIBS)
413
414test_ot_meta_SOURCES = test-ot-meta.cc
415test_ot_meta_CPPFLAGS = $(HBCFLAGS)
416test_ot_meta_LDADD = libharfbuzz.la $(HBLIBS)
417
418test_ot_name_SOURCES = test-ot-name.cc
419test_ot_name_CPPFLAGS = $(HBCFLAGS)
420test_ot_name_LDADD = libharfbuzz.la $(HBLIBS)
421
422test_ot_glyphname_SOURCES = test-ot-glyphname.cc
423test_ot_glyphname_CPPFLAGS = $(HBCFLAGS)
424test_ot_glyphname_LDADD = libharfbuzz.la $(HBLIBS)
425
426test_use_table_SOURCES = test-use-table.cc
427test_use_table_CPPFLAGS = $(HBCFLAGS)
428test_use_table_LDADD = libharfbuzz.la $(HBLIBS)
429
430test_gpos_size_params_SOURCES = test-gpos-size-params.cc
431test_gpos_size_params_CPPFLAGS = $(HBCFLAGS)
432test_gpos_size_params_LDADD = libharfbuzz.la $(HBLIBS)
433
434test_gsub_get_alternates_SOURCES = test-gsub-get-alternates.cc
435test_gsub_get_alternates_CPPFLAGS = $(HBCFLAGS)
436test_gsub_get_alternates_LDADD = libharfbuzz.la $(HBLIBS)
437
438test_gsub_would_substitute_SOURCES = test-gsub-would-substitute.cc
439test_gsub_would_substitute_CPPFLAGS = $(HBCFLAGS) $(FREETYPE_CFLAGS)
440test_gsub_would_substitute_LDADD = libharfbuzz.la $(HBLIBS) $(FREETYPE_LIBS)
441
442COMPILED_TESTS = \
443	test-algs \
444	test-array \
445	test-bimap \
446	test-iter \
447	test-machinery \
448	test-map \
449	test-multimap \
450	test-number \
451	test-ot-tag \
452	test-priority-queue \
453	test-set \
454	test-serialize \
455	test-unicode-ranges \
456	test-vector \
457	test-repacker \
458	test-classdef-graph \
459	test-instancer-solver \
460	test-tuple-varstore \
461	test-item-varstore \
462	$(NULL)
463COMPILED_TESTS_CPPFLAGS = $(HBCFLAGS) -DMAIN -UNDEBUG
464COMPILED_TESTS_LDADD = libharfbuzz.la $(HBLIBS)
465check_PROGRAMS += $(COMPILED_TESTS)
466TESTS += $(COMPILED_TESTS)
467
468test_algs_SOURCES = test-algs.cc hb-static.cc
469test_algs_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
470test_algs_LDADD = $(COMPILED_TESTS_LDADD)
471
472test_array_SOURCES = test-array.cc
473test_array_CPPFLAGS = $(HBCFLAGS)
474test_array_LDADD = libharfbuzz.la $(HBLIBS)
475
476test_bimap_SOURCES = test-bimap.cc hb-static.cc
477test_bimap_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
478test_bimap_LDADD = $(COMPILED_TESTS_LDADD)
479
480test_iter_SOURCES = test-iter.cc hb-static.cc
481test_iter_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
482test_iter_LDADD = $(COMPILED_TESTS_LDADD)
483
484test_machinery_SOURCES = test-machinery.cc hb-static.cc
485test_machinery_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
486test_machinery_LDADD = $(COMPILED_TESTS_LDADD)
487
488test_map_SOURCES = test-map.cc hb-static.cc
489test_map_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
490test_map_LDADD = $(COMPILED_TESTS_LDADD)
491
492test_multimap_SOURCES = test-multimap.cc hb-static.cc
493test_multimap_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
494test_multimap_LDADD = $(COMPILED_TESTS_LDADD)
495
496test_number_SOURCES = test-number.cc hb-number.cc
497test_number_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
498test_number_LDADD = $(COMPILED_TESTS_LDADD)
499
500test_ot_tag_SOURCES = hb-ot-tag.cc
501test_ot_tag_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
502test_ot_tag_LDADD = $(COMPILED_TESTS_LDADD)
503
504test_priority_queue_SOURCES = test-priority-queue.cc hb-static.cc
505test_priority_queue_CPPFLAGS = $(HBCFLAGS)
506test_priority_queue_LDADD = libharfbuzz.la $(HBLIBS)
507
508test_repacker_SOURCES = test-repacker.cc hb-static.cc graph/gsubgpos-context.cc
509test_repacker_CPPFLAGS = $(HBCFLAGS)
510test_repacker_LDADD = libharfbuzz.la libharfbuzz-subset.la $(HBLIBS)
511
512test_classdef_graph_SOURCES = graph/test-classdef-graph.cc hb-static.cc graph/gsubgpos-context.cc
513test_classdef_graph_CPPFLAGS = $(HBCFLAGS)
514test_classdef_graph_LDADD = libharfbuzz.la libharfbuzz-subset.la $(HBLIBS)
515
516test_set_SOURCES = test-set.cc hb-static.cc
517test_set_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
518test_set_LDADD = $(COMPILED_TESTS_LDADD)
519
520test_serialize_SOURCES = test-serialize.cc hb-static.cc
521test_serialize_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
522test_serialize_LDADD = $(COMPILED_TESTS_LDADD)
523
524test_unicode_ranges_SOURCES = test-unicode-ranges.cc
525test_unicode_ranges_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
526test_unicode_ranges_LDADD = $(COMPILED_TESTS_LDADD)
527
528test_vector_SOURCES = test-vector.cc hb-static.cc
529test_vector_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
530test_vector_LDADD = $(COMPILED_TESTS_LDADD)
531
532test_instancer_solver_SOURCES = test-subset-instancer-solver.cc hb-subset-instancer-solver.cc hb-static.cc
533test_instancer_solver_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
534test_instancer_solver_LDADD = $(COMPILED_TESTS_LDADD)
535
536test_tuple_varstore_SOURCES = test-tuple-varstore.cc hb-subset-instancer-solver.cc hb-static.cc
537test_tuple_varstore_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
538test_tuple_varstore_LDADD = $(COMPILED_TESTS_LDADD)
539
540test_item_varstore_SOURCES = test-item-varstore.cc hb-subset-instancer-solver.cc hb-static.cc
541test_item_varstore_CPPFLAGS = $(COMPILED_TESTS_CPPFLAGS)
542test_item_varstore_LDADD = $(COMPILED_TESTS_LDADD)
543
544dist_check_SCRIPTS = \
545	check-c-linkage-decls.py \
546	check-externs.py \
547	check-header-guards.py \
548	check-includes.py \
549	check-static-inits.py \
550	check-symbols.py \
551	$(NULL)
552TESTS += $(dist_check_SCRIPTS)
553
554if !WITH_LIBSTDCXX
555dist_check_SCRIPTS += \
556	check-libstdc++.py \
557	$(NULL)
558endif
559
560TESTS_ENVIRONMENT = \
561	srcdir="$(srcdir)" \
562	base_srcdir="$(srcdir)" \
563	builddir="$(builddir)" \
564	MAKE="$(MAKE) $(AM_MAKEFLAGS)" \
565	HBSOURCES="$(HBSOURCES)" \
566	HBHEADERS="$(HBHEADERS)" \
567	LDD="$(LDD)" \
568	NM="$(NM)" \
569	OBJDUMP="$(OBJDUMP)" \
570	OTOOL="$(OTOOL)" \
571	$(NULL)
572
573if HAVE_INTROSPECTION
574
575-include $(INTROSPECTION_MAKEFILE)
576INTROSPECTION_GIRS = HarfBuzz-0.0.gir # What does the 0 mean anyway?!
577INTROSPECTION_SCANNER_ARGS = \
578	-I$(srcdir) \
579	--warn-all --verbose \
580	--namespace=HarfBuzz \
581	--nsversion=0.0 \
582	--symbol-prefix=hb \
583	--symbol-prefix=hb_gobject \
584	--identifier-prefix=hb_ \
585	--pkg-export=harfbuzz-gobject \
586	--c-include=hb-gobject.h
587INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir)
588INTROSPECTION_SCANNER_ENV = CC="$(CC)"
589
590HarfBuzz-0.0.gir: libharfbuzz.la libharfbuzz-gobject.la
591HarfBuzz_0_0_gir_INCLUDES = GObject-2.0 freetype2-2.0
592HarfBuzz_0_0_gir_CFLAGS = \
593	$(INCLUDES) \
594	$(HBCFLAGS) \
595	-DHB_NO_SINGLE_HEADER_ERROR \
596	-DHAVE_GOBJECT \
597	-DHB_EXTERN= \
598	$(NULL)
599HarfBuzz_0_0_gir_LIBS = \
600	libharfbuzz.la \
601	libharfbuzz-gobject.la \
602	$(NULL)
603HarfBuzz_0_0_gir_FILES = \
604	$(HBHEADERS) \
605	$(HBSOURCES) \
606	$(HB_GOBJECT_sources) \
607	$(HB_GOBJECT_headers) \
608	$(NULL)
609
610girdir = $(datadir)/gir-1.0
611gir_DATA = $(INTROSPECTION_GIRS)
612
613typelibdir = $(libdir)/girepository-1.0
614typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
615
616CLEANFILES += $(gir_DATA) $(typelib_DATA)
617
618endif
619
620-include $(top_srcdir)/git.mk
621