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