--- a/setup.py +++ b/setup.py @@ -21,27 +21,9 @@ class install_lib(_install_lib.install_lib): if self.distribution.has_ext_modules(): self.run_command('build_ext') -# To link the extension with the C library, distutils passes the "-lLIBRARY" -# option to the linker. This makes it go through its library search path. If it -# finds a shared object of the specified library in one of the system-wide -# library paths, it will dynamically link it. -# -# We want the linker to statically link the version of hiredis that is included -# with hiredis-py. However, the linker may pick up the shared library version -# of hiredis, if it is available through one of the system-wide library paths. -# To prevent this from happening, we use an obfuscated library name such that -# the only version the linker will be able to find is the right version. -# -# This is a terrible hack, but patching distutils to do the right thing for all -# supported Python versions is worse... -# -# Also see: https://github.com/pietern/hiredis-py/issues/15 -lib = ("hiredis_for_hiredis_py", { - "sources": ["vendor/hiredis/%s.c" % src for src in ("hiredis", "net", "sds")]}) - ext = Extension("hiredis.hiredis", sources=glob.glob("src/*.c"), - include_dirs=["vendor"]) + libraries=["hiredis"]) setup( name="hiredis", @@ -53,7 +35,6 @@ setup( keywords=["Redis"], license="BSD", packages=["hiredis"], - libraries=[lib], ext_modules=[ext], # Override "install_lib" command