diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index 2271ce0b..1d7aee8b 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -56,6 +56,7 @@ copystamp: $(COPY_FILES) $(COPY_FILES_PYME) all-local: copystamp for PYTHON in $(PYTHONS); do \ CFLAGS="$(CFLAGS) -I$(top_srcdir)" \ + top_builddir="$(top_builddir)" \ $$PYTHON setup.py build --verbose ; \ done diff --git a/lang/python/gpgme.i b/lang/python/gpgme.i index 84addae2..a4672e13 100644 --- a/lang/python/gpgme.i +++ b/lang/python/gpgme.i @@ -547,6 +547,10 @@ some structs, which we provide prior to including the version for SWIG. */ %{ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include %} @@ -575,6 +579,10 @@ struct _gpgme_sig_notation /* Now include our local modified version. Any structs defined above are ignored. */ +#ifdef HAVE_CONFIG_H +%include "config.h" +#endif + %include "gpgme.h" %include "errors.i" diff --git a/lang/python/helpers.c b/lang/python/helpers.c index f9aec91f..3724752f 100644 --- a/lang/python/helpers.c +++ b/lang/python/helpers.c @@ -18,6 +18,10 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include #include #include diff --git a/lang/python/helpers.h b/lang/python/helpers.h index 9200f937..67d23b2e 100644 --- a/lang/python/helpers.h +++ b/lang/python/helpers.h @@ -18,6 +18,10 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include #include "Python.h" diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index 31892c1b..7af2d485 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -28,6 +28,7 @@ gpg_error_config = ["gpg-error-config"] gpgme_config_flags = ["--thread=pthread"] gpgme_config = ["gpgme-config"] + gpgme_config_flags gpgme_h = "" +include_dirs = [os.getcwd()] library_dirs = [] in_tree = False extra_swig_opts = [] @@ -38,8 +39,13 @@ if os.path.exists("../../src/gpgme-config"): in_tree = True gpgme_config = ["../../src/gpgme-config"] + gpgme_config_flags gpgme_h = "../../src/gpgme.h" + if 'top_builddir' in os.environ: + include_dirs.append(os.environ['top_builddir']) + # Make sure that SWIG finds config.h when processing gpgme.i. + extra_swig_opts.append("-I{0}".format(os.environ['top_builddir'])) library_dirs = ["../../src/.libs"] # XXX uses libtool internals extra_macros.update( + HAVE_CONFIG_H=1, HAVE_DATA_H=1, IN_TREE_BUILD=1, ) @@ -94,7 +100,6 @@ subprocess.check_call([sys.executable, "gpgme-h-clean.py", gpgme_h], subprocess.check_call([sys.executable, "gpgme-h-clean.py", gpg_error_h], stdout=open("errors.i", "w")) -include_dirs = [os.getcwd()] define_macros = [] libs = getconfig('libs')