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