Introduce the UNINSTALLED_GLIB_BUILDDIR environment variable
authorDieter Verfaillie <dieterv@optionexplicit.be>
Tue, 23 Aug 2011 15:37:35 +0000 (17:37 +0200)
committerColin Walters <walters@verbum.org>
Thu, 25 Aug 2011 20:55:49 +0000 (16:55 -0400)
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
gio/gdbus-2.0/codegen/codegen.py
gio/gdbus-2.0/codegen/codegen_docbook.py
gio/gdbus-2.0/codegen/codegen_main.py
gio/tests/Makefile.am
gio/tests/gdbus-object-manager-example/Makefile.am

index e69de29..abfca81 100644 (file)
@@ -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')))
index 9775536..ed9b60a 100644 (file)
@@ -23,7 +23,7 @@
 
 import sys
 
-import config
+from . import config
 from . import utils
 from . import dbustypes
 
index a2fb118..4ceef57 100644 (file)
@@ -24,7 +24,7 @@
 import sys
 import re
 
-import config
+from . import config
 from . import utils
 from . import dbustypes
 from . import parser
index f11ef1d..067ac5e 100755 (executable)
@@ -24,7 +24,7 @@
 import sys
 import optparse
 
-import config
+from . import config
 from . import utils
 from . import dbustypes
 from . import parser
index 45cbe37..1eb2985 100644 (file)
@@ -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
index 3ca56c6..292c0c4 100644 (file)
@@ -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)