]> Pileus Git - ~andy/gtk/blob - gtk/Makefile.am
gtk.m4: When testing to see if glib exists, set LIBS="$GTK_LIBS $LIBS" NOT
[~andy/gtk] / gtk / Makefile.am
1 ### Process this file with automake to produce Makefile.in
2
3 gtkincludedir = $(includedir)/gtk
4
5 lib_LTLIBRARIES = libgtk.la
6
7 static_SOURCES = \
8         gtkaccelgroup.c         \
9         gtkaccellabel.c         \
10         gtkadjustment.c         \
11         gtkalignment.c          \
12         gtkarg.c                \
13         gtkarrow.c              \
14         gtkaspectframe.c        \
15         gtkbin.c                \
16         gtkbindings.c           \
17         gtkbbox.c               \
18         gtkbox.c                \
19         gtkbutton.c             \
20         gtkcalendar.c           \
21         gtkcheckbutton.c        \
22         gtkcheckmenuitem.c      \
23         gtkclist.c              \
24         gtkcolorsel.c           \
25         gtkcombo.c              \
26         gtkcontainer.c          \
27         gtkctree.c              \
28         gtkcurve.c              \
29         gtkdata.c               \
30         gtkdialog.c             \
31         gtkdnd.c                \
32         gtkdrawingarea.c        \
33         gtkeditable.c           \
34         gtkentry.c              \
35         gtkeventbox.c           \
36         gtkfilesel.c            \
37         gtkfixed.c              \
38         gtkfontsel.c            \
39         gtkframe.c              \
40         gtkgamma.c              \
41         gtkgc.c                 \
42         gtkhandlebox.c          \
43         gtkhbbox.c              \
44         gtkhbox.c               \
45         gtkhpaned.c             \
46         gtkhruler.c             \
47         gtkhscale.c             \
48         gtkhscrollbar.c         \
49         gtkhseparator.c         \
50         gtkimage.c              \
51         gtkinputdialog.c        \
52         gtkinvisible.c          \
53         gtkitem.c               \
54         gtkitemfactory.c        \
55         gtklabel.c              \
56         gtklayout.c             \
57         gtklist.c               \
58         gtklistitem.c           \
59         gtkmain.c               \
60         gtkmenu.c               \
61         gtkmenubar.c            \
62         gtkmenufactory.c        \
63         gtkmenuitem.c           \
64         gtkmenushell.c          \
65         gtkmisc.c               \
66         gtknotebook.c           \
67         gtkobject.c             \
68         gtkoptionmenu.c         \
69         gtkpacker.c             \
70         gtkpaned.c              \
71         gtkpixmap.c             \
72         gtkplug.c               \
73         gtkpreview.c            \
74         gtkprogress.c           \
75         gtkprogressbar.c        \
76         gtkradiobutton.c        \
77         gtkradiomenuitem.c      \
78         gtkrange.c              \
79         gtkrc.c                 \
80         gtkruler.c              \
81         gtkscale.c              \
82         gtkscrollbar.c          \
83         gtkscrolledwindow.c     \
84         gtkselection.c          \
85         gtkseparator.c          \
86         gtksignal.c             \
87         gtksocket.c             \
88         gtkspinbutton.c         \
89         gtkstyle.c              \
90         gtkstatusbar.c          \
91         gtktable.c              \
92         gtktearoffmenuitem.c    \
93         gtktext.c               \
94         gtkthemes.c             \
95         gtktipsquery.c          \
96         gtktogglebutton.c       \
97         gtktoolbar.c            \
98         gtktooltips.c           \
99         gtktree.c               \
100         gtktreeitem.c           \
101         gtktypeutils.c          \
102         gtkvbbox.c              \
103         gtkvbox.c               \
104         gtkviewport.c           \
105         gtkvpaned.c             \
106         gtkvruler.c             \
107         gtkvscale.c             \
108         gtkvscrollbar.c         \
109         gtkvseparator.c         \
110         gtkwidget.c             \
111         gtkwindow.c             \
112         fnmatch.c               \
113         fnmatch.h
114
115 libgtk_la_SOURCES = \
116         $(static_SOURCES)       \
117         gtkmarshal.c
118
119 # Source headers which are non-autogenerated headers
120 source_headers = \
121         gtk.h                   \
122         gtkaccelgroup.h         \
123         gtkaccellabel.h         \
124         gtkadjustment.h         \
125         gtkalignment.h          \
126         gtkarg.h                \
127         gtkarrow.h              \
128         gtkaspectframe.h        \
129         gtkbin.h                \
130         gtkbindings.h           \
131         gtkbbox.h               \
132         gtkbox.h                \
133         gtkbutton.h             \
134         gtkcalendar.h           \
135         gtkcheckbutton.h        \
136         gtkcheckmenuitem.h      \
137         gtkclist.h              \
138         gtkcolorsel.h           \
139         gtkcombo.h              \
140         gtkcompat.h             \
141         gtkcontainer.h          \
142         gtkctree.h              \
143         gtkcurve.h              \
144         gtkdata.h               \
145         gtkdebug.h              \
146         gtkdialog.h             \
147         gtkdnd.h                \
148         gtkdrawingarea.h        \
149         gtkeditable.h           \
150         gtkentry.h              \
151         gtkenums.h              \
152         gtkeventbox.h           \
153         gtkfilesel.h            \
154         gtkfixed.h              \
155         gtkfontsel.h            \
156         gtkframe.h              \
157         gtkgamma.h              \
158         gtkgc.h                 \
159         gtkhandlebox.h          \
160         gtkhbbox.h              \
161         gtkhbox.h               \
162         gtkhpaned.h             \
163         gtkhruler.h             \
164         gtkhscale.h             \
165         gtkhscrollbar.h         \
166         gtkhseparator.h         \
167         gtkimage.h              \
168         gtkinputdialog.h        \
169         gtkintl.h               \
170         gtkinvisible.h          \
171         gtkitem.h               \
172         gtkitemfactory.h        \
173         gtklabel.h              \
174         gtklayout.h             \
175         gtklist.h               \
176         gtklistitem.h           \
177         gtkmain.h               \
178         gtkmenu.h               \
179         gtkmenubar.h            \
180         gtkmenufactory.h        \
181         gtkmenuitem.h           \
182         gtkmenushell.h          \
183         gtkmisc.h               \
184         gtknotebook.h           \
185         gtkobject.h             \
186         gtkoptionmenu.h         \
187         gtkpacker.h             \
188         gtkpaned.h              \
189         gtkpixmap.h             \
190         gtkplug.h               \
191         gtkpreview.h            \
192         gtkprivate.h            \
193         gtkprogress.h           \
194         gtkprogressbar.h        \
195         gtkradiobutton.h        \
196         gtkradiomenuitem.h      \
197         gtkrange.h              \
198         gtkrc.h                 \
199         gtkruler.h              \
200         gtkscale.h              \
201         gtkscrollbar.h          \
202         gtkscrolledwindow.h     \
203         gtkselection.h          \
204         gtkseparator.h          \
205         gtksignal.h             \
206         gtksocket.h             \
207         gtkspinbutton.h         \
208         gtkstyle.h              \
209         gtkstatusbar.h          \
210         gtktable.h              \
211         gtktearoffmenuitem.h    \
212         gtktext.h               \
213         gtkthemes.h             \
214         gtktipsquery.h          \
215         gtktogglebutton.h       \
216         gtktoolbar.h            \
217         gtktooltips.h           \
218         gtktree.h               \
219         gtktreeitem.h           \
220         gtktypeutils.h          \
221         gtkvbbox.h              \
222         gtkvbox.h               \
223         gtkviewport.h           \
224         gtkvpaned.h             \
225         gtkvruler.h             \
226         gtkvscale.h             \
227         gtkvscrollbar.h         \
228         gtkvseparator.h         \
229         gtkwidget.h             \
230         gtkwindow.h
231
232 gtkinclude_HEADERS =            \
233         $(source_headers)       \
234         gtkfeatures.h           \
235         gtkmarshal.h            \
236         gtktypebuiltins.h
237
238 # note gtk.defs and gtkmarshal.[ch] aren't here, but their stamps are
239 BUILT_SOURCES = \
240         stamp-d                         \
241         stamp-m                         \
242         gtktypebuiltins.h               \
243         gtktypebuiltins_evals.c         \
244         gtktypebuiltins_ids.c           \
245         gtktypebuiltins_vars.c
246
247 # cause the built sources to be rebuild when possible, even with --include-deps
248 $(static_sources): $(BUILT_SOURCES)
249
250 # More headers to use when autogenerating.
251 gdk_headers = \
252         ../gdk/gdktypes.h \
253         ../gdk/gdkrgb.h
254
255 # generate gtk.defs file from gtk-boxed.defs and *.h
256 gtk.defs: @REBUILD@ stamp-d
257         @:
258 stamp-d: @REBUILD@ makeenums.pl gtk-boxed.defs $(source_headers) $(gdk_headers)
259         cd $(srcdir) \
260         && $(PERL) makeenums.pl defs $(source_headers) $(gdk_headers) > s-gd \
261         && cat gtk-boxed.defs >> s-gd \
262         && (cmp -s s-gd gtk.defs || mv s-gd gtk.defs) && rm -f s-gd \
263         && echo timestamp > stamp-d
264
265 # generate type identifier header (GTK_TYPE_WIDGET_FLAGS)
266 gtktypebuiltins.h: #@REBUILD@ gtk.defs maketypes.awk
267         cd $(srcdir) \
268         && $(AWK) -f maketypes.awk gtk.defs macros > s-gtb \
269         && mv s-gtb gtktypebuiltins.h
270
271 # generate type identifier variables (GTK_TYPE_WIDGET_FLAGS)
272 $(srcdir)/gtktypebuiltins_vars.c: @REBUILD@ $(srcdir)/gtk.defs $(srcdir)/maketypes.awk
273         cd $(srcdir) \
274         && $(AWK) -f maketypes.awk gtk.defs variables > s-gtbv \
275         && mv s-gtbv gtktypebuiltins_vars.c
276
277 # generate type entries for type-id registration
278 $(srcdir)/gtktypebuiltins_ids.c: @REBUILD@ $(srcdir)/gtk.defs $(srcdir)/maketypes.awk
279         cd $(srcdir) \
280         && $(AWK) -f maketypes.awk gtk.defs entries > s-gtbi \
281         && mv s-gtbi gtktypebuiltins_ids.c 
282
283 # generate enum value arrays
284 $(srcdir)/gtktypebuiltins_evals.c: @REBUILD@ $(srcdir)/makeenums.pl $(srcdir)/gtk.defs
285         cd $(srcdir) \
286         && $(PERL) makeenums.pl arrays $(source_headers) $(gdk_headers) > \
287         s-gtbe \
288         && mv s-gtbe gtktypebuiltins_evals.c
289
290 $(srcdir)/gtkmarshal.c $(srcdir)/gtkmarshal.h: @REBUILD@ stamp-m
291         @:
292
293 stamp-m: @REBUILD@ $(srcdir)/gtkmarshal.list $(srcdir)/genmarshal.pl
294         (srcdir=$(srcdir) INDENT=$(INDENT) $(PERL) $(srcdir)/genmarshal.pl \
295         && (cmp -s s-gmc gtkmarshal.c || mv s-gmc gtkmarshal.c) && rm -f s-gmc \
296         && (cmp -s s-gmh gtkmarshal.h || mv s-gmh gtkmarshal.h) && rm -f s-gmh) \
297         && echo timestamp > stamp-m
298
299 libgtk_la_LDFLAGS = \
300         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -release $(LT_RELEASE) \
301         @GLIB_LIBS@                     \
302         @x_ldflags@                     \
303         @x_libs@                        \
304         -lm
305 #       $(top_builddir)/gdk/libgdk.la
306
307
308 # We create a dummy theme for the default GTK+ theme
309
310 install-data-local:
311         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk
312         echo "# Empty gtkrc for default theme" > \
313             $(DESTDIR)$(datadir)/themes/Default/gtk/gtkrc
314
315 uninstall-local:
316         rm -f $(DESTDIR)$(datadir)/themes/Default/gtkrc
317
318 EXTRA_DIST = \
319         line-arrow.xbm          \
320         line-wrap.xbm           \
321         testgtk.1               \
322         testgtkrc               \
323         testgtkrc2              \
324         gtkfeatures.h.in        \
325         makeenums.pl            \
326         makeenums.awk           \
327         maketypes.awk           \
328         makeenums.h             \
329         gtkargcollector.c       \
330         gtktypebuiltins_vars.c  \
331         gtktypebuiltins_ids.c   \
332         gtktypebuiltins_evals.c \
333         gtk-boxed.defs          \
334         gtk.defs                \
335         genmarshal.pl           \
336         gtkmarshal.list         \
337         test.xpm                \
338         marble.xpm              \
339         3DRings.xpm             \
340         FilesQueue.xpm          \
341         Modeller.xpm            \
342         tree_plus.xpm           \
343         tree_minus.xpm          \
344         tree_plus.xbm           \
345         tree_minus.xbm          \
346         circles.xbm
347
348 INCLUDES = \
349         -DG_LOG_DOMAIN=\"Gtk\"                  \
350         -DGTK_EXE_PREFIX=\"$(exec_prefix)\"     \
351         -DGTK_DATA_PREFIX=\"$(prefix)\"         \
352         -DGTK_SYSCONFDIR=\"$(sysconfdir)\"      \
353         -DGTK_LOCALEDIR=\"$(datadir)/locale\"   \
354         -I$(top_srcdir)                         \
355         @GTK_DEBUG_FLAGS@                       \
356         @GTK_XIM_FLAGS@                         \
357         @GTK_LOCALE_FLAGS@                      \
358         @GLIB_CFLAGS@                           \
359         @x_cflags@
360
361 noinst_PROGRAMS = testgtk testinput testselection testrgb testdnd simple 
362 # testthreads
363
364 DEPS =  \
365         libgtk.la                                       \
366         $(top_builddir)/gdk/libgdk.la
367
368 LDADDS = \
369         libgtk.la                                       \
370         $(top_builddir)/gdk/libgdk.la                   \
371         @x_ldflags@                                     \
372         @x_libs@                                        \
373         @GLIB_LIBS@                                     \
374         -lm
375
376 testgtk_DEPENDENCIES = $(DEPS)
377 testinput_DEPENDENCIES = $(DEPS)
378 #testthreads_DEPENDENCIES = $(DEPS)
379 testselection_DEPENDENCIES = $(DEPS)
380 testrgb_DEPENDENCIES = $(DEPS)
381 testdnd_DEPENDENCIES = $(DEPS)
382 simple_DEPENDENCIES = $(DEPS)
383
384 testgtk_LDADD = $(LDADDS)
385 testinput_LDADD = $(LDADDS)
386 #testthreads_LDADD = $(LDADDS)
387 testselection_LDADD = $(LDADDS)
388 testrgb_LDADD = $(LDADDS)
389 testdnd_LDADD = $(LDADDS)
390 simple_LDADD = $(LDADDS)
391
392 .PHONY: files test test-debug
393
394 files:
395         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
396           echo $$p; \
397         done
398
399 test: testgtk
400         builddir=`pwd`; cd $(top_builddir); top_builddir=`pwd`; \
401         cd $$builddir; cd $(srcdir); \
402         $(SHELL) $$top_builddir/libtool --mode=execute $$builddir/testgtk
403
404 test-debug: testgtk
405         builddir=`pwd`; cd $(top_builddir); top_builddir=`pwd`; \
406         cd $$builddir; cd $(srcdir); \
407         $(SHELL) $$top_builddir/libtool --mode=execute gdb $$builddir/testgtk