From 453ab9d24ca48c9e01d21e1454d6b08de1938b76 Mon Sep 17 00:00:00 2001 From: Alon Bar-Lev Date: Thu, 29 Sep 2016 10:30:58 +0300 Subject: [PATCH] python: Link 'data.h' and 'config.h' into the builddir. * lang/python/Makefile.am: Link to the files. * lang/python/gpgme.i: Update path. * lang/python/setup.py.in: Do not add the top builddir to the include path. -- To make it easy to build the subpackage using standard tools without altering environment or CFLAGS, symlink the required artifacts from source tree into subpackage directory when preparing sources. Signed-off-by: Alon Bar-Lev --- lang/python/Makefile.am | 15 ++++++++++----- lang/python/gpgme.i | 2 +- lang/python/setup.py.in | 4 ---- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/lang/python/Makefile.am b/lang/python/Makefile.am index ea37da97..9cb99c44 100644 --- a/lang/python/Makefile.am +++ b/lang/python/Makefile.am @@ -46,22 +46,27 @@ COPY_FILES_PYME = \ # For VPATH builds we need to copy some files because Python's # distutils are not VPATH-aware. -copystamp: $(COPY_FILES) $(COPY_FILES_PYME) +copystamp: $(COPY_FILES) $(COPY_FILES_PYME) data.h config.h if test "$(srcdir)" != "$(builddir)" ; then \ cp -R $(COPY_FILES) . ; \ cp -R $(COPY_FILES_PYME) pyme ; \ fi touch $@ +data.h: + ln -s "$(top_srcdir)/src/data.h" + +config.h: + ln -s "$(top_builddir)/config.h" + all-local: copystamp for PYTHON in $(PYTHONS); do \ - CFLAGS="$(CFLAGS) -I$(top_srcdir)" \ - top_builddir="$(top_builddir)" \ + CFLAGS="$(CFLAGS)" \ $$PYTHON setup.py build --verbose ; \ done dist/pyme3-$(VERSION).tar.gz dist/pyme3-$(VERSION).tar.gz.asc: copystamp - CFLAGS="$(CFLAGS) -I$(top_srcdir)" \ + CFLAGS="$(CFLAGS)" \ $(PYTHON) setup.py sdist --verbose gpg2 --detach-sign --armor dist/pyme3-$(VERSION).tar.gz @@ -76,7 +81,7 @@ upload: dist/pyme3-$(VERSION).tar.gz dist/pyme3-$(VERSION).tar.gz.asc twine upload $^ CLEANFILES = gpgme.h errors.i gpgme_wrap.c pyme/gpgme.py \ - copystamp + data.h config.h copystamp # Remove the rest. # diff --git a/lang/python/gpgme.i b/lang/python/gpgme.i index eaeb4f87..5d074aa9 100644 --- a/lang/python/gpgme.i +++ b/lang/python/gpgme.i @@ -183,7 +183,7 @@ representation of struct gpgme_data for an very efficient check if the buffer has been modified. */ %{ -#include "src/data.h" /* For struct gpgme_data. */ +#include "data.h" /* For struct gpgme_data. */ %} #endif diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in index 7af2d485..4c41673a 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -39,10 +39,6 @@ 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,