18617452 SIZEOF_WCHAR_T undefined in pyconfig.h on 11.2
18468472 ctypes fails for python 2.7
--- a/components/python/python26/patches/Python26-05-isalibs.patch Fri Apr 18 12:06:50 2014 -0700
+++ b/components/python/python26/patches/Python26-05-isalibs.patch Fri Apr 18 16:06:16 2014 -0700
@@ -421,28 +421,3 @@
hp*|HP*) if test "$GCC" = yes;
then CCSHARED="-fPIC";
else CCSHARED="+z";
-@@ -3383,12 +3341,6 @@
- wchar_h="no"
- )
-
--# determine wchar_t size
--if test "$wchar_h" = yes
--then
-- AC_CHECK_SIZEOF(wchar_t, 4, [#include <wchar.h>])
--fi
--
- AC_MSG_CHECKING(for UCS-4 tcl)
- have_ucs4_tcl=no
- AC_TRY_COMPILE([
-@@ -3419,6 +3371,11 @@
- ac_cv_wchar_t_signed=no,
- ac_cv_wchar_t_signed=yes)])
- AC_MSG_RESULT($ac_cv_wchar_t_signed)
-+
-+ PY_CHECK_SIZEOF(wchar_t, 4, [
-+ #include <wchar.h>
-+ #include <stdlib.h>
-+ ])
- fi
-
- AC_MSG_CHECKING(what type to use for unicode)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/python/python27/patches/20-ctypes-util-find-library.patch Fri Apr 18 16:06:16 2014 -0700
@@ -0,0 +1,41 @@
+This patch comes from upstream: http://bugs.python.org/issue5289
+If we ever upgrade to 2.7.4 or later, it will no longer be needed.
+
+--- Python-2.7.3/Lib/ctypes/util.py~
++++ Python-2.7.3/Lib/ctypes/util.py
+@@ -180,6 +180,35 @@ elif os.name == "posix":
+ res.sort(cmp= lambda x,y: cmp(_num_version(x), _num_version(y)))
+ return res[-1]
+
++ elif sys.platform == "sunos5":
++
++ def _findLib_crle(name, is64):
++ if not os.path.exists('/usr/bin/crle'):
++ return None
++
++ if is64:
++ cmd = 'env LC_ALL=C /usr/bin/crle -64 2>/dev/null'
++ else:
++ cmd = 'env LC_ALL=C /usr/bin/crle 2>/dev/null'
++
++ for line in os.popen(cmd).readlines():
++ line = line.strip()
++ if line.startswith('Default Library Path (ELF):'):
++ paths = line.split()[4]
++
++ if not paths:
++ return None
++
++ for dir in paths.split(":"):
++ libfile = os.path.join(dir, "lib%s.so" % name)
++ if os.path.exists(libfile):
++ return libfile
++
++ return None
++
++ def find_library(name, is64 = False):
++ return _get_soname(_findLib_crle(name, is64) or _findLib_gcc(name))
++
+ else:
+
+ def _findSoname_ldconfig(name):