beta-0.89.2
[luatex.git] / source / libs / cairo / cairo-src / src / Makefile.am
blobacf0a82810057b5fb9e4ff7bf8fe33f418f36e72
1 # Note: All source files are listed in Makefile.sources.
3 include $(top_srcdir)/build/Makefile.am.common
4 include $(srcdir)/Makefile.am.features
6 EXTRA_DIST += Makefile.win32      Makefile.win32.features
7 #MAINTAINERCLEANFILES += $(srcdir)/Makefile.win32.features
9 AM_CPPFLAGS = -I$(srcdir) $(CAIRO_CFLAGS)
10 AM_LDFLAGS = $(CAIRO_LDFLAGS)
12 if OS_WIN32
13 export_symbols = -export-symbols cairo.def
14 cairo_def_dependency = cairo.def
15 endif
17 $(top_builddir)/config.h: $(top_srcdir)/config.h.in
18         cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) config.h
20 cairoincludedir = $(includedir)/cairo
21 cairoinclude_HEADERS = $(enabled_cairo_headers)
23 lib_LTLIBRARIES = libcairo.la
25 if BUILD_CXX
26 cairo_cxx_lib = libcairo_cxx.la
27 else
28 cairo_cxx_lib =
29 endif
31 noinst_LTLIBRARIES = $(cairo_cxx_lib)
32 libcairo_cxx_la_SOURCES = \
33         $(enabled_cairo_headers) \
34         $(enabled_cairo_private) \
35         $(enabled_cairo_cxx_sources) \
36         $(NULL)
37 libcairo_cxx_la_LDFLAGS = $(AM_LDFLAGS) $(export_symbols)
38 libcairo_cxx_la_LIBADD = $(CAIRO_LIBS)
39 libcairo_cxx_la_DEPENDENCIES = $(cairo_def_dependency)
42 libcairo_la_SOURCES = \
43         $(enabled_cairo_headers) \
44         $(enabled_cairo_private) \
45         $(enabled_cairo_sources) \
46         $(NULL)
47 libcairo_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(CAIRO_LIBTOOL_VERSION_INFO) -no-undefined $(export_symbols)
48 libcairo_la_LIBADD = $(CAIRO_LIBS) \
49         $(cairo_cxx_lib)
50 libcairo_la_DEPENDENCIES = $(cairo_def_dependency) $(cairo_cxx_lib)
52 # Special headers
53 cairoinclude_HEADERS += $(top_srcdir)/cairo-version.h
54 libcairo_la_SOURCES += cairo-version.h
55 nodist_cairoinclude_HEADERS = cairo-features.h
56 nodist_libcairo_la_SOURCES  = cairo-features.h
57 BUILT_SOURCES  += cairo-features.h cairo-supported-features.h
58 DISTCLEANFILES += cairo-features.h cairo-supported-features.h
59 cairo-features.h cairo-supported-features.h:
60         cd $(top_builddir) && ./config.status src/$@
62 pkgconfigdir = $(libdir)/pkgconfig
63 pkgconfig_DATA = $(enabled_cairo_pkgconf)
65 CLEANFILES += cairo.def
66 cairo.def: cairo-features.h $(enabled_cairo_headers)
67         @echo Generating $@
68         @(echo EXPORTS; \
69         (cd $(srcdir); cat $(enabled_cairo_headers) || echo 'cairo_ERROR ()' ) | \
70         $(EGREP) -v '^# *include' | \
71         ( cat cairo-features.h - | $(CPP) -D__cplusplus - || echo 'cairo_ERROR ()' ) | \
72         $(EGREP) '^cairo_.* \(' | \
73         sed -e 's/[     ].*//' | \
74         sort; \
75         echo LIBRARY libcairo-$(CAIRO_VERSION_SONUM).dll; \
76         ) >$@
77         @ ! grep -q cairo_ERROR $@ || ($(RM) $@; false)
79 TESTS_ENVIRONMENT = \
80         srcdir="$(srcdir)" \
81         MAKE="$(MAKE) $(AM_MAKEFLAGS)" \
82         all_cairo_files="$(all_cairo_files)" \
83         all_cairo_headers="$(all_cairo_headers)" \
84         all_cairo_private="$(all_cairo_private)" \
85         all_cairo_sources="$(all_cairo_sources)" \
86         enabled_cairo_headers="$(enabled_cairo_headers)" \
87         enabled_cairo_private="$(enabled_cairo_private)" \
88         enabled_cairo_sources="$(enabled_cairo_sources)" \
89         $(NULL)
90 TESTS_SH = \
91         check-def.sh \
92         check-doc-syntax.sh \
93         check-headers.sh \
94         check-plt.sh \
95         check-preprocessor-syntax.sh \
96         $(NULL)
97 TESTS += $(TESTS_SH)
98 if CROSS_COMPILING
99 else
100 TESTS += check-link$(EXEEXT)
101 endif
103 EXTRA_DIST += $(TESTS_SH) check-has-hidden-symbols.c check-doc-syntax.awk
104 check_PROGRAMS += check-link
105 check_link_LDADD = libcairo.la
107 check: headers-standalone
109 PREPROCESS_ARGS = $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)
110 COMPILE_ARGS = $(PREPROCESS_ARGS) $(AM_CFLAGS) $(CFLAGS)
112 # The pre-processed result is used by check-{def,plt}.sh to determine whether
113 # cairo has been compiled with symbol hiding.
114 .c.i: $(cairoinclude_HEADERS) $(nodist_cairoinclude_HEADERS) cairoint.h $(top_builddir)/config.h
115         $(CPP) $(PREPROCESS_ARGS) $< -o $@
116 .c.s: $(cairoinclude_HEADERS) $(nodist_cairoinclude_HEADERS) cairoint.h $(top_builddir)/config.h
117         $(CC) $(COMPILE_ARGS) $< -S -o $@
119 include $(srcdir)/Makefile.am.analysis