Initial packaging for Tizen
[profile/ivi/gobject-introspection.git] / tests / scanner / Makefile.am
1 include $(top_srcdir)/common.mk
2 include $(top_srcdir)/Makefile.introspection
3
4 INTROSPECTION_SCANNER_ARGS += --warn-all
5
6 check_LTLIBRARIES = \
7         libannotation.la \
8         libtestinherit.la \
9         libfoo.la \
10         libutility.la \
11         libgtkfrob.la \
12         libgettype.la
13 if HAVE_CAIRO
14 check_LTLIBRARIES += libregress.la
15 endif
16
17 AM_CPPFLAGS = -I$(top_srcdir)/girepository
18 AM_CFLAGS = $(GIO_CFLAGS) $(GOBJECT_CFLAGS) $(GTHREAD_CFLAGS)
19 # -rpath needed to force libtool to build a shared library for a check_LTLIBRARIES
20 # target. See http://lists.gnu.org/archive/html/automake/2005-10/msg00107.html
21 AM_LDFLAGS = -rpath /unused -avoid-version
22 LIBS = $(GOBJECT_LIBS) $(GTHREAD_LIBS)
23
24 libannotation_la_SOURCES = $(srcdir)/annotation.c $(srcdir)/annotation.h
25 libtestinherit_la_SOURCES = $(srcdir)/drawable.c $(srcdir)/drawable.h
26 libfoo_la_SOURCES = $(srcdir)/foo.c $(srcdir)/foo.h
27 libfoo_la_LIBADD = $(top_builddir)/libgirepository-1.0.la
28 libutility_la_SOURCES = $(srcdir)/utility.c $(srcdir)/utility.h
29 libgtkfrob_la_SOURCES = $(srcdir)/gtkfrob.c $(srcdir)/gtkfrob.h
30 libregress_la_SOURCES = $(srcdir)/regress.c $(srcdir)/regress.h
31 libregress_la_LIBADD = $(GIO_LIBS) $(CAIRO_LIBS)
32 libgettype_la_SOURCES = $(srcdir)/gettype.c $(srcdir)/gettype.h
33
34 testsdir = $(datadir)/gobject-introspection-1.0/tests
35 tests_DATA = $(libregress_la_SOURCES)
36
37 libregress_la_CFLAGS = $(AM_CFLAGS) $(CAIRO_CFLAGS)
38 libregress_la_LDFLAGS = $(AM_LDFLAGS)
39
40
41 if OS_WIN32
42 AM_LDFLAGS += -no-undefined
43 endif
44
45 # .gir --[scanner]-> .typelib
46 GIRS =
47 TYPELIBS = $(GIRS:.gir=.typelib)
48 CHECKGIRS = $(GIRS:.gir=.gir.check)
49 EXPECTEDGIRS = $(GIRS:.gir=-expected.gir)
50 INTROSPECTION_GIRS = $(GIRS)
51 CLEANFILES = $(TYPELIBS) $(GIRS)
52 EXTRA_DIST = $(EXPECTEDGIRS)
53
54 Regress-1.0.gir: $(top_builddir)/Gio-2.0.gir libregress.la
55 Regress_1_0_gir_LIBS = libregress.la
56 Regress_1_0_gir_INCLUDES = cairo-1.0 Gio-2.0
57 Regress_1_0_gir_FILES = $(libregress_la_SOURCES)
58 Regress_1_0_gir_SCANNERFLAGS = --c-include="regress.h" --warn-error
59 if HAVE_CAIRO
60 GIRS += Regress-1.0.gir
61 endif
62
63 Annotation-1.0.gir: Utility-1.0.gir libannotation.la
64 Annotation_1_0_gir_PACKAGES = gobject-2.0
65 Annotation_1_0_gir_LIBS = libannotation.la
66 Annotation_1_0_gir_INCLUDES = GObject-2.0 Utility-1.0
67 Annotation_1_0_gir_FILES = $(libannotation_la_SOURCES)
68 Annotation_1_0_gir_SCANNERFLAGS = --c-include="annotation.h" --warn-error
69 GIRS += Annotation-1.0.gir
70
71 TestInherit-1.0.gir: Utility-1.0.gir libtestinherit.la
72 TestInherit_1_0_gir_PACKAGES = gobject-2.0
73 TestInherit_1_0_gir_LIBS = libtestinherit.la
74 TestInherit_1_0_gir_INCLUDES = GObject-2.0 Utility-1.0
75 TestInherit_1_0_gir_FILES = $(libtestinherit_la_SOURCES)
76 TestInherit_1_0_gir_SCANNERFLAGS = --c-include="drawable.h" --warn-error
77 GIRS += TestInherit-1.0.gir
78
79 Foo-1.0.gir: Utility-1.0.gir libfoo.la
80 Foo_1_0_gir_PACKAGES = gobject-2.0
81 Foo_1_0_gir_LIBS = libfoo.la
82 Foo_1_0_gir_INCLUDES = GObject-2.0 Gio-2.0 Utility-1.0
83 Foo_1_0_gir_FILES = $(srcdir)/foo.h $(srcdir)/foo.c
84 Foo_1_0_gir_SCANNERFLAGS = --c-include="foo.h" --warn-error
85 GIRS += Foo-1.0.gir
86
87 Utility-1.0.gir: libutility.la
88 Utility_1_0_gir_PACKAGES = gobject-2.0
89 Utility_1_0_gir_LIBS = libutility.la
90 Utility_1_0_gir_INCLUDES = GObject-2.0
91 Utility_1_0_gir_FILES = $(libutility_la_SOURCES)
92 Utility_1_0_gir_SCANNERFLAGS = --c-include="utility.h" --warn-error
93 GIRS += Utility-1.0.gir
94
95 # This one tests different --namespace and --strip-prefix
96 GtkFrob-1.0.gir: libgtkfrob.la
97 GtkFrob_1_0_gir_PACKAGES = gobject-2.0
98 GtkFrob_1_0_gir_LIBS = libgtkfrob.la
99 GtkFrob_1_0_gir_INCLUDES = GObject-2.0
100 GtkFrob_1_0_gir_FILES = $(libgtkfrob_la_SOURCES)
101 GtkFrob_1_0_gir_SCANNERFLAGS = --identifier-prefix=Gtk --symbol-prefix=gtk_frob --warn-error
102 GIRS += GtkFrob-1.0.gir
103
104 # This tests that functions called _get_type are only matched if they have no
105 # arguments and return GType
106 GetType-1.0.gir: libgettype.la
107 GetType_1_0_gir_PACKAGES = gobject-2.0
108 GetType_1_0_gir_LIBS = libgettype.la
109 GetType_1_0_gir_INCLUDES = GObject-2.0
110 GetType_1_0_gir_FILES = $(libgettype_la_SOURCES)
111 GetType_1_0_gir_SCANNERFLAGS = --c-include="gettype.h" --identifier-prefix=GetType --symbol-prefix=gettype
112 GIRS += GetType-1.0.gir
113
114 if !OS_WIN32
115 check_PROGRAMS = barapp
116
117 barapp_SOURCES = $(srcdir)/barapp.c $(srcdir)/barapp.h
118 barapp_LDADD = $(top_builddir)/libgirepository-1.0.la
119 barapp_LDFLAGS = -export-dynamic
120
121 Bar-1.0.gir: barapp
122 Bar_1_0_gir_PACKAGES = gobject-2.0
123 Bar_1_0_gir_PROGRAM = ./barapp
124 Bar_1_0_gir_INCLUDES = GObject-2.0
125 Bar_1_0_gir_FILES = $(barapp_SOURCES)
126 Bar_1_0_gir_SCANNERFLAGS = --accept-unprefixed
127 GIRS += Bar-1.0.gir
128 endif
129
130 EXTRA_DIST += headeronly.h
131
132 Headeronly-1.0.gir: headeronly.h
133         $(AM_V_GEN) $(INTROSPECTION_SCANNER) $(INTROSPECTION_SCANNER_ARGS) --warn-all --warn-error --reparse-validate --namespace=Headeronly --nsversion=1.0 --header-only --output=$@ $<
134
135 %.gir.check: %.gir
136         @diff -u -U 10 $(srcdir)/$*-expected.gir $*.gir && echo "  TEST  $*.gir"
137
138 check-local: Headeronly-1.0.gir $(CHECKGIRS) $(TYPELIBS)