]> Pileus Git - ~andy/gtk/commitdiff
Build introspection data for gdk-pixbuf, gdk, and gtk
authorColin Walters <walters@verbum.org>
Tue, 18 Aug 2009 18:34:21 +0000 (14:34 -0400)
committerJohan Dahlin <johan@gnome.org>
Wed, 16 Dec 2009 19:22:00 +0000 (17:22 -0200)
Generate .gir and .typelib files for gdk-pixbuf, gdk, and gtk.

https://bugzilla.gnome.org/show_bug.cgi?id=592279

configure.in
gdk-pixbuf/Makefile.am
gdk/Makefile.am
gtk/Makefile.am

index 1ae04e714fbbe63d52367356184d1f195a6efe93..945873e1ee2746adfb9b4f30ac599c370537c9d5 100644 (file)
@@ -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
index ae6e2eaba0ff93eecbe463b753075892c6bda260..5741c2c835a46ee1e022a82f3638c1e3b1a0d684 100644 (file)
@@ -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
index 9dc9d6e564690ec1e6d83005b8eb76412ab75740..ec1f2c4512532ecdb0651c6c26072568aff158b0 100644 (file)
@@ -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
index 7114da8a13e4641d8fc38a9d9c0d072ece9f4458..2b51a3f18eb38cc6258b5f832ee5aa57679349f2 100644 (file)
@@ -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
 #