diff options
author | Justus Winter <[email protected]> | 2016-08-02 16:45:10 +0000 |
---|---|---|
committer | Justus Winter <[email protected]> | 2016-08-02 16:45:10 +0000 |
commit | 4c8265d32ddff5960a464b8d4e8d7d2258495b2e (patch) | |
tree | 6dbac46beb0c7844c19cac4b7568709ecc4600fc | |
parent | python: Fix build system integration. (diff) | |
download | gpgme-4c8265d32ddff5960a464b8d4e8d7d2258495b2e.tar.gz gpgme-4c8265d32ddff5960a464b8d4e8d7d2258495b2e.zip |
python: Add a flag identifying in-tree builds.
* lang/python/helpers.c (pyme_in_tree_build): New variable.
* lang/python/helpers.h (pyme_in_tree_build): New declaration.
* lang/python/pyme/version.py.in (in_tree_build): New variable.
* lang/python/setup.py.in: Rework macro handling, set 'IN_TREE_BUILD'
as appropriate.
Signed-off-by: Justus Winter <[email protected]>
-rw-r--r-- | lang/python/helpers.c | 9 | ||||
-rw-r--r-- | lang/python/helpers.h | 3 | ||||
-rw-r--r-- | lang/python/pyme/version.py.in | 1 | ||||
-rwxr-xr-x | lang/python/setup.py.in | 12 |
4 files changed, 24 insertions, 1 deletions
diff --git a/lang/python/helpers.c b/lang/python/helpers.c index 0406f9f8..0b4a7736 100644 --- a/lang/python/helpers.c +++ b/lang/python/helpers.c @@ -28,6 +28,15 @@ #include "helpers.h" #include "private.h" +/* Flag specifying whether this is an in-tree build. */ +int pyme_in_tree_build = +#if IN_TREE_BUILD + 1 +#else + 0 +#endif + ; + static PyObject *GPGMEError = NULL; void _pyme_exception_init(void) { diff --git a/lang/python/helpers.h b/lang/python/helpers.h index 16a9b9fd..9200f937 100644 --- a/lang/python/helpers.h +++ b/lang/python/helpers.h @@ -26,6 +26,9 @@ #define write(fd, str, sz) {DWORD written; WriteFile((HANDLE) fd, str, sz, &written, 0);} #endif +/* Flag specifying whether this is an in-tree build. */ +extern int pyme_in_tree_build; + PyObject *pyme_raise_callback_exception(PyObject *self); PyObject *pyme_set_passphrase_cb(PyObject *self, PyObject *cb); diff --git a/lang/python/pyme/version.py.in b/lang/python/pyme/version.py.in index a40e02d3..e4a5a27b 100644 --- a/lang/python/pyme/version.py.in +++ b/lang/python/pyme/version.py.in @@ -21,6 +21,7 @@ from . import gpgme productname = 'pyme' versionstr = "@VERSION@" gpgme_versionstr = gpgme.GPGME_VERSION +in_tree_build = bool(gpgme.cvar.pyme_in_tree_build) versionlist = versionstr.split(".") major = versionlist[0] diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index 45b56a3e..a524c95c 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -28,7 +28,9 @@ gpg_error_config = "gpg-error-config" gpgme_config = "gpgme-config" gpgme_h = "" library_dirs = [] +in_tree = False extra_swig_opts = [] +extra_macros = dict() if os.path.exists("../../src/gpgme-config"): # In-tree build. @@ -36,7 +38,10 @@ if os.path.exists("../../src/gpgme-config"): gpgme_config = "../../src/gpgme-config" gpgme_h = "../../src/gpgme.h" library_dirs = ["../../src/.libs"] # XXX uses libtool internals - extra_swig_opts = ["-DHAVE_DATA_H=1"] + extra_macros.update( + HAVE_DATA_H=1, + IN_TREE_BUILD=1, + ) try: subprocess.check_call([gpg_error_config, '--version'], @@ -87,6 +92,11 @@ include_dirs = [os.getcwd()] define_macros = [] libs = getconfig('libs') +# Define extra_macros for both the SWIG and C code +for k, v in extra_macros.items(): + extra_swig_opts.append("-D{0}={1}".format(k, v)) + define_macros.append((k, str(v))) + for item in getconfig('cflags'): if item.startswith("-I"): include_dirs.append(item[2:]) |