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