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