0002-Add-.so-as-additional-shared-object-suffix.patch 1.7 KB

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