Package: python3.11 / 3.11.2-6+deb12u6

distutils-link.diff Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Description: distutils: Don't add standard library dirs to library_dirs and runtime_library_dirs.
 On amd64, runtime paths pointing to /usr/lib64 aren't recognized by
 dpkg-shlibdeps, and the packages containing these libraries aren't added to
 ${shlibs:Depends}.

Forwarded: no

--- a/Lib/distutils/unixccompiler.py
+++ b/Lib/distutils/unixccompiler.py
@@ -155,6 +155,17 @@
                                         runtime_library_dirs)
         libraries, library_dirs, runtime_library_dirs = fixed_args
 
+        # filter out standard library paths, which are not explicitely needed
+        # for linking
+        system_libdirs = ['/lib', '/lib64', '/usr/lib', '/usr/lib64']
+        multiarch = sysconfig.get_config_var("MULTIARCH")
+        if multiarch:
+            system_libdirs.extend(['/lib/%s' % multiarch, '/usr/lib/%s' % multiarch])
+        library_dirs = [dir for dir in library_dirs
+                        if not dir in system_libdirs]
+        runtime_library_dirs = [dir for dir in runtime_library_dirs
+                                if not dir in system_libdirs]
+
         lib_opts = gen_lib_options(self, library_dirs, runtime_library_dirs,
                                    libraries)
         if not isinstance(output_dir, (str, type(None))):