Skip to content

Commit b3dcb41

Browse files
committed
Try fix build C++ modules. Add WMI module. Fix SOABI generation
1 parent 24e3caa commit b3dcb41

File tree

3 files changed

+13
-10
lines changed

3 files changed

+13
-10
lines changed

Modules/Setup.stdlib.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@
159159
# Windows specific modules
160160

161161
@MODULE__OVERLAPPED_TRUE@_overlapped overlapped.c
162+
@MODULE__WMIMODULE_TRUE@_wmimodule ../PC/_wmimodule.cpp
162163
@MODULE_WINSOUND_TRUE@winsound ../PC/winsound.c
163164

164165

Modules/makesetup

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -228,13 +228,13 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' |
228228
for src in $srcs
229229
do
230230
case $src in
231-
*.c) obj=`basename $src .c`.o; cc='$(CC)';;
232-
*.cc) obj=`basename $src .cc`.o; cc='$(CXX)';;
233-
*.c++) obj=`basename $src .c++`.o; cc='$(CXX)';;
234-
*.C) obj=`basename $src .C`.o; cc='$(CXX)';;
235-
*.cxx) obj=`basename $src .cxx`.o; cc='$(CXX)';;
236-
*.cpp) obj=`basename $src .cpp`.o; cc='$(CXX)';;
237-
*.m) obj=`basename $src .m`.o; cc='$(CC)';; # Obj-C
231+
*.c) obj=`basename $src .c`.o; cc='$(CC)'; ccld='$(BLDSHARED)';;
232+
*.cc) obj=`basename $src .cc`.o; cc='$(CXX)'; ccld='$(LDCXXSHARED)';;
233+
*.c++) obj=`basename $src .c++`.o; cc='$(CXX)'; ccld='$(LDCXXSHARED)';;
234+
*.C) obj=`basename $src .C`.o; cc='$(CXX)'; ccld='$(LDCXXSHARED)';;
235+
*.cxx) obj=`basename $src .cxx`.o; cc='$(CXX)'; ccld='$(LDCXXSHARED)';;
236+
*.cpp) obj=`basename $src .cpp`.o; cc='$(CXX)'; ccld='$(LDCXXSHARED)';;
237+
*.m) obj=`basename $src .m`.o; cc='$(CC)'; ccld='$(BLDSHARED)';; # Obj-C
238238
*) continue;;
239239
esac
240240
case $src in
@@ -274,7 +274,7 @@ sed -e 's/[ ]*#.*//' -e '/^[ ]*$/d' |
274274
;;
275275
esac
276276
rule="$file: $objs"
277-
rule="$rule; \$(BLDSHARED) $objs $libs \$(LIBPYTHON) -o $file"
277+
rule="$rule; $ccld $objs $libs \$(LIBPYTHON) -o $file"
278278
echo "$rule" >>$rulesf
279279
done
280280
done

configure.ac

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6705,7 +6705,7 @@ AC_MSG_CHECKING([ABIFLAGS])
67056705
AC_MSG_RESULT([$ABIFLAGS])
67066706
AC_MSG_CHECKING([SOABI])
67076707
case $host_os in
6708-
mingw*) SOABI='cp'`echo $VERSION | tr -d .`${ABIFLAGS}${SOABI_PLATFORM:+-$SOABI_PLATFORM};;
6708+
mingw*) SOABI='cp'`echo $VERSION | tr -d .`;;
67096709
*) SOABI='cpython-'`echo $VERSION | tr -d .`${ABIFLAGS}${SOABI_PLATFORM:+-$SOABI_PLATFORM};;
67106710
esac
67116711
AC_MSG_RESULT([$SOABI])
@@ -6716,7 +6716,7 @@ if test "$Py_DEBUG" = 'true'; then
67166716
# Similar to SOABI but remove "d" flag from ABIFLAGS
67176717
AC_SUBST([ALT_SOABI])
67186718
case $host_os in
6719-
mingw*) ALT_SOABI='cp'`echo $VERSION | tr -d .``echo $ABIFLAGS | tr -d d`${SOABI_PLATFORM:+-$SOABI_PLATFORM};;
6719+
mingw*) ALT_SOABI='cp'`echo $VERSION | tr -d .`;;
67206720
*) ALT_SOABI='cpython-'`echo $VERSION | tr -d .``echo $ABIFLAGS | tr -d d`${SOABI_PLATFORM:+-$SOABI_PLATFORM};;
67216721
esac
67226722
AC_DEFINE_UNQUOTED([ALT_SOABI], ["${ALT_SOABI}"],
@@ -8392,6 +8392,8 @@ dnl windows specific modules
83928392
PY_STDLIB_MOD([winreg], [test "$MACHDEP" = "win32"])
83938393
PY_STDLIB_MOD([msvcrt], [test "$MACHDEP" = "win32"])
83948394
PY_STDLIB_MOD([_winapi], [test "$MACHDEP" = "win32"])
8395+
PY_STDLIB_MOD([_wmimodule], [test "$MACHDEP" = "win32"], [], [],
8396+
[-lwbemuuid -lpropsys -lole32 -loleaut32 -luuid])
83958397
PY_STDLIB_MOD([winsound], [test "$MACHDEP" = "win32"], [], [],
83968398
[-lwinmm])
83978399
PY_STDLIB_MOD([_overlapped], [test "$MACHDEP" = "win32"], [], [],

0 commit comments

Comments
 (0)