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