From cff3116f665c2d17f6a6ae9bbe61025c88da99c0 Mon Sep 17 00:00:00 2001 From: Kai Kang Date: Thu, 24 Jun 2021 16:32:04 +0800 Subject: python3-m2crypto: avoid host contamination for swig If the version of libssl-dev is not match the version of libssl on the build machine, it fails to compile SWIG/_m2crypto_wrap.c which is created by swig for python3-m2crypto-native: | SWIG/_m2crypto_wrap.c:9757:19: error: dereferencing pointer to incomplete type 'struct stack_st' | if (arg1) (arg1)->num = arg2; | ^~ But it works if no libssl-dev installed on the build machine. Export STAGING_DIR to make existing patch 0001-setup.py-link-in-sysroot-not-in-host-directories.patch work. And filter out '/usr/inlucde' from include pathes of swig. Signed-off-by: Kai Kang Signed-off-by: Khem Raj Signed-off-by: Trevor Gamblin --- .../avoid-host-contamination.patch | 23 ++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 meta-python/recipes-devtools/python/python3-m2crypto/avoid-host-contamination.patch (limited to 'meta-python/recipes-devtools/python/python3-m2crypto/avoid-host-contamination.patch') diff --git a/meta-python/recipes-devtools/python/python3-m2crypto/avoid-host-contamination.patch b/meta-python/recipes-devtools/python/python3-m2crypto/avoid-host-contamination.patch new file mode 100644 index 0000000000..9d9b8449ba --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-m2crypto/avoid-host-contamination.patch @@ -0,0 +1,23 @@ +Filter out '/usr/include' for swig to avoid host contamination issue. + +Upstream-Status: Upstream-Status: Inappropriate [cross compile specific] + +Signed-off-by: Kai Kang +--- + setup.py | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 5a12981..389d49f 100644 +--- a/setup.py ++++ b/setup.py +@@ -153,7 +153,8 @@ class _M2CryptoBuildExt(build_ext.build_ext): + self.swig_opts.append('-py3') + + # swig seems to need the default header file directories +- self.swig_opts.extend(['-I%s' % i for i in _get_additional_includes()]) ++ self.swig_opts.extend(['-I%s' % i for i in _get_additional_includes() ++ if i != '/usr/include']) + + log.debug('self.include_dirs = %s', self.include_dirs) + log.debug('self.library_dirs = %s', self.library_dirs) -- cgit v1.2.3-54-g00ecf