blob: 41d49fc1e6371583d5465b7f7bc165f53421b159 [file] [log] [blame]
From 899d25c511c6ce779b7153e9ae2e41055b30b9c5 Mon Sep 17 00:00:00 2001
From: Frank Vanbever <frank.vanbever@essensium.com>
Date: Mon, 9 Mar 2020 12:36:47 +0100
Subject: [PATCH] Add '.so' as additional shared object suffix
EXT_SUFFIX includes a platform information tag starting from Python 3.5 [0]
For example:
>>> sysconfig.get_config_var("EXT_SUFFIX")
'.cpython-38-aarch64-linux-gnu.so'
This suffix only applies to cpython extensions i.e. not to the iptables shared
objects.
Adding '.so' as an additional suffix for shared objects fixes the issue.
Fixes: Issue #301
Signed-off-by: Frank Vanbever <frank.vanbever@essensium.com>
Backported from: 899d25c511c6ce779b7153e9ae2e41055b30b9c5
[0]: https://docs.python.org/3/whatsnew/3.5.html#build-and-c-api-changes
---
iptc/util.py | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/iptc/util.py b/iptc/util.py
index e6b1649..04fe905 100644
--- a/iptc/util.py
+++ b/iptc/util.py
@@ -80,12 +80,19 @@ def _do_find_library(name):
def _find_library(*names):
+ exts = []
if version_info >= (3, 3):
- ext = get_config_var("EXT_SUFFIX")
+ exts.append(get_config_var("EXT_SUFFIX"))
else:
- ext = get_config_var('SO')
+ exts.append(get_config_var('SO'))
+
+ if version_info >= (3, 5):
+ exts.append('.so')
+
for name in names:
- libnames = [name, "lib" + name, name + ext, "lib" + name + ext]
+ libnames = [name, "lib" + name]
+ for ext in exts:
+ libnames += [name + ext, "lib" + name + ext]
libdir = os.environ.get('IPTABLES_LIBDIR', None)
if libdir is not None:
libdirs = libdir.split(':')
--
2.20.1