meta-openembedded/meta-python/recipes-devtools/python/python3-m2crypto/avoid-host-contamination.patch
Kai Kang cff3116f66 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 <kai.kang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
2021-06-28 09:02:47 -07:00

24 lines
895 B
Diff

Filter out '/usr/include' for swig to avoid host contamination issue.
Upstream-Status: Upstream-Status: Inappropriate [cross compile specific]
Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
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)