diff -Naur Python-2.7.9-orig/setup.py Python-2.7.9/setup.py
--- Python-2.7.9-orig/setup.py	2014-12-11 13:50:04.196600000 +0300
+++ Python-2.7.9/setup.py	2014-12-11 13:50:04.305800000 +0300
@@ -1574,7 +1574,7 @@
             macros = dict()
             libraries = ['rt']
 
-        if host_platform == 'win32':
+        if host_platform.startswith(('mingw', 'win')):
             multiprocessing_srcs = [ '_multiprocessing/multiprocessing.c',
                                      '_multiprocessing/semaphore.c',
                                      '_multiprocessing/pipe_connection.c',
@@ -1591,8 +1591,12 @@
                 multiprocessing_srcs.append('_multiprocessing/semaphore.c')
 
         if sysconfig.get_config_var('WITH_THREAD'):
+            multiprocessing_libs = []
+            if host_platform.startswith(('mingw', 'win')):
+                multiprocessing_libs += ['ws2_32']
             exts.append ( Extension('_multiprocessing', multiprocessing_srcs,
                                     define_macros=macros.items(),
+                                    libraries=multiprocessing_libs,
                                     include_dirs=["Modules/_multiprocessing"]))
         else:
             missing.append('_multiprocessing')
