]> Pileus Git - ~andy/gtk/blob - gtk/Makefile.am
Make sure dist check works with introspection
[~andy/gtk] / gtk / Makefile.am
1 # Makefile.am for gtk+/gtk
2 include $(top_srcdir)/Makefile.decl
3
4 if USE_QUARTZ
5 GTK_PRINT_PREVIEW_COMMAND="open -a /Applications/Preview.app %f"
6 else
7 GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f"
8 endif
9
10 SUBDIRS = theme-bits . tests
11 DIST_SUBDIRS=theme-bits tests
12
13 if HAVE_PAPI_CUPS
14 GTK_PRINT_BACKENDS=file,papi,cups
15 else
16 if HAVE_CUPS
17 GTK_PRINT_BACKENDS=file,cups
18 else
19 if HAVE_PAPI
20 GTK_PRINT_BACKENDS=file,papi
21 else
22 GTK_PRINT_BACKENDS=file,lpr
23 endif
24 endif
25 endif
26
27 INCLUDES =                                              \
28         -DG_LOG_DOMAIN=\"Gtk\"                          \
29         -DGTK_LIBDIR=\"$(libdir)\"                      \
30         -DGTK_DATADIR=\"$(datadir)\"                    \
31         -DGTK_DATA_PREFIX=\"$(prefix)\"                 \
32         -DGTK_SYSCONFDIR=\"$(sysconfdir)\"              \
33         -DGTK_VERSION=\"$(GTK_VERSION)\"                \
34         -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\"  \
35         -DGTK_HOST=\"$(host)\"                          \
36         -DGTK_COMPILATION                               \
37         -DGTK_PRINT_BACKENDS=\"$(GTK_PRINT_BACKENDS)\"  \
38         -DGTK_PRINT_PREVIEW_COMMAND=\"$(GTK_PRINT_PREVIEW_COMMAND)\"    \
39         -I$(top_builddir)                               \
40         -I$(top_builddir)/gtk                           \
41         -I$(top_srcdir) -I../gdk                        \
42         -I$(top_srcdir)/gdk                             \
43         -I$(top_srcdir)/gdk-pixbuf -I../gdk-pixbuf      \
44         -DGDK_DISABLE_DEPRECATED                        \
45         -DGTK_DISABLE_DEPRECATED                        \
46         -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED            \
47         -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED          \
48         $(GTK_DEBUG_FLAGS)                              \
49         $(GTK_DEP_CFLAGS)                               \
50         $(gtk_clipboard_dnd_c_sources_CFLAGS)           \
51         $(INCLUDED_IMMODULE_DEFINE)
52
53 gtarget=$(gdktarget)
54
55 if PLATFORM_WIN32
56 no_undefined = -no-undefined
57 endif
58
59 if OS_WIN32
60 gtk_def = gtk.def
61 gtk_win32_symbols = -export-symbols $(srcdir)/gtk.def
62
63 gtk_win32_res = gtk-win32-res.o
64 gtk_win32_res_ldflag = -Wl,gtk-win32-res.o
65
66 gtk-win32-res.o : gtk-win32.rc
67         $(WINDRES) gtk-win32.rc $@
68
69 install-def-file: gtk.def
70         $(INSTALL) $(srcdir)/gtk.def $(DESTDIR)$(libdir)/gtk-win32-2.0.def
71 uninstall-def-file:
72         -rm $(DESTDIR)$(libdir)/gtk-win32-2.0.def
73 else
74 install-def-file:
75 uninstall-def-file:
76 endif
77
78 if MS_LIB_AVAILABLE
79 noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
80
81 gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
82         lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
83
84 install-ms-lib:
85         $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
86
87 uninstall-ms-lib:
88         -rm $(DESTDIR)$(libdir)/gtk-win32-$(GTK_API_VERSION).lib
89 else
90 install-ms-lib:
91 uninstall-ms-lib:
92 endif
93
94 # This places the generated .def file in srcdir, since it is expected to be there.
95 # (The one from a tarball is)
96 gtk.def: gtk.symbols
97         (echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gtk.symbols | sed -e '/^$$/d' -e 's/^/    /' -e 's/G_GNUC_[^ ]*//g') > $(srcdir)/gtk.def
98
99 gtkalias.h: gtk.symbols
100           $(PERL) $(srcdir)/makegtkalias.pl < $(srcdir)/gtk.symbols > gtkalias.h
101 gtkaliasdef.c: gtk.symbols
102           $(PERL) $(srcdir)/makegtkalias.pl -def < $(srcdir)/gtk.symbols > gtkaliasdef.c
103
104 check-aliases:
105         @$(TESTS_ENVIRONMENT) $(srcdir)/aliasfilescheck.sh
106
107 .PHONY: check-aliases
108
109 TESTS_ENVIRONMENT = srcdir="$(srcdir)" gtk_all_c_sources="$(gtk_all_c_sources)"
110 TESTS = aliasfilescheck.sh
111 if OS_LINUX
112 TESTS += abicheck.sh pltcheck.sh
113 endif
114
115 libgtkincludedir = $(includedir)/gtk-2.0/gtk
116 libadd =                                                                \
117         $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
118         $(top_builddir)/gdk/$(gdktargetlib)                             \
119         $(GTK_DEP_LIBS)
120 deps =
121
122 # libtool stuff: set version and export symbols for resolving
123 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
124 # we use the general approach here
125 libtool_opts =                                                  \
126   -version-info $(LT_VERSION_INFO)                              \
127   -export-dynamic $(no_undefined) $(LIBTOOL_EXPORT_OPTIONS)     \
128   -rpath $(libdir) $(libgtk_target_ldflags)
129
130
131 included-modules:
132 if HAVE_INCLUDED_IMMMODULES
133         @cd $(top_builddir)/modules/input && $(MAKE) $(AM_MAKEFLAGS) included-modules
134
135 libadd += $(INCLUDED_IMMODULE_OBJ)
136 deps += $(INCLUDED_IMMODULE_OBJ)
137
138 $(INCLUDED_IMMODULE_OBJ): included-modules
139         @true
140 endif
141
142 .PHONY: included-modules
143
144 #
145 # setup source file variables
146 #
147
148 # GTK+ header files for public installation (non-generated, or generated
149 # by configure)
150 gtk_public_h_sources =          \
151         gtk.h                   \
152         gtkaboutdialog.h        \
153         gtkaccelgroup.h         \
154         gtkaccellabel.h         \
155         gtkaccelmap.h           \
156         gtkaccessible.h         \
157         gtkaction.h             \
158         gtkactiongroup.h        \
159         gtkactivatable.h        \
160         gtkadjustment.h         \
161         gtkalignment.h          \
162         gtkarrow.h              \
163         gtkaspectframe.h        \
164         gtkassistant.h          \
165         gtkbbox.h               \
166         gtkbin.h                \
167         gtkbindings.h           \
168         gtkbox.h                \
169         gtkbuilder.h            \
170         gtkbuildable.h          \
171         gtkbutton.h             \
172         gtkcalendar.h           \
173         gtkcelleditable.h       \
174         gtkcelllayout.h         \
175         gtkcellrenderer.h       \
176         gtkcellrendereraccel.h  \
177         gtkcellrenderercombo.h  \
178         gtkcellrendererpixbuf.h \
179         gtkcellrendererprogress.h \
180         gtkcellrendererspin.h   \
181         gtkcellrendererspinner.h\
182         gtkcellrenderertext.h   \
183         gtkcellrenderertoggle.h \
184         gtkcellview.h           \
185         gtkcheckbutton.h        \
186         gtkcheckmenuitem.h      \
187         gtkclipboard.h          \
188         gtkcolorbutton.h        \
189         gtkcolorsel.h           \
190         gtkcolorseldialog.h     \
191         gtkcombobox.h           \
192         gtkcomboboxentry.h      \
193         gtkcontainer.h          \
194         gtkdebug.h              \
195         gtkdialog.h             \
196         gtkdnd.h                \
197         gtkdrawingarea.h        \
198         gtkeditable.h           \
199         gtkentry.h              \
200         gtkentrybuffer.h        \
201         gtkentrycompletion.h    \
202         gtkenums.h              \
203         gtkeventbox.h           \
204         gtkexpander.h           \
205         gtkextendedlayout.h     \
206         gtkfilechooser.h        \
207         gtkfilechooserbutton.h  \
208         gtkfilechooserdialog.h  \
209         gtkfilechooserwidget.h  \
210         gtkfilefilter.h         \
211         gtkfixed.h              \
212         gtkfontbutton.h         \
213         gtkfontsel.h            \
214         gtkframe.h              \
215         gtkgc.h                 \
216         gtkhandlebox.h          \
217         gtkhbbox.h              \
218         gtkhbox.h               \
219         gtkhpaned.h             \
220         gtkhruler.h             \
221         gtkhscale.h             \
222         gtkhscrollbar.h         \
223         gtkhseparator.h         \
224         gtkhsv.h                \
225         gtkiconfactory.h        \
226         gtkicontheme.h          \
227         gtkiconview.h           \
228         gtkimage.h              \
229         gtkimagemenuitem.h      \
230         gtkimcontext.h          \
231         gtkimcontextsimple.h    \
232         gtkimmodule.h           \
233         gtkimmulticontext.h     \
234         gtkinfobar.h            \
235         gtkinvisible.h          \
236         gtkitem.h               \
237         gtklabel.h              \
238         gtklayout.h             \
239         gtklinkbutton.h         \
240         gtkliststore.h          \
241         gtkmain.h               \
242         gtkmenu.h               \
243         gtkmenubar.h            \
244         gtkmenuitem.h           \
245         gtkmenushell.h          \
246         gtkmenutoolbutton.h     \
247         gtkmessagedialog.h      \
248         gtkmisc.h               \
249         gtkmodules.h            \
250         gtkmountoperation.h     \
251         gtknotebook.h           \
252         gtkobject.h             \
253         gtkorientable.h         \
254         gtkpagesetup.h          \
255         gtkpaned.h              \
256         gtkpapersize.h          \
257         gtkplug.h               \
258         gtkprintcontext.h       \
259         gtkprintoperation.h     \
260         gtkprintoperationpreview.h      \
261         gtkprintsettings.h      \
262         gtkprivate.h            \
263         gtkprogressbar.h        \
264         gtkradioaction.h        \
265         gtkradiobutton.h        \
266         gtkradiomenuitem.h      \
267         gtkradiotoolbutton.h    \
268         gtkrange.h              \
269         gtkrc.h                 \
270         gtkrecentaction.h       \
271         gtkrecentchooser.h      \
272         gtkrecentchooserdialog.h \
273         gtkrecentchoosermenu.h  \
274         gtkrecentchooserwidget.h \
275         gtkrecentfilter.h       \
276         gtkrecentmanager.h      \
277         gtkruler.h              \
278         gtkscale.h              \
279         gtkscalebutton.h        \
280         gtkscrollbar.h          \
281         gtkscrolledwindow.h     \
282         gtkselection.h          \
283         gtkseparator.h          \
284         gtkseparatormenuitem.h  \
285         gtkseparatortoolitem.h  \
286         gtkshow.h               \
287         gtksettings.h           \
288         gtksizegroup.h          \
289         gtksocket.h             \
290         gtkspinbutton.h         \
291         gtkspinner.h            \
292         gtkstatusbar.h          \
293         gtkstatusicon.h         \
294         gtkstock.h              \
295         gtkstyle.h              \
296         gtktable.h              \
297         gtktearoffmenuitem.h    \
298         gtktestutils.h          \
299         gtktextbuffer.h         \
300         gtktextbufferrichtext.h \
301         gtktextchild.h          \
302         gtktextdisplay.h        \
303         gtktextiter.h           \
304         gtktextmark.h           \
305         gtktexttag.h            \
306         gtktexttagtable.h       \
307         gtktextview.h           \
308         gtktoggleaction.h       \
309         gtktogglebutton.h       \
310         gtktoggletoolbutton.h   \
311         gtktoolbar.h            \
312         gtktoolbutton.h         \
313         gtktoolitem.h           \
314         gtktoolitemgroup.h      \
315         gtktoolpalette.h        \
316         gtktoolshell.h          \
317         gtktooltip.h            \
318         gtktreednd.h            \
319         gtktreemodel.h          \
320         gtktreemodelfilter.h    \
321         gtktreemodelsort.h      \
322         gtktreeselection.h      \
323         gtktreesortable.h       \
324         gtktreestore.h          \
325         gtktreeview.h           \
326         gtktreeviewcolumn.h     \
327         gtktypeutils.h          \
328         gtkuimanager.h          \
329         gtkvbbox.h              \
330         gtkvbox.h               \
331         gtkviewport.h           \
332         gtkvolumebutton.h       \
333         gtkvpaned.h             \
334         gtkvruler.h             \
335         gtkvscale.h             \
336         gtkvscrollbar.h         \
337         gtkvseparator.h         \
338         gtkwidget.h             \
339         gtkwindow.h
340
341 if OS_UNIX
342 gtk_unix_print_public_h_sources =    \
343         gtkpagesetupunixdialog.h        \
344         gtkprintunixdialog.h            \
345         gtkprinter.h                    \
346         gtkprintjob.h                   \
347         gtkunixprint.h
348 endif
349
350 # Installed header files without compatibility guarantees
351 # that are not included in gtk/gtk.h
352 gtk_semi_private_h_sources =    \
353         gtktextlayout.h
354
355 # GTK+ header files that don't get installed
356 gtk_private_h_sources =         \
357         gtkquery.h              \
358         gtksearchengine.h       \
359         gtksearchenginesimple.h \
360         gtkdndcursors.h         \
361         gtkentryprivate.h       \
362         gtkbuilderprivate.h     \
363         gtkcustompaperunixdialog.h\
364         gtkfilechooserdefault.h \
365         gtkfilechooserembed.h   \
366         gtkfilechooserentry.h   \
367         gtkfilechooserprivate.h \
368         gtkfilechoosersettings.h \
369         gtkfilechooserutils.h   \
370         gtkfilesystem.h         \
371         gtkfilesystemmodel.h    \
372         gtkiconcache.h          \
373         gtkintl.h               \
374         gtkkeyhash.h            \
375         gtkmnemonichash.h       \
376         gtkmountoperationprivate.h \
377         gtkpathbar.h            \
378         gtkplugprivate.h        \
379         gtkprintoperation-private.h\
380         gtkprintutils.h         \
381         gtkrbtree.h             \
382         gtkrecentchooserdefault.h \
383         gtkrecentchooserprivate.h \
384         gtkrecentchooserutils.h \
385         gtksocketprivate.h      \
386         gtktextbtree.h          \
387         gtktextbufferserialize.h\
388         gtktextchildprivate.h   \
389         gtktextiterprivate.h    \
390         gtktextmarkprivate.h    \
391         gtktextsegment.h        \
392         gtktexttagprivate.h     \
393         gtktexttypes.h          \
394         gtktextutil.h           \
395         gtkthemes.h             \
396         gtktoggleactionprivate.h\
397         gtktoolpaletteprivate.h \
398         gtktreedatalist.h       \
399         gtktreeprivate.h        \
400         gtkwindow-decorate.h    \
401         $(gtk_clipboard_dnd_h_sources)
402
403 # GTK+ C sources to build the library from
404 gtk_base_c_sources =            \
405         gtkquery.c              \
406         gtksearchengine.c       \
407         gtksearchenginesimple.c \
408         fnmatch.c               \
409         gtkaboutdialog.c        \
410         gtkaccelgroup.c         \
411         gtkaccellabel.c         \
412         gtkaccelmap.c           \
413         gtkaccessible.c         \
414         gtkaction.c             \
415         gtkactiongroup.c        \
416         gtkactivatable.c        \
417         gtkadjustment.c         \
418         gtkalignment.c          \
419         gtkarrow.c              \
420         gtkaspectframe.c        \
421         gtkassistant.c          \
422         gtkbbox.c               \
423         gtkbin.c                \
424         gtkbindings.c           \
425         gtkbox.c                \
426         gtkbuildable.c          \
427         gtkbuilder.c            \
428         gtkbuilderparser.c      \
429         gtkbutton.c             \
430         gtkcalendar.c           \
431         gtkcelleditable.c       \
432         gtkcelllayout.c         \
433         gtkcellrenderer.c       \
434         gtkcellrendereraccel.c  \
435         gtkcellrenderercombo.c  \
436         gtkcellrendererpixbuf.c \
437         gtkcellrendererprogress.c \
438         gtkcellrendererspin.c   \
439         gtkcellrendererspinner.c\
440         gtkcellrenderertext.c   \
441         gtkcellrenderertoggle.c \
442         gtkcellview.c           \
443         gtkcheckbutton.c        \
444         gtkcheckmenuitem.c      \
445         gtkcolorbutton.c        \
446         gtkcolorsel.c           \
447         gtkcolorseldialog.c     \
448         gtkcombobox.c           \
449         gtkcomboboxentry.c      \
450         gtkcontainer.c          \
451         gtkdialog.c             \
452         gtkdrawingarea.c        \
453         gtkeditable.c           \
454         gtkentry.c              \
455         gtkentrybuffer.c        \
456         gtkentrycompletion.c    \
457         gtkeventbox.c           \
458         gtkexpander.c           \
459         gtkextendedlayout.c     \
460         gtkfilechooser.c        \
461         gtkfilechooserbutton.c  \
462         gtkfilechooserdefault.c \
463         gtkfilechooserdialog.c  \
464         gtkfilechooserembed.c   \
465         gtkfilechooserentry.c   \
466         gtkfilechoosersettings.c \
467         gtkfilechooserutils.c   \
468         gtkfilechooserwidget.c  \
469         gtkfilefilter.c         \
470         gtkfilesystem.c         \
471         gtkfilesystemmodel.c    \
472         gtkfixed.c              \
473         gtkfontbutton.c         \
474         gtkfontsel.c            \
475         gtkframe.c              \
476         gtkgc.c                 \
477         gtkhandlebox.c          \
478         gtkhbbox.c              \
479         gtkhbox.c               \
480         gtkhpaned.c             \
481         gtkhruler.c             \
482         gtkhscale.c             \
483         gtkhscrollbar.c         \
484         gtkhseparator.c         \
485         gtkhsv.c                \
486         gtkiconcache.c          \
487         gtkiconcachevalidator.c \
488         gtkiconfactory.c        \
489         gtkicontheme.c          \
490         gtkiconview.c           \
491         gtkimage.c              \
492         gtkimagemenuitem.c      \
493         gtkimcontext.c          \
494         gtkimcontextsimple.c    \
495         gtkimmodule.c           \
496         gtkimmulticontext.c     \
497         gtkinfobar.c            \
498         gtkinputdialog.c        \
499         gtkinvisible.c          \
500         gtkitem.c               \
501         gtkkeyhash.c            \
502         gtklabel.c              \
503         gtklayout.c             \
504         gtklinkbutton.c         \
505         gtkliststore.c          \
506         gtkmain.c               \
507         gtkmarshal.c            \
508         gtkmarshalers.c         \
509         gtkmenu.c               \
510         gtkmenubar.c            \
511         gtkmenuitem.c           \
512         gtkmenushell.c          \
513         gtkmenutoolbutton.c     \
514         gtkmessagedialog.c      \
515         gtkmisc.c               \
516         gtkmnemonichash.c       \
517         gtkmodules.c            \
518         gtkmountoperation.c     \
519         gtknotebook.c           \
520         gtkobject.c             \
521         gtkorientable.c         \
522         gtkpagesetup.c          \
523         gtkpaned.c              \
524         gtkpapersize.c          \
525         gtkpathbar.c            \
526         gtkplug.c               \
527         gtkprintcontext.c       \
528         gtkprintoperation.c     \
529         gtkprintoperationpreview.c      \
530         gtkprintsettings.c      \
531         gtkprintutils.c         \
532         gtkprogressbar.c        \
533         gtkradioaction.c        \
534         gtkradiobutton.c        \
535         gtkradiomenuitem.c      \
536         gtkradiotoolbutton.c    \
537         gtkrange.c              \
538         gtkrbtree.c             \
539         gtkrc.c                 \
540         gtkrecentaction.c       \
541         gtkrecentchooserdefault.c \
542         gtkrecentchooserdialog.c \
543         gtkrecentchoosermenu.c  \
544         gtkrecentchooserwidget.c \
545         gtkrecentchooserutils.c \
546         gtkrecentchooser.c      \
547         gtkrecentfilter.c       \
548         gtkrecentmanager.c      \
549         gtkruler.c              \
550         gtkscale.c              \
551         gtkscalebutton.c        \
552         gtkscrollbar.c          \
553         gtkscrolledwindow.c     \
554         gtkselection.c          \
555         gtkseparator.c          \
556         gtkseparatormenuitem.c  \
557         gtkseparatortoolitem.c  \
558         gtksettings.c           \
559         gtksizegroup.c          \
560         gtkshow.c               \
561         gtksocket.c             \
562         gtkspinbutton.c         \
563         gtkspinner.c            \
564         gtkstatusbar.c          \
565         gtkstatusicon.c         \
566         gtkstock.c              \
567         gtkstyle.c              \
568         gtktable.c              \
569         gtktearoffmenuitem.c    \
570         gtktestutils.c          \
571         gtktextbtree.c          \
572         gtktextbuffer.c         \
573         gtktextbufferrichtext.c \
574         gtktextbufferserialize.c\
575         gtktextchild.c          \
576         gtktextdisplay.c        \
577         gtktextiter.c           \
578         gtktextlayout.c         \
579         gtktextmark.c           \
580         gtktextsegment.c        \
581         gtktexttag.c            \
582         gtktexttagtable.c       \
583         gtktexttypes.c          \
584         gtktextutil.c           \
585         gtktextview.c           \
586         gtkthemes.c             \
587         gtktoggleaction.c       \
588         gtktogglebutton.c       \
589         gtktoggletoolbutton.c   \
590         gtktoolbar.c            \
591         gtktoolbutton.c         \
592         gtktoolitem.c           \
593         gtktoolitemgroup.c              \
594         gtktoolpalette.c        \
595         gtktoolshell.c          \
596         gtktooltip.c            \
597         gtktreedatalist.c       \
598         gtktreednd.c            \
599         gtktreemodel.c          \
600         gtktreemodelfilter.c    \
601         gtktreemodelsort.c      \
602         gtktreeselection.c      \
603         gtktreesortable.c       \
604         gtktreestore.c          \
605         gtktreeview.c           \
606         gtktreeviewcolumn.c     \
607         gtktypebuiltins.c       \
608         gtktypeutils.c          \
609         gtkuimanager.c          \
610         gtkvbbox.c              \
611         gtkvbox.c               \
612         gtkvolumebutton.c       \
613         gtkviewport.c           \
614         gtkvpaned.c             \
615         gtkvruler.c             \
616         gtkvscale.c             \
617         gtkvscrollbar.c         \
618         gtkvseparator.c         \
619         gtkwidget.c             \
620         gtkwindow-decorate.c    \
621         gtkwindow.c             \
622         $(gtk_clipboard_dnd_c_sources)
623
624 # Broken
625 gtk_public_h_sources += \
626         gtktext.h               \
627         gtktree.h               \
628         gtktreeitem.h
629 gtk_base_c_sources += \
630         gtktext.c               \
631         gtktree.c               \
632         gtktreeitem.c
633
634 # Deprecated
635 gtk_public_h_sources += \
636         gtkclist.h              \
637         gtkcombo.h              \
638         gtkctree.h              \
639         gtkcurve.h              \
640         gtkfilesel.h            \
641         gtkgamma.h              \
642         gtkinputdialog.h        \
643         gtkitemfactory.h        \
644         gtklist.h               \
645         gtklistitem.h           \
646         gtkoldeditable.h        \
647         gtkoptionmenu.h         \
648         gtkpixmap.h             \
649         gtkpreview.h            \
650         gtkprogress.h           \
651         gtksignal.h             \
652         gtktipsquery.h          \
653         gtktooltips.h
654 gtk_base_c_sources += \
655         gtkclist.c              \
656         gtkcombo.c              \
657         gtkctree.c              \
658         gtkcurve.c              \
659         gtkfilesel.c            \
660         gtkgamma.c              \
661         gtkitemfactory.c        \
662         gtklist.c               \
663         gtklistitem.c           \
664         gtkoldeditable.c        \
665         gtkoptionmenu.c         \
666         gtkpixmap.c             \
667         gtkpreview.c            \
668         gtkprogress.c           \
669         gtksignal.c             \
670         gtktipsquery.c          \
671         gtktooltips.c
672
673 gtk_c_sources = $(gtk_base_c_sources)
674 gtk_all_c_sources = $(gtk_base_c_sources)
675
676 gtk_os_unix_c_sources = \
677         gtkcustompaperunixdialog.c      \
678         gtkpagesetupunixdialog.c        \
679         gtkprinter.c                    \
680         gtkprinteroption.c              \
681         gtkprinteroptionset.c           \
682         gtkprinteroptionwidget.c        \
683         gtkprintjob.c                   \
684         gtkprintoperation-unix.c        \
685         gtkprintunixdialog.c            \
686         gtkprintbackend.c               \
687         gtksearchenginebeagle.c         \
688         gtksearchenginetracker.c
689 gtk_all_c_sources += $(gtk_os_unix_c_sources)
690 if OS_UNIX
691 gtk_private_h_sources += \
692         gtkiconcachevalidator.h         \
693         gtkprintbackend.h               \
694         gtkprinter-private.h            \
695         gtkprinteroption.h              \
696         gtkprinteroptionset.h           \
697         gtkprinteroptionwidget.h        \
698         gtksearchenginebeagle.h         \
699         gtksearchenginetracker.h
700 gtk_c_sources += $(gtk_os_unix_c_sources)
701 endif
702
703 gtk_os_win32_c_sources = \
704         gtkprint-win32.c                \
705         gtkprintoperation-win32.c
706 gtk_all_c_sources += $(gtk_os_win32_c_sources)
707 if OS_WIN32
708 gtk_private_h_sources += gtkprint-win32.h
709 gtk_c_sources += $(gtk_os_win32_c_sources)
710 endif
711
712 gtk_use_x11_c_sources = \
713         gtkplug-x11.c   \
714         gtksocket-x11.c \
715         gtkxembed.c     \
716         gtktrayicon-x11.c \
717         gtkmountoperation-x11.c
718 gtk_use_win32_c_sources = \
719         gtkplug-win32.c   \
720         gtksocket-win32.c \
721         gtkwin32embed.c   \
722         gtkwin32embedwidget.c \
723         gtkmountoperation-stub.c
724 gtk_use_quartz_c_sources =      \
725         gtksearchenginequartz.c \
726         gtkplug-stub.c          \
727         gtksocket-stub.c        \
728         gtkmountoperation-stub.c
729 gtk_use_stub_c_sources = \
730         gtkplug-stub.c   \
731         gtksocket-stub.c \
732         gtkmountoperation-stub.c
733 gtk_all_c_sources += $(gtk_use_x11_c_sources) $(gtk_use_win32_c_sources) $(gtk_use_quartz_c_sources) $(gtk_use_stub_c_sources)
734 if USE_X11
735 gtk_private_h_sources += gtkxembed.h gtktrayicon.h xembed.h
736 gtk_c_sources += $(gtk_use_x11_c_sources)
737 else
738 if USE_WIN32
739 gtk_private_h_sources += gtkwin32embed.h gtkwin32embedwidget.h
740 gtk_c_sources += $(gtk_use_win32_c_sources)
741 else
742 if USE_QUARTZ
743 gtk_private_h_sources += gtksearchenginequartz.h
744 gtk_c_sources += $(gtk_use_quartz_c_sources)
745 gtk_use_quartz_c_sources_CFLAGS = "-xobjective-c"
746 else
747 gtk_c_sources += $(gtk_use_stub_c_sources)
748 endif
749 endif
750 endif
751
752 if USE_QUARTZ
753 gtk_clipboard_dnd_c_sources = gtkclipboard-quartz.c gtkdnd-quartz.c gtkquartz.c
754 gtk_clipboard_dnd_h_sources = gtkquartz.h
755 gtk_clipboard_dnd_c_sources_CFLAGS = "-xobjective-c"
756 else
757 gtk_clipboard_dnd_c_sources = gtkclipboard.c gtkdnd.c
758 gtk_clipboard_dnd_c_sources_CFLAGS =
759 endif
760 EXTRA_DIST += gtkquartz.h
761
762 # we use our own built_sources variable rules to avoid automake's
763 # BUILT_SOURCES oddities
764 # we generate frequently rebuild files piggyback on a stamp file, so sources
765 # depending on them only get rebuild when the built source actually changed
766 # content
767
768 # built sources that get installed with the header files
769 gtk_built_public_sources =                      \
770         gtkmarshal.h                            \
771         gtktypebuiltins.h
772
773 # built headers that don't get installed
774 gtk_built_private_headers =                     \
775         gtkalias.h                              \
776         gtkmarshalers.h                         \
777         gtkbuiltincache.h                       \
778         gtkimcontextsimpleseqs.h
779
780 gtk_built_sources =                             \
781         gtkaliasdef.c                           \
782         gtktypebuiltins.c                       \
783         gtktypefuncs.c                          \
784         gtkmarshalers.c                         \
785         gtkmarshal.c                            \
786         ${gtk_built_private_headers}            \
787         ${gtk_built_public_sources}
788
789 stamp_files =                                   \
790         stamp-gtkmarshalers.h                   \
791         stamp-gtkmarshal.h                      \
792         stamp-gtktypebuiltins.h                 \
793         stamp-icons
794
795 # non-header sources (headers should be specified in the above variables)
796 # that don't serve as direct make target sources, i.e. they don't have
797 # their own .lo rules and don't get publically installed
798 gtk_extra_sources =                             \
799         paper_names.c                           \
800         paper_names_offsets.c                   \
801         gen-paper-names.c                       \
802         gtkstatusicon-quartz.c                  \
803         gtk.symbols                             \
804         gtkversion.h.in                         \
805         gtkmarshalers.list                      \
806         gtkmarshal.list
807
808 #
809 # setup GTK+ sources and their dependencies
810 #
811 MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files) $(GENERATED_ICONS) stock-icons/icon-theme.cache
812 EXTRA_HEADERS =
813 EXTRA_DIST += $(gtk_private_h_sources) $(gtk_extra_sources)
814 EXTRA_DIST += $(gtk_built_sources)
815 EXTRA_DIST += $(STOCK_ICONS)
816
817 #
818 # rules to generate built sources
819 #
820 # setup autogeneration dependencies
821 gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc xgen-gtfsrc.c xgen-gtf
822 CLEANFILES = $(gen_sources)
823
824 BUILT_SOURCES = $(gtk_built_sources)
825
826 # all autogenerated files need to be generated in the srcdir,
827 # so old versions get remade and are not confused with newer
828 # versions in the build dir. thus a development setup requires
829 # srcdir to be writable, passing --disable-rebuilds to
830 # ../configure will supress all autogeneration rules.
831 gtkmarshalers.h: stamp-gtkmarshalers.h
832         @true
833 stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list
834         $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --header >> xgen-gmlh \
835         && (cmp -s xgen-gmlh gtkmarshalers.h || cp xgen-gmlh gtkmarshalers.h) \
836         && rm -f xgen-gmlh \
837         && echo timestamp > $(@F)       
838 gtkmarshalers.c: @REBUILD@ gtkmarshalers.list
839         (echo "#include \"gtkmarshalers.h\""; \
840          echo "#include \"gtkalias.h\""; \
841          $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --body) >> xgen-gmlc \
842         && cp xgen-gmlc gtkmarshalers.c \
843         && rm -f xgen-gmlc
844
845 gtkmarshal.h: stamp-gtkmarshal.h
846         @true
847 stamp-gtkmarshal.h: @REBUILD@ gtkmarshal.list
848         echo "#ifndef GTK_DISABLE_DEPRECATED" > xgen-gmh                                        \
849         && $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --header >> xgen-gmh \
850         && echo "#endif /* GTK_DISABLE_DEPRECATED */" >> xgen-gmh \
851         && (cmp -s xgen-gmh gtkmarshal.h || cp xgen-gmh gtkmarshal.h) \
852         && rm -f xgen-gmh \
853         && echo timestamp > $(@F)
854 gtkmarshal.c: @REBUILD@ gtkmarshal.list
855         (echo "#include \"gtkmarshal.h\""; \
856          echo "#include \"gtkalias.h\""; \
857          $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --body; \
858          echo "#define __gtk_marshal_MARSHAL_C__"; \
859          echo "#include \"gtkaliasdef.c\"") >> xgen-gmc \
860         && cp xgen-gmc gtkmarshal.c \
861         && rm -f xgen-gmc
862
863 gtktypebuiltins.h: stamp-gtktypebuiltins.h
864         @true
865 stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.h.template
866         ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.h.template \
867                 $(gtk_public_h_sources) ) >> xgen-gtbh \
868         && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h ) \
869         && rm -f xgen-gtbh \
870         && echo timestamp > $(@F)
871 gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.c.template
872         ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.c.template \
873                 $(gtk_public_h_sources) ) > xgen-gtbc \
874         && cp xgen-gtbc gtktypebuiltins.c  \
875         && rm -f xgen-gtbc
876
877 gtktypefuncs.c: @REBUILD@ $(top_srcdir)/gtk/*.h $(top_srcdir)/gdk/*.h Makefile
878         echo '#include <gtk/gtk.h>' > xgen-gtfsrc.c && \
879           ${CPP} $(DEFS) $(INCLUDES) -DGTK_ENABLE_BROKEN $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \
880           grep -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \
881           sort | uniq | \
882           sed '{ s/^/*tp++ = /; s/$$/();/; }' > xgen-gtf \
883         && cp xgen-gtf $@ && rm -f xgen-gtf
884 gtktestutils.c: gtktypefuncs.c
885
886 # target platform:
887 lib_LTLIBRARIES = $(gtktargetlib)
888
889 gtkincludedir = $(includedir)/gtk-2.0/gtk
890 gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_semi_private_h_sources) $(gtk_built_public_sources) gtkversion.h
891
892 gtkunixprintincludedir = $(includedir)/gtk-unix-print-2.0/gtk
893 gtkunixprintinclude_HEADERS = $(gtk_unix_print_public_h_sources)
894
895 libgtk_x11_2_0_la_SOURCES = $(gtk_c_sources)
896 libgtk_win32_2_0_la_SOURCES = $(gtk_c_sources)
897 libgtk_quartz_2_0_la_SOURCES = $(gtk_c_sources)
898 libgtk_directfb_2_0_la_SOURCES = $(gtk_c_sources)
899
900 libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts)
901 libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid
902 libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts)
903 libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts)
904
905 libgtk_x11_2_0_la_LIBADD = $(libadd)
906 libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32
907 libgtk_quartz_2_0_la_LIBADD = $(libadd)
908 libgtk_directfb_2_0_la_LIBADD = $(libadd)
909
910 libgtk_x11_2_0_la_DEPENDENCIES = $(deps)
911 libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res) $(deps)
912 libgtk_quartz_2_0_la_DEPENDENCIES = $(deps)
913 libgtk_directfb_2_0_la_DEPENDENCIES = $(deps)
914
915 if USE_WIN32
916 libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols)
917 endif
918 EXTRA_LTLIBRARIES = libgtk-x11-2.0.la libgtk-win32-2.0.la libgtk-quartz-2.0.la libgtk-directfb-2.0.la
919
920 install-exec-hook: 
921 if DISABLE_EXPLICIT_DEPS
922         $(SHELL) $(top_srcdir)/sanitize-la.sh $(DESTDIR)$(libdir)/$(gtktargetlib)
923 endif
924
925 if USE_QUARTZ
926 install-mac-key-theme:
927         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key
928         $(INSTALL_DATA) $(srcdir)/gtkrc.key.mac $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key/gtkrc
929 uninstall-mac-key-theme:
930         rm -f $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key/gtkrc
931 else
932 install-mac-key-theme:
933 uninstall-mac-key-theme:
934 endif
935
936 # Install a RC file for the default GTK+ theme, and key themes
937 install-data-local: install-ms-lib install-def-file install-mac-key-theme
938         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0
939         $(INSTALL_DATA) $(srcdir)/gtkrc.default $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
940         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key
941         $(INSTALL_DATA) $(srcdir)/gtkrc.key.default $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
942         $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key
943         $(INSTALL_DATA) $(srcdir)/gtkrc.key.emacs $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
944
945 uninstall-local: uninstall-ms-lib uninstall-def-file uninstall-mac-key-theme
946         rm -f $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
947         rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
948         rm -f $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
949
950 # if srcdir!=builddir, clean out maintainer-clean files from builddir
951 # this allows dist to pass.
952 distclean-local:
953         if test $(srcdir) != .; then \
954           rm -f $(MAINTAINERCLEANFILES); \
955         fi
956
957 DEPS = $(gtktargetlib) $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la $(top_builddir)/gdk/$(gdktargetlib)
958
959 TEST_DEPS = $(DEPS) gtk.immodules
960
961 LDADDS =                                                                \
962         $(gtktargetlib)                                                 \
963         $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
964         $(top_builddir)/gdk/$(gdktargetlib)
965
966 if HAVE_INTROSPECTION
967 BUILT_GIRSOURCES =
968
969 introspection_files = \
970     $(gtkinclude_HEADERS) \
971     $(gtk_all_c_sources) \
972     gtktypebuiltins.h \
973     gtktypebuiltins.c
974
975 Gtk-2.0.gir: $(INTROSPECTION_SCANNER) $(gtktargetlib) Makefile
976         $(INTROSPECTION_SCANNER) -v \
977                 --namespace Gtk --nsversion=2.0 --strip-prefix=Gtk \
978                 $(INCLUDES) \
979                 --add-include-path=../gdk \
980                 --add-include-path=../gdk-pixbuf \
981                 --include=Gdk-2.0 \
982                 --include=Atk-1.0 \
983                 --library=$(gtktargetlib) \
984                 --libtool="$(LIBTOOL)" \
985                 --output $@ \
986                 -UGDK_DISABLE_DEPRECATED \
987                 -UGTK_DISABLE_DEPRECATED \
988                 -DGTK_TEXT_USE_INTERNAL_UNSUPPORTED_API \
989                 $(addprefix $(srcdir)/, $(introspection_files))
990 BUILT_GIRSOURCES += Gtk-2.0.gir
991
992 girdir = $(datadir)/gir-1.0
993 gir_DATA = $(BUILT_GIRSOURCES)
994
995 typelibsdir = $(libdir)/girepository-1.0/
996
997 typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib)
998
999 %.typelib: %.gir $(INTROSPECTION_COMPILER)
1000         $(INTROSPECTION_COMPILER) --includedir=$(srcdir) --includedir=. --includedir=../gdk-pixbuf --includedir=../gdk $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F)
1001
1002 CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA)
1003 endif
1004
1005 #
1006 # Installed tools
1007 #
1008 bin_PROGRAMS = \
1009         gtk-query-immodules-2.0 \
1010         gtk-update-icon-cache
1011
1012 bin_SCRIPTS = gtk-builder-convert
1013
1014 if OS_WIN32
1015
1016 # Workaround for UAC silliness: programs with "update" in their name
1017 # are believed to be installers and require elevated privileges to be
1018 # used... Use a manifest file to tell Windows that
1019 # gtk-update-icon-cache.exe doesn't require any special privileges.
1020
1021 GTK_UPDATE_ICON_CACHE_MANIFEST = gtk-update-icon-cache.exe.manifest
1022
1023 bin_SCRIPTS += \
1024         $(GTK_UPDATE_ICON_CACHE_MANIFEST)
1025
1026 gtk-update-icon-cache.exe.manifest:
1027         (echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' ; \
1028          echo '<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">' ; \
1029          echo '  <assemblyIdentity version="1.0.0.0"' ; \
1030          echo '     processorArchitecture="'$(LIB_EXE_MACHINE_FLAG)'"' ; \
1031          echo '     name="gtk-update-icon-cache.exe"' ; \
1032          echo '     type="win32"/>' ; \
1033          echo '  <!-- Identify the application security requirements. -->' ; \
1034          echo '  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">' ; \
1035          echo '    <security>' ; \
1036          echo '      <requestedPrivileges>' ; \
1037          echo '        <requestedExecutionLevel' ; \
1038          echo '          level="asInvoker"' ; \
1039          echo '          uiAccess="false"/>' ; \
1040          echo '        </requestedPrivileges>' ; \
1041          echo '       </security>' ; \
1042          echo '  </trustInfo>' ; \
1043          echo '</assembly>' ) >$@
1044
1045 endif
1046
1047 gtk_query_immodules_2_0_DEPENDENCIES = $(DEPS)
1048 gtk_query_immodules_2_0_LDADD = $(LDADDS)
1049
1050 gtk_query_immodules_2_0_SOURCES = queryimmodules.c
1051
1052 gtk_update_icon_cache_LDADD = $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la
1053
1054 gtk_update_icon_cache_SOURCES = \
1055         updateiconcache.c 
1056
1057 .PHONY: files test test-debug
1058
1059 files:
1060         @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
1061           echo $$p; \
1062         done
1063
1064 STOCK_ICONS = \
1065         stock-icons/16/document-open-recent.png         \
1066         stock-icons/16/gtk-about.png                    \
1067         stock-icons/16/gtk-add.png                      \
1068         stock-icons/16/gtk-cdrom.png                    \
1069         stock-icons/16/gtk-close.png                    \
1070         stock-icons/16/gtk-connect.png                  \
1071         stock-icons/16/gtk-convert.png                  \
1072         stock-icons/16/gtk-copy.png                     \
1073         stock-icons/16/gtk-cut.png                      \
1074         stock-icons/16/gtk-delete.png                   \
1075         stock-icons/16/gtk-directory.png                \
1076         stock-icons/16/gtk-disconnect.png               \
1077         stock-icons/16/gtk-edit.png                     \
1078         stock-icons/16/gtk-execute.png                  \
1079         stock-icons/16/gtk-file.png                     \
1080         stock-icons/16/gtk-find-and-replace.png         \
1081         stock-icons/16/gtk-find.png                     \
1082         stock-icons/16/gtk-floppy.png                   \
1083         stock-icons/16/gtk-fullscreen.png               \
1084         stock-icons/16/gtk-go-back-ltr.png              \
1085         stock-icons/16/gtk-go-down.png                  \
1086         stock-icons/16/gtk-go-forward-ltr.png           \
1087         stock-icons/16/gtk-goto-bottom.png              \
1088         stock-icons/16/gtk-goto-first-ltr.png           \
1089         stock-icons/16/gtk-goto-last-ltr.png            \
1090         stock-icons/16/gtk-goto-top.png                 \
1091         stock-icons/16/gtk-go-up.png                    \
1092         stock-icons/16/gtk-harddisk.png                 \
1093         stock-icons/16/gtk-help.png                     \
1094         stock-icons/16/gtk-home.png                     \
1095         stock-icons/16/gtk-indent-ltr.png               \
1096         stock-icons/16/gtk-indent-rtl.png               \
1097         stock-icons/16/gtk-index.png                    \
1098         stock-icons/16/gtk-info.png                     \
1099         stock-icons/16/gtk-jump-to-ltr.png              \
1100         stock-icons/16/gtk-jump-to-rtl.png              \
1101         stock-icons/16/gtk-justify-center.png           \
1102         stock-icons/16/gtk-justify-fill.png             \
1103         stock-icons/16/gtk-justify-left.png             \
1104         stock-icons/16/gtk-justify-right.png            \
1105         stock-icons/16/gtk-leave-fullscreen.png         \
1106         stock-icons/16/gtk-media-forward-ltr.png        \
1107         stock-icons/16/gtk-media-next-ltr.png           \
1108         stock-icons/16/gtk-media-pause.png              \
1109         stock-icons/16/gtk-media-play-ltr.png           \
1110         stock-icons/16/gtk-media-play-rtl.png           \
1111         stock-icons/16/gtk-media-previous-ltr.png       \
1112         stock-icons/16/gtk-media-record.png             \
1113         stock-icons/16/gtk-media-rewind-ltr.png         \
1114         stock-icons/16/gtk-media-stop.png               \
1115         stock-icons/16/gtk-missing-image.png            \
1116         stock-icons/16/gtk-network.png                  \
1117         stock-icons/16/gtk-new.png                      \
1118         stock-icons/16/gtk-open.png                     \
1119         stock-icons/16/gtk-page-setup.png               \
1120         stock-icons/16/gtk-paste.png                    \
1121         stock-icons/16/gtk-preferences.png              \
1122         stock-icons/16/gtk-print.png                    \
1123         stock-icons/16/gtk-print-error.png              \
1124         stock-icons/16/gtk-print-paused.png             \
1125         stock-icons/16/gtk-print-preview.png            \
1126         stock-icons/16/gtk-print-report.png             \
1127         stock-icons/16/gtk-print-warning.png            \
1128         stock-icons/16/gtk-properties.png               \
1129         stock-icons/16/gtk-quit.png                     \
1130         stock-icons/16/gtk-redo-ltr.png                 \
1131         stock-icons/16/gtk-redo-rtl.png                 \
1132         stock-icons/16/gtk-refresh.png                  \
1133         stock-icons/16/gtk-remove.png                   \
1134         stock-icons/16/gtk-revert-to-saved-ltr.png      \
1135         stock-icons/16/gtk-revert-to-saved-rtl.png      \
1136         stock-icons/16/gtk-save-as.png                  \
1137         stock-icons/16/gtk-select-all.png               \
1138         stock-icons/16/gtk-select-color.png             \
1139         stock-icons/16/gtk-select-font.png              \
1140         stock-icons/16/gtk-sort-ascending.png           \
1141         stock-icons/16/gtk-sort-descending.png          \
1142         stock-icons/16/gtk-spell-check.png              \
1143         stock-icons/16/gtk-stop.png                     \
1144         stock-icons/16/gtk-strikethrough.png            \
1145         stock-icons/16/gtk-font.png                     \
1146         stock-icons/16/gtk-undelete-ltr.png             \
1147         stock-icons/16/gtk-undelete-rtl.png             \
1148         stock-icons/16/gtk-underline.png                \
1149         stock-icons/16/gtk-undo-ltr.png                 \
1150         stock-icons/16/gtk-undo-rtl.png                 \
1151         stock-icons/16/gtk-unindent-ltr.png             \
1152         stock-icons/16/gtk-unindent-rtl.png             \
1153         stock-icons/16/gtk-zoom-100.png                 \
1154         stock-icons/16/gtk-zoom-fit.png                 \
1155         stock-icons/16/gtk-zoom-in.png                  \
1156         stock-icons/16/gtk-zoom-out.png                 \
1157         stock-icons/16/gtk-italic.png                   \
1158         stock-icons/16/gtk-bold.png                     \
1159         stock-icons/20/gtk-apply.png                    \
1160         stock-icons/20/gtk-cancel.png                   \
1161         stock-icons/20/gtk-close.png                    \
1162         stock-icons/20/gtk-no.png                       \
1163         stock-icons/20/gtk-ok.png                       \
1164         stock-icons/20/gtk-yes.png                      \
1165         stock-icons/24/audio-volume-high.png            \
1166         stock-icons/24/audio-volume-low.png             \
1167         stock-icons/24/audio-volume-medium.png          \
1168         stock-icons/24/audio-volume-muted.png           \
1169         stock-icons/24/document-open-recent.png         \
1170         stock-icons/24/gtk-about.png                    \
1171         stock-icons/24/gtk-add.png                      \
1172         stock-icons/24/gtk-bold.png                     \
1173         stock-icons/24/gtk-cdrom.png                    \
1174         stock-icons/24/gtk-clear.png                    \
1175         stock-icons/24/gtk-close.png                    \
1176         stock-icons/24/gtk-color-picker.png             \
1177         stock-icons/24/gtk-connect.png                  \
1178         stock-icons/24/gtk-convert.png                  \
1179         stock-icons/24/gtk-copy.png                     \
1180         stock-icons/24/gtk-cut.png                      \
1181         stock-icons/24/gtk-directory.png                \
1182         stock-icons/24/gtk-disconnect.png               \
1183         stock-icons/24/gtk-edit.png                     \
1184         stock-icons/24/gtk-execute.png                  \
1185         stock-icons/24/gtk-file.png                     \
1186         stock-icons/24/gtk-find-and-replace.png         \
1187         stock-icons/24/gtk-find.png                     \
1188         stock-icons/24/gtk-font.png                     \
1189         stock-icons/24/gtk-fullscreen.png               \
1190         stock-icons/24/gtk-go-back-ltr.png              \
1191         stock-icons/24/gtk-goto-top.png                 \
1192         stock-icons/24/gtk-go-down.png                  \
1193         stock-icons/24/gtk-goto-bottom.png              \
1194         stock-icons/24/gtk-goto-first-ltr.png           \
1195         stock-icons/24/gtk-goto-last-ltr.png            \
1196         stock-icons/24/gtk-go-up.png                    \
1197         stock-icons/24/gtk-harddisk.png                 \
1198         stock-icons/24/gtk-help.png                     \
1199         stock-icons/24/gtk-home.png                     \
1200         stock-icons/24/gtk-indent-ltr.png               \
1201         stock-icons/24/gtk-indent-rtl.png               \
1202         stock-icons/24/gtk-index.png                    \
1203         stock-icons/24/gtk-info.png                     \
1204         stock-icons/24/gtk-italic.png                   \
1205         stock-icons/24/gtk-jump-to-ltr.png              \
1206         stock-icons/24/gtk-jump-to-rtl.png              \
1207         stock-icons/24/gtk-justify-center.png           \
1208         stock-icons/24/gtk-justify-fill.png             \
1209         stock-icons/24/gtk-justify-left.png             \
1210         stock-icons/24/gtk-justify-right.png            \
1211         stock-icons/24/gtk-leave-fullscreen.png         \
1212         stock-icons/24/gtk-media-forward-ltr.png        \
1213         stock-icons/24/gtk-media-next-ltr.png           \
1214         stock-icons/24/gtk-media-pause.png              \
1215         stock-icons/24/gtk-media-play-ltr.png           \
1216         stock-icons/24/gtk-media-play-rtl.png           \
1217         stock-icons/24/gtk-media-previous-ltr.png       \
1218         stock-icons/24/gtk-media-record.png             \
1219         stock-icons/24/gtk-media-rewind-ltr.png         \
1220         stock-icons/24/gtk-media-stop.png               \
1221         stock-icons/24/gtk-missing-image.png            \
1222         stock-icons/24/gtk-network.png                  \
1223         stock-icons/24/gtk-new.png                      \
1224         stock-icons/24/gtk-open.png                     \
1225         stock-icons/24/gtk-orientation-reverse-landscape.png \
1226         stock-icons/24/gtk-orientation-landscape.png    \
1227         stock-icons/24/gtk-orientation-reverse-portrait.png     \
1228         stock-icons/24/gtk-orientation-portrait.png     \
1229         stock-icons/24/gtk-page-setup.png               \
1230         stock-icons/24/gtk-paste.png                    \
1231         stock-icons/24/gtk-preferences.png              \
1232         stock-icons/24/gtk-print.png                    \
1233         stock-icons/24/gtk-print-error.png              \
1234         stock-icons/24/gtk-print-paused.png             \
1235         stock-icons/24/gtk-print-preview.png            \
1236         stock-icons/24/gtk-print-report.png             \
1237         stock-icons/24/gtk-print-warning.png            \
1238         stock-icons/24/gtk-properties.png               \
1239         stock-icons/24/gtk-quit.png                     \
1240         stock-icons/24/gtk-redo-ltr.png                 \
1241         stock-icons/24/gtk-redo-rtl.png                 \
1242         stock-icons/24/gtk-refresh.png                  \
1243         stock-icons/24/gtk-remove.png                   \
1244         stock-icons/24/gtk-revert-to-saved-ltr.png      \
1245         stock-icons/24/gtk-revert-to-saved-rtl.png      \
1246         stock-icons/24/gtk-select-font.png              \
1247         stock-icons/24/gtk-save-as.png                  \
1248         stock-icons/24/gtk-floppy.png                   \
1249         stock-icons/24/gtk-select-all.png               \
1250         stock-icons/24/gtk-select-color.png             \
1251         stock-icons/24/gtk-sort-ascending.png           \
1252         stock-icons/24/gtk-sort-descending.png          \
1253         stock-icons/24/gtk-spell-check.png              \
1254         stock-icons/24/gtk-stop.png                     \
1255         stock-icons/24/gtk-strikethrough.png            \
1256         stock-icons/24/gtk-delete.png                   \
1257         stock-icons/24/gtk-undelete-ltr.png             \
1258         stock-icons/24/gtk-undelete-rtl.png             \
1259         stock-icons/24/gtk-underline.png                \
1260         stock-icons/24/gtk-undo-ltr.png                 \
1261         stock-icons/24/gtk-undo-rtl.png                 \
1262         stock-icons/24/gtk-unindent-ltr.png             \
1263         stock-icons/24/gtk-unindent-rtl.png             \
1264         stock-icons/24/gtk-zoom-100.png                 \
1265         stock-icons/24/gtk-zoom-fit.png                 \
1266         stock-icons/24/gtk-zoom-in.png                  \
1267         stock-icons/24/gtk-zoom-out.png                 \
1268         stock-icons/24/gtk-go-forward-ltr.png           \
1269         stock-icons/32/gtk-dnd-multiple.png             \
1270         stock-icons/32/gtk-dnd.png                      \
1271         stock-icons/48/gtk-dialog-authentication.png    \
1272         stock-icons/48/gtk-dialog-error.png             \
1273         stock-icons/48/gtk-dialog-info.png              \
1274         stock-icons/48/gtk-dialog-question.png          \
1275         stock-icons/48/gtk-dialog-warning.png
1276
1277 GENERATED_ICONS = \
1278         stock-icons/16/gtk-go-back-rtl.png              \
1279         stock-icons/16/gtk-go-forward-rtl.png           \
1280         stock-icons/16/gtk-goto-first-rtl.png           \
1281         stock-icons/16/gtk-goto-last-rtl.png            \
1282         stock-icons/16/gtk-media-forward-rtl.png        \
1283         stock-icons/16/gtk-media-next-rtl.png           \
1284         stock-icons/16/gtk-media-previous-rtl.png       \
1285         stock-icons/16/gtk-media-rewind-rtl.png         \
1286         stock-icons/16/gtk-save.png                     \
1287         stock-icons/16/drive-harddisk.png               \
1288         stock-icons/16/folder.png                       \
1289         stock-icons/16/folder-remote.png                \
1290         stock-icons/16/user-home.png                    \
1291         stock-icons/16/user-desktop.png                 \
1292         stock-icons/16/text-x-generic.png               \
1293         stock-icons/24/gtk-go-back-rtl.png              \
1294         stock-icons/24/gtk-go-forward-rtl.png           \
1295         stock-icons/24/gtk-goto-first-rtl.png           \
1296         stock-icons/24/gtk-goto-last-rtl.png            \
1297         stock-icons/24/gtk-media-forward-rtl.png        \
1298         stock-icons/24/gtk-media-next-rtl.png           \
1299         stock-icons/24/gtk-media-previous-rtl.png       \
1300         stock-icons/24/gtk-media-rewind-rtl.png         \
1301         stock-icons/24/gtk-save.png                     \
1302         stock-icons/24/drive-harddisk.png               \
1303         stock-icons/24/folder.png                       \
1304         stock-icons/24/folder-remote.png                \
1305         stock-icons/24/user-home.png                    \
1306         stock-icons/24/user-desktop.png                 \
1307         stock-icons/24/text-x-generic.png
1308
1309 # need to copy the icons so that we can replace the generated ones with
1310 # symlinks, even in the readonly srcdir case
1311 stamp-icons: $(STOCK_ICONS)
1312         if [ ! -d stock-icons ]; then                                   \
1313           for d in 16 20 24 32 48; do                                   \
1314             mkdir -p stock-icons/$$d;                                   \
1315           done;                                                         \
1316           for f in $(STOCK_ICONS); do                                   \
1317             cp $(srcdir)/$$f $$(dirname $$f);                           \
1318           done;                                                         \
1319           chmod -R u+w stock-icons;                                     \
1320         fi &&                                                           \
1321         for i in 16 24; do                                              \
1322            (cd stock-icons/$$i                                          \
1323            && $(RM) gtk-go-back-rtl.png                                 \
1324            && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png        \
1325            && $(RM) gtk-go-forward-rtl.png                              \
1326            && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png        \
1327            && $(RM) gtk-goto-first-rtl.png                              \
1328            && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png      \
1329            && $(RM) gtk-goto-last-rtl.png                               \
1330            && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png      \
1331            && $(RM) gtk-media-forward-rtl.png                           \
1332            && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png\
1333            && $(RM) gtk-media-next-rtl.png                              \
1334            && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png \
1335            && $(RM) gtk-media-previous-rtl.png                          \
1336            && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png \
1337            && $(RM) gtk-media-rewind-rtl.png                            \
1338            && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png\
1339            && $(RM) gtk-save.png                                        \
1340            && $(LN_S) gtk-floppy.png gtk-save.png                       \
1341            && $(RM) drive-harddisk.png                                  \
1342            && $(LN_S) gtk-harddisk.png drive-harddisk.png               \
1343            && $(RM) folder.png                                          \
1344            && $(LN_S) gtk-directory.png folder.png                      \
1345            && $(RM) folder-remote.png                                   \
1346            && $(LN_S) gtk-directory.png folder-remote.png               \
1347            && $(RM) user-home.png                                       \
1348            && $(LN_S) gtk-directory.png user-home.png                   \
1349            && $(RM) user-desktop.png                                    \
1350            && $(LN_S) gtk-directory.png user-desktop.png                \
1351            && $(RM) text-x-generic.png                                  \
1352            && $(LN_S) gtk-file.png text-x-generic.png                   \
1353         ) done                                                          \
1354         && touch stamp-icons
1355
1356 if CROSS_COMPILING
1357 gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE)
1358 else
1359 gtk_update_icon_cache_program =                                                 \
1360         GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders    \
1361            ./gtk-update-icon-cache
1362 endif
1363
1364 gtkbuiltincache.h: @REBUILD@ stamp-icons
1365         $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) $(GTK_UPDATE_ICON_CACHE_MANIFEST)
1366         $(gtk_update_icon_cache_program) --force --ignore-theme-index           \
1367            --source builtin_icons stock-icons > gtkbuiltincache.h.tmp &&        \
1368         mv gtkbuiltincache.h.tmp gtkbuiltincache.h
1369
1370 EXTRA_DIST +=                   \
1371         $(STOCK_ICONS)          \
1372         $(GENERATED_ICONS)      \
1373         line-arrow.xbm          \
1374         line-wrap.xbm           \
1375         tree_plus.xbm           \
1376         tree_minus.xbm          \
1377         tree_minus.xpm          \
1378         tree_plus.xpm           \
1379         gtk.def                 \
1380         gtk-builder-convert     \
1381         gtk-win32.rc            \
1382         gtk-win32.rc.in         \
1383         gtkwin32embed.h         \
1384         gtkwin32embedwidget.h   \
1385         gtkwin32embedwidget.c   \
1386         gtkprint-win32.h        \
1387         gtkprint-win32.c        \
1388         gtksearchenginequartz.h \
1389         gtkrc.default           \
1390         gtkrc.key.default       \
1391         gtkrc.key.emacs         \
1392         gtkrc.key.mac           \
1393         makefile.msc            \
1394         makefile.msc.in         \
1395         makegtkalias.pl         \
1396         aliasfilescheck.sh      \
1397         abicheck.sh             \
1398         pltcheck.sh             \
1399         gtktypebuiltins.c.template      \
1400         gtktypebuiltins.h.template
1401
1402
1403 install-data-local:
1404
1405 -include $(top_srcdir)/git.mk