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