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