[glib] Introduce the UNINSTALLED_GLIB_BUILDDIR environment variable



commit 5391aae0093c8046208ed1c7e3ae32ce9186057f
Author: Dieter Verfaillie <dieterv optionexplicit be>
Date:   Tue Aug 23 17:37:35 2011 +0200

    Introduce the UNINSTALLED_GLIB_BUILDDIR environment variable
    
    This makes it possible to also use relative imports for
    gdbus-codegen's config module.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=650763

 gio/gdbus-2.0/codegen/__init__.py                  |   29 ++++++++++++++++++
 gio/gdbus-2.0/codegen/codegen.py                   |    2 +-
 gio/gdbus-2.0/codegen/codegen_docbook.py           |    2 +-
 gio/gdbus-2.0/codegen/codegen_main.py              |    2 +-
 gio/tests/Makefile.am                              |   32 ++++++++++---------
 gio/tests/gdbus-object-manager-example/Makefile.am |   16 +++++----
 6 files changed, 58 insertions(+), 25 deletions(-)
---
diff --git a/gio/gdbus-2.0/codegen/__init__.py b/gio/gdbus-2.0/codegen/__init__.py
index e69de29..abfca81 100644
--- a/gio/gdbus-2.0/codegen/__init__.py
+++ b/gio/gdbus-2.0/codegen/__init__.py
@@ -0,0 +1,29 @@
+# -*- Mode: Python -*-
+
+# GDBus - GLib D-Bus Library
+#
+# Copyright (C) 2008-2011 Red Hat, Inc.
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General
+# Public License along with this library; if not, write to the
+# Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+# Boston, MA 02111-1307, USA.
+#
+# Author: David Zeuthen <davidz redhat com>
+
+import os
+
+builddir = os.environ.get('UNINSTALLED_GLIB_BUILDDIR')
+
+if builddir is not None:
+    __path__.append(os.path.abspath(os.path.join(builddir, 'gio', 'gdbus-2.0', 'codegen')))
diff --git a/gio/gdbus-2.0/codegen/codegen.py b/gio/gdbus-2.0/codegen/codegen.py
index 9775536..ed9b60a 100644
--- a/gio/gdbus-2.0/codegen/codegen.py
+++ b/gio/gdbus-2.0/codegen/codegen.py
@@ -23,7 +23,7 @@
 
 import sys
 
-import config
+from . import config
 from . import utils
 from . import dbustypes
 
diff --git a/gio/gdbus-2.0/codegen/codegen_docbook.py b/gio/gdbus-2.0/codegen/codegen_docbook.py
index a2fb118..4ceef57 100644
--- a/gio/gdbus-2.0/codegen/codegen_docbook.py
+++ b/gio/gdbus-2.0/codegen/codegen_docbook.py
@@ -24,7 +24,7 @@
 import sys
 import re
 
-import config
+from . import config
 from . import utils
 from . import dbustypes
 from . import parser
diff --git a/gio/gdbus-2.0/codegen/codegen_main.py b/gio/gdbus-2.0/codegen/codegen_main.py
index f11ef1d..067ac5e 100755
--- a/gio/gdbus-2.0/codegen/codegen_main.py
+++ b/gio/gdbus-2.0/codegen/codegen_main.py
@@ -24,7 +24,7 @@
 import sys
 import optparse
 
-import config
+from . import config
 from . import utils
 from . import dbustypes
 from . import parser
diff --git a/gio/tests/Makefile.am b/gio/tests/Makefile.am
index 45cbe37..1eb2985 100644
--- a/gio/tests/Makefile.am
+++ b/gio/tests/Makefile.am
@@ -260,21 +260,23 @@ gdbus_bz627724_LDADD = $(progs_ldadd)
 
 if OS_UNIX
 gdbus-test-codegen-generated.h gdbus-test-codegen-generated.c : test-codegen.xml
-	$(AM_V_GEN) PYTHONPATH=$(top_srcdir)/gio/gdbus-codegen:$(top_builddir)/gio/gdbus-codegen:$$PYTHONPATH $(PYTHON) $(top_srcdir)/gio/gdbus-codegen/codegen_main.py	 	\
-		--interface-prefix org.project.								\
-		--generate-c-code gdbus-test-codegen-generated						\
-		--c-generate-object-manager								\
-		--c-namespace Foo 									\
-		--generate-docbook gdbus-test-codegen-generated-doc					\
-		--annotate "org.project.Bar" Key1 Value1  						\
-		--annotate "org.project.Bar" org.gtk.GDBus.Internal Value2  				\
-		--annotate "org.project.Bar.HelloWorld()" Key3 Value3  					\
-		--annotate "org.project.Bar::TestSignal" Key4 Value4  					\
-		--annotate "org.project.Bar:ay" Key5 Value5	  					\
-		--annotate "org.project.Bar.TestPrimitiveTypes()[val_int32]" Key6 Value6  		\
-		--annotate "org.project.Bar.TestPrimitiveTypes()[ret_uint32]" Key7 Value7 		\
-		--annotate "org.project.Bar::TestSignal[array_of_strings]" Key8 Value8  		\
-		$(srcdir)/test-codegen.xml 									\
+	$(AM_V_GEN) UNINSTALLED_GLIB_BUILDDIR=$(top_builddir) \
+		PYTHONPATH=$(top_srcdir)/gio/gdbus-2.0 \
+		$(PYTHON) $(top_builddir)/gio/gdbus-2.0/codegen/gdbus-codegen \
+		--interface-prefix org.project. \
+		--generate-c-code gdbus-test-codegen-generated \
+		--c-generate-object-manager \
+		--c-namespace Foo \
+		--generate-docbook gdbus-test-codegen-generated-doc \
+		--annotate "org.project.Bar" Key1 Value1 \
+		--annotate "org.project.Bar" org.gtk.GDBus.Internal Value2 \
+		--annotate "org.project.Bar.HelloWorld()" Key3 Value3 \
+		--annotate "org.project.Bar::TestSignal" Key4 Value4 \
+		--annotate "org.project.Bar:ay" Key5 Value5 \
+		--annotate "org.project.Bar.TestPrimitiveTypes()[val_int32]" Key6 Value6 \
+		--annotate "org.project.Bar.TestPrimitiveTypes()[ret_uint32]" Key7 Value7 \
+		--annotate "org.project.Bar::TestSignal[array_of_strings]" Key8 Value8 \
+		$(srcdir)/test-codegen.xml \
 		$(NULL)
 
 BUILT_SOURCES += gdbus-test-codegen-generated.c gdbus-test-codegen-generated.h
diff --git a/gio/tests/gdbus-object-manager-example/Makefile.am b/gio/tests/gdbus-object-manager-example/Makefile.am
index 3ca56c6..292c0c4 100644
--- a/gio/tests/gdbus-object-manager-example/Makefile.am
+++ b/gio/tests/gdbus-object-manager-example/Makefile.am
@@ -22,13 +22,15 @@ GDBUS_GENERATED = 										\
 	$(NULL)
 
 $(GDBUS_GENERATED) : gdbus-example-objectmanager.xml
-	$(AM_V_GEN) PYTHONPATH=$(top_srcdir)/gio/gdbus-codegen:$(top_builddir)/gio/gdbus-codegen:$$PYTHONPATH $(PYTHON) $(top_srcdir)/gio/gdbus-codegen/codegen_main.py	 	\
-		--interface-prefix org.gtk.GDBus.Example.ObjectManager.		\
-		--c-namespace Example 						\
-		--c-generate-object-manager					\
-		--generate-c-code gdbus-example-objectmanager-generated		\
-		--generate-docbook gdbus-example-objectmanager-generated	\
-		$<					\
+	$(AM_V_GEN) UNINSTALLED_GLIB_BUILDDIR=$(top_builddir) \
+		PYTHONPATH=$(top_srcdir)/gio/gdbus-2.0 \
+		$(PYTHON) $(top_builddir)/gio/gdbus-2.0/codegen/gdbus-codegen \
+		--interface-prefix org.gtk.GDBus.Example.ObjectManager. \
+		--c-namespace Example \
+		--c-generate-object-manager \
+		--generate-c-code gdbus-example-objectmanager-generated \
+		--generate-docbook gdbus-example-objectmanager-generated \
+		$< \
 		$(NULL)
 
 BUILT_SOURCES += $(GDBUS_GENERATED)



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