21959680 libsocket tweak needed for python{27,34,35}
authorJohn Beck <John.Beck@Oracle.COM>
Fri, 02 Oct 2015 09:02:41 -0700
changeset 4964 30f7741bb742
parent 4963 54be9ccc004f
child 4965 67c57c9b2e63
21959680 libsocket tweak needed for python{27,34,35}
components/python/python27/patches/02-setup.patch
components/python/python34/patches/03-setup.patch
components/python/python35/patches/03-setup.patch
--- a/components/python/python27/patches/02-setup.patch	Mon Sep 28 12:24:25 2015 -0700
+++ b/components/python/python27/patches/02-setup.patch	Fri Oct 02 09:02:41 2015 -0700
@@ -42,6 +42,15 @@
              exts.append( Extension('readline', ['readline.c'],
                                     library_dirs=['/usr/lib/termcap'],
                                     extra_link_args=readline_extra_link_args,
+@@ -786,7 +797,7 @@
+         # socket(2)
+         exts.append( Extension('_socket', ['socketmodule.c', 'timemodule.c'],
+                                depends=['socketmodule.h'],
+-                               libraries=math_libs) )
++                               libraries=math_libs + ['socket', 'nsl']) )
+         # Detect SSL support for the socket module (via _ssl)
+         search_for_ssl_incs_in = [
+                               '/usr/local/ssl/include',
 @@ -1350,8 +1361,11 @@
                  # _curses_panel.so must link with panelw.
                  panel_library = 'panelw'
@@ -79,7 +88,22 @@
          else:
              missing.append('_curses_panel')
  
-@@ -2083,7 +2109,8 @@
+@@ -1587,9 +1613,14 @@
+                 sysconfig.get_config_var('POSIX_SEMAPHORES_NOT_ENABLED')):
+                 multiprocessing_srcs.append('_multiprocessing/semaphore.c')
+ 
++        multiproc_libs = []
++        if host_platform == 'sunos5':
++            multiproc_libs = [ "xnet" ]
++
+         if sysconfig.get_config_var('WITH_THREAD'):
+             exts.append ( Extension('_multiprocessing', multiprocessing_srcs,
+                                     define_macros=macros.items(),
++                                    libraries=multiproc_libs,
+                                     include_dirs=["Modules/_multiprocessing"]))
+         else:
+             missing.append('_multiprocessing')
+@@ -2083,7 +2114,8 @@
              # this option. If you want to compile ctypes with the Sun
              # compiler, please research a proper solution, instead of
              # finding some -z option for the Sun compiler.
--- a/components/python/python34/patches/03-setup.patch	Mon Sep 28 12:24:25 2015 -0700
+++ b/components/python/python34/patches/03-setup.patch	Fri Oct 02 09:02:41 2015 -0700
@@ -1,8 +1,8 @@
 This patch modifies the setup script to support Solaris.
 As it is Solaris-specific, it is not suitable for upstream.
 
---- Python-3.4.2/setup.py.~2~	2015-02-09 18:43:32.656965175 -0800
-+++ Python-3.4.2/setup.py	2015-02-09 19:28:55.015474602 -0800
+--- Python-3.4.3/setup.py.~2~	2015-03-16 12:52:28.721744829 -0700
++++ Python-3.4.3/setup.py	2015-03-16 12:58:55.474886590 -0700
 @@ -447,12 +447,15 @@
              os.unlink(tmpfile)
  
@@ -38,7 +38,17 @@
              exts.append( Extension('readline', ['readline.c'],
                                     library_dirs=['/usr/lib/termcap'],
                                     extra_link_args=readline_extra_link_args,
-@@ -1295,6 +1305,8 @@
+@@ -759,7 +769,8 @@
+ 
+         # socket(2)
+         exts.append( Extension('_socket', ['socketmodule.c'],
+-                               depends = ['socketmodule.h']) )
++                               depends = ['socketmodule.h'],
++                               libraries = ['socket', 'nsl']) )
+         # Detect SSL support for the socket module (via _ssl)
+         search_for_ssl_incs_in = [
+                               '/usr/local/ssl/include',
+@@ -1295,6 +1306,8 @@
              curses_defines.append(('_XOPEN_SOURCE_EXTENDED', '1'))
  
          if curses_library.startswith('ncurses'):
@@ -47,7 +57,7 @@
              curses_libs = [curses_library]
              exts.append( Extension('_curses', ['_cursesmodule.c'],
                                     include_dirs=curses_includes,
-@@ -1319,10 +1331,32 @@
+@@ -1319,10 +1332,32 @@
          # If the curses module is enabled, check for the panel module
          if (module_enabled(exts, '_curses') and
              self.compiler.find_library_file(lib_dirs, panel_library)):
@@ -81,7 +91,7 @@
          else:
              missing.append('_curses_panel')
  
-@@ -1918,7 +1952,7 @@
+@@ -1918,7 +1953,7 @@
              # this option. If you want to compile ctypes with the Sun
              # compiler, please research a proper solution, instead of
              # finding some -z option for the Sun compiler.
--- a/components/python/python35/patches/03-setup.patch	Mon Sep 28 12:24:25 2015 -0700
+++ b/components/python/python35/patches/03-setup.patch	Fri Oct 02 09:02:41 2015 -0700
@@ -1,8 +1,8 @@
 This patch modifies the setup script to support Solaris.
 As it is Solaris-specific, it is not suitable for upstream.
 
---- Python-3.5.0a4/setup.py.~2~	2015-04-20 13:10:20.522357068 -0700
-+++ Python-3.5.0a4/setup.py	2015-04-20 13:10:20.553743713 -0700
+--- Python-3.5.0/setup.py.~2~	2015-04-20 13:10:20.522357068 -0700
++++ Python-3.5.0/setup.py	2015-04-20 13:10:20.553743713 -0700
 @@ -465,12 +465,15 @@
              os.unlink(tmpfile)
  
@@ -38,7 +38,17 @@
              exts.append( Extension('readline', ['readline.c'],
                                     library_dirs=['/usr/lib/termcap'],
                                     extra_link_args=readline_extra_link_args,
-@@ -1315,6 +1325,8 @@
+@@ -779,7 +789,8 @@
+ 
+         # socket(2)
+         exts.append( Extension('_socket', ['socketmodule.c'],
+-                               depends = ['socketmodule.h']) )
++                               depends = ['socketmodule.h'],
++                               libraries = ['socket', 'nsl']) )
+         # Detect SSL support for the socket module (via _ssl)
+         search_for_ssl_incs_in = [
+                               '/usr/local/ssl/include',
+@@ -1315,6 +1326,8 @@
              curses_defines.append(('_XOPEN_SOURCE_EXTENDED', '1'))
  
          if curses_library.startswith('ncurses'):
@@ -47,7 +57,7 @@
              curses_libs = [curses_library]
              exts.append( Extension('_curses', ['_cursesmodule.c'],
                                     include_dirs=curses_includes,
-@@ -1339,10 +1351,32 @@
+@@ -1339,10 +1352,32 @@
          # If the curses module is enabled, check for the panel module
          if (module_enabled(exts, '_curses') and
              self.compiler.find_library_file(lib_dirs, panel_library)):
@@ -81,7 +91,7 @@
          else:
              missing.append('_curses_panel')
  
-@@ -1938,7 +1972,7 @@
+@@ -1938,7 +1973,7 @@
              # this option. If you want to compile ctypes with the Sun
              # compiler, please research a proper solution, instead of
              # finding some -z option for the Sun compiler.