summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Knowles <alan@akbkhome.com>2010-09-07 09:53:47 +0800
committerAlan Knowles <alan@akbkhome.com>2010-09-07 09:53:47 +0800
commit073fba57af9e1286fdfdf5a40e66a279eaa4c123 (patch)
tree3c04efad6f7f5ce65f2a4606bc8963811694b6ef
parent026ffeb48b6bbefb884408d48c9fc8d1292c3205 (diff)
downloadgobject-introspection-073fba57af9e1286fdfdf5a40e66a279eaa4c123.tar.gz
Enhancement #612253 - add configure --with-glib-src=PATH
This enables glib documentation to be added to the generated gir using the original source eg. --with-glib-src=/usr/src/glib
-rw-r--r--configure.ac15
-rw-r--r--gir/Makefile.am46
2 files changed, 57 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac
index c2d50475..5dfcee8c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -223,6 +223,21 @@ case "$host" in
esac
AM_CHECK_PYTHON_HEADERS(,AC_MSG_ERROR([Python headers not found]))
+# Glib documentation
+
+GLIBSRC=
+AC_MSG_CHECKING([for glib source directory to use for documentation])
+
+AC_ARG_WITH(glib-src,
+ [ --with-glib-src=PATH Source directory for glib - needed to add docs to gir],
+ GLIBSRC=$withval
+)
+AM_CONDITIONAL(WITH_GLIBSRC, test x"$GLIBSRC" != x)
+AC_SUBST(GLIBSRC)
+AC_MSG_RESULT([$GLIBSRC])
+
+
+
AC_CONFIG_FILES([
Makefile
gir/Makefile
diff --git a/gir/Makefile.am b/gir/Makefile.am
index 8f570879..d51ef44b 100644
--- a/gir/Makefile.am
+++ b/gir/Makefile.am
@@ -22,6 +22,20 @@ EXTRA_DIST += $(BASE_GIRSOURCES)
INTROSPECTION_GIRS =
+# glib with source (to enable documentation)
+if WITH_GLIBSRC
+ GLib_2_0_gir_DOCSRC = $(GLIBSRC)/glib/*.c
+ GObject_2_0_gir_DOCSRC = $(GLIBSRC)/gobject/*.c
+ GModule_2_0_gir_DOCSRC = $(GLIBSRC)/gmodule/*.c
+ Gio_2_0_gir_DOCSRC = $(GLIBSRC)/gio/*.c
+else
+ GLib_2_0_gir_DOCSRC =
+ GObject_2_0_gir_DOCSRC =
+ GModule_2_0_gir_DOCSRC =
+ Gio_2_0_gir_DOCSRC =
+
+endif
+
# glib
GLIB_INCLUDEDIR=$(shell pkg-config --variable=includedir glib-2.0)/glib-2.0
GLIB_LIBDIR=$(shell pkg-config --variable=libdir glib-2.0)
@@ -33,7 +47,13 @@ GLIB_LIBRARY=glib-2.0
endif
GLib_2_0_gir_LIBS = $(GLIB_LIBRARY)
-GLib_2_0_gir_SCANNERFLAGS = --reparse-validate --identifier-prefix=G --symbol-prefix=g --symbol-prefix=glib --c-include="glib.h"
+GLib_2_0_gir_SCANNERFLAGS = \
+ --reparse-validate \
+ --identifier-prefix=G \
+ --symbol-prefix=g \
+ --symbol-prefix=glib \
+ --c-include="glib.h" \
+ $(GLib_2_0_gir_DOCSRC)
GLib_2_0_gir_PACKAGES = glib-2.0
GLib_2_0_gir_CFLAGS = \
-I$(GLIB_INCLUDEDIR) \
@@ -63,7 +83,13 @@ endif
GObject-2.0.gir: GLib-2.0.gir
GObject_2_0_gir_LIBS = $(GOBJECT_LIBRARY)
-GObject_2_0_gir_SCANNERFLAGS = --reparse-validate --identifier-prefix=G --c-include="glib-object.h" --add-include-path=.
+GObject_2_0_gir_SCANNERFLAGS = \
+ --reparse-validate \
+ --identifier-prefix=G \
+ --c-include="glib-object.h" \
+ --add-include-path=.+ \
+ $(GObject_2_0_gir_DOCSRC)
+
GObject_2_0_gir_PACKAGES = gobject-2.0
GObject_2_0_gir_INCLUDES = GLib-2.0
GObject_2_0_gir_CFLAGS = \
@@ -87,7 +113,12 @@ endif
GModule-2.0.gir: GLib-2.0.gir
GModule_2_0_gir_LIBS = $(GMODULE_LIBRARY)
-GModule_2_0_gir_SCANNERFLAGS = --identifier-prefix=G --c-include="gmodule.h" --add-include-path=.
+GModule_2_0_gir_SCANNERFLAGS = \
+ --identifier-prefix=G \
+ --c-include="gmodule.h" \
+ --add-include-path=. \
+ $(GModule_2_0_gir_DOCSRC)
+
GModule_2_0_gir_PACKAGES = gmodule-2.0
GModule_2_0_gir_INCLUDES = GLib-2.0
GModule_2_0_gir_CFLAGS = \
@@ -118,7 +149,14 @@ endif
Gio-2.0.gir: GObject-2.0.gir
Gio_2_0_gir_LIBS = $(GIO_LIBRARY)
-Gio_2_0_gir_SCANNERFLAGS = --reparse-validate --warn-all --identifier-prefix=G --c-include="gio/gio.h" --add-include-path=.
+Gio_2_0_gir_SCANNERFLAGS = \
+ --reparse-validate \
+ --warn-all \
+ --identifier-prefix=G \
+ --c-include="gio/gio.h" \
+ --add-include-path=. \
+ $(Gio_2_0_gir_DOCSRC)
+
Gio_2_0_gir_PACKAGES = gio-2.0 $(GIO_UNIX_PACKAGES)
Gio_2_0_gir_INCLUDES = GObject-2.0
Gio_2_0_gir_CFLAGS = \