[gtk+] Build introspection data for gdk-pixbuf, gdk, and gtk



commit 78758d43ea1c2d3e87050eae078e679281d09106
Author: Colin Walters <walters verbum org>
Date:   Tue Aug 18 14:34:21 2009 -0400

    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(+), 0 deletions(-)
---
diff --git a/configure.in b/configure.in
index 1ae04e7..945873e 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 ae6e2ea..5741c2c 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 9dc9d6e..ec1f2c4 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 7114da8..2b51a3f 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -961,6 +961,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
 #



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]