Skip to content

Commit d9587bc

Browse files
authored
Issue 554 (cztomczak#557)
* Do not link against libpython on Linux (cztomczak#554). * Part 2. Do not link against libpython library on Linux (cztomczak#554).
1 parent bddb859 commit d9587bc

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

tools/build.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ def check_directories():
238238
prebuilt_name = get_cef_binaries_libraries_basename(OS_POSTFIX2)
239239
print("[build.py] ERROR: Couldn't find CEF prebuilt binaries and"
240240
" libraries: 'build/{prebuilt_dir}/'. Download it"
241-
" from GitHub released tagged eg. 'v50-upstream` or download"
241+
" from GitHub released tagged eg. 'vXX-upstream` or download"
242242
" CEF binaries from Spotify Automated Builds and then run"
243243
"`automate.py --prebuilt-cef`."
244244
.format(prebuilt_dir=prebuilt_name))

tools/cython_setup.py

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import sys
2626
import platform
2727
import Cython
28+
import copy
2829
import os
2930

3031
# Must monkey patch Cython's ModuleNode to inject custom C++ code
@@ -65,6 +66,27 @@ def generate_extern_c_macro_definition(self, code):
6566
generate_extern_c_macro_definition)
6667

6768

69+
# Issue #554: Shared libraries in manylinux1 wheel should not
70+
# be linked against libpythonX.Y.so.1.0.
71+
if LINUX:
72+
get_libraries_old = (build_ext.get_libraries)
73+
def get_libraries_new(self, ext):
74+
libraries = get_libraries_old(self, ext)
75+
libpython = ('python' + str(sys.version_info.major) + '.'
76+
+ str(sys.version_info.minor))
77+
for lib in copy.copy(libraries):
78+
# Library name for Python versions before 3.8 may have
79+
# an 'm' at the end.
80+
if lib.startswith(libpython):
81+
print("[cython_setup.py] Do not link against -l%s (Issue #554)"
82+
% lib)
83+
libraries.remove(lib)
84+
return libraries
85+
build_ext.get_libraries = (
86+
get_libraries_new
87+
)
88+
89+
6890
# Command line args
6991
FAST_FLAG = False
7092
ENABLE_PROFILING = False

0 commit comments

Comments
 (0)