]> Pileus Git - ~andy/gtk/blob - Makefile.am
Clean autotools configuration a bit
[~andy/gtk] / Makefile.am
1 ## Makefile.am for GTK+
2 include $(top_srcdir)/Makefile.decl
3
4 SRC_SUBDIRS = gdk-pixbuf gdk gtk modules demos tests perf contrib
5 SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
6
7 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
8
9 EXTRA_DIST +=                   \
10         HACKING                 \
11         makecopyright           \
12         NEWS.pre-1-0            \
13         ChangeLog.pre-1-0       \
14         ChangeLog.pre-1-2       \
15         ChangeLog.pre-2-0       \
16         ChangeLog.pre-2-2       \
17         ChangeLog.pre-2-4       \
18         ChangeLog.pre-2-6       \
19         ChangeLog.pre-2-8       \
20         ChangeLog.pre-2-10      \
21         ChangeLog.pre-2-12      \
22         ChangeLog.pre-2-14      \
23         ChangeLog.pre-2-16      \
24         ChangeLog.gtk-async-file-chooser        \
25         ChangeLog.gtk-printing  \
26         README.commits  \
27         README.win32            \
28         config.h.win32          \
29         makefile.msc    \
30         gtk-zip.sh.in           \
31         sanitize-la.sh          \
32         po/README.translators   \
33         po/po2tbl.sed.in        \
34         examples/aspectframe/Makefile  \
35         examples/aspectframe/aspectframe.c  \
36         examples/Makefile  \
37         examples/README.1ST  \
38         examples/extract.awk  \
39         examples/extract.sh  \
40         examples/arrow/Makefile \
41         examples/arrow/arrow.c  \
42         examples/base/Makefile  \
43         examples/base/base.c  \
44         examples/buttonbox/Makefile \
45         examples/buttonbox/buttonbox.c  \
46         examples/buttons/Makefile  \
47         examples/buttons/buttons.c  \
48         examples/buttons/info.xpm  \
49         examples/calendar/Makefile  \
50         examples/calendar/calendar.c  \
51         examples/entry/Makefile  \
52         examples/entry/entry.c  \
53         examples/eventbox/Makefile  \
54         examples/eventbox/eventbox.c  \
55         examples/gtkdial/Makefile  \
56         examples/gtkdial/dial_test.c  \
57         examples/gtkdial/gtkdial.c  \
58         examples/gtkdial/gtkdial.h  \
59         examples/helloworld/Makefile  \
60         examples/helloworld/helloworld.c  \
61         examples/helloworld2/Makefile  \
62         examples/helloworld2/helloworld2.c  \
63         examples/label/Makefile \
64         examples/label/label.c  \
65         examples/menu/Makefile  \
66         examples/menu/menu.c  \
67         examples/notebook/Makefile  \
68         examples/notebook/notebook.c  \
69         examples/packbox/Makefile  \
70         examples/packbox/packbox.c  \
71         examples/paned/Makefile  \
72         examples/paned/paned.c  \
73         examples/pixmap/Makefile  \
74         examples/pixmap/pixmap.c  \
75         examples/progressbar/Makefile  \
76         examples/progressbar/progressbar.c  \
77         examples/radiobuttons/Makefile  \
78         examples/radiobuttons/radiobuttons.c  \
79         examples/rangewidgets/Makefile  \
80         examples/rangewidgets/rangewidgets.c  \
81         examples/rulers/Makefile  \
82         examples/rulers/rulers.c  \
83         examples/scribble-simple/Makefile  \
84         examples/scribble-simple/scribble-simple.c  \
85         examples/scribble-xinput/Makefile       \
86         examples/scribble-xinput/scribble-xinput.c      \
87         examples/scrolledwin/Makefile  \
88         examples/scrolledwin/scrolledwin.c  \
89         examples/selection/Makefile  \
90         examples/selection/gettargets.c  \
91         examples/selection/setselection.c  \
92         examples/statusbar/Makefile  \
93         examples/statusbar/statusbar.c  \
94         examples/table/Makefile  \
95         examples/table/table.c  \
96         examples/tictactoe/Makefile  \
97         examples/tictactoe/tictactoe.c  \
98         examples/tictactoe/tictactoe.h  \
99         examples/tictactoe/ttt_test.c  \
100         examples/wheelbarrow/Makefile  \
101         examples/wheelbarrow/wheelbarrow.c  \
102         examples/fixed/fixed.c  \
103         examples/fixed/Makefile  \
104         examples/frame/frame.c  \
105         examples/frame/Makefile  \
106         examples/spinbutton/spinbutton.c  \
107         examples/spinbutton/Makefile  \
108         examples/find-examples.sh
109 MAINTAINERCLEANFILES = \
110         $(srcdir)/INSTALL \
111         $(srcdir)/README \
112         $(srcdir)/aclocal.m4 \
113         $(srcdir)/autoscan.log \
114         $(srcdir)/compile \
115         $(srcdir)/config.guess \
116         $(srcdir)/config.h.in \
117         $(srcdir)/config.sub \
118         $(srcdir)/configure.scan \
119         $(srcdir)/depcomp \
120         $(srcdir)/install-sh \
121         $(srcdir)/ltmain.sh \
122         $(srcdir)/missing \
123         $(srcdir)/mkinstalldirs \
124         $(srcdir)/omf.make \
125         $(srcdir)/xmldocs.make \
126         $(srcdir)/gtk-doc.make \
127         $(srcdir)/ChangeLog \
128         `find "$(srcdir)" -type f -name Makefile.in -print`
129
130 GDKTARGET=@gdktarget@
131
132 ## Copy .pc files to target-specific names
133 gtk+-$(GDKTARGET)-3.0.pc: gtk+-3.0.pc
134         rm -f gtk+-$(GDKTARGET)-3.0.pc && \
135         cp gtk+-3.0.pc gtk+-$(GDKTARGET)-3.0.pc
136
137 gdk-$(GDKTARGET)-3.0.pc: gdk-3.0.pc
138         rm -f gdk-$(GDKTARGET)-3.0.pc && \
139         cp gdk-3.0.pc gdk-$(GDKTARGET)-3.0.pc
140
141 gtk+-$(GDKTARGET)-3.0-uninstalled.pc: gtk+-3.0-uninstalled.pc
142         rm -f gtk+-$(GDKTARGET)-3.0-uninstalled.pc && \
143         cp gtk+-3.0-uninstalled.pc gtk+-$(GDKTARGET)-3.0-uninstalled.pc
144
145 gdk-$(GDKTARGET)-3.0-uninstalled.pc: gdk-3.0-uninstalled.pc
146         rm -f gdk-$(GDKTARGET)-3.0-uninstalled.pc && \
147         cp gdk-3.0-uninstalled.pc gdk-$(GDKTARGET)-3.0-uninstalled.pc
148
149 pkgconfigdir = $(libdir)/pkgconfig
150 pkgconfig_DATA = gdk-pixbuf-3.0.pc gdk-$(GDKTARGET)-3.0.pc gtk+-$(GDKTARGET)-3.0.pc gail-3.0.pc
151
152 if OS_UNIX
153 pkgconfig_DATA += gtk+-unix-print-3.0.pc
154 endif
155
156 DISTCLEANFILES =                                \
157         gtk+-unix-print-3.0.pc                  \
158         gtk+-$(GDKTARGET)-3.0.pc                \
159         gdk-$(GDKTARGET)-3.0.pc                 \
160         gail-3.0.pc                             \
161         gtk+-$(GDKTARGET)-3.0-uninstalled.pc    \
162         gdk-$(GDKTARGET)-3.0-uninstalled.pc     \
163         gail-3.0-uninstalled.pc                 \
164         config.lt
165
166 distclean-local:
167         if test "$(srcdir)" = "."; then :; else \
168                 rm -f ChangeLog; \
169         fi
170
171 ChangeLog:
172         @echo Creating $@
173         @if test -d "$(srcdir)/.git"; then \
174           (GIT_DIR=$(top_srcdir)/.git ./missing --run git log GTK_2_16_0^^.. --stat) | fmt --split-only > $@.tmp \
175           && mv -f $@.tmp $@ \
176           || ($(RM) $@.tmp; \
177               echo Failed to generate ChangeLog, your ChangeLog may be outdated >&2; \
178               (test -f $@ || echo git-log is required to generate this file >> $@)); \
179         else \
180           test -f $@ || \
181           (echo A git checkout and git-log is required to generate ChangeLog >&2 && \
182           echo A git checkout and git-log is required to generate this file >> $@); \
183         fi
184
185 ## copy the default target for this platform to gdk-3.0.pc and gtk+-3.0.pc
186 DEFAULT_GDKTARGET=x11
187 install-data-hook:
188         (cd $(DESTDIR)$(pkgconfigdir) && \
189          test -f gdk-$(DEFAULT_GDKTARGET)-3.0.pc && \
190          test -f gtk+-$(DEFAULT_GDKTARGET)-3.0.pc && \
191          rm -f gdk-3.0.pc && cp -f gdk-$(DEFAULT_GDKTARGET)-3.0.pc gdk-3.0.pc && \
192          rm -f gtk+-3.0.pc && cp -f gtk+-$(DEFAULT_GDKTARGET)-3.0.pc gtk+-3.0.pc) || \
193         (cd $(DESTDIR)$(pkgconfigdir) && \
194          rm -f gdk-3.0.pc && cp -f gdk-$(GDKTARGET)-3.0.pc gdk-3.0.pc && \
195          rm -f gtk+-3.0.pc && cp -f gtk+-$(GDKTARGET)-3.0.pc gtk+-3.0.pc)
196
197 uninstall-local:
198         rm -f $(DESTDIR)$(pkgconfigdir)/gdk-3.0.pc
199         rm -f $(DESTDIR)$(pkgconfigdir)/gtk+-3.0.pc
200
201 dist-hook:
202         if test -f $(srcdir)/INSTALL.in && test -f $(srcdir)/README.in ; then \
203              CONFIG_FILES="INSTALL:$(srcdir)/INSTALL.in README:$(srcdir)/README.in" \
204              CONFIG_HEADERS= \
205              $(SHELL) config.status \
206              && cp INSTALL README $(distdir) ; \
207         fi
208
209 .PHONY: files release sanity snapshot ChangeLog
210
211 files:
212         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
213           echo $$p; \
214         done
215         @for subdir in $(SUBDIRS); do \
216           files=`cd $$subdir; $(MAKE) files | grep -v "make\[[1-9]\]"`; \
217           for file in $$files; do \
218             echo $$subdir/$$file; \
219           done; \
220         done
221
222 release:
223         rm -rf .deps */.deps
224         $(MAKE) distcheck
225
226 sanity:
227         ./sanity_check $(VERSION)
228
229
230 snapshot:
231         $(MAKE) dist distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
232
233 DISTCHECK_CONFIGURE_FLAGS =             \
234                 --enable-gtk-doc        \
235                 --enable-man            \
236                 --disable-rebuilds      \
237                 --enable-introspection
238
239 GITIGNOREFILES = \
240         po-properties/Makefile.in.in \
241         po-properties/Makefile.in \
242         po-properties/Makefile \
243         po-properties/*.gmo \
244         po-properties/*.mo \
245         po-properties/POTFILES \
246         po-properties/stamp-it \
247         po-properties/.intltool-merge-cache
248
249 -include $(top_srcdir)/git.mk