build: Ensure we #include header files for glib-genmarshal code
[platform/upstream/glib.git] / tests / gobject / Makefile.am
1 include $(top_srcdir)/Makefile.decl
2
3 INCLUDES =                                      \
4         $(gmodule_INCLUDES)                     \
5         -DGLIB_DISABLE_DEPRECATION_WARNINGS     \
6         $(GLIB_DEBUG_FLAGS)
7
8 libglib = $(top_builddir)/glib/libglib-2.0.la
9 libgthread = $(top_builddir)/gthread/libgthread-2.0.la
10 libgmodule = $(top_builddir)/gmodule/libgmodule-2.0.la
11 libgobject = $(top_builddir)/gobject/libgobject-2.0.la
12
13
14 # libtool dependency tracking seems broken.  this is currently
15 # required to get the tests to dynamic link against the in-tree
16 # libglib instead of the system one
17 libgobject += $(libglib)
18
19 ########################################################################
20
21 noinst_LTLIBRARIES = libtestgobject.la
22
23 libtestgobject_la_SOURCES =     \
24         testcommon.h            \
25         testmarshal.h           \
26         testmarshal.c           \
27         testmodule.c            \
28         testmodule.h
29
30 if CROSS_COMPILING
31   glib_genmarshal=$(GLIB_GENMARSHAL)
32 else
33   glib_genmarshal=$(top_builddir)/gobject/glib-genmarshal
34 endif
35
36 testmarshal.h: stamp-testmarshal.h
37         @true
38 stamp-testmarshal.h: @REBUILD@ testmarshal.list $(glib_genmarshal)
39         $(AM_V_GEN) $(glib_genmarshal) --prefix=test_marshal $(srcdir)/testmarshal.list --header >> xgen-gmh \
40         && (cmp -s xgen-gmh testmarshal.h 2>/dev/null || cp xgen-gmh testmarshal.h) \
41         && rm -f xgen-gmh xgen-gmh~ \
42         && echo timestamp > $@
43 testmarshal.c: @REBUILD@ testmarshal.h testmarshal.list $(glib_genmarshal)
44         $(AM_V_GEN) (echo "#include \"testmarshal.h\""; $(glib_genmarshal) --prefix=test_marshal $(srcdir)/testmarshal.list --body) >> xgen-gmc \
45         && cp xgen-gmc testmarshal.c \
46         && rm -f xgen-gmc xgen-gmc~
47
48 BUILT_SOURCES = testmarshal.h testmarshal.c
49 CLEANFILES = stamp-testmarshal.h
50
51 ########################################################################
52
53 LDADD = libtestgobject.la $(libgobject)
54
55 test_programs =                                 \
56         deftype                                 \
57         gvalue-test                             \
58         paramspec-test                          \
59         accumulator                             \
60         defaultiface                            \
61         dynamictype                             \
62         ifacecheck                              \
63         ifaceinit                               \
64         ifaceinherit                            \
65         override                                \
66         performance                             \
67         performance-threaded                    \
68         singleton                               \
69         references
70
71 performance_LDADD = $(libgobject) $(libgthread)
72 performance_threaded_LDADD = $(libgobject) $(libgthread)
73 check_PROGRAMS = $(test_programs)
74
75 TESTS = $(test_programs)
76 TESTS_ENVIRONMENT = srcdir=$(srcdir) \
77         LIBCHARSET_ALIAS_DIR=$(top_builddir)/glib/libcharset \
78         MALLOC_CHECK_=2 \
79         MALLOC_PERTURB_=$$(($${RANDOM:-256} % 256))
80
81 ########################################################################
82
83 EXTRA_DIST +=             \
84         testmarshal.list
85
86 BUILT_EXTRA_DIST =                              \
87         testmarshal.h                           \
88         testmarshal.c
89
90 dist-hook: $(BUILT_EXTRA_DIST)
91         files='$(BUILT_EXTRA_DIST)';                            \
92         for f in $$files; do                                    \
93           if test -f $$f; then d=.; else d=$(srcdir); fi;       \
94           cp $$d/$$f $(distdir) || exit 1; done
95
96 distclean-local:
97         if test $(srcdir) = .; then :; else     \
98             rm -f $(BUILT_EXTRA_DIST);          \
99         fi