]> Pileus Git - ~andy/gtk/blob - gtk/Makefile.am
New widget to go along with GtkFontButton and GtkColorButton for use in
[~andy/gtk] / gtk / Makefile.am
1 # Makefile.am for gtk+/gtk
2
3 SUBDIRS=stock-icons theme-bits
4
5 if OS_UNIX
6 SUBDIRS += xdgmime
7 endif
8
9 DIST_SUBDIRS=stock-icons theme-bits xdgmime
10
11 INCLUDES =                                              \
12         -DG_LOG_DOMAIN=\"Gtk\"                          \
13         -DGTK_LIBDIR=\"$(libdir)\"                      \
14         -DGTK_DATADIR=\"$(datadir)\"                    \
15         -DGTK_DATA_PREFIX=\"$(prefix)\"                 \
16         -DGTK_SYSCONFDIR=\"$(sysconfdir)\"              \
17         -DGTK_VERSION=\"$(GTK_VERSION)\"                \
18         -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\"  \
19         -DGTK_HOST=\"$(host)\"                          \
20         -DGTK_COMPILATION                               \
21         -I$(top_builddir)/gtk                           \
22         -I$(top_srcdir) -I../gdk                        \
23         -I$(top_srcdir)/gdk                             \
24         -I$(top_srcdir)/gdk-pixbuf -I../gdk-pixbuf      \
25         -DG_DISABLE_DEPRECATED                          \
26         -DGDK_PIXBUF_DISABLE_DEPRECATED                 \
27         -DGDK_DISABLE_DEPRECATED                        \
28         -DGTK_DISABLE_DEPRECATED                        \
29         -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED            \
30         $(GTK_DEBUG_FLAGS)                              \
31         $(GTK_DEP_CFLAGS)
32
33 gtarget=$(gdktarget)
34
35 if PLATFORM_WIN32
36 no_undefined = -no-undefined
37 endif
38
39 if OS_WIN32
40 gtk_def = gtk.def
41 gtk_win32_symbols = -export-symbols $(gtk_def)
42
43 gtk_win32res_lo = gtk-win32res.lo
44
45 gtk-win32res.lo : gtk-win32.rc
46         $(top_srcdir)/build/win32/lt-compile-resource gtk-win32.rc gtk-win32res.lo
47
48 install-libtool-import-lib:
49         $(INSTALL) .libs/libgtk-win32-$(GTK_API_VERSION).dll.a $(DESTDIR)$(libdir)
50 uninstall-libtool-import-lib:
51         -rm $(DESTDIR)$(libdir)/libtk-win32-$(GTK_API_VERSION).dll.a
52 else
53 install-libtool-import-lib:
54 uninstall-libtool-import-lib:
55 endif
56
57 if MS_LIB_AVAILABLE
58 noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
59
60 gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
61         lib -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
62
63 install-ms-lib:
64         $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
65
66 uninstall-ms-lib:
67         -rm $(DESTDIR)$(libdir)/gtk-win32-$(GTK_API_VERSION).lib
68 else
69 install-ms-lib:
70 uninstall-ms-lib:
71 endif
72
73 gtk.def: gtk.symbols
74         (echo -e EXPORTS; cpp -P -DINCLUDE_VARIABLES -DG_OS_WIN32 gtk.symbols | sed -e '/^$$/d' -e 's/^/\t/') > gtk.def
75
76 gtkalias.h: gtk.symbols
77          cpp -P -DG_OS_UNIX -DGTK_WINDOWING_X11 -DINCLUDE_INTERNAL_SYMBOLS gtk.symbols | ./makegtkalias.pl > gtkalias.h
78
79 if OS_UNIX
80 TESTS = abicheck.sh
81 endif
82
83 # libtool stuff: set version and export symbols for resolving
84 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
85 # we use the general approach here
86 libgtkincludedir = $(includedir)/gtk-2.0/gtk
87 libadd =                                                                \
88         $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
89         $(top_builddir)/gdk/$(gdktargetlib)                             \
90         $(GTK_DEP_LIBS)
91
92 if OS_UNIX
93 libadd += xdgmime/libxdgmime.la
94 endif
95
96 # common options for the various packages.
97 libtool_opts =                                                  \
98   -version-info $(LT_VERSION_INFO)                              \
99   -export-dynamic $(no_undefined) $(LIBTOOL_EXPORT_OPTIONS)     \
100   -rpath $(libdir) $(libgtk_target_ldflags)
101
102
103 #
104 # setup source file variables
105 #
106
107 # GTK+ header files for public installation (non-generated, or generated
108 # by configure)
109 gtk_public_h_sources =          \
110         gtk.h                   \
111         gtkaboutdialog.h        \
112         gtkaccelgroup.h         \
113         gtkaccellabel.h         \
114         gtkaccelmap.h           \
115         gtkaccessible.h         \
116         gtkaction.h             \
117         gtkactiongroup.h        \
118         gtkadjustment.h         \
119         gtkalignment.h          \
120         gtkarrow.h              \
121         gtkaspectframe.h        \
122         gtkbbox.h               \
123         gtkbin.h                \
124         gtkbindings.h           \
125         gtkbox.h                \
126         gtkbutton.h             \
127         gtkcalendar.h           \
128         gtkcelleditable.h       \
129         gtkcelllayout.h         \
130         gtkcellrenderer.h       \
131         gtkcellrenderercombo.h  \
132         gtkcellrendererpixbuf.h \
133         gtkcellrendererprogress.h \
134         gtkcellrenderertext.h   \
135         gtkcellrenderertoggle.h \
136         gtkcellview.h           \
137         gtkcheckbutton.h        \
138         gtkcheckmenuitem.h      \
139         gtkclipboard.h          \
140         gtkclist.h              \
141         gtkclipboard.h          \
142         gtkcolorbutton.h        \
143         gtkcolorsel.h           \
144         gtkcolorseldialog.h     \
145         gtkcombo.h              \
146         gtkcombobox.h           \
147         gtkcomboboxentry.h      \
148         gtkcontainer.h          \
149         gtkctree.h              \
150         gtkcurve.h              \
151         gtkdebug.h              \
152         gtkdialog.h             \
153         gtkdnd.h                \
154         gtkdrawingarea.h        \
155         gtkeditable.h           \
156         gtkentry.h              \
157         gtkentrycompletion.h    \
158         gtkenums.h              \
159         gtkeventbox.h           \
160         gtkexpander.h           \
161         gtkfilechooser.h        \
162         gtkfilechooserbutton.h  \
163         gtkfilechooserdialog.h  \
164         gtkfilechooserwidget.h  \
165         gtkfilefilter.h         \
166         gtkfilesel.h            \
167         gtkfixed.h              \
168         gtkfontbutton.h         \
169         gtkfontsel.h            \
170         gtkframe.h              \
171         gtkgamma.h              \
172         gtkgc.h                 \
173         gtkhandlebox.h          \
174         gtkhbbox.h              \
175         gtkhbox.h               \
176         gtkhpaned.h             \
177         gtkhruler.h             \
178         gtkhscale.h             \
179         gtkhscrollbar.h         \
180         gtkhseparator.h         \
181         gtkiconfactory.h        \
182         gtkicontheme.h          \
183         gtkiconview.h           \
184         gtkimage.h              \
185         gtkimagemenuitem.h      \
186         gtkimcontext.h          \
187         gtkimcontextsimple.h    \
188         gtkimmodule.h           \
189         gtkimmulticontext.h     \
190         gtkinputdialog.h        \
191         gtkinvisible.h          \
192         gtkitem.h               \
193         gtkitemfactory.h        \
194         gtklabel.h              \
195         gtklayout.h             \
196         gtklist.h               \
197         gtklistitem.h           \
198         gtkliststore.h          \
199         gtkmain.h               \
200         gtkmenu.h               \
201         gtkmenubar.h            \
202         gtkmenuitem.h           \
203         gtkmenushell.h          \
204         gtkmessagedialog.h      \
205         gtkmisc.h               \
206         gtknotebook.h           \
207         gtkobject.h             \
208         gtkoldeditable.h        \
209         gtkoptionmenu.h         \
210         gtkpaned.h              \
211         gtkpixmap.h             \
212         gtkplug.h               \
213         gtkpreview.h            \
214         gtkprivate.h            \
215         gtkprogress.h           \
216         gtkprogressbar.h        \
217         gtkradioaction.h        \
218         gtkradiobutton.h        \
219         gtkradiomenuitem.h      \
220         gtkradiotoolbutton.h    \
221         gtkrange.h              \
222         gtkrc.h                 \
223         gtkruler.h              \
224         gtkscale.h              \
225         gtkscrollbar.h          \
226         gtkscrolledwindow.h     \
227         gtkselection.h          \
228         gtkseparator.h          \
229         gtkseparatormenuitem.h  \
230         gtkseparatortoolitem.h  \
231         gtksettings.h           \
232         gtksignal.h             \
233         gtksizegroup.h          \
234         gtksocket.h             \
235         gtkspinbutton.h         \
236         gtkstatusbar.h          \
237         gtkstock.h              \
238         gtkstyle.h              \
239         gtktable.h              \
240         gtktearoffmenuitem.h    \
241         gtktext.h               \
242         gtktextbuffer.h         \
243         gtktextchild.h          \
244         gtktextdisplay.h        \
245         gtktextiter.h           \
246         gtktextmark.h           \
247         gtktexttag.h            \
248         gtktexttagtable.h       \
249         gtktextview.h           \
250         gtktipsquery.h          \
251         gtktoggleaction.h       \
252         gtktogglebutton.h       \
253         gtktoggletoolbutton.h   \
254         gtktoolbar.h            \
255         gtktoolbutton.h         \
256         gtktoolitem.h           \
257         gtktooltips.h           \
258         gtktree.h               \
259         gtktreednd.h            \
260         gtktreeitem.h           \
261         gtktreemodel.h          \
262         gtktreemodelfilter.h    \
263         gtktreemodelsort.h      \
264         gtktreeselection.h      \
265         gtktreesortable.h       \
266         gtktreestore.h          \
267         gtktreeview.h           \
268         gtktreeviewcolumn.h     \
269         gtktypeutils.h          \
270         gtkuimanager.h          \
271         gtkvbbox.h              \
272         gtkvbox.h               \
273         gtkviewport.h           \
274         gtkvpaned.h             \
275         gtkvruler.h             \
276         gtkvscale.h             \
277         gtkvscrollbar.h         \
278         gtkvseparator.h         \
279         gtkwidget.h             \
280         gtkwindow.h
281
282 # Installed header files without compatibility guarantees
283 # that are not include in gtk/gtk.h
284 gtk_semi_private_h_sources =    \
285         gtktextlayout.h         \
286         gtkfilesystem.h
287
288 # GTK+ header files that don't get installed
289 gtk_private_h_sources =         \
290         gtkentryprivate.h       \
291         gtkfilechooserembed.h   \
292         gtkfilechooserentry.h   \
293         gtkfilechooserdefault.h \
294         gtkfilechooserprivate.h \
295         gtkfilechooserutils.h   \
296         gtkfilesystemunix.h     \
297         gtkfilesystemmodel.h    \
298         gtkinternals.h          \
299         gtkpathbar.h            \
300         gtkrbtree.h             \
301         gtksequence.h           \
302         gtktextbtree.h          \
303         gtktextchildprivate.h   \
304         gtktextsegment.h        \
305         gtktexttypes.h          \
306         gtktextutil.h           \
307         gtktextiterprivate.h    \
308         gtktextmarkprivate.h    \
309         gtktexttagprivate.h     \
310         gtkthemes.h             \
311         gtktreedatalist.h       \
312         gtktreeprivate.h        \
313         gtkwindow-decorate.h    \
314         gtktoggleactionprivate.h
315
316 # GTK+ C sources to build the library from
317 gtk_c_sources =                 \
318         fnmatch.c               \
319         gtkaboutdialog.c        \
320         gtkaccelgroup.c         \
321         gtkaccellabel.c         \
322         gtkaccelmap.c           \
323         gtkaccessible.c         \
324         gtkaction.c             \
325         gtkactiongroup.c        \
326         gtkadjustment.c         \
327         gtkalignment.c          \
328         gtkarrow.c              \
329         gtkaspectframe.c        \
330         gtkbbox.c               \
331         gtkbin.c                \
332         gtkbindings.c           \
333         gtkbox.c                \
334         gtkbutton.c             \
335         gtkcalendar.c           \
336         gtkcelleditable.c       \
337         gtkcelllayout.c         \
338         gtkcellrenderer.c       \
339         gtkcellrenderercombo.c  \
340         gtkcellrendererpixbuf.c \
341         gtkcellrendererprogress.c \
342         gtkcellrenderertext.c   \
343         gtkcellrenderertoggle.c \
344         gtkcellview.c           \
345         gtkcheckbutton.c        \
346         gtkcheckmenuitem.c      \
347         gtkclipboard.c          \
348         gtkclist.c              \
349         gtkcolorbutton.c        \
350         gtkcolorsel.c           \
351         gtkcolorseldialog.c     \
352         gtkcombo.c              \
353         gtkcombobox.c           \
354         gtkcomboboxentry.c      \
355         gtkcontainer.c          \
356         gtkctree.c              \
357         gtkcurve.c              \
358         gtkdialog.c             \
359         gtkdnd.c                \
360         gtkdrawingarea.c        \
361         gtkeditable.c           \
362         gtkentry.c              \
363         gtkentrycompletion.c    \
364         gtkeventbox.c           \
365         gtkexpander.c           \
366         gtkfilechooser.c        \
367         gtkfilechooserbutton.c  \
368         gtkfilechooserdialog.c  \
369         gtkfilechooserembed.c   \
370         gtkfilechooserentry.c   \
371         gtkfilechooserdefault.c \
372         gtkfilechooserutils.c   \
373         gtkfilechooserwidget.c  \
374         gtkfilefilter.c         \
375         gtkfilesel.c            \
376         gtkfilesystem.c         \
377         gtkfilesystemmodel.c    \
378         gtkfixed.c              \
379         gtkfontbutton.c         \
380         gtkfontsel.c            \
381         gtkframe.c              \
382         gtkgamma.c              \
383         gtkgc.c                 \
384         gtkhandlebox.c          \
385         gtkhbbox.c              \
386         gtkhbox.c               \
387         gtkhpaned.c             \
388         gtkhruler.c             \
389         gtkhscale.c             \
390         gtkhscrollbar.c         \
391         gtkhseparator.c         \
392         gtkhsv.c                \
393         gtkhsv.h                \
394         gtkiconfactory.c        \
395         gtkicontheme.c          \
396         gtkiconthemeparser.c    \
397         gtkiconthemeparser.h    \
398         gtkiconview.c           \
399         gtkimage.c              \
400         gtkimagemenuitem.c      \
401         gtkimcontext.c          \
402         gtkimcontextsimple.c    \
403         gtkimmodule.c           \
404         gtkimmulticontext.c     \
405         gtkinputdialog.c        \
406         gtkintl.h               \
407         gtkinvisible.c          \
408         gtkitem.c               \
409         gtkitemfactory.c        \
410         gtkkeyhash.c            \
411         gtkkeyhash.h            \
412         gtklabel.c              \
413         gtklayout.c             \
414         gtklist.c               \
415         gtklistitem.c           \
416         gtkliststore.c          \
417         gtkmain.c               \
418         gtkmarshal.c            \
419         gtkmarshalers.c         \
420         gtkmenu.c               \
421         gtkmenubar.c            \
422         gtkmenuitem.c           \
423         gtkmenushell.c          \
424         gtkmessagedialog.c      \
425         gtkmisc.c               \
426         gtknotebook.c           \
427         gtkobject.c             \
428         gtkoldeditable.c        \
429         gtkoptionmenu.c         \
430         gtkpaned.c              \
431         gtkpathbar.c            \
432         gtkpixmap.c             \
433         gtkpreview.c            \
434         gtkprogress.c           \
435         gtkprogressbar.c        \
436         gtkradioaction.c        \
437         gtkradiobutton.c        \
438         gtkradiomenuitem.c      \
439         gtkradiotoolbutton.c    \
440         gtkrange.c              \
441         gtkrbtree.c             \
442         gtkrc.c                 \
443         gtkruler.c              \
444         gtkscale.c              \
445         gtkscrollbar.c          \
446         gtkscrolledwindow.c     \
447         gtksequence.c           \
448         gtkselection.c          \
449         gtkseparator.c          \
450         gtkseparatormenuitem.c  \
451         gtkseparatortoolitem.c  \
452         gtksettings.c           \
453         gtksignal.c             \
454         gtksizegroup.c          \
455         gtkspinbutton.c         \
456         gtkstatusbar.c          \
457         gtkstock.c              \
458         gtkstyle.c              \
459         gtktable.c              \
460         gtktearoffmenuitem.c    \
461         gtktext.c               \
462         gtktextbtree.c          \
463         gtktextbuffer.c         \
464         gtktextchild.c          \
465         gtktextdisplay.c        \
466         gtktextiter.c           \
467         gtktextiterprivate.h    \
468         gtktextlayout.c         \
469         gtktextmark.c           \
470         gtktextmarkprivate.h    \
471         gtktextsegment.c        \
472         gtktexttag.c            \
473         gtktexttagtable.c       \
474         gtktexttypes.c          \
475         gtktextutil.c           \
476         gtktextview.c           \
477         gtkthemes.c             \
478         gtktipsquery.c          \
479         gtktoggleaction.c       \
480         gtktogglebutton.c       \
481         gtktoggletoolbutton.c   \
482         gtktoolbar.c            \
483         gtktoolbutton.c         \
484         gtktoolitem.c           \
485         gtktooltips.c           \
486         gtktree.c               \
487         gtktreedatalist.c       \
488         gtktreednd.c            \
489         gtktreeitem.c           \
490         gtktreemodel.c          \
491         gtktreemodelfilter.c    \
492         gtktreemodelsort.c      \
493         gtktreeselection.c      \
494         gtktreesortable.c       \
495         gtktreestore.c          \
496         gtktreeview.c           \
497         gtktreeviewcolumn.c     \
498         gtktypebuiltins.c       \
499         gtktypeutils.c          \
500         gtkuimanager.c          \
501         gtkvbbox.c              \
502         gtkvbox.c               \
503         gtkviewport.c           \
504         gtkvpaned.c             \
505         gtkvruler.c             \
506         gtkvscale.c             \
507         gtkvscrollbar.c         \
508         gtkvseparator.c         \
509         gtkwidget.c             \
510         gtkwindow-decorate.c    \
511         gtkwindow.c             \
512         xembed.h
513
514 if OS_UNIX
515 gtk_private_h_sources += gtkfilesystemunix.h
516 gtk_c_sources +=         gtkfilesystemunix.c
517 endif
518
519 if OS_WIN32
520 gtk_private_h_sources += gtkfilesystemwin32.h
521 gtk_c_sources +=         gtkfilesystemwin32.c
522 endif
523
524 gtk_plug_c_sources =            \
525         gtkplug.c               \
526         gtksocket.c             \
527         gtkxembed.c             \
528         gtkxembed.h
529
530 # we use our own built_sources variable rules to avoid automake's
531 # BUILT_SOURCES oddities
532 # we generate frequently rebuild files piggyback on a stamp file, so sources
533 # depending on them only get rebuild when the built source actually changed
534 # content
535
536 # built sources that get installed with the header files
537 gtk_built_public_sources =                      \
538         gtkmarshal.h                            \
539         gtktypebuiltins.h
540
541 # built sources that don't get installed
542 gtk_built_private_headers =                     \
543         gtkalias.h                              \
544         gtkmarshalers.h
545
546 gtk_built_sources =                             \
547         gtktypebuiltins.c                       \
548         gtkmarshalers.c                         \
549         gtkmarshalers.h                         \
550         gtkmarshal.c                            \
551         ${gtk_built_private_headers}            \
552         ${gtk_built_public_sources}
553
554 stamp_files =                                   \
555         stamp-gtkmarshalers.h                   \
556         stamp-gtkmarshal.h                      \
557         stamp-gtktypebuiltins.h
558
559 # non-header sources (headers should be specified in the above variables)
560 # that don't serve as direct make target sources, i.e. they don't have
561 # their own .lo rules and don't get publically installed
562 gtk_extra_sources =                             \
563         gtk.symbols                             \
564         gtkversion.h.in                         \
565         gtkmarshalers.list                      \
566         gtkmarshal.list
567
568 #
569 # setup GTK+ sources and their dependencies
570 #
571 MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files)
572 EXTRA_HEADERS =
573 EXTRA_DIST = $(gtk_private_h_sources) $(gtk_extra_sources)
574 EXTRA_DIST += $(gtk_built_sources)
575
576 #
577 # rules to generate built sources
578 #
579 # setup autogeneration dependencies
580 gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc
581 CLEANFILES = $(gen_sources)
582
583 BUILT_SOURCES = $(gtk_built_sources)
584
585 # all autogenerated files need to be generated in the srcdir,
586 # so old versions get remade and are not confused with newer
587 # versions in the build dir. thus a development setup requires
588 # srcdir to be writable, passing --disable-rebuilds to
589 # ../configure will supress all autogeneration rules.
590 gtkmarshalers.h: stamp-gtkmarshalers.h
591         @true
592 stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list
593         $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --header >> xgen-gmlh \
594         && (cmp -s xgen-gmlh gtkmarshalers.h || cp xgen-gmlh gtkmarshalers.h) \
595         && rm -f xgen-gmlh \
596         && echo timestamp > $(@F)       
597 gtkmarshalers.c: @REBUILD@ gtkmarshalers.list
598         (echo "#include \"gtkalias.h\""; $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --body) >> xgen-gmlc \
599         && cp xgen-gmlc gtkmarshalers.c \
600         && rm -f xgen-gmlc
601
602 gtkmarshal.h: stamp-gtkmarshal.h
603         @true
604 stamp-gtkmarshal.h: @REBUILD@ gtkmarshal.list
605         echo "#ifndef GTK_DISABLE_DEPRECATED" > xgen-gmh                                        \
606         && $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --header >> xgen-gmh \
607         && echo "#endif /* GTK_DISABLE_DEPRECATED */" >> xgen-gmh \
608         && (cmp -s xgen-gmh gtkmarshal.h || cp xgen-gmh gtkmarshal.h) \
609         && rm -f xgen-gmh \
610         && echo timestamp > $(@F)
611 gtkmarshal.c: @REBUILD@ gtkmarshal.list
612         (echo "#include \"gtkalias.h\""; $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --body) >> xgen-gmc \
613         && cp xgen-gmc gtkmarshal.c \
614         && rm -f xgen-gmc 
615
616 gtktypebuiltins.h: stamp-gtktypebuiltins.h
617         @true
618 stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) Makefile
619         ( cd $(srcdir) && glib-mkenums \
620                         --fhead "#ifndef __GTK_TYPE_BUILTINS_H__\n#define __GTK_TYPE_BUILTINS_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
621                         --fprod "/* enumerations from \"@filename@\" */\n" \
622                         --vhead "GType @enum_name@_get_type (void);\n#define GTK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
623                         --ftail "G_END_DECLS\n\n#endif /* __GTK_TYPE_BUILTINS_H__ */" \
624                 $(gtk_public_h_sources) ) >> xgen-gtbh \
625         && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h ) \
626         && rm -f xgen-gtbh \
627         && echo timestamp > $(@F)
628 gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) Makefile
629         ( cd $(srcdir) && glib-mkenums \
630                         --fhead "#undef GTK_DISABLE_DEPRECATED\n#define GTK_ENABLE_BROKEN\n#include \"gtkalias.h\"\n#include \"gtk.h\"\n#include \"gtkprivate.h\"" \
631                         --fprod "\n/* enumerations from \"@filename@\" */" \
632                         --vhead "GType\n@enum_name@_get_type (void)\n{\n  static GType etype = 0;\n  if (etype == 0) {\n    static const G@Type@Value values[] = {" \
633                         --vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
634                         --vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
635                 $(gtk_public_h_sources) ) > xgen-gtbc \
636         && cp xgen-gtbc gtktypebuiltins.c  \
637         && rm -f xgen-gtbc
638
639 # target platform:
640 lib_LTLIBRARIES = $(gtktargetlib)
641
642 gtkincludedir = $(includedir)/gtk-2.0/gtk
643 gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_semi_private_h_sources) $(gtk_built_public_sources) gtkversion.h
644
645 libgtk_x11_2_0_la_SOURCES = $(gtk_c_sources) $(gtk_plug_c_sources)
646 libgtk_linux_fb_2_0_la_SOURCES = $(gtk_c_sources)
647 libgtk_win32_2_0_la_SOURCES = $(gtk_c_sources)
648
649 libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts)
650 libgtk_linux_fb_2_0_la_LDFLAGS = $(libtool_opts)
651 libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts)
652
653 libgtk_x11_2_0_la_LIBADD = $(libadd)
654 libgtk_linux_fb_2_0_la_LIBADD = $(libadd)
655 libgtk_win32_2_0_la_LIBADD = $(libadd) $(gtk_win32res_lo)
656 libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32res_lo)
657
658 if USE_WIN32
659 libgtk_target_ldflags = $(gtk_win32_symbols) -lwsock32
660 endif
661 EXTRA_LTLIBRARIES = libgtk-x11-2.0.la libgtk-linux-fb-2.0.la libgtk-win32-2.0.la
662
663 install-exec-hook: 
664 if DISABLE_EXPLICIT_DEPS
665         $(SHELL) $(top_srcdir)/sanitize-la.sh $(DESTDIR)$(libdir)/$(gtktargetlib)
666 endif
667
668 # Install a RC file for the default GTK+ theme, and key themes
669 install-data-local: install-ms-lib install-libtool-import-lib
670         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk-2.0
671         $(INSTALL_DATA) $(srcdir)/gtkrc.default $(DESTDIR)$(datadir)/themes/Default/gtk-2.0/gtkrc
672         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key
673         $(INSTALL_DATA) $(srcdir)/gtkrc.key.default $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
674         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key
675         $(INSTALL_DATA) $(srcdir)/gtkrc.key.emacs $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
676
677 uninstall-local: uninstall-ms-lib uninstall-libtool-import-lib
678         rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-2.0/gtkrc
679         rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
680         rm -f $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
681
682 # if srcdir!=builddir, clean out maintainer-clean files from builddir
683 # this allows dist to pass.
684 distclean-local:
685         if test $(srcdir) != .; then \
686           rm -f $(MAINTAINERCLEANFILES); \
687         fi
688
689 DEPS = $(gtktargetlib) $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la $(top_builddir)/gdk/$(gdktargetlib)
690
691 TEST_DEPS = $(DEPS) gtk.immodules
692
693 LDADDS =                                                                \
694         $(gtktargetlib)                                                 \
695         $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
696         $(top_builddir)/gdk/$(gdktargetlib)
697
698 #
699 # Installed tools
700 #
701 bin_PROGRAMS = gtk-query-immodules-2.0
702
703 gtk_query_immodules_2_0_DEPENDENCIES = $(DEPS)
704 gtk_query_immodules_2_0_LDADD = $(LDADDS)
705
706 gtk_query_immodules_2_0_SOURCES = queryimmodules.c
707
708 .PHONY: files test test-debug
709
710 files:
711         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
712           echo $$p; \
713         done
714
715 EXTRA_DIST +=                   \
716         line-arrow.xbm          \
717         line-wrap.xbm           \
718         tree_plus.xbm           \
719         tree_minus.xbm          \
720         tree_minus.xpm          \
721         tree_plus.xpm           \
722         gtk.def                 \
723         gtk-win32.rc            \
724         gtk-win32.rc.in         \
725         gtkfilesystemwin32.h    \
726         gtkfilesystemwin32.c    \
727         gtkrc.default           \
728         gtkrc.key.default       \
729         gtkrc.key.emacs         \
730         makefile.msc            \
731         makefile.msc.in         \
732         makegtkalias.pl         \
733         abicheck.sh
734
735 install-data-local: