diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py --- Python-3.7.0-orig/setup.py 2018-07-12 10:21:19.468750300 +0300 +++ Python-3.7.0/setup.py 2018-07-12 10:21:19.733950700 +0300 @@ -729,11 +729,20 @@ if (config_h_vars.get('FLOCK_NEEDS_LIBBSD', False)): # May be necessary on AIX for flock function libs = ['bsd'] - exts.append( Extension('fcntl', ['fcntlmodule.c'], libraries=libs) ) + if not host_platform.startswith(('mingw', 'win')): + exts.append( Extension('fcntl', ['fcntlmodule.c'], libraries=libs) ) + else: + missing.append('fcntl') # pwd(3) - exts.append( Extension('pwd', ['pwdmodule.c']) ) + if not host_platform.startswith(('mingw', 'win')): + exts.append( Extension('pwd', ['pwdmodule.c']) ) + else: + missing.append('pwd') # grp(3) - exts.append( Extension('grp', ['grpmodule.c']) ) + if not host_platform.startswith(('mingw', 'win')): + exts.append( Extension('grp', ['grpmodule.c']) ) + else: + missing.append('grp') # spwd, shadow passwords if (config_h_vars.get('HAVE_GETSPNAM', False) or config_h_vars.get('HAVE_GETSPENT', False)): @@ -756,7 +765,10 @@ # Lance Ellinghaus's syslog module # syslog daemon interface - exts.append( Extension('syslog', ['syslogmodule.c']) ) + if not host_platform.startswith(('mingw', 'win')): + exts.append( Extension('syslog', ['syslogmodule.c']) ) + else: + missing.append('syslog') # Fuzz tests. exts.append( Extension( @@ -866,17 +878,23 @@ # crypt module. - if self.compiler.find_library_file(lib_dirs, 'crypt'): - libs = ['crypt'] + if not host_platform.startswith(('mingw', 'win')): + if self.compiler.find_library_file(lib_dirs, 'crypt'): + libs = ['crypt'] + else: + libs = [] + exts.append( Extension('_crypt', ['_cryptmodule.c'], libraries=libs) ) else: - libs = [] - exts.append( Extension('_crypt', ['_cryptmodule.c'], libraries=libs) ) + missing.append('_crypt') # CSV files exts.append( Extension('_csv', ['_csv.c']) ) # POSIX subprocess module helper. - exts.append( Extension('_posixsubprocess', ['_posixsubprocess.c']) ) + if not host_platform.startswith(('mingw', 'win')): + exts.append( Extension('_posixsubprocess', ['_posixsubprocess.c']) ) + else: + missing.append('_posixsubprocess') # socket(2) socket_libs = []