From 41342b23e5922d9b9fa93bd3c68b76f06cbadc05 Mon Sep 17 00:00:00 2001 From: Colin Walters Date: Tue, 18 Aug 2009 14:34:21 -0400 Subject: [PATCH] Build introspection data for gdk-pixbuf, gdk, and gtk Generate .gir and .typelib files for gdk-pixbuf, gdk, and gtk. https://bugzilla.gnome.org/show_bug.cgi?id=592279 --- configure.in | 5 +++++ gdk-pixbuf/Makefile.am | 29 +++++++++++++++++++++++++++++ gdk/Makefile.am | 33 +++++++++++++++++++++++++++++++++ gtk/Makefile.am | 34 ++++++++++++++++++++++++++++++++++ 4 files changed, 101 insertions(+) diff --git a/configure.in b/configure.in index 1ae04e714f..945873e1ee 100644 --- a/configure.in +++ b/configure.in @@ -1970,6 +1970,11 @@ if test -n "$export_dynamic"; then GTK_DEP_LIBS=`echo $GTK_DEP_LIBS | sed -e "s/$export_dynamic//"` fi +################################################## +# GObject introspection +################################################## + +GOBJECT_INTROSPECTION_CHECK([0.6.4]) ################################################## # Checks for gtk-doc and docbook-tools diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am index ae6e2eaba0..5741c2c835 100644 --- a/gdk-pixbuf/Makefile.am +++ b/gdk-pixbuf/Makefile.am @@ -686,6 +686,35 @@ EXTRA_DIST += \ gdk-pixbuf-enum-types.h.template \ gen-color-table.pl +if HAVE_INTROSPECTION +BUILT_GIRSOURCES = + +GdkPixbuf-2.0.gir: $(INTROSPECTION_SCANNER) libgdk_pixbuf-2.0.la Makefile + $(INTROSPECTION_SCANNER) -v \ + --namespace GdkPixbuf --nsversion=2.0 --strip-prefix=Gdk \ + $(INCLUDES) \ + --include=Gio-2.0 \ + --include=GModule-2.0 \ + --library=libgdk_pixbuf-2.0.la \ + --libtool="$(LIBTOOL)" \ + --output $@ \ + $(libgdk_pixbufinclude_HEADERS) \ + $(libgdk_pixbuf_2_0_la_SOURCES) +BUILT_GIRSOURCES += GdkPixbuf-2.0.gir + +girdir = $(datadir)/gir-1.0 +gir_DATA = $(BUILT_GIRSOURCES) + +typelibsdir = $(libdir)/girepository-1.0/ + +typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) + +%.typelib: %.gir $(INTROSPECTION_COMPILER) + $(DEBUG) $(INTROSPECTION_COMPILER) --includedir=$(srcdir) --includedir=. $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) + +CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) +endif + if CROSS_COMPILING RUN_QUERY_LOADER_TEST=false else diff --git a/gdk/Makefile.am b/gdk/Makefile.am index 9dc9d6e564..ec1f2c4512 100644 --- a/gdk/Makefile.am +++ b/gdk/Makefile.am @@ -4,6 +4,8 @@ include $(top_srcdir)/Makefile.decl SUBDIRS = $(gdktarget) . tests DIST_SUBDIRS = win32 x11 quartz directfb tests +CLEANFILES = + EXTRA_DIST += \ keynames.txt \ keyname-table.h \ @@ -179,6 +181,37 @@ libgdk_win32_2_0_la_LIBADD = win32/libgdk-win32.la $(GDK_DEP_LIBS) \ libgdk_win32_2_0_la_DEPENDENCIES = win32/libgdk-win32.la win32/rc/gdk-win32-res.o gdk.def libgdk_win32_2_0_la_LDFLAGS = -Wl,win32/rc/gdk-win32-res.o -export-symbols $(srcdir)/gdk.def $(LDADD) +if HAVE_INTROSPECTION +BUILT_GIRSOURCES = + +Gdk-2.0.gir: $(INTROSPECTION_SCANNER) $(gdktargetlib) Makefile + $(INTROSPECTION_SCANNER) -v \ + --namespace Gdk --nsversion=2.0 --strip-prefix=Gdk \ + $(INCLUDES) \ + --include=Gio-2.0 \ + --add-include-path=../gdk-pixbuf \ + --include=GdkPixbuf-2.0 \ + --include=Pango-1.0 \ + --library=$(gdktargetlib) \ + --libtool="$(LIBTOOL)" \ + --output $@ \ + $(gdk_public_h_sources) \ + $(gdk_c_sources) gdkenumtypes.c gdkenumtypes.h +BUILT_GIRSOURCES += Gdk-2.0.gir + +girdir = $(datadir)/gir-1.0 +gir_DATA = $(BUILT_GIRSOURCES) + +typelibsdir = $(libdir)/girepository-1.0/ + +typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) + +%.typelib: %.gir $(INTROSPECTION_COMPILER) + $(INTROSPECTION_COMPILER) --includedir=$(srcdir) --includedir=. --includedir=../gdk-pixbuf $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) + +CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) +endif + if OS_WIN32 install-def-file: gdk.def $(INSTALL) $(srcdir)/gdk.def $(DESTDIR)$(libdir)/gdk-win32-2.0.def diff --git a/gtk/Makefile.am b/gtk/Makefile.am index 2b092fc93a..dfca39335e 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -963,6 +963,40 @@ LDADDS = \ $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \ $(top_builddir)/gdk/$(gdktargetlib) +if HAVE_INTROSPECTION +BUILT_GIRSOURCES = + +Gtk-2.0.gir: $(INTROSPECTION_SCANNER) $(gtktargetlib) Makefile + $(INTROSPECTION_SCANNER) -v \ + --namespace Gtk --nsversion=2.0 --strip-prefix=Gtk \ + $(INCLUDES) \ + --add-include-path=../gdk \ + --add-include-path=../gdk-pixbuf \ + --include=Gdk-2.0 \ + --include=Atk-1.0 \ + --library=$(gtktargetlib) \ + --libtool="$(LIBTOOL)" \ + --output $@ \ + -UGDK_DISABLE_DEPRECATED \ + -UGTK_DISABLE_DEPRECATED \ + -DGTK_TEXT_USE_INTERNAL_UNSUPPORTED_API \ + $(gtkinclude_HEADERS) \ + $(gtk_all_c_sources) gtktypebuiltins.h gtktypebuiltins.c +BUILT_GIRSOURCES += Gtk-2.0.gir + +girdir = $(datadir)/gir-1.0 +gir_DATA = $(BUILT_GIRSOURCES) + +typelibsdir = $(libdir)/girepository-1.0/ + +typelibs_DATA = $(BUILT_GIRSOURCES:.gir=.typelib) + +%.typelib: %.gir $(INTROSPECTION_COMPILER) + $(INTROSPECTION_COMPILER) --includedir=$(srcdir) --includedir=. --includedir=../gdk-pixbuf --includedir=../gdk $(INTROSPECTION_COMPILER_OPTS) $< -o $(@F) + +CLEANFILES += $(BUILT_GIRSOURCES) $(typelibs_DATA) +endif + # # Installed tools #