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