1 # Makefile.am for gtk+/gtk
2 include $(top_srcdir)/Makefile.decl
3 -include $(INTROSPECTION_MAKEFILE)
5 INTROSPECTION_SCANNER_ARGS = \
6 --add-include-path=../gdk \
8 INTROSPECTION_COMPILER_ARGS = \
9 --includedir=$(srcdir) \
14 GTK_PRINT_PREVIEW_COMMAND="open -a /Applications/Preview.app %f"
16 GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f"
19 SUBDIRS = a11y . tests
22 GTK_PRINT_BACKENDS=file,papi,cups
25 GTK_PRINT_BACKENDS=file,cups
28 GTK_PRINT_BACKENDS=file,papi
30 GTK_PRINT_BACKENDS=file,lpr
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)\" \
45 -DGTK_PRINT_BACKENDS=\"$(GTK_PRINT_BACKENDS)\" \
46 -DGTK_PRINT_PREVIEW_COMMAND=\"$(GTK_PRINT_PREVIEW_COMMAND)\" \
48 -I$(top_builddir)/gtk \
49 -I$(top_srcdir) -I../gdk \
51 -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED \
52 -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED \
55 $(INCLUDED_IMMODULE_DEFINE)
58 no_undefined = -no-undefined
63 gtk_win32_symbols = -export-symbols $(srcdir)/gtk.def
65 gtk_win32_res = gtk-win32-res.o
66 gtk_win32_res_ldflag = -Wl,gtk-win32-res.o
68 gtk-win32-res.o : gtk-win32.rc
69 $(WINDRES) gtk-win32.rc $@
71 install-def-file: gtk.def
72 $(INSTALL) $(srcdir)/gtk.def $(DESTDIR)$(libdir)/gtk-win32-3.0.def
74 -rm $(DESTDIR)$(libdir)/gtk-win32-3.0.def
81 noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
83 gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
84 lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
87 $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
90 -rm $(DESTDIR)$(libdir)/gtk-win32-$(GTK_API_VERSION).lib
96 # This places the generated .def file in srcdir, since it is expected to be there.
97 # (The one from a tarball is)
99 $(AM_V_GEN) (echo -e EXPORTS; $(CPP) -P -DG_OS_WIN32 - <$(srcdir)/gtk.symbols | $(SED) -e '/^$$/d' -e 's/^/ /') > $(srcdir)/gtk.def
101 TESTS_ENVIRONMENT = srcdir="$(srcdir)" gtk_all_c_sources="$(gtk_all_c_sources)"
106 libgtkincludedir = $(includedir)/gtk-3.0/gtk
108 $(top_builddir)/gdk/libgdk-3.la \
109 $(top_builddir)/gtk/a11y/libgail.la \
112 $(top_builddir)/gdk/libgdk-3.la \
113 $(top_builddir)/gtk/a11y/libgail.la
115 # libtool stuff: set version and export symbols for resolving
116 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
117 # we use the general approach here
120 -version-info $(LT_VERSION_INFO) \
121 -export-dynamic $(no_undefined) $(LIBTOOL_EXPORT_OPTIONS) \
122 -rpath $(libdir) $(libgtk_target_ldflags)
126 if HAVE_INCLUDED_IMMMODULES
127 @cd $(top_builddir)/modules/input && $(MAKE) $(AM_MAKEFLAGS) included-modules
129 libadd += $(INCLUDED_IMMODULE_OBJ)
130 deps += $(INCLUDED_IMMODULE_OBJ)
132 $(INCLUDED_IMMODULE_OBJ): included-modules
136 .PHONY: included-modules
139 # setup source file variables
142 # GTK+ header files for public installation (non-generated, or generated
145 deprecated_h_sources = \
146 deprecated/gtkfontsel.h \
147 deprecated/gtkhandlebox.h \
148 deprecated/gtkhbbox.h \
149 deprecated/gtkhbox.h \
150 deprecated/gtkhpaned.h \
151 deprecated/gtkhscale.h \
152 deprecated/gtkhscrollbar.h \
153 deprecated/gtkhseparator.h \
154 deprecated/gtkstyle.h \
156 deprecated/gtktable.h \
157 deprecated/gtktearoffmenuitem.h \
158 deprecated/gtkvbbox.h \
159 deprecated/gtkvbox.h \
160 deprecated/gtkvscale.h \
161 deprecated/gtkvscrollbar.h \
162 deprecated/gtkvseparator.h \
163 deprecated/gtkvpaned.h
165 gtk_public_h_sources = \
179 gtkappchooserbutton.h \
180 gtkappchooserdialog.h \
181 gtkappchooserwidget.h \
196 gtkcellareacontext.h \
201 gtkcellrendereraccel.h \
202 gtkcellrenderercombo.h \
203 gtkcellrendererpixbuf.h \
204 gtkcellrendererprogress.h \
205 gtkcellrendererspin.h \
206 gtkcellrendererspinner.h\
207 gtkcellrenderertext.h \
208 gtkcellrenderertoggle.h \
215 gtkcolorseldialog.h \
228 gtkentrycompletion.h \
233 gtkfilechooserbutton.h \
234 gtkfilechooserdialog.h \
235 gtkfilechooserwidget.h \
240 gtkfontchooserdialog.h \
241 gtkfontchooserwidget.h \
252 gtkimcontextsimple.h \
254 gtkimmulticontext.h \
267 gtkmenutoolbutton.h \
271 gtkmountoperation.h \
274 gtkoffscreenwindow.h \
282 gtkprintoperation.h \
283 gtkprintoperationpreview.h \
289 gtkradiotoolbutton.h \
293 gtkrecentchooserdialog.h \
294 gtkrecentchoosermenu.h \
295 gtkrecentchooserwidget.h \
302 gtkscrolledwindow.h \
305 gtkseparatormenuitem.h \
306 gtkseparatortoolitem.h \
318 gtkstyleproperties.h \
323 gtktextattributes.h \
325 gtktextbufferrichtext.h \
336 gtktoggletoolbutton.h \
346 gtktreemodelfilter.h \
352 gtktreeviewcolumn.h \
361 gtk_unix_print_public_h_sources = \
362 gtkpagesetupunixdialog.h \
363 gtkprintunixdialog.h \
369 # Installed header files without compatibility guarantees
370 # that are not included in gtk/gtk.h
371 gtk_semi_private_h_sources = \
375 gtk_appchooser_impl_h_sources = \
376 gtkappchooseronlinepk.h
380 gtk_appchooser_impl_c_sources = \
381 gtkappchooseronlinepk.c
384 # GTK+ header files that don't get installed
385 gtk_private_h_sources = \
386 gtkaccelgroupprivate.h \
387 gtkanimationdescription.h \
388 gtkappchooserprivate.h \
389 gtkappchoosermodule.h \
390 gtkappchooseronline.h \
391 gtkbindingsprivate.h \
392 gtkborderimageprivate.h \
394 gtkbuilderprivate.h \
396 gtkcellareaboxcontextprivate.h \
397 gtkcontainerprivate.h \
398 gtkcssparserprivate.h \
399 gtkcssproviderprivate.h \
400 gtkcsssectionprivate.h \
401 gtkcssselectorprivate.h \
402 gtkcsstypesprivate.h \
403 gtkcustompaperunixdialog.h \
406 gtkfilechooserdefault.h \
407 gtkfilechooserembed.h \
408 gtkfilechooserentry.h \
409 gtkfilechooserprivate.h \
410 gtkfilechooserutils.h \
412 gtkfilesystemmodel.h \
413 gtkfontchooserprivate.h \
414 gtkfontchooserutils.h \
417 gtkimmoduleprivate.h \
418 gtkimcontextsimpleseqs.h \
422 gtkmenuitemprivate.h \
423 gtkmenushellprivate.h \
426 gtkmodulesprivate.h \
427 gtkmountoperationprivate.h \
428 gtknumerableiconprivate.h \
429 gtkorientableprivate.h \
432 gtkprintoperation-private.h \
437 gtkrecentchooserdefault.h \
438 gtkrecentchooserprivate.h \
439 gtkrecentchooserutils.h \
440 gtkroundedboxprivate.h \
443 gtksearchenginesimple.h \
444 gtkselectionprivate.h \
445 gtksettingsprivate.h \
447 gtksizegroup-private.h \
449 gtkstylecontextprivate.h \
450 gtkstylepropertiesprivate.h \
451 gtkstylepropertyprivate.h \
453 gtktextbufferserialize.h \
454 gtktextchildprivate.h \
455 gtktextiterprivate.h \
456 gtktextmarkprivate.h \
458 gtktexttagprivate.h \
461 gtkthemingengineprivate.h \
463 gtktoolpaletteprivate.h \
469 $(gtk_clipboard_dnd_h_sources) \
470 $(gtk_appchooser_impl_h_sources)
472 # GTK+ C sources to build the library from
473 deprecated_c_sources = \
474 deprecated/gtkfontsel.c \
475 deprecated/gtkhandlebox.c \
476 deprecated/gtkhbbox.c \
477 deprecated/gtkhbox.c \
478 deprecated/gtkhpaned.c \
479 deprecated/gtkhscale.c \
480 deprecated/gtkhscrollbar.c \
481 deprecated/gtkhseparator.c \
483 deprecated/gtkstyle.c \
484 deprecated/gtktable.c \
485 deprecated/gtktearoffmenuitem.c \
486 deprecated/gtkvbbox.c \
487 deprecated/gtkvbox.c \
488 deprecated/gtkvscale.c \
489 deprecated/gtkvscrollbar.c \
490 deprecated/gtkvseparator.c \
491 deprecated/gtkvpaned.c
493 gtk_base_c_sources = \
494 $(deprecated_c_sources) \
497 gtksearchenginesimple.c \
510 gtkappchooserwidget.c \
511 gtkappchooserbutton.c \
512 gtkappchooserdialog.c \
513 gtkappchoosermodule.c \
514 gtkappchooseronline.c \
516 gtkanimationdescription.c \
533 gtkcellareaboxcontext.c \
534 gtkcellareacontext.c \
538 gtkcellrendereraccel.c \
539 gtkcellrenderercombo.c \
540 gtkcellrendererpixbuf.c \
541 gtkcellrendererprogress.c \
542 gtkcellrendererspin.c \
543 gtkcellrendererspinner.c \
544 gtkcellrenderertext.c \
545 gtkcellrenderertoggle.c \
551 gtkcolorseldialog.c \
565 gtkentrycompletion.c \
569 gtkfilechooserbutton.c \
570 gtkfilechooserdefault.c \
571 gtkfilechooserdialog.c \
572 gtkfilechooserembed.c \
573 gtkfilechooserentry.c \
574 gtkfilechooserutils.c \
575 gtkfilechooserwidget.c \
578 gtkfilesystemmodel.c \
582 gtkfontchooserdialog.c \
583 gtkfontchooserutils.c \
584 gtkfontchooserwidget.c \
590 gtkiconcachevalidator.c \
597 gtkimcontextsimple.c \
599 gtkimmulticontext.c \
614 gtkmenutoolbutton.c \
620 gtkmountoperation.c \
623 gtkoffscreenwindow.c \
632 gtkprintoperation.c \
633 gtkprintoperationpreview.c \
641 gtkradiotoolbutton.c \
645 gtkrecentchooserdefault.c \
646 gtkrecentchooserdialog.c \
647 gtkrecentchoosermenu.c \
648 gtkrecentchooserwidget.c \
649 gtkrecentchooserutils.c \
658 gtkscrolledwindow.c \
661 gtkseparatormenuitem.c \
662 gtkseparatortoolitem.c \
674 gtkstyleproperties.c \
680 gtktextattributes.c \
683 gtktextbufferrichtext.c \
684 gtktextbufferserialize.c \
700 gtktoggletoolbutton.c \
712 gtktreemodelfilter.c \
718 gtktreeviewcolumn.c \
726 $(gtk_clipboard_dnd_c_sources) \
727 $(gtk_appchooser_impl_c_sources)
729 gtk_c_sources = $(gtk_base_c_sources)
730 gtk_all_c_sources = $(gtk_base_c_sources)
732 gtk_os_unix_c_sources = \
733 gtkcustompaperunixdialog.c \
734 gtkpagesetupunixdialog.c \
737 gtkprinteroptionset.c \
738 gtkprinteroptionwidget.c \
740 gtkprintoperation-unix.c \
741 gtkprintunixdialog.c \
743 gtksearchenginebeagle.c \
744 gtksearchenginetracker.c
745 gtk_all_c_sources += $(gtk_os_unix_c_sources)
747 gtk_private_h_sources += \
748 gtkiconcachevalidator.h \
750 gtkprinter-private.h \
752 gtkprinteroptionset.h \
753 gtkprinteroptionwidget.h \
754 gtksearchenginebeagle.h \
755 gtksearchenginetracker.h
756 gtk_c_sources += $(gtk_os_unix_c_sources)
759 gtk_os_win32_c_sources = \
761 gtkprintoperation-win32.c \
763 gtk_all_c_sources += $(gtk_os_win32_c_sources)
765 gtk_private_h_sources += gtkprint-win32.h
766 gtk_c_sources += $(gtk_os_win32_c_sources)
769 gtk_use_x11_c_sources = \
774 gtkmountoperation-x11.c
775 gtk_use_win32_c_sources = \
777 gtkwin32embedwidget.c \
778 gtkmountoperation-stub.c
779 gtk_use_quartz_c_sources = \
780 gtksearchenginequartz.c \
781 gtkmountoperation-stub.c \
783 gtk_use_stub_c_sources = \
784 gtkmountoperation-stub.c
785 gtk_all_c_sources += $(gtk_use_x11_c_sources) $(gtk_use_win32_c_sources) $(gtk_use_quartz_c_sources) $(gtk_use_stub_c_sources)
787 gtk_private_h_sources += \
791 gtk_c_sources += $(gtk_use_x11_c_sources)
794 gtk_private_h_sources += \
796 gtkwin32embedwidget.h
797 gtk_c_sources += $(gtk_use_win32_c_sources)
800 gtk_private_h_sources += \
801 gtksearchenginequartz.h \
803 gtk_c_sources += $(gtk_use_quartz_c_sources)
804 libgtk_3_la_CFLAGS = "-xobjective-c"
807 gtk_c_sources += $(gtk_use_stub_c_sources)
813 gtk_clipboard_dnd_c_sources = \
814 gtkclipboard-quartz.c \
817 gtk_clipboard_dnd_c_sources = gtkclipboard.c gtkdnd.c
820 # we use our own built_sources variable rules to avoid automake's
821 # BUILT_SOURCES oddities
822 # we generate frequently rebuild files piggyback on a stamp file, so sources
823 # depending on them only get rebuild when the built source actually changed
826 # built sources that get installed with the header files
827 gtk_built_public_sources = \
830 # built headers that don't get installed
831 gtk_built_private_headers = \
835 gtk_built_sources = \
839 ${gtk_built_private_headers} \
840 ${gtk_built_public_sources}
843 stamp-gtkmarshalers.h \
844 stamp-gtktypebuiltins.h \
847 # non-header sources (headers should be specified in the above variables)
848 # that don't serve as direct make target sources, i.e. they don't have
849 # their own .lo rules and don't get publically installed
850 gtk_extra_sources = \
852 paper_names_offsets.c \
854 gtkstatusicon-quartz.c \
861 # setup GTK+ sources and their dependencies
863 MAINTAINERCLEANFILES = \
864 $(gtk_built_sources) \
867 stock-icons/icon-theme.cache
870 EXTRA_DIST += $(gtk_private_h_sources) $(gtk_extra_sources)
871 EXTRA_DIST += $(gtk_built_sources)
872 EXTRA_DIST += $(STOCK_ICONS)
875 # rules to generate built sources
877 # setup autogeneration dependencies
878 gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc xgen-gtfsrc.c xgen-gtf
879 CLEANFILES = $(gen_sources)
881 BUILT_SOURCES = $(gtk_built_sources) stamp-icons
883 # all autogenerated files need to be generated in the srcdir,
884 # so old versions get remade and are not confused with newer
885 # versions in the build dir. thus a development setup requires
886 # srcdir to be writable, passing --disable-rebuilds to
887 # ../configure will supress all autogeneration rules.
888 gtkmarshalers.h: stamp-gtkmarshalers.h
890 stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list
891 $(AM_V_GEN) $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --header >> xgen-gmlh \
892 && (cmp -s xgen-gmlh gtkmarshalers.h || cp xgen-gmlh gtkmarshalers.h) \
894 && echo timestamp > $(@F)
895 gtkmarshalers.c: @REBUILD@ gtkmarshalers.list
896 $(AM_V_GEN) (echo "#include \"gtkmarshalers.h\""; \
897 $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --body) >> xgen-gmlc \
898 && cp xgen-gmlc gtkmarshalers.c \
901 gtktypebuiltins.h: stamp-gtktypebuiltins.h
903 stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) $(deprecated_h_sources) gtktypebuiltins.h.template
904 $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.h.template \
905 $(gtk_public_h_sources) $(deprecated_h_sources) ) >> xgen-gtbh \
906 && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h ) \
908 && echo timestamp > $(@F)
909 gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) $(deprecated_h_sources) gtktypebuiltins.c.template
910 $(AM_V_GEN) ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.c.template \
911 $(gtk_public_h_sources) $(deprecated_h_sources) ) > xgen-gtbc \
912 && cp xgen-gtbc gtktypebuiltins.c \
915 gtktypefuncs.c: @REBUILD@ stamp-gtktypebuiltins.h $(top_srcdir)/gtk/*.h $(top_srcdir)/gtk/deprecated/*.h $(top_srcdir)/gdk/*.h Makefile
916 $(AM_V_GEN) echo '#include <gtk/gtkx.h>' > xgen-gtfsrc.c && \
917 ${CPP} $(DEFS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \
918 $(GREP) -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \
920 $(SED) '{ s/^/*tp++ = /; s/$$/();/; s/^.*\(gdk_x11\|gtk_plug_\|gtk_socket_\).*$$/#ifdef GDK_WINDOWING_X11\n&\n#endif/; }' > xgen-gtf \
921 && cp xgen-gtf $@ && rm -f xgen-gtf
922 gtktestutils.c: gtktypefuncs.c
925 lib_LTLIBRARIES = libgtk-3.la
927 gtkincludedir = $(includedir)/gtk-3.0/gtk
928 gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_semi_private_h_sources) $(gtk_built_public_sources) gtkversion.h
930 deprecatedincludedir = $(includedir)/gtk-3.0/gtk/deprecated
931 deprecatedinclude_HEADERS= $(deprecated_h_sources)
933 gtkunixprintincludedir = $(includedir)/gtk-3.0/unix-print/gtk
934 gtkunixprintinclude_HEADERS = $(gtk_unix_print_public_h_sources)
936 libgtk_3_la_SOURCES = $(gtk_c_sources)
937 libgtk_3_la_LDFLAGS = $(libtool_opts)
938 libgtk_3_la_LIBADD = $(libadd)
939 libgtk_3_la_DEPENDENCIES = $(deps)
942 libgtk_3_la_LIBADD += -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32
943 libgtk_3_la_LDFLAGS += -Wl,-luuid
944 libgtk_3_la_DEPENDENCIES += $(gtk_def) $(gtk_win32_res) $(deps)
945 libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols)
949 if DISABLE_EXPLICIT_DEPS
950 $(SHELL) $(top_srcdir)/sanitize-la.sh $(DESTDIR)$(libdir)/libgtk-3.la
954 install-mac-key-theme:
955 $(mkdir_p) $(DESTDIR)$(datadir)/themes/Mac/gtk-3.0
956 $(INSTALL_DATA) $(srcdir)/gtk-keys.css.mac $(DESTDIR)$(datadir)/themes/Mac/gtk-3.0/gtk-keys.css
957 uninstall-mac-key-theme:
958 rm -f $(DESTDIR)$(datadir)/themes/Mac/gtk-3.0/gtk-keys.css
960 install-mac-key-theme:
961 uninstall-mac-key-theme:
964 dist-hook: ../build/win32/vs9/gtk.vcproj ../build/win32/vs10/gtk.vcxproj ../build/win32/vs10/gtk.vcxproj.filters
966 ../build/win32/vs9/gtk.vcproj: ../build/win32/vs9/gtk.vcprojin
967 for F in $(gtk_base_c_sources) $(gtk_os_win32_c_sources) $(gtk_use_win32_c_sources); do \
969 *.c) echo ' <File RelativePath="..\..\..\gtk\'$$F'" />' \
972 done >libgtk.sourcefiles
973 $(CPP) -P - <$(top_srcdir)/build/win32/vs9/gtk.vcprojin >$@
974 rm libgtk.sourcefiles
976 ../build/win32/vs10/gtk.vcxproj: ../build/win32/vs10/gtk.vcxprojin
977 for F in $(gtk_base_c_sources) $(gtk_os_win32_c_sources) $(gtk_use_win32_c_sources); do \
979 *.c) echo ' <ClCompile Include="..\..\..\gtk\'$$F'" />' \
982 done >libgtk.vs10.sourcefiles
983 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gtk.vcxprojin >$@
984 rm libgtk.vs10.sourcefiles
986 ../build/win32/vs10/gtk.vcxproj.filters: ../build/win32/vs10/gtk.vcxproj.filtersin
987 for F in $(gtk_base_c_sources) $(gtk_os_win32_c_sources) $(gtk_use_win32_c_sources); do \
989 *.c) echo ' <ClCompile Include="..\..\..\gtk\'$$F'"><Filter>Source Files</Filter></ClCompile>' \
992 done >libgtk.vs10.sourcefiles.filters
993 $(CPP) -P - <$(top_srcdir)/build/win32/vs10/gtk.vcxproj.filtersin >$@
994 rm libgtk.vs10.sourcefiles.filters
996 # Install a RC file for the default GTK+ theme, and key themes
997 install-data-local: install-ms-lib install-def-file install-mac-key-theme
998 $(mkdir_p) $(DESTDIR)$(datadir)/themes/Raleigh/gtk-3.0
999 $(INSTALL_DATA) $(srcdir)/gtk.css.raleigh $(DESTDIR)$(datadir)/themes/Raleigh/gtk-3.0/gtk.css
1000 $(mkdir_p) $(DESTDIR)$(datadir)/themes/Default/gtk-3.0
1001 $(INSTALL_DATA) $(srcdir)/gtk-keys.css.default $(DESTDIR)$(datadir)/themes/Default/gtk-3.0/gtk-keys.css
1002 $(mkdir_p) $(DESTDIR)$(datadir)/themes/Emacs/gtk-3.0
1003 $(INSTALL_DATA) $(srcdir)/gtk-keys.css.emacs $(DESTDIR)$(datadir)/themes/Emacs/gtk-3.0/gtk-keys.css
1005 uninstall-local: uninstall-ms-lib uninstall-def-file uninstall-mac-key-theme
1006 rm -f $(DESTDIR)$(datadir)/themes/Raleigh/gtk-3.0/gtk.css
1007 rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-3.0/gtk-keys.css
1008 rm -f $(DESTDIR)$(datadir)/themes/Emacs/gtk-3.0/gtk-keys.css
1010 # if srcdir!=builddir, clean out maintainer-clean files from builddir
1011 # this allows dist to pass.
1013 if test $(srcdir) != .; then \
1014 rm -f $(MAINTAINERCLEANFILES); \
1015 rm -rf stock-icons; \
1018 DEPS = libgtk-3.la $(top_builddir)/gdk/libgdk-3.la
1020 TEST_DEPS = $(DEPS) immodules.cache
1024 $(top_builddir)/gdk/libgdk-3.la \
1027 if HAVE_INTROSPECTION
1028 introspection_files = \
1029 $(filter-out %private.h gtktextdisplay.h gtktextlayout.h, $(gtkinclude_HEADERS) $(deprecatedinclude_HEADERS)) \
1030 $(gtk_base_c_sources) \
1031 gtkprintoperation-unix.c \
1036 introspection_files += \
1041 Gtk-3.0.gir: $(INTROSPECTION_SCANNER) libgtk-3.la $(top_builddir)/gdk/Gdk-3.0.gir Makefile
1042 Gtk_3_0_gir_SCANNERFLAGS = \
1043 --add-include-path=$(top_builddir)/gdk \
1044 --include-uninstalled=$(top_builddir)/gdk/Gdk-3.0.gir
1045 Gtk_3_0_gir_INCLUDES = Atk-1.0
1047 Gtk_3_0_gir_SCANNERFLAGS += --add-include-path=$(top_builddir)/gdk/x11
1048 Gtk_3_0_gir_INCLUDES += xlib-2.0
1050 Gtk_3_0_gir_SCANNERFLAGS += --c-include="gtk/gtkx.h"
1051 Gtk_3_0_gir_CFLAGS = \
1053 -DGTK_TEXT_USE_INTERNAL_UNSUPPORTED_API
1054 Gtk_3_0_gir_LIBS = libgtk-3.la
1055 Gtk_3_0_gir_FILES = $(introspection_files)
1056 Gtk_3_0_gir_EXPORT_PACKAGES = gtk+-3.0
1057 INTROSPECTION_GIRS += Gtk-3.0.gir
1059 girdir = $(datadir)/gir-1.0
1060 gir_DATA = $(INTROSPECTION_GIRS)
1062 typelibsdir = $(libdir)/girepository-1.0
1063 typelibs_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
1065 CLEANFILES += $(gir_DATA) $(typelibs_DATA)
1072 gtk-query-immodules-3.0
1075 bin_PROGRAMS += gtk-update-icon-cache
1079 # Workaround for UAC silliness: programs with "update" in their name
1080 # are believed to be installers and require elevated privileges to be
1081 # used... Use a manifest file to tell Windows that
1082 # gtk-update-icon-cache.exe doesn't require any special privileges.
1084 GTK_UPDATE_ICON_CACHE_MANIFEST = gtk-update-icon-cache.exe.manifest
1086 bin_SCRIPTS = $(GTK_UPDATE_ICON_CACHE_MANIFEST)
1088 $(GTK_UPDATE_ICON_CACHE_MANIFEST):
1089 (echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' ; \
1090 echo '<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">' ; \
1091 echo ' <assemblyIdentity version="1.0.0.0"' ; \
1092 echo ' processorArchitecture="'$(EXE_MANIFEST_ARCHITECTURE)'"' ; \
1093 echo ' name="gtk-update-icon-cache.exe"' ; \
1094 echo ' type="win32"/>' ; \
1095 echo ' <!-- Identify the application security requirements. -->' ; \
1096 echo ' <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">' ; \
1097 echo ' <security>' ; \
1098 echo ' <requestedPrivileges>' ; \
1099 echo ' <requestedExecutionLevel' ; \
1100 echo ' level="asInvoker"' ; \
1101 echo ' uiAccess="false"/>' ; \
1102 echo ' </requestedPrivileges>' ; \
1103 echo ' </security>' ; \
1104 echo ' </trustInfo>' ; \
1105 echo '</assembly>' ) >$@
1110 gtk_query_immodules_3_0_DEPENDENCIES = $(DEPS)
1111 gtk_query_immodules_3_0_LDADD = $(LDADDS)
1112 gtk_query_immodules_3_0_SOURCES = queryimmodules.c
1115 gtk_update_icon_cache_LDADD = $(GDK_PIXBUF_LIBS)
1116 gtk_update_icon_cache_SOURCES = updateiconcache.c
1119 .PHONY: files test test-debug
1122 @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
1127 stock-icons/16/document-open-recent.png \
1128 stock-icons/16/help-about.png \
1129 stock-icons/16/list-add.png \
1130 stock-icons/16/media-optical.png \
1131 stock-icons/16/window-close.png \
1132 stock-icons/16/gtk-connect.png \
1133 stock-icons/16/gtk-convert.png \
1134 stock-icons/16/edit-clear.png \
1135 stock-icons/16/edit-copy.png \
1136 stock-icons/16/edit-cut.png \
1137 stock-icons/16/edit-delete.png \
1138 stock-icons/16/folder.png \
1139 stock-icons/16/gtk-disconnect.png \
1140 stock-icons/16/gtk-edit.png \
1141 stock-icons/16/system-run.png \
1142 stock-icons/16/text-x-generic.png \
1143 stock-icons/16/edit-find-replace.png \
1144 stock-icons/16/edit-find.png \
1145 stock-icons/16/media-floppy.png \
1146 stock-icons/16/view-fullscreen.png \
1147 stock-icons/16/go-previous-ltr.png \
1148 stock-icons/16/go-down.png \
1149 stock-icons/16/go-next-ltr.png \
1150 stock-icons/16/go-bottom.png \
1151 stock-icons/16/go-first-ltr.png \
1152 stock-icons/16/go-last-ltr.png \
1153 stock-icons/16/go-top.png \
1154 stock-icons/16/go-up.png \
1155 stock-icons/16/gtk-caps-lock-warning.png \
1156 stock-icons/16/gtk-color-picker.png \
1157 stock-icons/16/drive-harddisk.png \
1158 stock-icons/16/help-contents.png \
1159 stock-icons/16/go-home.png \
1160 stock-icons/16/format-indent-more-ltr.png \
1161 stock-icons/16/format-indent-more-rtl.png \
1162 stock-icons/16/gtk-index.png \
1163 stock-icons/16/dialog-information.png \
1164 stock-icons/16/go-jump-ltr.png \
1165 stock-icons/16/go-jump-rtl.png \
1166 stock-icons/16/format-justify-center.png \
1167 stock-icons/16/format-justify-fill.png \
1168 stock-icons/16/format-justify-left.png \
1169 stock-icons/16/format-justify-right.png \
1170 stock-icons/16/view-restore.png \
1171 stock-icons/16/media-seek-forward-ltr.png \
1172 stock-icons/16/media-skip-forward-ltr.png \
1173 stock-icons/16/media-playback-pause.png \
1174 stock-icons/16/media-playback-start-ltr.png \
1175 stock-icons/16/media-playback-start-rtl.png \
1176 stock-icons/16/media-skip-backward-ltr.png \
1177 stock-icons/16/media-record.png \
1178 stock-icons/16/media-seek-backward-ltr.png \
1179 stock-icons/16/media-playback-stop.png \
1180 stock-icons/16/image-missing.png \
1181 stock-icons/16/network-idle.png \
1182 stock-icons/16/document-new.png \
1183 stock-icons/16/document-open.png \
1184 stock-icons/16/gtk-orientation-landscape.png \
1185 stock-icons/16/gtk-orientation-portrait.png \
1186 stock-icons/16/gtk-orientation-reverse-landscape.png \
1187 stock-icons/16/gtk-orientation-reverse-portrait.png \
1188 stock-icons/16/gtk-page-setup.png \
1189 stock-icons/16/edit-paste.png \
1190 stock-icons/16/gtk-preferences.png \
1191 stock-icons/16/document-print.png \
1192 stock-icons/16/printer-error.png \
1193 stock-icons/16/printer-paused.png \
1194 stock-icons/16/document-print-preview.png \
1195 stock-icons/16/printer-info.png \
1196 stock-icons/16/printer-warning.png \
1197 stock-icons/16/document-properties.png \
1198 stock-icons/16/application-exit.png \
1199 stock-icons/16/edit-redo-ltr.png \
1200 stock-icons/16/edit-redo-rtl.png \
1201 stock-icons/16/view-refresh.png \
1202 stock-icons/16/list-remove.png \
1203 stock-icons/16/document-revert-ltr.png \
1204 stock-icons/16/document-revert-rtl.png \
1205 stock-icons/16/document-save-as.png \
1206 stock-icons/16/edit-select-all.png \
1207 stock-icons/16/gtk-select-color.png \
1208 stock-icons/16/gtk-select-font.png \
1209 stock-icons/16/view-sort-ascending.png \
1210 stock-icons/16/view-sort-descending.png \
1211 stock-icons/16/tools-check-spelling.png \
1212 stock-icons/16/process-stop.png \
1213 stock-icons/16/format-text-strikethrough.png \
1214 stock-icons/16/gtk-font.png \
1215 stock-icons/16/gtk-undelete-ltr.png \
1216 stock-icons/16/gtk-undelete-rtl.png \
1217 stock-icons/16/format-text-underline.png \
1218 stock-icons/16/edit-undo-ltr.png \
1219 stock-icons/16/edit-undo-rtl.png \
1220 stock-icons/16/format-indent-less-ltr.png \
1221 stock-icons/16/format-indent-less-rtl.png \
1222 stock-icons/16/zoom-original.png \
1223 stock-icons/16/zoom-fit-best.png \
1224 stock-icons/16/zoom-in.png \
1225 stock-icons/16/zoom-out.png \
1226 stock-icons/16/format-text-italic.png \
1227 stock-icons/16/format-text-bold.png \
1228 stock-icons/20/gtk-apply.png \
1229 stock-icons/20/gtk-cancel.png \
1230 stock-icons/20/window-close.png \
1231 stock-icons/20/gtk-no.png \
1232 stock-icons/20/gtk-ok.png \
1233 stock-icons/20/gtk-yes.png \
1234 stock-icons/24/audio-volume-high.png \
1235 stock-icons/24/audio-volume-low.png \
1236 stock-icons/24/audio-volume-medium.png \
1237 stock-icons/24/audio-volume-muted.png \
1238 stock-icons/24/document-open-recent.png \
1239 stock-icons/24/help-about.png \
1240 stock-icons/24/list-add.png \
1241 stock-icons/24/format-text-bold.png \
1242 stock-icons/24/media-optical.png \
1243 stock-icons/24/edit-clear.png \
1244 stock-icons/24/window-close.png \
1245 stock-icons/24/gtk-caps-lock-warning.png \
1246 stock-icons/24/gtk-color-picker.png \
1247 stock-icons/24/gtk-connect.png \
1248 stock-icons/24/gtk-convert.png \
1249 stock-icons/24/edit-copy.png \
1250 stock-icons/24/edit-cut.png \
1251 stock-icons/24/folder.png \
1252 stock-icons/24/gtk-disconnect.png \
1253 stock-icons/24/gtk-edit.png \
1254 stock-icons/24/system-run.png \
1255 stock-icons/24/text-x-generic.png \
1256 stock-icons/24/edit-find-replace.png \
1257 stock-icons/24/edit-find.png \
1258 stock-icons/24/gtk-font.png \
1259 stock-icons/24/view-fullscreen.png \
1260 stock-icons/24/go-previous-ltr.png \
1261 stock-icons/24/go-top.png \
1262 stock-icons/24/go-down.png \
1263 stock-icons/24/go-bottom.png \
1264 stock-icons/24/go-first-ltr.png \
1265 stock-icons/24/go-last-ltr.png \
1266 stock-icons/24/go-up.png \
1267 stock-icons/24/drive-harddisk.png \
1268 stock-icons/24/help-contents.png \
1269 stock-icons/24/go-home.png \
1270 stock-icons/24/format-indent-more-ltr.png \
1271 stock-icons/24/format-indent-more-rtl.png \
1272 stock-icons/24/gtk-index.png \
1273 stock-icons/24/dialog-information.png \
1274 stock-icons/24/format-text-italic.png \
1275 stock-icons/24/go-jump-ltr.png \
1276 stock-icons/24/go-jump-rtl.png \
1277 stock-icons/24/format-justify-center.png \
1278 stock-icons/24/format-justify-fill.png \
1279 stock-icons/24/format-justify-left.png \
1280 stock-icons/24/format-justify-right.png \
1281 stock-icons/24/view-restore.png \
1282 stock-icons/24/media-seek-forward-ltr.png \
1283 stock-icons/24/media-skip-forward-ltr.png \
1284 stock-icons/24/media-playback-pause.png \
1285 stock-icons/24/media-playback-start-ltr.png \
1286 stock-icons/24/media-playback-start-rtl.png \
1287 stock-icons/24/media-skip-backward-ltr.png \
1288 stock-icons/24/media-record.png \
1289 stock-icons/24/media-seek-backward-ltr.png \
1290 stock-icons/24/media-playback-stop.png \
1291 stock-icons/24/image-missing.png \
1292 stock-icons/24/network-idle.png \
1293 stock-icons/24/document-new.png \
1294 stock-icons/24/document-open.png \
1295 stock-icons/24/gtk-orientation-reverse-landscape.png \
1296 stock-icons/24/gtk-orientation-landscape.png \
1297 stock-icons/24/gtk-orientation-reverse-portrait.png \
1298 stock-icons/24/gtk-orientation-portrait.png \
1299 stock-icons/24/gtk-page-setup.png \
1300 stock-icons/24/edit-paste.png \
1301 stock-icons/24/gtk-preferences.png \
1302 stock-icons/24/document-print.png \
1303 stock-icons/24/printer-error.png \
1304 stock-icons/24/printer-paused.png \
1305 stock-icons/24/document-print-preview.png \
1306 stock-icons/24/printer-info.png \
1307 stock-icons/24/printer-warning.png \
1308 stock-icons/24/document-properties.png \
1309 stock-icons/24/application-exit.png \
1310 stock-icons/24/edit-redo-ltr.png \
1311 stock-icons/24/edit-redo-rtl.png \
1312 stock-icons/24/view-refresh.png \
1313 stock-icons/24/list-remove.png \
1314 stock-icons/24/document-revert-ltr.png \
1315 stock-icons/24/document-revert-rtl.png \
1316 stock-icons/24/gtk-select-font.png \
1317 stock-icons/24/document-save-as.png \
1318 stock-icons/24/media-floppy.png \
1319 stock-icons/24/edit-select-all.png \
1320 stock-icons/24/gtk-select-color.png \
1321 stock-icons/24/view-sort-ascending.png \
1322 stock-icons/24/view-sort-descending.png \
1323 stock-icons/24/tools-check-spelling.png \
1324 stock-icons/24/process-stop.png \
1325 stock-icons/24/format-text-strikethrough.png \
1326 stock-icons/24/edit-delete.png \
1327 stock-icons/24/gtk-undelete-ltr.png \
1328 stock-icons/24/gtk-undelete-rtl.png \
1329 stock-icons/24/format-text-underline.png \
1330 stock-icons/24/edit-undo-ltr.png \
1331 stock-icons/24/edit-undo-rtl.png \
1332 stock-icons/24/format-indent-less-ltr.png \
1333 stock-icons/24/format-indent-less-rtl.png \
1334 stock-icons/24/zoom-original.png \
1335 stock-icons/24/zoom-fit-best.png \
1336 stock-icons/24/zoom-in.png \
1337 stock-icons/24/zoom-out.png \
1338 stock-icons/24/go-next-ltr.png \
1339 stock-icons/32/gtk-dnd-multiple.png \
1340 stock-icons/32/gtk-dnd.png \
1341 stock-icons/48/dialog-password.png \
1342 stock-icons/48/dialog-error.png \
1343 stock-icons/48/dialog-information.png \
1344 stock-icons/48/dialog-question.png \
1345 stock-icons/48/dialog-warning.png
1348 stock-icons/16/go-previous-rtl.png \
1349 stock-icons/16/go-next-rtl.png \
1350 stock-icons/16/go-first-rtl.png \
1351 stock-icons/16/go-last-rtl.png \
1352 stock-icons/16/media-seek-forward-rtl.png \
1353 stock-icons/16/media-skip-forward-rtl.png \
1354 stock-icons/16/media-skip-backward-rtl.png \
1355 stock-icons/16/media-seek-backward-rtl.png \
1356 stock-icons/16/document-save.png \
1357 stock-icons/16/folder-remote.png \
1358 stock-icons/16/user-home.png \
1359 stock-icons/16/user-desktop.png \
1360 stock-icons/16/text-x-generic.png \
1361 stock-icons/24/go-previous-rtl.png \
1362 stock-icons/24/go-next-rtl.png \
1363 stock-icons/24/go-first-rtl.png \
1364 stock-icons/24/go-last-rtl.png \
1365 stock-icons/24/media-seek-forward-rtl.png \
1366 stock-icons/24/media-skip-forward-rtl.png \
1367 stock-icons/24/media-skip-backward-rtl.png \
1368 stock-icons/24/media-seek-backward-rtl.png \
1369 stock-icons/24/document-save.png \
1370 stock-icons/24/folder-remote.png \
1371 stock-icons/24/user-home.png \
1372 stock-icons/24/user-desktop.png \
1373 stock-icons/24/text-x-generic.png
1375 # need to copy the icons so that we can replace the generated ones with
1376 # symlinks, even in the readonly srcdir case
1377 stamp-icons: $(STOCK_ICONS)
1378 $(AM_V_GEN) if [ ! -d stock-icons ]; then \
1379 for d in 16 20 24 32 48; do \
1380 mkdir -p stock-icons/$$d; \
1382 for f in $(STOCK_ICONS); do \
1383 cp $(srcdir)/$$f $$(dirname $$f); \
1385 chmod -R u+w stock-icons; \
1387 for i in 16 24; do \
1388 (cd stock-icons/$$i \
1389 && $(RM) go-previous-rtl.png \
1390 && $(LN_S) go-next-ltr.png go-previous-rtl.png \
1391 && $(RM) go-next-rtl.png \
1392 && $(LN_S) go-previous-ltr.png go-next-rtl.png \
1393 && $(RM) go-first-rtl.png \
1394 && $(LN_S) go-last-ltr.png go-first-rtl.png \
1395 && $(RM) go-last-rtl.png \
1396 && $(LN_S) go-first-ltr.png go-last-rtl.png \
1397 && $(RM) media-seek-forward-rtl.png \
1398 && $(LN_S) media-seek-backward-ltr.png media-seek-forward-rtl.png \
1399 && $(RM) media-skip-forward-rtl.png \
1400 && $(LN_S) media-skip-backward-ltr.png media-skip-forward-rtl.png \
1401 && $(RM) media-skip-backward-rtl.png \
1402 && $(LN_S) media-skip-forward-ltr.png media-skip-backward-rtl.png \
1403 && $(RM) media-seek-backward-rtl.png \
1404 && $(LN_S) media-seek-forward-ltr.png media-seek-backward-rtl.png \
1405 && $(RM) document-save.png \
1406 && $(LN_S) media-floppy.png document-save.png \
1407 && $(RM) folder-remote.png \
1408 && $(LN_S) folder.png folder-remote.png \
1409 && $(RM) user-home.png \
1410 && $(LN_S) folder.png user-home.png \
1411 && $(RM) user-desktop.png \
1412 && $(LN_S) folder.png user-desktop.png \
1414 && touch stamp-icons
1416 if USE_EXTERNAL_ICON_CACHE
1417 gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE)
1419 gtk_update_icon_cache_program = ./gtk-update-icon-cache
1422 gtkbuiltincache.h: @REBUILD@ stamp-icons
1423 if !USE_EXTERNAL_ICON_CACHE
1424 $(AM_V_at) $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) $(GTK_UPDATE_ICON_CACHE_MANIFEST)
1426 $(AM_V_GEN) $(gtk_update_icon_cache_program) --quiet --force --ignore-theme-index \
1427 --source builtin_icons stock-icons > gtkbuiltincache.h.tmp && \
1428 mv gtkbuiltincache.h.tmp gtkbuiltincache.h
1432 $(GENERATED_ICONS) \
1437 gtkwin32embedwidget.h \
1438 gtkwin32embedwidget.c \
1441 gtksearchenginequartz.h \
1443 gtk-keys.css.default \
1444 gtk-keys.css.emacs \
1449 gtktypebuiltins.c.template \
1450 gtktypebuiltins.h.template \
1451 org.gtk.Settings.FileChooser.gschema.xml
1453 gsettings_SCHEMAS = \
1454 org.gtk.Settings.FileChooser.gschema.xml
1460 -include $(top_srcdir)/git.mk