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-pixbuf \
7 --add-include-path=../gdk
8 INTROSPECTION_COMPILER_ARGS = \
9 --includedir=$(srcdir) \
11 --includedir=../gdk-pixbuf \
15 GTK_PRINT_PREVIEW_COMMAND="open -a /Applications/Preview.app %f"
17 GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f"
20 SUBDIRS = theme-bits . tests
21 DIST_SUBDIRS=theme-bits tests
24 GTK_PRINT_BACKENDS=file,papi,cups
27 GTK_PRINT_BACKENDS=file,cups
30 GTK_PRINT_BACKENDS=file,papi
32 GTK_PRINT_BACKENDS=file,lpr
38 -DG_LOG_DOMAIN=\"Gtk\" \
39 -DGTK_LIBDIR=\"$(libdir)\" \
40 -DGTK_DATADIR=\"$(datadir)\" \
41 -DGTK_DATA_PREFIX=\"$(prefix)\" \
42 -DGTK_SYSCONFDIR=\"$(sysconfdir)\" \
43 -DGTK_VERSION=\"$(GTK_VERSION)\" \
44 -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\" \
45 -DGTK_HOST=\"$(host)\" \
47 -DGTK_PRINT_BACKENDS=\"$(GTK_PRINT_BACKENDS)\" \
48 -DGTK_PRINT_PREVIEW_COMMAND=\"$(GTK_PRINT_PREVIEW_COMMAND)\" \
50 -I$(top_builddir)/gtk \
51 -I$(top_srcdir) -I../gdk \
53 -I$(top_srcdir)/gdk-pixbuf -I../gdk-pixbuf \
54 -DGDK_DISABLE_DEPRECATED \
55 -DGTK_DISABLE_DEPRECATED \
56 -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED \
57 -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED \
60 $(gtk_clipboard_dnd_c_sources_CFLAGS) \
61 $(INCLUDED_IMMODULE_DEFINE)
66 no_undefined = -no-undefined
71 gtk_win32_symbols = -export-symbols $(srcdir)/gtk.def
73 gtk_win32_res = gtk-win32-res.o
74 gtk_win32_res_ldflag = -Wl,gtk-win32-res.o
76 gtk-win32-res.o : gtk-win32.rc
77 $(WINDRES) gtk-win32.rc $@
79 install-def-file: gtk.def
80 $(INSTALL) $(srcdir)/gtk.def $(DESTDIR)$(libdir)/gtk-win32-2.0.def
82 -rm $(DESTDIR)$(libdir)/gtk-win32-2.0.def
89 noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
91 gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
92 lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
95 $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
98 -rm $(DESTDIR)$(libdir)/gtk-win32-$(GTK_API_VERSION).lib
104 # This places the generated .def file in srcdir, since it is expected to be there.
105 # (The one from a tarball is)
107 (echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gtk.symbols | sed -e '/^$$/d' -e 's/^/ /' -e 's/G_GNUC_[^ ]*//g') > $(srcdir)/gtk.def
109 gtkalias.h: gtk.symbols
110 $(PERL) $(srcdir)/makegtkalias.pl < $(srcdir)/gtk.symbols > gtkalias.h
111 gtkaliasdef.c: gtk.symbols
112 $(PERL) $(srcdir)/makegtkalias.pl -def < $(srcdir)/gtk.symbols > gtkaliasdef.c
115 @$(TESTS_ENVIRONMENT) $(srcdir)/aliasfilescheck.sh
117 .PHONY: check-aliases
119 TESTS_ENVIRONMENT = srcdir="$(srcdir)" gtk_all_c_sources="$(gtk_all_c_sources)"
120 TESTS = aliasfilescheck.sh
122 TESTS += abicheck.sh pltcheck.sh
125 libgtkincludedir = $(includedir)/gtk-2.0/gtk
127 $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
128 $(top_builddir)/gdk/$(gdktargetlib) \
132 # libtool stuff: set version and export symbols for resolving
133 # since automake doesn't support conditionalized libsomething_la_LDFLAGS
134 # we use the general approach here
136 -version-info $(LT_VERSION_INFO) \
137 -export-dynamic $(no_undefined) $(LIBTOOL_EXPORT_OPTIONS) \
138 -rpath $(libdir) $(libgtk_target_ldflags)
142 if HAVE_INCLUDED_IMMMODULES
143 @cd $(top_builddir)/modules/input && $(MAKE) $(AM_MAKEFLAGS) included-modules
145 libadd += $(INCLUDED_IMMODULE_OBJ)
146 deps += $(INCLUDED_IMMODULE_OBJ)
148 $(INCLUDED_IMMODULE_OBJ): included-modules
152 .PHONY: included-modules
155 # setup source file variables
158 # GTK+ header files for public installation (non-generated, or generated
160 gtk_public_h_sources = \
186 gtkcellrendereraccel.h \
187 gtkcellrenderercombo.h \
188 gtkcellrendererpixbuf.h \
189 gtkcellrendererprogress.h \
190 gtkcellrendererspin.h \
191 gtkcellrendererspinner.h\
192 gtkcellrenderertext.h \
193 gtkcellrenderertoggle.h \
200 gtkcolorseldialog.h \
211 gtkentrycompletion.h \
215 gtkextendedlayout.h \
217 gtkfilechooserbutton.h \
218 gtkfilechooserdialog.h \
219 gtkfilechooserwidget.h \
241 gtkimcontextsimple.h \
243 gtkimmulticontext.h \
256 gtkmenutoolbutton.h \
260 gtkmountoperation.h \
263 gtkoffscreenwindow.h \
270 gtkprintoperation.h \
271 gtkprintoperationpreview.h \
278 gtkradiotoolbutton.h \
283 gtkrecentchooserdialog.h \
284 gtkrecentchoosermenu.h \
285 gtkrecentchooserwidget.h \
292 gtkscrolledwindow.h \
295 gtkseparatormenuitem.h \
296 gtkseparatortoolitem.h \
308 gtktearoffmenuitem.h \
311 gtktextbufferrichtext.h \
321 gtktoggletoolbutton.h \
331 gtktreemodelfilter.h \
337 gtktreeviewcolumn.h \
353 gtk_unix_print_public_h_sources = \
354 gtkpagesetupunixdialog.h \
355 gtkprintunixdialog.h \
361 # Installed header files without compatibility guarantees
362 # that are not included in gtk/gtk.h
363 gtk_semi_private_h_sources = \
366 # GTK+ header files that don't get installed
367 gtk_private_h_sources = \
370 gtksearchenginesimple.h \
373 gtkbuilderprivate.h \
374 gtkcustompaperunixdialog.h\
375 gtkfilechooserdefault.h \
376 gtkfilechooserembed.h \
377 gtkfilechooserentry.h \
378 gtkfilechooserprivate.h \
379 gtkfilechoosersettings.h \
380 gtkfilechooserutils.h \
382 gtkfilesystemmodel.h \
387 gtkmountoperationprivate.h \
390 gtkprintoperation-private.h\
393 gtkrecentchooserdefault.h \
394 gtkrecentchooserprivate.h \
395 gtkrecentchooserutils.h \
398 gtktextbufferserialize.h\
399 gtktextchildprivate.h \
400 gtktextiterprivate.h \
401 gtktextmarkprivate.h \
403 gtktexttagprivate.h \
407 gtktoggleactionprivate.h\
408 gtktoolpaletteprivate.h \
411 gtkwindow-decorate.h \
412 $(gtk_clipboard_dnd_h_sources)
414 # GTK+ C sources to build the library from
415 gtk_base_c_sources = \
418 gtksearchenginesimple.c \
445 gtkcellrendereraccel.c \
446 gtkcellrenderercombo.c \
447 gtkcellrendererpixbuf.c \
448 gtkcellrendererprogress.c \
449 gtkcellrendererspin.c \
450 gtkcellrendererspinner.c\
451 gtkcellrenderertext.c \
452 gtkcellrenderertoggle.c \
458 gtkcolorseldialog.c \
467 gtkentrycompletion.c \
470 gtkextendedlayout.c \
472 gtkfilechooserbutton.c \
473 gtkfilechooserdefault.c \
474 gtkfilechooserdialog.c \
475 gtkfilechooserembed.c \
476 gtkfilechooserentry.c \
477 gtkfilechoosersettings.c \
478 gtkfilechooserutils.c \
479 gtkfilechooserwidget.c \
482 gtkfilesystemmodel.c \
498 gtkiconcachevalidator.c \
505 gtkimcontextsimple.c \
507 gtkimmulticontext.c \
524 gtkmenutoolbutton.c \
529 gtkmountoperation.c \
532 gtkoffscreenwindow.c \
540 gtkprintoperation.c \
541 gtkprintoperationpreview.c \
548 gtkradiotoolbutton.c \
553 gtkrecentchooserdefault.c \
554 gtkrecentchooserdialog.c \
555 gtkrecentchoosermenu.c \
556 gtkrecentchooserwidget.c \
557 gtkrecentchooserutils.c \
565 gtkscrolledwindow.c \
568 gtkseparatormenuitem.c \
569 gtkseparatortoolitem.c \
581 gtktearoffmenuitem.c \
585 gtktextbufferrichtext.c \
586 gtktextbufferserialize.c\
601 gtktoggletoolbutton.c \
612 gtktreemodelfilter.c \
618 gtktreeviewcolumn.c \
632 gtkwindow-decorate.c \
634 $(gtk_clipboard_dnd_c_sources)
637 gtk_public_h_sources += \
641 gtk_base_c_sources += \
647 gtk_public_h_sources += \
666 gtk_base_c_sources += \
685 gtk_c_sources = $(gtk_base_c_sources)
686 gtk_all_c_sources = $(gtk_base_c_sources)
688 gtk_os_unix_c_sources = \
689 gtkcustompaperunixdialog.c \
690 gtkpagesetupunixdialog.c \
693 gtkprinteroptionset.c \
694 gtkprinteroptionwidget.c \
696 gtkprintoperation-unix.c \
697 gtkprintunixdialog.c \
699 gtksearchenginebeagle.c \
700 gtksearchenginetracker.c
701 gtk_all_c_sources += $(gtk_os_unix_c_sources)
703 gtk_private_h_sources += \
704 gtkiconcachevalidator.h \
706 gtkprinter-private.h \
708 gtkprinteroptionset.h \
709 gtkprinteroptionwidget.h \
710 gtksearchenginebeagle.h \
711 gtksearchenginetracker.h
712 gtk_c_sources += $(gtk_os_unix_c_sources)
715 gtk_os_win32_c_sources = \
717 gtkprintoperation-win32.c
718 gtk_all_c_sources += $(gtk_os_win32_c_sources)
720 gtk_private_h_sources += gtkprint-win32.h
721 gtk_c_sources += $(gtk_os_win32_c_sources)
724 gtk_use_x11_c_sources = \
729 gtkmountoperation-x11.c
730 gtk_use_win32_c_sources = \
734 gtkwin32embedwidget.c \
735 gtkmountoperation-stub.c
736 gtk_use_quartz_c_sources = \
737 gtksearchenginequartz.c \
740 gtkmountoperation-stub.c
741 gtk_use_stub_c_sources = \
744 gtkmountoperation-stub.c
745 gtk_all_c_sources += $(gtk_use_x11_c_sources) $(gtk_use_win32_c_sources) $(gtk_use_quartz_c_sources) $(gtk_use_stub_c_sources)
747 gtk_private_h_sources += gtkxembed.h gtktrayicon.h xembed.h
748 gtk_c_sources += $(gtk_use_x11_c_sources)
751 gtk_private_h_sources += gtkwin32embed.h gtkwin32embedwidget.h
752 gtk_c_sources += $(gtk_use_win32_c_sources)
755 gtk_private_h_sources += gtksearchenginequartz.h
756 gtk_c_sources += $(gtk_use_quartz_c_sources)
757 gtk_use_quartz_c_sources_CFLAGS = "-xobjective-c"
759 gtk_c_sources += $(gtk_use_stub_c_sources)
765 gtk_clipboard_dnd_c_sources = gtkclipboard-quartz.c gtkdnd-quartz.c gtkquartz.c
766 gtk_clipboard_dnd_h_sources = gtkquartz.h
767 gtk_clipboard_dnd_c_sources_CFLAGS = "-xobjective-c"
769 gtk_clipboard_dnd_c_sources = gtkclipboard.c gtkdnd.c
770 gtk_clipboard_dnd_c_sources_CFLAGS =
772 EXTRA_DIST += gtkquartz.h
774 # we use our own built_sources variable rules to avoid automake's
775 # BUILT_SOURCES oddities
776 # we generate frequently rebuild files piggyback on a stamp file, so sources
777 # depending on them only get rebuild when the built source actually changed
780 # built sources that get installed with the header files
781 gtk_built_public_sources = \
785 # built headers that don't get installed
786 gtk_built_private_headers = \
790 gtkimcontextsimpleseqs.h
792 gtk_built_sources = \
798 ${gtk_built_private_headers} \
799 ${gtk_built_public_sources}
802 stamp-gtkmarshalers.h \
804 stamp-gtktypebuiltins.h \
807 # non-header sources (headers should be specified in the above variables)
808 # that don't serve as direct make target sources, i.e. they don't have
809 # their own .lo rules and don't get publically installed
810 gtk_extra_sources = \
812 paper_names_offsets.c \
814 gtkstatusicon-quartz.c \
821 # setup GTK+ sources and their dependencies
823 MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files) $(GENERATED_ICONS) stock-icons/icon-theme.cache
825 EXTRA_DIST += $(gtk_private_h_sources) $(gtk_extra_sources)
826 EXTRA_DIST += $(gtk_built_sources)
827 EXTRA_DIST += $(STOCK_ICONS)
830 # rules to generate built sources
832 # setup autogeneration dependencies
833 gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc xgen-gtfsrc.c xgen-gtf
834 CLEANFILES = $(gen_sources)
836 BUILT_SOURCES = $(gtk_built_sources)
838 # all autogenerated files need to be generated in the srcdir,
839 # so old versions get remade and are not confused with newer
840 # versions in the build dir. thus a development setup requires
841 # srcdir to be writable, passing --disable-rebuilds to
842 # ../configure will supress all autogeneration rules.
843 gtkmarshalers.h: stamp-gtkmarshalers.h
845 stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list
846 $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --header >> xgen-gmlh \
847 && (cmp -s xgen-gmlh gtkmarshalers.h || cp xgen-gmlh gtkmarshalers.h) \
849 && echo timestamp > $(@F)
850 gtkmarshalers.c: @REBUILD@ gtkmarshalers.list
851 (echo "#include \"gtkmarshalers.h\""; \
852 echo "#include \"gtkalias.h\""; \
853 $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --body) >> xgen-gmlc \
854 && cp xgen-gmlc gtkmarshalers.c \
857 gtkmarshal.h: stamp-gtkmarshal.h
859 stamp-gtkmarshal.h: @REBUILD@ gtkmarshal.list
860 echo "#ifndef GTK_DISABLE_DEPRECATED" > xgen-gmh \
861 && $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --header >> xgen-gmh \
862 && echo "#endif /* GTK_DISABLE_DEPRECATED */" >> xgen-gmh \
863 && (cmp -s xgen-gmh gtkmarshal.h || cp xgen-gmh gtkmarshal.h) \
865 && echo timestamp > $(@F)
866 gtkmarshal.c: @REBUILD@ gtkmarshal.list
867 (echo "#include \"gtkmarshal.h\""; \
868 echo "#include \"gtkalias.h\""; \
869 $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --body; \
870 echo "#define __gtk_marshal_MARSHAL_C__"; \
871 echo "#include \"gtkaliasdef.c\"") >> xgen-gmc \
872 && cp xgen-gmc gtkmarshal.c \
875 gtktypebuiltins.h: stamp-gtktypebuiltins.h
877 stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.h.template
878 ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.h.template \
879 $(gtk_public_h_sources) ) >> xgen-gtbh \
880 && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h ) \
882 && echo timestamp > $(@F)
883 gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.c.template
884 ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.c.template \
885 $(gtk_public_h_sources) ) > xgen-gtbc \
886 && cp xgen-gtbc gtktypebuiltins.c \
889 gtktypefuncs.c: @REBUILD@ $(top_srcdir)/gtk/*.h $(top_srcdir)/gdk/*.h Makefile
890 echo '#include <gtk/gtk.h>' > xgen-gtfsrc.c && \
891 ${CPP} $(DEFS) $(INCLUDES) -DGTK_ENABLE_BROKEN $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \
892 grep -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \
894 sed '{ s/^/*tp++ = /; s/$$/();/; }' > xgen-gtf \
895 && cp xgen-gtf $@ && rm -f xgen-gtf
896 gtktestutils.c: gtktypefuncs.c
899 lib_LTLIBRARIES = $(gtktargetlib)
901 gtkincludedir = $(includedir)/gtk-2.0/gtk
902 gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_semi_private_h_sources) $(gtk_built_public_sources) gtkversion.h
904 gtkunixprintincludedir = $(includedir)/gtk-unix-print-2.0/gtk
905 gtkunixprintinclude_HEADERS = $(gtk_unix_print_public_h_sources)
907 libgtk_x11_2_0_la_SOURCES = $(gtk_c_sources)
908 libgtk_win32_2_0_la_SOURCES = $(gtk_c_sources)
909 libgtk_quartz_2_0_la_SOURCES = $(gtk_c_sources)
910 libgtk_directfb_2_0_la_SOURCES = $(gtk_c_sources)
912 libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts)
913 libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid
914 libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts)
915 libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts)
917 libgtk_x11_2_0_la_LIBADD = $(libadd)
918 libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32
919 libgtk_quartz_2_0_la_LIBADD = $(libadd)
920 libgtk_directfb_2_0_la_LIBADD = $(libadd)
922 libgtk_x11_2_0_la_DEPENDENCIES = $(deps)
923 libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res) $(deps)
924 libgtk_quartz_2_0_la_DEPENDENCIES = $(deps)
925 libgtk_directfb_2_0_la_DEPENDENCIES = $(deps)
928 libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols)
930 EXTRA_LTLIBRARIES = libgtk-x11-2.0.la libgtk-win32-2.0.la libgtk-quartz-2.0.la libgtk-directfb-2.0.la
933 if DISABLE_EXPLICIT_DEPS
934 $(SHELL) $(top_srcdir)/sanitize-la.sh $(DESTDIR)$(libdir)/$(gtktargetlib)
938 install-mac-key-theme:
939 $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key
940 $(INSTALL_DATA) $(srcdir)/gtkrc.key.mac $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key/gtkrc
941 uninstall-mac-key-theme:
942 rm -f $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key/gtkrc
944 install-mac-key-theme:
945 uninstall-mac-key-theme:
948 # Install a RC file for the default GTK+ theme, and key themes
949 install-data-local: install-ms-lib install-def-file install-mac-key-theme
950 $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0
951 $(INSTALL_DATA) $(srcdir)/gtkrc.default $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
952 $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key
953 $(INSTALL_DATA) $(srcdir)/gtkrc.key.default $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
954 $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key
955 $(INSTALL_DATA) $(srcdir)/gtkrc.key.emacs $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
957 uninstall-local: uninstall-ms-lib uninstall-def-file uninstall-mac-key-theme
958 rm -f $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
959 rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
960 rm -f $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
962 # if srcdir!=builddir, clean out maintainer-clean files from builddir
963 # this allows dist to pass.
965 if test $(srcdir) != .; then \
966 rm -f $(MAINTAINERCLEANFILES); \
969 DEPS = $(gtktargetlib) $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la $(top_builddir)/gdk/$(gdktargetlib)
971 TEST_DEPS = $(DEPS) gtk.immodules
975 $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
976 $(top_builddir)/gdk/$(gdktargetlib) \
979 if HAVE_INTROSPECTION
980 introspection_files = \
981 $(gtkinclude_HEADERS) \
982 $(gtk_all_c_sources) \
986 Gtk-2.0.gir: $(INTROSPECTION_SCANNER) $(gtktargetlib) Makefile
987 Gtk_2_0_gir_SCANNERFLAGS = --strip-prefix=Gtk
988 Gtk_2_0_gir_INCLUDES = Atk-1.0 Gdk-2.0
989 Gtk_2_0_gir_CFLAGS = \
991 -UGDK_DISABLE_DEPRECATED \
992 -UGTK_DISABLE_DEPRECATED \
993 -DGTK_TEXT_USE_INTERNAL_UNSUPPORTED_API
994 Gtk_2_0_gir_LIBS = $(gtktargetlib)
995 Gtk_2_0_gir_FILES = $(addprefix $(srcdir)/, $(introspection_files))
996 INTROSPECTION_GIRS += Gtk-2.0.gir
998 girdir = $(datadir)/gir-1.0
999 dist_gir_DATA = $(INTROSPECTION_GIRS)
1001 typelibsdir = $(libdir)/girepository-1.0
1002 typelibs_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
1004 CLEANFILES += $(dist_gir_DATA) $(typelibs_DATA)
1011 gtk-query-immodules-2.0 \
1012 gtk-update-icon-cache
1014 bin_SCRIPTS = gtk-builder-convert
1018 # Workaround for UAC silliness: programs with "update" in their name
1019 # are believed to be installers and require elevated privileges to be
1020 # used... Use a manifest file to tell Windows that
1021 # gtk-update-icon-cache.exe doesn't require any special privileges.
1023 GTK_UPDATE_ICON_CACHE_MANIFEST = gtk-update-icon-cache.exe.manifest
1026 $(GTK_UPDATE_ICON_CACHE_MANIFEST)
1028 gtk-update-icon-cache.exe.manifest:
1029 (echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' ; \
1030 echo '<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">' ; \
1031 echo ' <assemblyIdentity version="1.0.0.0"' ; \
1032 echo ' processorArchitecture="'$(LIB_EXE_MACHINE_FLAG)'"' ; \
1033 echo ' name="gtk-update-icon-cache.exe"' ; \
1034 echo ' type="win32"/>' ; \
1035 echo ' <!-- Identify the application security requirements. -->' ; \
1036 echo ' <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">' ; \
1037 echo ' <security>' ; \
1038 echo ' <requestedPrivileges>' ; \
1039 echo ' <requestedExecutionLevel' ; \
1040 echo ' level="asInvoker"' ; \
1041 echo ' uiAccess="false"/>' ; \
1042 echo ' </requestedPrivileges>' ; \
1043 echo ' </security>' ; \
1044 echo ' </trustInfo>' ; \
1045 echo '</assembly>' ) >$@
1049 gtk_query_immodules_2_0_DEPENDENCIES = $(DEPS)
1050 gtk_query_immodules_2_0_LDADD = $(LDADDS)
1052 gtk_query_immodules_2_0_SOURCES = queryimmodules.c
1054 gtk_update_icon_cache_LDADD = \
1055 $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
1056 $(GDK_PIXBUF_DEP_LIBS)
1059 gtk_update_icon_cache_SOURCES = \
1062 .PHONY: files test test-debug
1065 @files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
1070 stock-icons/16/document-open-recent.png \
1071 stock-icons/16/gtk-about.png \
1072 stock-icons/16/gtk-add.png \
1073 stock-icons/16/gtk-cdrom.png \
1074 stock-icons/16/gtk-close.png \
1075 stock-icons/16/gtk-connect.png \
1076 stock-icons/16/gtk-convert.png \
1077 stock-icons/16/gtk-copy.png \
1078 stock-icons/16/gtk-cut.png \
1079 stock-icons/16/gtk-delete.png \
1080 stock-icons/16/gtk-directory.png \
1081 stock-icons/16/gtk-disconnect.png \
1082 stock-icons/16/gtk-edit.png \
1083 stock-icons/16/gtk-execute.png \
1084 stock-icons/16/gtk-file.png \
1085 stock-icons/16/gtk-find-and-replace.png \
1086 stock-icons/16/gtk-find.png \
1087 stock-icons/16/gtk-floppy.png \
1088 stock-icons/16/gtk-fullscreen.png \
1089 stock-icons/16/gtk-go-back-ltr.png \
1090 stock-icons/16/gtk-go-down.png \
1091 stock-icons/16/gtk-go-forward-ltr.png \
1092 stock-icons/16/gtk-goto-bottom.png \
1093 stock-icons/16/gtk-goto-first-ltr.png \
1094 stock-icons/16/gtk-goto-last-ltr.png \
1095 stock-icons/16/gtk-goto-top.png \
1096 stock-icons/16/gtk-go-up.png \
1097 stock-icons/16/gtk-harddisk.png \
1098 stock-icons/16/gtk-help.png \
1099 stock-icons/16/gtk-home.png \
1100 stock-icons/16/gtk-indent-ltr.png \
1101 stock-icons/16/gtk-indent-rtl.png \
1102 stock-icons/16/gtk-index.png \
1103 stock-icons/16/gtk-info.png \
1104 stock-icons/16/gtk-jump-to-ltr.png \
1105 stock-icons/16/gtk-jump-to-rtl.png \
1106 stock-icons/16/gtk-justify-center.png \
1107 stock-icons/16/gtk-justify-fill.png \
1108 stock-icons/16/gtk-justify-left.png \
1109 stock-icons/16/gtk-justify-right.png \
1110 stock-icons/16/gtk-leave-fullscreen.png \
1111 stock-icons/16/gtk-media-forward-ltr.png \
1112 stock-icons/16/gtk-media-next-ltr.png \
1113 stock-icons/16/gtk-media-pause.png \
1114 stock-icons/16/gtk-media-play-ltr.png \
1115 stock-icons/16/gtk-media-play-rtl.png \
1116 stock-icons/16/gtk-media-previous-ltr.png \
1117 stock-icons/16/gtk-media-record.png \
1118 stock-icons/16/gtk-media-rewind-ltr.png \
1119 stock-icons/16/gtk-media-stop.png \
1120 stock-icons/16/gtk-missing-image.png \
1121 stock-icons/16/gtk-network.png \
1122 stock-icons/16/gtk-new.png \
1123 stock-icons/16/gtk-open.png \
1124 stock-icons/16/gtk-page-setup.png \
1125 stock-icons/16/gtk-paste.png \
1126 stock-icons/16/gtk-preferences.png \
1127 stock-icons/16/gtk-print.png \
1128 stock-icons/16/gtk-print-error.png \
1129 stock-icons/16/gtk-print-paused.png \
1130 stock-icons/16/gtk-print-preview.png \
1131 stock-icons/16/gtk-print-report.png \
1132 stock-icons/16/gtk-print-warning.png \
1133 stock-icons/16/gtk-properties.png \
1134 stock-icons/16/gtk-quit.png \
1135 stock-icons/16/gtk-redo-ltr.png \
1136 stock-icons/16/gtk-redo-rtl.png \
1137 stock-icons/16/gtk-refresh.png \
1138 stock-icons/16/gtk-remove.png \
1139 stock-icons/16/gtk-revert-to-saved-ltr.png \
1140 stock-icons/16/gtk-revert-to-saved-rtl.png \
1141 stock-icons/16/gtk-save-as.png \
1142 stock-icons/16/gtk-select-all.png \
1143 stock-icons/16/gtk-select-color.png \
1144 stock-icons/16/gtk-select-font.png \
1145 stock-icons/16/gtk-sort-ascending.png \
1146 stock-icons/16/gtk-sort-descending.png \
1147 stock-icons/16/gtk-spell-check.png \
1148 stock-icons/16/gtk-stop.png \
1149 stock-icons/16/gtk-strikethrough.png \
1150 stock-icons/16/gtk-font.png \
1151 stock-icons/16/gtk-undelete-ltr.png \
1152 stock-icons/16/gtk-undelete-rtl.png \
1153 stock-icons/16/gtk-underline.png \
1154 stock-icons/16/gtk-undo-ltr.png \
1155 stock-icons/16/gtk-undo-rtl.png \
1156 stock-icons/16/gtk-unindent-ltr.png \
1157 stock-icons/16/gtk-unindent-rtl.png \
1158 stock-icons/16/gtk-zoom-100.png \
1159 stock-icons/16/gtk-zoom-fit.png \
1160 stock-icons/16/gtk-zoom-in.png \
1161 stock-icons/16/gtk-zoom-out.png \
1162 stock-icons/16/gtk-italic.png \
1163 stock-icons/16/gtk-bold.png \
1164 stock-icons/20/gtk-apply.png \
1165 stock-icons/20/gtk-cancel.png \
1166 stock-icons/20/gtk-close.png \
1167 stock-icons/20/gtk-no.png \
1168 stock-icons/20/gtk-ok.png \
1169 stock-icons/20/gtk-yes.png \
1170 stock-icons/24/audio-volume-high.png \
1171 stock-icons/24/audio-volume-low.png \
1172 stock-icons/24/audio-volume-medium.png \
1173 stock-icons/24/audio-volume-muted.png \
1174 stock-icons/24/document-open-recent.png \
1175 stock-icons/24/gtk-about.png \
1176 stock-icons/24/gtk-add.png \
1177 stock-icons/24/gtk-bold.png \
1178 stock-icons/24/gtk-cdrom.png \
1179 stock-icons/24/gtk-clear.png \
1180 stock-icons/24/gtk-close.png \
1181 stock-icons/24/gtk-color-picker.png \
1182 stock-icons/24/gtk-connect.png \
1183 stock-icons/24/gtk-convert.png \
1184 stock-icons/24/gtk-copy.png \
1185 stock-icons/24/gtk-cut.png \
1186 stock-icons/24/gtk-directory.png \
1187 stock-icons/24/gtk-disconnect.png \
1188 stock-icons/24/gtk-edit.png \
1189 stock-icons/24/gtk-execute.png \
1190 stock-icons/24/gtk-file.png \
1191 stock-icons/24/gtk-find-and-replace.png \
1192 stock-icons/24/gtk-find.png \
1193 stock-icons/24/gtk-font.png \
1194 stock-icons/24/gtk-fullscreen.png \
1195 stock-icons/24/gtk-go-back-ltr.png \
1196 stock-icons/24/gtk-goto-top.png \
1197 stock-icons/24/gtk-go-down.png \
1198 stock-icons/24/gtk-goto-bottom.png \
1199 stock-icons/24/gtk-goto-first-ltr.png \
1200 stock-icons/24/gtk-goto-last-ltr.png \
1201 stock-icons/24/gtk-go-up.png \
1202 stock-icons/24/gtk-harddisk.png \
1203 stock-icons/24/gtk-help.png \
1204 stock-icons/24/gtk-home.png \
1205 stock-icons/24/gtk-indent-ltr.png \
1206 stock-icons/24/gtk-indent-rtl.png \
1207 stock-icons/24/gtk-index.png \
1208 stock-icons/24/gtk-info.png \
1209 stock-icons/24/gtk-italic.png \
1210 stock-icons/24/gtk-jump-to-ltr.png \
1211 stock-icons/24/gtk-jump-to-rtl.png \
1212 stock-icons/24/gtk-justify-center.png \
1213 stock-icons/24/gtk-justify-fill.png \
1214 stock-icons/24/gtk-justify-left.png \
1215 stock-icons/24/gtk-justify-right.png \
1216 stock-icons/24/gtk-leave-fullscreen.png \
1217 stock-icons/24/gtk-media-forward-ltr.png \
1218 stock-icons/24/gtk-media-next-ltr.png \
1219 stock-icons/24/gtk-media-pause.png \
1220 stock-icons/24/gtk-media-play-ltr.png \
1221 stock-icons/24/gtk-media-play-rtl.png \
1222 stock-icons/24/gtk-media-previous-ltr.png \
1223 stock-icons/24/gtk-media-record.png \
1224 stock-icons/24/gtk-media-rewind-ltr.png \
1225 stock-icons/24/gtk-media-stop.png \
1226 stock-icons/24/gtk-missing-image.png \
1227 stock-icons/24/gtk-network.png \
1228 stock-icons/24/gtk-new.png \
1229 stock-icons/24/gtk-open.png \
1230 stock-icons/24/gtk-orientation-reverse-landscape.png \
1231 stock-icons/24/gtk-orientation-landscape.png \
1232 stock-icons/24/gtk-orientation-reverse-portrait.png \
1233 stock-icons/24/gtk-orientation-portrait.png \
1234 stock-icons/24/gtk-page-setup.png \
1235 stock-icons/24/gtk-paste.png \
1236 stock-icons/24/gtk-preferences.png \
1237 stock-icons/24/gtk-print.png \
1238 stock-icons/24/gtk-print-error.png \
1239 stock-icons/24/gtk-print-paused.png \
1240 stock-icons/24/gtk-print-preview.png \
1241 stock-icons/24/gtk-print-report.png \
1242 stock-icons/24/gtk-print-warning.png \
1243 stock-icons/24/gtk-properties.png \
1244 stock-icons/24/gtk-quit.png \
1245 stock-icons/24/gtk-redo-ltr.png \
1246 stock-icons/24/gtk-redo-rtl.png \
1247 stock-icons/24/gtk-refresh.png \
1248 stock-icons/24/gtk-remove.png \
1249 stock-icons/24/gtk-revert-to-saved-ltr.png \
1250 stock-icons/24/gtk-revert-to-saved-rtl.png \
1251 stock-icons/24/gtk-select-font.png \
1252 stock-icons/24/gtk-save-as.png \
1253 stock-icons/24/gtk-floppy.png \
1254 stock-icons/24/gtk-select-all.png \
1255 stock-icons/24/gtk-select-color.png \
1256 stock-icons/24/gtk-sort-ascending.png \
1257 stock-icons/24/gtk-sort-descending.png \
1258 stock-icons/24/gtk-spell-check.png \
1259 stock-icons/24/gtk-stop.png \
1260 stock-icons/24/gtk-strikethrough.png \
1261 stock-icons/24/gtk-delete.png \
1262 stock-icons/24/gtk-undelete-ltr.png \
1263 stock-icons/24/gtk-undelete-rtl.png \
1264 stock-icons/24/gtk-underline.png \
1265 stock-icons/24/gtk-undo-ltr.png \
1266 stock-icons/24/gtk-undo-rtl.png \
1267 stock-icons/24/gtk-unindent-ltr.png \
1268 stock-icons/24/gtk-unindent-rtl.png \
1269 stock-icons/24/gtk-zoom-100.png \
1270 stock-icons/24/gtk-zoom-fit.png \
1271 stock-icons/24/gtk-zoom-in.png \
1272 stock-icons/24/gtk-zoom-out.png \
1273 stock-icons/24/gtk-go-forward-ltr.png \
1274 stock-icons/32/gtk-dnd-multiple.png \
1275 stock-icons/32/gtk-dnd.png \
1276 stock-icons/48/gtk-dialog-authentication.png \
1277 stock-icons/48/gtk-dialog-error.png \
1278 stock-icons/48/gtk-dialog-info.png \
1279 stock-icons/48/gtk-dialog-question.png \
1280 stock-icons/48/gtk-dialog-warning.png
1283 stock-icons/16/gtk-go-back-rtl.png \
1284 stock-icons/16/gtk-go-forward-rtl.png \
1285 stock-icons/16/gtk-goto-first-rtl.png \
1286 stock-icons/16/gtk-goto-last-rtl.png \
1287 stock-icons/16/gtk-media-forward-rtl.png \
1288 stock-icons/16/gtk-media-next-rtl.png \
1289 stock-icons/16/gtk-media-previous-rtl.png \
1290 stock-icons/16/gtk-media-rewind-rtl.png \
1291 stock-icons/16/gtk-save.png \
1292 stock-icons/16/drive-harddisk.png \
1293 stock-icons/16/folder.png \
1294 stock-icons/16/folder-remote.png \
1295 stock-icons/16/user-home.png \
1296 stock-icons/16/user-desktop.png \
1297 stock-icons/16/text-x-generic.png \
1298 stock-icons/24/gtk-go-back-rtl.png \
1299 stock-icons/24/gtk-go-forward-rtl.png \
1300 stock-icons/24/gtk-goto-first-rtl.png \
1301 stock-icons/24/gtk-goto-last-rtl.png \
1302 stock-icons/24/gtk-media-forward-rtl.png \
1303 stock-icons/24/gtk-media-next-rtl.png \
1304 stock-icons/24/gtk-media-previous-rtl.png \
1305 stock-icons/24/gtk-media-rewind-rtl.png \
1306 stock-icons/24/gtk-save.png \
1307 stock-icons/24/drive-harddisk.png \
1308 stock-icons/24/folder.png \
1309 stock-icons/24/folder-remote.png \
1310 stock-icons/24/user-home.png \
1311 stock-icons/24/user-desktop.png \
1312 stock-icons/24/text-x-generic.png
1314 # need to copy the icons so that we can replace the generated ones with
1315 # symlinks, even in the readonly srcdir case
1316 stamp-icons: $(STOCK_ICONS)
1317 if [ ! -d stock-icons ]; then \
1318 for d in 16 20 24 32 48; do \
1319 mkdir -p stock-icons/$$d; \
1321 for f in $(STOCK_ICONS); do \
1322 cp $(srcdir)/$$f $$(dirname $$f); \
1324 chmod -R u+w stock-icons; \
1326 for i in 16 24; do \
1327 (cd stock-icons/$$i \
1328 && $(RM) gtk-go-back-rtl.png \
1329 && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png \
1330 && $(RM) gtk-go-forward-rtl.png \
1331 && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png \
1332 && $(RM) gtk-goto-first-rtl.png \
1333 && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png \
1334 && $(RM) gtk-goto-last-rtl.png \
1335 && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png \
1336 && $(RM) gtk-media-forward-rtl.png \
1337 && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png\
1338 && $(RM) gtk-media-next-rtl.png \
1339 && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png \
1340 && $(RM) gtk-media-previous-rtl.png \
1341 && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png \
1342 && $(RM) gtk-media-rewind-rtl.png \
1343 && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png\
1344 && $(RM) gtk-save.png \
1345 && $(LN_S) gtk-floppy.png gtk-save.png \
1346 && $(RM) drive-harddisk.png \
1347 && $(LN_S) gtk-harddisk.png drive-harddisk.png \
1348 && $(RM) folder.png \
1349 && $(LN_S) gtk-directory.png folder.png \
1350 && $(RM) folder-remote.png \
1351 && $(LN_S) gtk-directory.png folder-remote.png \
1352 && $(RM) user-home.png \
1353 && $(LN_S) gtk-directory.png user-home.png \
1354 && $(RM) user-desktop.png \
1355 && $(LN_S) gtk-directory.png user-desktop.png \
1356 && $(RM) text-x-generic.png \
1357 && $(LN_S) gtk-file.png text-x-generic.png \
1359 && touch stamp-icons
1362 gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE)
1364 gtk_update_icon_cache_program = \
1365 GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders \
1366 ./gtk-update-icon-cache
1369 gtkbuiltincache.h: @REBUILD@ stamp-icons
1370 $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) $(GTK_UPDATE_ICON_CACHE_MANIFEST)
1371 $(gtk_update_icon_cache_program) --force --ignore-theme-index \
1372 --source builtin_icons stock-icons > gtkbuiltincache.h.tmp && \
1373 mv gtkbuiltincache.h.tmp gtkbuiltincache.h
1377 $(GENERATED_ICONS) \
1385 gtk-builder-convert \
1389 gtkwin32embedwidget.h \
1390 gtkwin32embedwidget.c \
1393 gtksearchenginequartz.h \
1401 aliasfilescheck.sh \
1404 gtktypebuiltins.c.template \
1405 gtktypebuiltins.h.template
1410 -include $(top_srcdir)/git.mk