diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py --- Python-3.8.0-orig/setup.py 2019-10-22 10:01:44.336020000 +0300 +++ Python-3.8.0/setup.py 2019-10-22 10:01:45.428021900 +0300 @@ -800,13 +800,21 @@ if (self.config_h_vars.get('FLOCK_NEEDS_LIBBSD', False)): # May be necessary on AIX for flock function libs = ['bsd'] - self.add(Extension('fcntl', ['fcntlmodule.c'], - libraries=libs)) + if not MS_WINDOWS: + self.add(Extension('fcntl', ['fcntlmodule.c'], + libraries=libs)) + else: + self.missing.append('fcntl') # pwd(3) - self.add(Extension('pwd', ['pwdmodule.c'])) + if not MS_WINDOWS: + self.add(Extension('pwd', ['pwdmodule.c'])) + else: + self.missing.append('pwd') # grp(3) - if not VXWORKS: + if not VXWORKS and not MS_WINDOWS: self.add(Extension('grp', ['grpmodule.c'])) + else: + self.missing.append('grp') # spwd, shadow passwords if (self.config_h_vars.get('HAVE_GETSPNAM', False) or self.config_h_vars.get('HAVE_GETSPENT', False)): @@ -831,7 +839,10 @@ # Lance Ellinghaus's syslog module # syslog daemon interface - self.add(Extension('syslog', ['syslogmodule.c'])) + if not MS_WINDOWS: + self.add(Extension('syslog', ['syslogmodule.c'])) + else: + self.missing.append('syslog') # Python interface to subinterpreter C-API. self.add(Extension('_xxsubinterpreters', ['_xxsubinterpretersmodule.c'])) @@ -857,7 +868,10 @@ self.add(Extension('_csv', ['_csv.c'])) # POSIX subprocess module helper. - self.add(Extension('_posixsubprocess', ['_posixsubprocess.c'])) + if not MS_WINDOWS: + self.add(Extension('_posixsubprocess', ['_posixsubprocess.c'])) + else: + self.missing.append('_posixsubprocess') def detect_test_extensions(self): # Python C API test module @@ -1039,13 +1053,16 @@ # the encryption. return - if self.compiler.find_library_file(self.lib_dirs, 'crypt'): - libs = ['crypt'] - else: - libs = [] + if not MS_WINDOWS: + if self.compiler.find_library_file(self.lib_dirs, 'crypt'): + libs = ['crypt'] + else: + libs = [] - self.add(Extension('_crypt', ['_cryptmodule.c'], - libraries=libs)) + self.add(Extension('_crypt', ['_cryptmodule.c'], + libraries=libs)) + else: + self.missing.append('_crypt') def detect_socket(self): # socket(2)