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