diff --git a/Misc/NEWS.d/next/Build/2018-09-26-18-57-43.bpo-34814.tv7fIY.rst b/Misc/NEWS.d/next/Build/2018-09-26-18-57-43.bpo-34814.tv7fIY.rst new file mode 100644 index 000000000000000..4842b6ab039f9f9 --- /dev/null +++ b/Misc/NEWS.d/next/Build/2018-09-26-18-57-43.bpo-34814.tv7fIY.rst @@ -0,0 +1,3 @@ +Fix Modules/makesetup script for shared libraries. When Modules/Setup is +modified to compile C extensions as shared libraries using Makefile, make +sure that the generated shared library is linked to libpython3.X. diff --git a/Modules/makesetup b/Modules/makesetup index c7b0a60400cf29e..06a96fbc357df6c 100755 --- a/Modules/makesetup +++ b/Modules/makesetup @@ -247,8 +247,8 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' | case $doconfig in no) SHAREDMODS="$SHAREDMODS $file";; esac - rule="$file: $objs" - rule="$rule; \$(BLDSHARED) $objs $libs $ExtraLibs -o $file" + rule="$file: $objs \$(LDLIBRARY)" + rule="$rule; \$(BLDSHARED) $objs \$(BLDLIBRARY) $libs $ExtraLibs -o $file" echo "$rule" >>$rulesf done done