[libvirt] [PATCH glib] Switch over to using standard gobject introspection macros

Christophe Fergeau cfergeau at redhat.com
Tue Jan 21 10:06:24 UTC 2014


On Fri, Jan 17, 2014 at 04:56:27PM +0000, Daniel P. Berrange wrote:
> Remove hand crafted configure.ac and Makefile.am rules in
> favour of the standard macros.
> 
> Signed-off-by: Daniel P. Berrange <berrange at redhat.com>
> ---
>  configure.ac                | 25 +---------------
>  libvirt-gconfig/Makefile.am | 71 ++++++++++++++++++++-------------------------
>  libvirt-glib/Makefile.am    | 51 ++++++++++++++------------------
>  libvirt-gobject/Makefile.am | 71 ++++++++++++++++++---------------------------
>  4 files changed, 83 insertions(+), 135 deletions(-)
> 
> diff --git a/libvirt-gobject/Makefile.am b/libvirt-gobject/Makefile.am
> index 3284b2c..9c05cb5 100644
> --- a/libvirt-gobject/Makefile.am
> +++ b/libvirt-gobject/Makefile.am
> @@ -119,50 +119,37 @@ BUILT_SOURCES = $(GOBJECT_GENERATED_FILES)
>  
>  CLEANFILES = $(BUILT_SOURCES)
>  
> -if WITH_GOBJECT_INTROSPECTION
> -
> -LibvirtGObject-1.0.gir: libvirt-gobject-1.0.la $(G_IR_SCANNER) Makefile.am
> -	$(AM_V_GEN)$(G_IR_SCANNER) \
> -                --quiet \
> -                --warn-all \
> -                --namespace LibvirtGObject \
> -                --nsversion 1.0 \
> -                --include GObject-2.0 \
> -                --include Gio-2.0 \
> -                --include-uninstalled $(top_builddir)/libvirt-glib/LibvirtGLib-1.0.gir \
> -                --include-uninstalled $(top_builddir)/libvirt-gconfig/LibvirtGConfig-1.0.gir \
> -                --identifier-prefix=GVir \
> -                --symbol-prefix=gvir \
> -                --library=$(top_builddir)/libvirt-glib/libvirt-glib-1.0.la \
> -                --library=$(top_builddir)/libvirt-gconfig/libvirt-gconfig-1.0.la \
> -                --library=$(builddir)/libvirt-gobject-1.0.la \
> -                --output $@ \
> -                -I$(top_builddir) \
> -                -I$(top_srcdir) \
> -                --verbose \
> -                --c-include="libvirt-gobject/libvirt-gobject.h" \
> -                --pkg=gthread-2.0 \
> -                --pkg=libxml-2.0 \
> -                --pkg-export=libvirt-gobject-1.0 \
> -                $(srcdir)/libvirt-gobject.h \
> -                $(GOBJECT_SOURCE_FILES:%=$(srcdir)/%) \
> -                $(GOBJECT_HEADER_FILES:%=$(srcdir)/%) \
> -                $(GOBJECT_GENERATED_FILES:%=$(builddir)/%)
> +-include $(INTROSPECTION_MAKEFILE)
> +INTROSPECTION_GIRS =
> +
> +if HAVE_INTROSPECTION
> +LibvirtGObject-1.0.gir: libvirt-gobject-1.0.la
> +LibvirtGObject_1_0_gir_INCLUDES = GObject-2.0 Gio-2.0
> +LibvirtGObject_1_0_gir_PACKAGES = gobject-2.0
> +LibvirtGObject_1_0_gir_EXPORT_PACKAGES = libvirt-gobject-1.0
> +LibvirtGObject_1_0_gir_LIBS = \
> +	$(top_builddir)/libvirt-glib/libvirt-glib-1.0.la \
> +	$(top_builddir)/libvirt-gconfig/libvirt-gconfig-1.0.la \
> +	libvirt-gobject-1.0.la
> +LibvirtGObject_1_0_gir_FILES = \
> +	$(GOBJECT_SOURCE_FILES) \
> +	$(GOBJECT_HEADER_FILES) \
> +	$(GOBJECT_GENERATED_FILES) \
> +	$(NULL)
> +LibvirtGObject_1_0_gir_CFLAGS = $(libvirt_gobject_1_0_la_CFLAGS)
> +LibvirtGObject_1_0_gir_SCANNERFLAGS = \
> +	--identifier-prefix=GVir --symbol-prefix=gvir \
> +	--c-include="libvirt-gobject/libvirt-gobject.h" \
> +	--include-uninstalled $(top_builddir)/libvirt-glib/LibvirtGLib-1.0.gir \
> +	--include-uninstalled $(top_builddir)/libvirt-gconfig/LibvirtGConfig-1.0.gir \
> +	$(NULL)
> +INTROSPECTION_GIRS += LibvirtGObject-1.0.gir

As discussed in https://bugzilla.redhat.com/show_bug.cgi?id=1054657,
something like the patch below needs to be squashed in or this won't build
on systems without the .gir files already installed in a system location

diff --git a/libvirt-gobject/Makefile.am b/libvirt-gobject/Makefile.am
index 4659642..c0258c0 100644
--- a/libvirt-gobject/Makefile.am
+++ b/libvirt-gobject/Makefile.am
@@ -158,6 +158,9 @@ LibvirtGObject_1_0_gir_SCANNERFLAGS = \
        --include-uninstalled
$(top_builddir)/libvirt-gconfig/LibvirtGConfig-1.0.gir \
        $(NULL)
 INTROSPECTION_GIRS += LibvirtGObject-1.0.gir
+INTROSPECTION_COMPILER_ARGS = \
+       --includedir=$(top_builddir)/libvirt-glib \
+       --includedir=$(top_builddir)/libvirt-gconfig

 girdir = $(datadir)/gir-1.0
 gir_DATA = LibvirtGObject-1.0.gir

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20140121/998f76b2/attachment-0001.sig>


More information about the libvir-list mailing list