]> Pileus Git - ~andy/gtk/blob - gtk/Makefile.am
2339a86543ae8140b43aed9cbbec2aa8932a4cbb
[~andy/gtk] / gtk / Makefile.am
1 # Makefile.am for gtk+/gtk
2 include $(top_srcdir)/Makefile.decl
3
4 if USE_QUARTZ
5 GTK_PRINT_PREVIEW_COMMAND="open -a /Applications/Preview.app %f"
6 else
7 GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f"
8 endif
9
10 SUBDIRS = theme-bits . tests
11 DIST_SUBDIRS=theme-bits tests
12
13 if HAVE_CUPS
14 GTK_PRINT_BACKENDS=file,cups
15 else
16 GTK_PRINT_BACKENDS=file,lpr
17 endif
18
19 INCLUDES =                                              \
20         -DG_LOG_DOMAIN=\"Gtk\"                          \
21         -DGTK_LIBDIR=\"$(libdir)\"                      \
22         -DGTK_DATADIR=\"$(datadir)\"                    \
23         -DGTK_DATA_PREFIX=\"$(prefix)\"                 \
24         -DGTK_SYSCONFDIR=\"$(sysconfdir)\"              \
25         -DGTK_VERSION=\"$(GTK_VERSION)\"                \
26         -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\"  \
27         -DGTK_HOST=\"$(host)\"                          \
28         -DGTK_COMPILATION                               \
29         -DGTK_PRINT_BACKENDS=\"$(GTK_PRINT_BACKENDS)\"  \
30         -DGTK_PRINT_PREVIEW_COMMAND=\"$(GTK_PRINT_PREVIEW_COMMAND)\"    \
31         -I$(top_builddir)                               \
32         -I$(top_builddir)/gtk                           \
33         -I$(top_srcdir) -I../gdk                        \
34         -I$(top_srcdir)/gdk                             \
35         -I$(top_srcdir)/gdk-pixbuf -I../gdk-pixbuf      \
36         -DGDK_DISABLE_DEPRECATED                        \
37         -DGTK_DISABLE_DEPRECATED                        \
38         -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED            \
39         -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED          \
40         $(GTK_DEBUG_FLAGS)                              \
41         $(GTK_DEP_CFLAGS)                               \
42         $(gtk_clipboard_dnd_c_sources_CFLAGS)           \
43         $(INCLUDED_IMMODULE_DEFINE)
44
45 gtarget=$(gdktarget)
46
47 if PLATFORM_WIN32
48 no_undefined = -no-undefined
49 endif
50
51 if OS_WIN32
52 gtk_def = gtk.def
53 gtk_win32_symbols = -export-symbols $(srcdir)/gtk.def
54
55 gtk_win32_res = gtk-win32-res.o
56 gtk_win32_res_ldflag = -Wl,gtk-win32-res.o
57
58 gtk-win32-res.o : gtk-win32.rc
59         $(WINDRES) gtk-win32.rc $@
60
61 install-def-file: gtk.def
62         $(INSTALL) $(srcdir)/gtk.def $(DESTDIR)$(libdir)/gtk-win32-2.0.def
63 uninstall-def-file:
64         -rm $(DESTDIR)$(libdir)/gtk-win32-2.0.def
65 else
66 install-def-file:
67 uninstall-def-file:
68 endif
69
70 if MS_LIB_AVAILABLE
71 noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
72
73 gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
74         lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
75
76 install-ms-lib:
77         $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
78
79 uninstall-ms-lib:
80         -rm $(DESTDIR)$(libdir)/gtk-win32-$(GTK_API_VERSION).lib
81 else
82 install-ms-lib:
83 uninstall-ms-lib:
84 endif
85
86 # This places the generated .def file in srcdir, since it is expected to be there.
87 # (The one from a tarball is)
88 gtk.def: gtk.symbols
89         (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
90
91 gtkalias.h: gtk.symbols
92           $(PERL) $(srcdir)/makegtkalias.pl < $(srcdir)/gtk.symbols > gtkalias.h
93 gtkaliasdef.c: gtk.symbols
94           $(PERL) $(srcdir)/makegtkalias.pl -def < $(srcdir)/gtk.symbols > gtkaliasdef.c
95
96 check-aliases:
97         @$(TESTS_ENVIRONMENT) $(srcdir)/aliasfilescheck.sh
98
99 .PHONY: check-aliases
100
101 TESTS_ENVIRONMENT = srcdir="$(srcdir)" gtk_all_c_sources="$(gtk_all_c_sources)"
102 TESTS = aliasfilescheck.sh
103 if OS_LINUX
104 TESTS += abicheck.sh pltcheck.sh
105 endif
106
107 libgtkincludedir = $(includedir)/gtk-2.0/gtk
108 libadd =                                                                \
109         $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
110         $(top_builddir)/gdk/$(gdktargetlib)                             \
111         $(GTK_DEP_LIBS)
112 deps =
113
114 # libtool stuff: set version and export symbols for resolving
115 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
116 # we use the general approach here
117 libtool_opts =                                                  \
118   -version-info $(LT_VERSION_INFO)                              \
119   -export-dynamic $(no_undefined) $(LIBTOOL_EXPORT_OPTIONS)     \
120   -rpath $(libdir) $(libgtk_target_ldflags)
121
122
123 included-modules:
124 if HAVE_INCLUDED_IMMMODULES
125         @cd $(top_builddir)/modules/input && $(MAKE) $(AM_MAKEFLAGS) included-modules
126
127 libadd += $(INCLUDED_IMMODULE_OBJ)
128 deps += $(INCLUDED_IMMODULE_OBJ)
129
130 $(INCLUDED_IMMODULE_OBJ): included-modules
131         @true
132 endif
133
134 .PHONY: included-modules
135
136 #
137 # setup source file variables
138 #
139
140 # GTK+ header files for public installation (non-generated, or generated
141 # by configure)
142 gtk_public_h_sources =          \
143         gtk.h                   \
144         gtkaboutdialog.h        \
145         gtkaccelgroup.h         \
146         gtkaccellabel.h         \
147         gtkaccelmap.h           \
148         gtkaccessible.h         \
149         gtkaction.h             \
150         gtkactiongroup.h        \
151         gtkactivatable.h        \
152         gtkadjustment.h         \
153         gtkalignment.h          \
154         gtkarrow.h              \
155         gtkaspectframe.h        \
156         gtkassistant.h          \
157         gtkbbox.h               \
158         gtkbin.h                \
159         gtkbindings.h           \
160         gtkbox.h                \
161         gtkbuilder.h            \
162         gtkbuildable.h          \
163         gtkbutton.h             \
164         gtkcalendar.h           \
165         gtkcelleditable.h       \
166         gtkcelllayout.h         \
167         gtkcellrenderer.h       \
168         gtkcellrendereraccel.h  \
169         gtkcellrenderercombo.h  \
170         gtkcellrendererpixbuf.h \
171         gtkcellrendererprogress.h \
172         gtkcellrendererspin.h   \
173         gtkcellrenderertext.h   \
174         gtkcellrenderertoggle.h \
175         gtkcellview.h           \
176         gtkcheckbutton.h        \
177         gtkcheckmenuitem.h      \
178         gtkclipboard.h          \
179         gtkcolorbutton.h        \
180         gtkcolorsel.h           \
181         gtkcolorseldialog.h     \
182         gtkcombobox.h           \
183         gtkcomboboxentry.h      \
184         gtkcontainer.h          \
185         gtkcurve.h              \
186         gtkdebug.h              \
187         gtkdialog.h             \
188         gtkdnd.h                \
189         gtkdrawingarea.h        \
190         gtkeditable.h           \
191         gtkentry.h              \
192         gtkentrycompletion.h    \
193         gtkenums.h              \
194         gtkeventbox.h           \
195         gtkexpander.h           \
196         gtkfilechooser.h        \
197         gtkfilechooserbutton.h  \
198         gtkfilechooserdialog.h  \
199         gtkfilechooserwidget.h  \
200         gtkfilefilter.h         \
201         gtkfixed.h              \
202         gtkfontbutton.h         \
203         gtkfontsel.h            \
204         gtkframe.h              \
205         gtkgamma.h              \
206         gtkgc.h                 \
207         gtkhandlebox.h          \
208         gtkhbbox.h              \
209         gtkhbox.h               \
210         gtkhpaned.h             \
211         gtkhruler.h             \
212         gtkhscale.h             \
213         gtkhscrollbar.h         \
214         gtkhseparator.h         \
215         gtkhsv.h                \
216         gtkiconfactory.h        \
217         gtkicontheme.h          \
218         gtkiconview.h           \
219         gtkimage.h              \
220         gtkimagemenuitem.h      \
221         gtkimcontext.h          \
222         gtkimcontextsimple.h    \
223         gtkimmodule.h           \
224         gtkimmulticontext.h     \
225         gtkinputdialog.h        \
226         gtkinvisible.h          \
227         gtkitem.h               \
228         gtklabel.h              \
229         gtklayout.h             \
230         gtklinkbutton.h         \
231         gtkliststore.h          \
232         gtkmain.h               \
233         gtkmenu.h               \
234         gtkmenubar.h            \
235         gtkmenuitem.h           \
236         gtkmenushell.h          \
237         gtkmenutoolbutton.h     \
238         gtkmessagedialog.h      \
239         gtkmisc.h               \
240         gtkmodules.h            \
241         gtkmountoperation.h     \
242         gtknotebook.h           \
243         gtkobject.h             \
244         gtkorientable.h         \
245         gtkpagesetup.h          \
246         gtkpaned.h              \
247         gtkpapersize.h          \
248         gtkplug.h               \
249         gtkprintcontext.h       \
250         gtkprintoperation.h     \
251         gtkprintoperationpreview.h      \
252         gtkprintsettings.h      \
253         gtkprivate.h            \
254         gtkprogressbar.h        \
255         gtkradioaction.h        \
256         gtkradiobutton.h        \
257         gtkradiomenuitem.h      \
258         gtkradiotoolbutton.h    \
259         gtkrange.h              \
260         gtkrc.h                 \
261         gtkrecentaction.h       \
262         gtkrecentchooser.h      \
263         gtkrecentchooserdialog.h \
264         gtkrecentchoosermenu.h  \
265         gtkrecentchooserwidget.h \
266         gtkrecentfilter.h       \
267         gtkrecentmanager.h      \
268         gtkruler.h              \
269         gtkscale.h              \
270         gtkscalebutton.h        \
271         gtkscrollbar.h          \
272         gtkscrolledwindow.h     \
273         gtkselection.h          \
274         gtkseparator.h          \
275         gtkseparatormenuitem.h  \
276         gtkseparatortoolitem.h  \
277         gtkshow.h               \
278         gtksettings.h           \
279         gtksizegroup.h          \
280         gtksocket.h             \
281         gtkspinbutton.h         \
282         gtkstatusbar.h          \
283         gtkstatusicon.h         \
284         gtkstock.h              \
285         gtkstyle.h              \
286         gtktable.h              \
287         gtktearoffmenuitem.h    \
288         gtktestutils.h          \
289         gtktextbuffer.h         \
290         gtktextbufferrichtext.h \
291         gtktextchild.h          \
292         gtktextdisplay.h        \
293         gtktextiter.h           \
294         gtktextmark.h           \
295         gtktexttag.h            \
296         gtktexttagtable.h       \
297         gtktextview.h           \
298         gtktoggleaction.h       \
299         gtktogglebutton.h       \
300         gtktoggletoolbutton.h   \
301         gtktoolbar.h            \
302         gtktoolbutton.h         \
303         gtktoolitem.h           \
304         gtktoolshell.h          \
305         gtktooltip.h            \
306         gtktreednd.h            \
307         gtktreemodel.h          \
308         gtktreemodelfilter.h    \
309         gtktreemodelsort.h      \
310         gtktreeselection.h      \
311         gtktreesortable.h       \
312         gtktreestore.h          \
313         gtktreeview.h           \
314         gtktreeviewcolumn.h     \
315         gtktypeutils.h          \
316         gtkuimanager.h          \
317         gtkvbbox.h              \
318         gtkvbox.h               \
319         gtkviewport.h           \
320         gtkvolumebutton.h       \
321         gtkvpaned.h             \
322         gtkvruler.h             \
323         gtkvscale.h             \
324         gtkvscrollbar.h         \
325         gtkvseparator.h         \
326         gtkwidget.h             \
327         gtkwindow.h
328
329 if OS_UNIX
330 gtk_unix_print_public_h_sources =    \
331         gtkpagesetupunixdialog.h        \
332         gtkprintunixdialog.h            \
333         gtkprinter.h                    \
334         gtkprintjob.h                   \
335         gtkunixprint.h
336 endif
337
338 # Installed header files without compatibility guarantees
339 # that are not included in gtk/gtk.h
340 gtk_semi_private_h_sources =    \
341         gtktextlayout.h
342
343 # GTK+ header files that don't get installed
344 gtk_private_h_sources =         \
345         gtkquery.h              \
346         gtksearchengine.h       \
347         gtksearchenginesimple.h \
348         gtkdndcursors.h         \
349         gtkentryprivate.h       \
350         gtkbuilderprivate.h     \
351         gtkfilechooserdefault.h \
352         gtkfilechooserembed.h   \
353         gtkfilechooserentry.h   \
354         gtkfilechooserprivate.h \
355         gtkfilechoosersettings.h \
356         gtkfilechooserutils.h   \
357         gtkfilesystem.h         \
358         gtkfilesystemmodel.h    \
359         gtkiconcache.h          \
360         gtkintl.h               \
361         gtkkeyhash.h            \
362         gtkmnemonichash.h       \
363         gtkpathbar.h            \
364         gtkplugprivate.h        \
365         gtkprintoperation-private.h\
366         gtkprintutils.h         \
367         gtkrbtree.h             \
368         gtkrecentchooserdefault.h \
369         gtkrecentchooserprivate.h \
370         gtkrecentchooserutils.h \
371         gtksocketprivate.h      \
372         gtktextbtree.h          \
373         gtktextbufferserialize.h\
374         gtktextchildprivate.h   \
375         gtktextiterprivate.h    \
376         gtktextmarkprivate.h    \
377         gtktextsegment.h        \
378         gtktexttagprivate.h     \
379         gtktexttypes.h          \
380         gtktextutil.h           \
381         gtkthemes.h             \
382         gtktoggleactionprivate.h\
383         gtktreedatalist.h       \
384         gtktreeprivate.h        \
385         gtkwindow-decorate.h    \
386         $(gtk_clipboard_dnd_h_sources)
387
388 # GTK+ C sources to build the library from
389 gtk_base_c_sources =            \
390         gtkquery.c              \
391         gtksearchengine.c       \
392         gtksearchenginesimple.c \
393         fnmatch.c               \
394         gtkaboutdialog.c        \
395         gtkaccelgroup.c         \
396         gtkaccellabel.c         \
397         gtkaccelmap.c           \
398         gtkaccessible.c         \
399         gtkaction.c             \
400         gtkactiongroup.c        \
401         gtkactivatable.c        \
402         gtkadjustment.c         \
403         gtkalignment.c          \
404         gtkarrow.c              \
405         gtkaspectframe.c        \
406         gtkassistant.c          \
407         gtkbbox.c               \
408         gtkbin.c                \
409         gtkbindings.c           \
410         gtkbox.c                \
411         gtkbuildable.c          \
412         gtkbuilder.c            \
413         gtkbuilderparser.c      \
414         gtkbutton.c             \
415         gtkcalendar.c           \
416         gtkcelleditable.c       \
417         gtkcelllayout.c         \
418         gtkcellrenderer.c       \
419         gtkcellrendereraccel.c  \
420         gtkcellrenderercombo.c  \
421         gtkcellrendererpixbuf.c \
422         gtkcellrendererprogress.c \
423         gtkcellrendererspin.c   \
424         gtkcellrenderertext.c   \
425         gtkcellrenderertoggle.c \
426         gtkcellview.c           \
427         gtkcheckbutton.c        \
428         gtkcheckmenuitem.c      \
429         gtkcolorbutton.c        \
430         gtkcolorsel.c           \
431         gtkcolorseldialog.c     \
432         gtkcombobox.c           \
433         gtkcomboboxentry.c      \
434         gtkcontainer.c          \
435         gtkcurve.c              \
436         gtkdialog.c             \
437         gtkdrawingarea.c        \
438         gtkeditable.c           \
439         gtkentry.c              \
440         gtkentrycompletion.c    \
441         gtkeventbox.c           \
442         gtkexpander.c           \
443         gtkfilechooser.c        \
444         gtkfilechooserbutton.c  \
445         gtkfilechooserdefault.c \
446         gtkfilechooserdialog.c  \
447         gtkfilechooserembed.c   \
448         gtkfilechooserentry.c   \
449         gtkfilechoosersettings.c \
450         gtkfilechooserutils.c   \
451         gtkfilechooserwidget.c  \
452         gtkfilefilter.c         \
453         gtkfilesystem.c         \
454         gtkfilesystemmodel.c    \
455         gtkfixed.c              \
456         gtkfontbutton.c         \
457         gtkfontsel.c            \
458         gtkframe.c              \
459         gtkgamma.c              \
460         gtkgc.c                 \
461         gtkhandlebox.c          \
462         gtkhbbox.c              \
463         gtkhbox.c               \
464         gtkhpaned.c             \
465         gtkhruler.c             \
466         gtkhscale.c             \
467         gtkhscrollbar.c         \
468         gtkhseparator.c         \
469         gtkhsv.c                \
470         gtkiconcache.c          \
471         gtkiconcachevalidator.c \
472         gtkiconfactory.c        \
473         gtkicontheme.c          \
474         gtkiconview.c           \
475         gtkimage.c              \
476         gtkimagemenuitem.c      \
477         gtkimcontext.c          \
478         gtkimcontextsimple.c    \
479         gtkimmodule.c           \
480         gtkimmulticontext.c     \
481         gtkinputdialog.c        \
482         gtkinvisible.c          \
483         gtkitem.c               \
484         gtkkeyhash.c            \
485         gtklabel.c              \
486         gtklayout.c             \
487         gtklinkbutton.c         \
488         gtkliststore.c          \
489         gtkmain.c               \
490         gtkmarshal.c            \
491         gtkmarshalers.c         \
492         gtkmenu.c               \
493         gtkmenubar.c            \
494         gtkmenuitem.c           \
495         gtkmenushell.c          \
496         gtkmenutoolbutton.c     \
497         gtkmessagedialog.c      \
498         gtkmisc.c               \
499         gtkmnemonichash.c       \
500         gtkmodules.c            \
501         gtkmountoperation.c     \
502         gtknotebook.c           \
503         gtkobject.c             \
504         gtkorientable.c         \
505         gtkpagesetup.c          \
506         gtkpaned.c              \
507         gtkpapersize.c          \
508         gtkpathbar.c            \
509         gtkplug.c               \
510         gtkprintcontext.c       \
511         gtkprintoperation.c     \
512         gtkprintoperationpreview.c      \
513         gtkprintsettings.c      \
514         gtkprintutils.c         \
515         gtkprogressbar.c        \
516         gtkradioaction.c        \
517         gtkradiobutton.c        \
518         gtkradiomenuitem.c      \
519         gtkradiotoolbutton.c    \
520         gtkrange.c              \
521         gtkrbtree.c             \
522         gtkrc.c                 \
523         gtkrecentaction.c       \
524         gtkrecentchooserdefault.c \
525         gtkrecentchooserdialog.c \
526         gtkrecentchoosermenu.c  \
527         gtkrecentchooserwidget.c \
528         gtkrecentchooserutils.c \
529         gtkrecentchooser.c      \
530         gtkrecentfilter.c       \
531         gtkrecentmanager.c      \
532         gtkruler.c              \
533         gtkscale.c              \
534         gtkscalebutton.c        \
535         gtkscrollbar.c          \
536         gtkscrolledwindow.c     \
537         gtkselection.c          \
538         gtkseparator.c          \
539         gtkseparatormenuitem.c  \
540         gtkseparatortoolitem.c  \
541         gtksettings.c           \
542         gtksizegroup.c          \
543         gtkshow.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         gtkpagesetupunixdialog.c        \
653         gtkprinter.c                    \
654         gtkprinteroption.c              \
655         gtkprinteroptionset.c           \
656         gtkprinteroptionwidget.c        \
657         gtkprintjob.c                   \
658         gtkprintoperation-unix.c        \
659         gtkprintunixdialog.c            \
660         gtkprintbackend.c               \
661         gtksearchenginebeagle.c         \
662         gtksearchenginetracker.c
663 gtk_all_c_sources += $(gtk_os_unix_c_sources)
664 if OS_UNIX
665 gtk_private_h_sources += \
666         gtkiconcachevalidator.h         \
667         gtkprintbackend.h               \
668         gtkprinter-private.h            \
669         gtkprinteroption.h              \
670         gtkprinteroptionset.h           \
671         gtkprinteroptionwidget.h        \
672         gtksearchenginebeagle.h         \
673         gtksearchenginetracker.h
674 gtk_c_sources += $(gtk_os_unix_c_sources)
675 endif
676
677 gtk_os_win32_c_sources = \
678         gtkprint-win32.c                \
679         gtkprintoperation-win32.c
680 gtk_all_c_sources += $(gtk_os_win32_c_sources)
681 if OS_WIN32
682 gtk_private_h_sources += gtkprint-win32.h
683 gtk_c_sources += $(gtk_os_win32_c_sources)
684 endif
685
686 gtk_use_x11_c_sources = \
687         gtkplug-x11.c   \
688         gtksocket-x11.c \
689         gtkxembed.c     \
690         gtktrayicon-x11.c
691 gtk_use_win32_c_sources = \
692         gtkplug-win32.c   \
693         gtksocket-win32.c \
694         gtkwin32embed.c   \
695         gtkwin32embedwidget.c
696 gtk_use_quartz_c_sources =      \
697         gtksearchenginequartz.c \
698         gtkplug-stub.c          \
699         gtksocket-stub.c
700 gtk_use_stub_c_sources = \
701         gtkplug-stub.c   \
702         gtksocket-stub.c
703 gtk_all_c_sources += $(gtk_use_x11_c_sources) $(gtk_use_win32_c_sources) $(gtk_use_quartz_c_sources) $(gtk_use_stub_c_sources)
704 if USE_X11
705 gtk_private_h_sources += gtkxembed.h gtktrayicon.h xembed.h
706 gtk_c_sources += $(gtk_use_x11_c_sources)
707 else
708 if USE_WIN32
709 gtk_private_h_sources += gtkwin32embed.h gtkwin32embedwidget.h
710 gtk_c_sources += $(gtk_use_win32_c_sources)
711 else
712 if USE_QUARTZ
713 gtk_private_h_sources += gtksearchenginequartz.h
714 gtk_c_sources += $(gtk_use_quartz_c_sources)
715 gtk_use_quartz_c_sources_CFLAGS = "-xobjective-c"
716 else
717 gtk_c_sources += $(gtk_use_stub_c_sources)
718 endif
719 endif
720 endif
721
722 if USE_QUARTZ
723 gtk_clipboard_dnd_c_sources = gtkclipboard-quartz.c gtkdnd-quartz.c gtkquartz.c
724 gtk_clipboard_dnd_h_sources = gtkquartz.h
725 gtk_clipboard_dnd_c_sources_CFLAGS = "-xobjective-c"
726 else
727 gtk_clipboard_dnd_c_sources = gtkclipboard.c gtkdnd.c
728 gtk_clipboard_dnd_c_sources_CFLAGS =
729 endif
730 EXTRA_DIST += gtkquartz.h
731
732 # we use our own built_sources variable rules to avoid automake's
733 # BUILT_SOURCES oddities
734 # we generate frequently rebuild files piggyback on a stamp file, so sources
735 # depending on them only get rebuild when the built source actually changed
736 # content
737
738 # built sources that get installed with the header files
739 gtk_built_public_sources =                      \
740         gtkmarshal.h                            \
741         gtktypebuiltins.h
742
743 # built headers that don't get installed
744 gtk_built_private_headers =                     \
745         gtkalias.h                              \
746         gtkmarshalers.h                         \
747         gtkbuiltincache.h                       \
748         gtkimcontextsimpleseqs.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-paused.png             \
1011         stock-icons/16/gtk-print-preview.png            \
1012         stock-icons/16/gtk-print-report.png             \
1013         stock-icons/16/gtk-print-warning.png            \
1014         stock-icons/16/gtk-properties.png               \
1015         stock-icons/16/gtk-quit.png                     \
1016         stock-icons/16/gtk-redo-ltr.png                 \
1017         stock-icons/16/gtk-redo-rtl.png                 \
1018         stock-icons/16/gtk-refresh.png                  \
1019         stock-icons/16/gtk-remove.png                   \
1020         stock-icons/16/gtk-revert-to-saved-ltr.png      \
1021         stock-icons/16/gtk-revert-to-saved-rtl.png      \
1022         stock-icons/16/gtk-save-as.png                  \
1023         stock-icons/16/gtk-select-all.png               \
1024         stock-icons/16/gtk-select-color.png             \
1025         stock-icons/16/gtk-select-font.png              \
1026         stock-icons/16/gtk-sort-ascending.png           \
1027         stock-icons/16/gtk-sort-descending.png          \
1028         stock-icons/16/gtk-spell-check.png              \
1029         stock-icons/16/gtk-stop.png                     \
1030         stock-icons/16/gtk-strikethrough.png            \
1031         stock-icons/16/gtk-font.png                     \
1032         stock-icons/16/gtk-undelete-ltr.png             \
1033         stock-icons/16/gtk-undelete-rtl.png             \
1034         stock-icons/16/gtk-underline.png                \
1035         stock-icons/16/gtk-undo-ltr.png                 \
1036         stock-icons/16/gtk-undo-rtl.png                 \
1037         stock-icons/16/gtk-unindent-ltr.png             \
1038         stock-icons/16/gtk-unindent-rtl.png             \
1039         stock-icons/16/gtk-zoom-100.png                 \
1040         stock-icons/16/gtk-zoom-fit.png                 \
1041         stock-icons/16/gtk-zoom-in.png                  \
1042         stock-icons/16/gtk-zoom-out.png                 \
1043         stock-icons/16/gtk-italic.png                   \
1044         stock-icons/16/gtk-bold.png                     \
1045         stock-icons/20/gtk-apply.png                    \
1046         stock-icons/20/gtk-cancel.png                   \
1047         stock-icons/20/gtk-close.png                    \
1048         stock-icons/20/gtk-no.png                       \
1049         stock-icons/20/gtk-ok.png                       \
1050         stock-icons/20/gtk-yes.png                      \
1051         stock-icons/24/audio-volume-high.png            \
1052         stock-icons/24/audio-volume-low.png             \
1053         stock-icons/24/audio-volume-medium.png          \
1054         stock-icons/24/audio-volume-muted.png           \
1055         stock-icons/24/document-open-recent.png         \
1056         stock-icons/24/gtk-about.png                    \
1057         stock-icons/24/gtk-add.png                      \
1058         stock-icons/24/gtk-bold.png                     \
1059         stock-icons/24/gtk-cdrom.png                    \
1060         stock-icons/24/gtk-clear.png                    \
1061         stock-icons/24/gtk-close.png                    \
1062         stock-icons/24/gtk-color-picker.png             \
1063         stock-icons/24/gtk-connect.png                  \
1064         stock-icons/24/gtk-convert.png                  \
1065         stock-icons/24/gtk-copy.png                     \
1066         stock-icons/24/gtk-cut.png                      \
1067         stock-icons/24/gtk-directory.png                \
1068         stock-icons/24/gtk-disconnect.png               \
1069         stock-icons/24/gtk-edit.png                     \
1070         stock-icons/24/gtk-execute.png                  \
1071         stock-icons/24/gtk-file.png                     \
1072         stock-icons/24/gtk-find-and-replace.png         \
1073         stock-icons/24/gtk-find.png                     \
1074         stock-icons/24/gtk-font.png                     \
1075         stock-icons/24/gtk-fullscreen.png               \
1076         stock-icons/24/gtk-go-back-ltr.png              \
1077         stock-icons/24/gtk-goto-top.png                 \
1078         stock-icons/24/gtk-go-down.png                  \
1079         stock-icons/24/gtk-goto-bottom.png              \
1080         stock-icons/24/gtk-goto-first-ltr.png           \
1081         stock-icons/24/gtk-goto-last-ltr.png            \
1082         stock-icons/24/gtk-go-up.png                    \
1083         stock-icons/24/gtk-harddisk.png                 \
1084         stock-icons/24/gtk-help.png                     \
1085         stock-icons/24/gtk-home.png                     \
1086         stock-icons/24/gtk-indent-ltr.png               \
1087         stock-icons/24/gtk-indent-rtl.png               \
1088         stock-icons/24/gtk-index.png                    \
1089         stock-icons/24/gtk-info.png                     \
1090         stock-icons/24/gtk-italic.png                   \
1091         stock-icons/24/gtk-jump-to-ltr.png              \
1092         stock-icons/24/gtk-jump-to-rtl.png              \
1093         stock-icons/24/gtk-justify-center.png           \
1094         stock-icons/24/gtk-justify-fill.png             \
1095         stock-icons/24/gtk-justify-left.png             \
1096         stock-icons/24/gtk-justify-right.png            \
1097         stock-icons/24/gtk-leave-fullscreen.png         \
1098         stock-icons/24/gtk-media-forward-ltr.png        \
1099         stock-icons/24/gtk-media-next-ltr.png           \
1100         stock-icons/24/gtk-media-pause.png              \
1101         stock-icons/24/gtk-media-play-ltr.png           \
1102         stock-icons/24/gtk-media-play-rtl.png           \
1103         stock-icons/24/gtk-media-previous-ltr.png       \
1104         stock-icons/24/gtk-media-record.png             \
1105         stock-icons/24/gtk-media-rewind-ltr.png         \
1106         stock-icons/24/gtk-media-stop.png               \
1107         stock-icons/24/gtk-missing-image.png            \
1108         stock-icons/24/gtk-network.png                  \
1109         stock-icons/24/gtk-new.png                      \
1110         stock-icons/24/gtk-open.png                     \
1111         stock-icons/24/gtk-orientation-reverse-landscape.png \
1112         stock-icons/24/gtk-orientation-landscape.png    \
1113         stock-icons/24/gtk-orientation-reverse-portrait.png     \
1114         stock-icons/24/gtk-orientation-portrait.png     \
1115         stock-icons/24/gtk-page-setup.png               \
1116         stock-icons/24/gtk-paste.png                    \
1117         stock-icons/24/gtk-preferences.png              \
1118         stock-icons/24/gtk-print.png                    \
1119         stock-icons/24/gtk-print-error.png              \
1120         stock-icons/24/gtk-print-paused.png             \
1121         stock-icons/24/gtk-print-preview.png            \
1122         stock-icons/24/gtk-print-report.png             \
1123         stock-icons/24/gtk-print-warning.png            \
1124         stock-icons/24/gtk-properties.png               \
1125         stock-icons/24/gtk-quit.png                     \
1126         stock-icons/24/gtk-redo-ltr.png                 \
1127         stock-icons/24/gtk-redo-rtl.png                 \
1128         stock-icons/24/gtk-refresh.png                  \
1129         stock-icons/24/gtk-remove.png                   \
1130         stock-icons/24/gtk-revert-to-saved-ltr.png      \
1131         stock-icons/24/gtk-revert-to-saved-rtl.png      \
1132         stock-icons/24/gtk-select-font.png              \
1133         stock-icons/24/gtk-save-as.png                  \
1134         stock-icons/24/gtk-floppy.png                   \
1135         stock-icons/24/gtk-select-all.png               \
1136         stock-icons/24/gtk-select-color.png             \
1137         stock-icons/24/gtk-sort-ascending.png           \
1138         stock-icons/24/gtk-sort-descending.png          \
1139         stock-icons/24/gtk-spell-check.png              \
1140         stock-icons/24/gtk-stop.png                     \
1141         stock-icons/24/gtk-strikethrough.png            \
1142         stock-icons/24/gtk-delete.png                   \
1143         stock-icons/24/gtk-undelete-ltr.png             \
1144         stock-icons/24/gtk-undelete-rtl.png             \
1145         stock-icons/24/gtk-underline.png                \
1146         stock-icons/24/gtk-undo-ltr.png                 \
1147         stock-icons/24/gtk-undo-rtl.png                 \
1148         stock-icons/24/gtk-unindent-ltr.png             \
1149         stock-icons/24/gtk-unindent-rtl.png             \
1150         stock-icons/24/gtk-zoom-100.png                 \
1151         stock-icons/24/gtk-zoom-fit.png                 \
1152         stock-icons/24/gtk-zoom-in.png                  \
1153         stock-icons/24/gtk-zoom-out.png                 \
1154         stock-icons/24/gtk-go-forward-ltr.png           \
1155         stock-icons/32/gtk-dnd-multiple.png             \
1156         stock-icons/32/gtk-dnd.png                      \
1157         stock-icons/48/gtk-dialog-authentication.png    \
1158         stock-icons/48/gtk-dialog-error.png             \
1159         stock-icons/48/gtk-dialog-info.png              \
1160         stock-icons/48/gtk-dialog-question.png          \
1161         stock-icons/48/gtk-dialog-warning.png
1162
1163 GENERATED_ICONS = \
1164         stock-icons/16/gtk-go-back-rtl.png              \
1165         stock-icons/16/gtk-go-forward-rtl.png           \
1166         stock-icons/16/gtk-goto-first-rtl.png           \
1167         stock-icons/16/gtk-goto-last-rtl.png            \
1168         stock-icons/16/gtk-media-forward-rtl.png        \
1169         stock-icons/16/gtk-media-next-rtl.png           \
1170         stock-icons/16/gtk-media-previous-rtl.png       \
1171         stock-icons/16/gtk-media-rewind-rtl.png         \
1172         stock-icons/16/gtk-save.png                     \
1173         stock-icons/16/drive-harddisk.png               \
1174         stock-icons/16/folder.png                       \
1175         stock-icons/16/folder-remote.png                \
1176         stock-icons/16/user-home.png                    \
1177         stock-icons/16/user-desktop.png                 \
1178         stock-icons/16/text-x-generic.png               \
1179         stock-icons/24/gtk-go-back-rtl.png              \
1180         stock-icons/24/gtk-go-forward-rtl.png           \
1181         stock-icons/24/gtk-goto-first-rtl.png           \
1182         stock-icons/24/gtk-goto-last-rtl.png            \
1183         stock-icons/24/gtk-media-forward-rtl.png        \
1184         stock-icons/24/gtk-media-next-rtl.png           \
1185         stock-icons/24/gtk-media-previous-rtl.png       \
1186         stock-icons/24/gtk-media-rewind-rtl.png         \
1187         stock-icons/24/gtk-save.png                     \
1188         stock-icons/24/drive-harddisk.png               \
1189         stock-icons/24/folder.png                       \
1190         stock-icons/24/folder-remote.png                \
1191         stock-icons/24/user-home.png                    \
1192         stock-icons/24/user-desktop.png                 \
1193         stock-icons/24/text-x-generic.png
1194
1195 # need to copy the icons so that we can replace the generated ones with
1196 # symlinks, even in the readonly srcdir case
1197 stamp-icons: $(STOCK_ICONS)
1198         if [ ! -d stock-icons ]; then                                   \
1199           for d in 16 20 24 32 48; do                                   \
1200             mkdir -p stock-icons/$$d;                                   \
1201           done;                                                         \
1202           for f in $(STOCK_ICONS); do                                   \
1203             cp $(srcdir)/$$f $$(dirname $$f);                           \
1204           done;                                                         \
1205           chmod -R u+w stock-icons;                                     \
1206         fi &&                                                           \
1207         for i in 16 24; do                                              \
1208            (cd stock-icons/$$i                                          \
1209            && $(RM) gtk-go-back-rtl.png                                 \
1210            && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png        \
1211            && $(RM) gtk-go-forward-rtl.png                              \
1212            && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png        \
1213            && $(RM) gtk-goto-first-rtl.png                              \
1214            && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png      \
1215            && $(RM) gtk-goto-last-rtl.png                               \
1216            && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png      \
1217            && $(RM) gtk-media-forward-rtl.png                           \
1218            && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png\
1219            && $(RM) gtk-media-next-rtl.png                              \
1220            && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png \
1221            && $(RM) gtk-media-previous-rtl.png                          \
1222            && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png \
1223            && $(RM) gtk-media-rewind-rtl.png                            \
1224            && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png\
1225            && $(RM) gtk-save.png                                        \
1226            && $(LN_S) gtk-floppy.png gtk-save.png                       \
1227            && $(RM) drive-harddisk.png                                  \
1228            && $(LN_S) gtk-harddisk.png drive-harddisk.png               \
1229            && $(RM) folder.png                                          \
1230            && $(LN_S) gtk-directory.png folder.png                      \
1231            && $(RM) folder-remote.png                                   \
1232            && $(LN_S) gtk-directory.png folder-remote.png               \
1233            && $(RM) user-home.png                                       \
1234            && $(LN_S) gtk-directory.png user-home.png                   \
1235            && $(RM) user-desktop.png                                    \
1236            && $(LN_S) gtk-directory.png user-desktop.png                \
1237            && $(RM) text-x-generic.png                                  \
1238            && $(LN_S) gtk-file.png text-x-generic.png                   \
1239         ) done                                                          \
1240         && touch stamp-icons
1241
1242 if CROSS_COMPILING
1243 gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE)
1244 else
1245 gtk_update_icon_cache_program =                                                 \
1246         GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders    \
1247            ./gtk-update-icon-cache
1248 endif
1249
1250 gtkbuiltincache.h: @REBUILD@ stamp-icons
1251         $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT)
1252         $(gtk_update_icon_cache_program) --force --ignore-theme-index           \
1253            --source builtin_icons stock-icons > gtkbuiltincache.h.tmp &&        \
1254         mv gtkbuiltincache.h.tmp gtkbuiltincache.h
1255
1256 EXTRA_DIST +=                   \
1257         $(STOCK_ICONS)          \
1258         $(GENERATED_ICONS)      \
1259         line-arrow.xbm          \
1260         line-wrap.xbm           \
1261         tree_plus.xbm           \
1262         tree_minus.xbm          \
1263         tree_minus.xpm          \
1264         tree_plus.xpm           \
1265         gtk.def                 \
1266         gtk-builder-convert     \
1267         gtk-win32.rc            \
1268         gtk-win32.rc.in         \
1269         gtkwin32embed.h         \
1270         gtkwin32embedwidget.h   \
1271         gtkwin32embedwidget.c   \
1272         gtkprint-win32.h        \
1273         gtkprint-win32.c        \
1274         gtksearchenginequartz.h \
1275         gtkrc.default           \
1276         gtkrc.key.default       \
1277         gtkrc.key.emacs         \
1278         makefile.msc            \
1279         makefile.msc.in         \
1280         makegtkalias.pl         \
1281         aliasfilescheck.sh      \
1282         abicheck.sh             \
1283         pltcheck.sh             \
1284         gtktypebuiltins.c.template      \
1285         gtktypebuiltins.h.template
1286
1287
1288 install-data-local: