49b5e4e714727edf935a06c1c1db3397d198fa6d
[platform/upstream/glib.git] / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2 include $(top_srcdir)/glib.mk
3
4 # http://people.gnome.org/~walters/docs/build-api.txt
5 .buildapi-allow-builddir:
6
7 ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS}
8
9 SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests
10 DIST_SUBDIRS = $(SUBDIRS) build win32
11
12 bin_SCRIPTS = glib-gettextize
13
14 if OS_LINUX
15 TESTS += check-abis.sh
16 endif
17
18 AM_CPPFLAGS =                                   \
19         -DG_LOG_DOMAIN=g_log_domain_glib        \
20         @GLIB_DEBUG_FLAGS@                      \
21         -DG_DISABLE_DEPRECATED                  \
22         -DGLIB_COMPILATION
23
24 EXTRA_DIST +=                   \
25         ChangeLog.pre-2-20      \
26         ChangeLog.pre-2-18      \
27         ChangeLog.pre-2-16      \
28         ChangeLog.pre-2-14      \
29         ChangeLog.pre-2-12      \
30         ChangeLog.pre-2-10      \
31         ChangeLog.pre-2-8       \
32         ChangeLog.pre-2-6       \
33         ChangeLog.pre-2-4       \
34         ChangeLog.pre-2-2       \
35         ChangeLog.pre-2-0       \
36         ChangeLog.pre-1-2       \
37         glib-zip.in             \
38         NEWS.pre-1-3            \
39         acglib.m4               \
40         sanity_check            \
41         README.commits          \
42         README.in               \
43         README.rationale        \
44         INSTALL.in              \
45         README.win32            \
46         HACKING                 \
47         autogen.sh              \
48         glib.mk                 \
49         glib-tap.mk             \
50         tap-driver.sh           \
51         tap-test                \
52         msvc_recommended_pragmas.h \
53         config.h.win32.in       \
54         po/po2tbl.sed.in        \
55         glib-2.0.pc.in          \
56         gobject-2.0.pc.in       \
57         gmodule-2.0.pc.in       \
58         gmodule-export-2.0.pc.in        \
59         gmodule-no-export-2.0.pc.in     \
60         gthread-2.0.pc.in       \
61         gio-2.0.pc.in           \
62         gio-unix-2.0.pc.in      \
63         gio-windows-2.0.pc.in   \
64         check-abis.sh           \
65         gtk-doc.make            \
66         $(NULL)
67
68 meson_build_files = \
69         config.h.meson \
70         meson_options.txt \
71         meson.build \
72         docs/reference/gio/meson.build \
73         docs/reference/gio/xml/gtkdocentities.ent.in \
74         docs/reference/gio/xml/meson.build \
75         docs/reference/glib/meson.build \
76         docs/reference/glib/xml/gtkdocentities.ent.in \
77         docs/reference/glib/xml/meson.build \
78         docs/reference/gobject/meson.build \
79         docs/reference/gobject/xml/gtkdocentities.ent.in \
80         docs/reference/gobject/xml/meson.build \
81         gio/data-to-c.py \
82         gio/gdbus-2.0/codegen/meson.build \
83         gio/inotify/meson.build \
84         gio/kqueue/meson.build \
85         gio/meson.build \
86         gio/tests/meson.build \
87         gio/tests/gengiotypefuncs.py \
88         gio/tests/modules/meson.build \
89         gio/tests/gdbus-object-manager-example/meson.build \
90         gio/tests/de/LC_MESSAGES/meson.build \
91         gio/win32/meson.build \
92         gio/xdgmime/meson.build \
93         glib/glibconfig.h.in \
94         glib/gnulib/meson.build \
95         glib/libcharset/meson.build \
96         glib/meson.build \
97         glib/pcre/meson.build \
98         glib/tests/meson.build \
99         gmodule/meson.build \
100         gobject/meson.build \
101         gobject/tests/meson.build \
102         gthread/meson.build \
103         po/meson.build \
104         tests/refcount/meson.build \
105         tests/meson.build \
106         tests/gobject/meson.build \
107         $()
108
109 EXTRA_DIST += $(meson_build_files)
110
111 # These may be in the builddir too
112 BUILT_EXTRA_DIST +=             \
113         README                  \
114         INSTALL                 \
115         ChangeLog               \
116         config.h.win32          \
117         $(NULL)
118
119 CONFIGURE_DEPENDENCIES = acglib.m4
120
121 ChangeLog:
122         $(AM_V_GEN) if test -d "$(srcdir)/.git"; then \
123           (GIT_DIR=$(top_srcdir)/.git ./missing --run git log GLIB_2_20_0^^.. --stat) | fmt --split-only > $@.tmp \
124           && mv -f $@.tmp $@ \
125           || ($(RM) $@.tmp; \
126               echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
127               (test -f $@ || echo git-log is required to generate this file >> $@)); \
128         else \
129           test -f $@ || \
130           (echo A git checkout and git-log is required to generate ChangeLog >&2 && \
131           echo A git checkout and git-log is required to generate this file >> $@); \
132         fi
133
134 pkgconfigdir = $(libdir)/pkgconfig
135 pkgconfig_DATA = glib-2.0.pc gobject-2.0.pc gmodule-2.0.pc gmodule-export-2.0.pc gmodule-no-export-2.0.pc gthread-2.0.pc gio-2.0.pc
136
137 if OS_UNIX
138 pkgconfig_DATA += gio-unix-2.0.pc
139 endif
140
141 if OS_WIN32
142 pkgconfig_DATA += gio-windows-2.0.pc
143 endif
144
145 $(pkgconfig_DATA): config.status
146
147 # Install Valgrind suppression file
148 valgrinddir = $(datadir)/glib-2.0/valgrind
149 dist_valgrind_DATA = glib.supp
150
151 # build documentation when doing distcheck
152 AM_DISTCHECK_CONFIGURE_FLAGS = --enable-debug --enable-gtk-doc --enable-man --disable-maintainer-mode
153
154 DISTCLEANFILES += config.lt
155
156 distclean-local: lcov-clean
157         if test $(srcdir) = .; then :; else \
158             rm -f $(BUILT_EXTRA_DIST); \
159         fi
160
161 .PHONY: files release sanity snapshot ChangeLog
162
163 files:
164         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
165           echo $$p; \
166         done
167
168 release:
169         rm -rf .deps */.deps
170         cd docs && make glib.html
171         $(MAKE) distcheck
172
173 sanity:
174         ./sanity_check $(VERSION)
175
176 snapshot:
177         $(MAKE) dist distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
178
179 snapcheck:
180         $(MAKE) distcheck distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
181
182 dist-hook: $(BUILT_EXTRA_DIST)
183         files='$(BUILT_EXTRA_DIST)'; \
184         for f in $$files; do \
185           if test -f $$f; then d=.; else d=$(srcdir); fi; \
186           rm -f $(distdir)/$$f && cp $$d/$$f $(distdir) || exit 1; done