summaryrefslogtreecommitdiff
path: root/lang/python33/files
diff options
context:
space:
mode:
authorDmitry Sivachenko <demon@FreeBSD.org>2012-12-20 11:55:54 +0000
committerDmitry Sivachenko <demon@FreeBSD.org>2012-12-20 11:55:54 +0000
commitc3793c1fde88009d5b50d3f0b8748cea6df7c7e0 (patch)
tree36ea74c9b0eb6713a8bac3cfa34730e1f90d7ec9 /lang/python33/files
parent- Update PORTSCOUT (diff)
Port for python version 3.3.
Submitted by: Kubilay Kocak <koobs.freebsd@gmail.com>
Notes
Notes: svn path=/head/; revision=309312
Diffstat (limited to 'lang/python33/files')
-rw-r--r--lang/python33/files/patch-Modules-_ctypes-libffi-configure25
-rw-r--r--lang/python33/files/patch-Modules-fcntlmodule.c53
-rw-r--r--lang/python33/files/patch-setup.py73
3 files changed, 151 insertions, 0 deletions
diff --git a/lang/python33/files/patch-Modules-_ctypes-libffi-configure b/lang/python33/files/patch-Modules-_ctypes-libffi-configure
new file mode 100644
index 000000000000..5bddeea3cee6
--- /dev/null
+++ b/lang/python33/files/patch-Modules-_ctypes-libffi-configure
@@ -0,0 +1,25 @@
+--- ./Modules/_ctypes/libffi/configure.orig 2012-09-29 18:00:42.000000000 +1000
++++ ./Modules/_ctypes/libffi/configure 2012-10-04 20:21:15.000000000 +1000
+@@ -6834,7 +6834,7 @@
+ rm -rf conftest*
+ ;;
+
+-x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
++amd64-*-freebsd*|x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \
+ s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
+ # Find out which ABI we are using.
+ echo 'int i;' > conftest.$ac_ext
+@@ -14322,10 +14322,10 @@
+ $as_echo_n "(cached) " >&6
+ else
+
+- libffi_cv_as_x86_pcrel=yes
++ libffi_cv_as_x86_pcrel=no
+ echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s
+- if $CC $CFLAGS -c conftest.s 2>&1 | $EGREP -i 'illegal|warning' > /dev/null; then
+- libffi_cv_as_x86_pcrel=no
++ if $CC $CFLAGS -c conftest.s > /dev/null; then
++ libffi_cv_as_x86_pcrel=yes
+ fi
+
+ fi
diff --git a/lang/python33/files/patch-Modules-fcntlmodule.c b/lang/python33/files/patch-Modules-fcntlmodule.c
new file mode 100644
index 000000000000..88188d09963e
--- /dev/null
+++ b/lang/python33/files/patch-Modules-fcntlmodule.c
@@ -0,0 +1,53 @@
+--- ./Modules/fcntlmodule.c.orig 2012-09-29 18:00:45.000000000 +1000
++++ ./Modules/fcntlmodule.c 2012-10-04 20:21:15.000000000 +1000
+@@ -97,20 +97,15 @@
+ {
+ #define IOCTL_BUFSZ 1024
+ int fd;
+- /* In PyArg_ParseTuple below, we use the unsigned non-checked 'I'
++ /* In PyArg_ParseTuple below, we use the unsigned non-checked 'k'
+ format for the 'code' parameter because Python turns 0x8000000
+ into either a large positive number (PyLong or PyInt on 64-bit
+ platforms) or a negative number on others (32-bit PyInt)
+ whereas the system expects it to be a 32bit bit field value
+ regardless of it being passed as an int or unsigned long on
+- various platforms. See the termios.TIOCSWINSZ constant across
+- platforms for an example of thise.
+-
+- If any of the 64bit platforms ever decide to use more than 32bits
+- in their unsigned long ioctl codes this will break and need
+- special casing based on the platform being built on.
++ various platforms.
+ */
+- unsigned int code;
++ unsigned long code;
+ int arg;
+ int ret;
+ Py_buffer pstr;
+@@ -119,7 +114,7 @@
+ int mutate_arg = 1;
+ char buf[IOCTL_BUFSZ+1]; /* argument plus NUL byte */
+
+- if (PyArg_ParseTuple(args, "O&Iw*|i:ioctl",
++ if (PyArg_ParseTuple(args, "O&kw*|i:ioctl",
+ conv_descriptor, &fd, &code,
+ &pstr, &mutate_arg)) {
+ char *arg;
+@@ -174,7 +169,7 @@
+ }
+
+ PyErr_Clear();
+- if (PyArg_ParseTuple(args, "O&Is*:ioctl",
++ if (PyArg_ParseTuple(args, "O&ks*:ioctl",
+ conv_descriptor, &fd, &code, &pstr)) {
+ str = pstr.buf;
+ len = pstr.len;
+@@ -201,7 +196,7 @@
+ PyErr_Clear();
+ arg = 0;
+ if (!PyArg_ParseTuple(args,
+- "O&I|i;ioctl requires a file or file descriptor,"
++ "O&k|i;ioctl requires a file or file descriptor,"
+ " an integer and optionally an integer or buffer argument",
+ conv_descriptor, &fd, &code, &arg)) {
+ return NULL;
diff --git a/lang/python33/files/patch-setup.py b/lang/python33/files/patch-setup.py
new file mode 100644
index 000000000000..3ad8a8b70708
--- /dev/null
+++ b/lang/python33/files/patch-setup.py
@@ -0,0 +1,73 @@
+--- ./setup.py.orig 2012-09-29 18:00:50.000000000 +1000
++++ ./setup.py 2012-10-04 20:21:15.000000000 +1000
+@@ -31,7 +31,7 @@
+ COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS"))
+
+ # This global variable is used to hold the list of modules to be disabled.
+-disabled_module_list = []
++disabled_module_list = ["_sqlite3", "_tkinter", "_gdbm"]
+
+ # File which contains the directory for shared mods (for sys.path fixup
+ # when running from the build dir, see Modules/getpath.c)
+@@ -694,7 +694,7 @@
+ # use the same library for the readline and curses modules.
+ if 'curses' in readline_termcap_library:
+ curses_library = readline_termcap_library
+- elif self.compiler.find_library_file(lib_dirs, 'ncursesw'):
++ elif self.compiler.find_library_file(lib_dirs, 'XXXXncursesw'):
+ curses_library = 'ncursesw'
+ elif self.compiler.find_library_file(lib_dirs, 'ncurses'):
+ curses_library = 'ncurses'
+@@ -733,7 +733,7 @@
+ 'termcap'):
+ readline_libs.append('termcap')
+ exts.append( Extension('readline', ['readline.c'],
+- library_dirs=['/usr/lib/termcap'],
++ library_dirs=['/usr/lib','/usr/lib/termcap'],
+ extra_link_args=readline_extra_link_args,
+ libraries=readline_libs) )
+ else:
+@@ -1261,7 +1261,7 @@
+ curses_defines = []
+ curses_includes = []
+ panel_library = 'panel'
+- if curses_library == 'ncursesw':
++ if curses_library == 'XXXXncursesw':
+ curses_defines.append(('HAVE_NCURSESW', '1'))
+ curses_includes.append('/usr/include/ncursesw')
+ # Bug 1464056: If _curses.so links with ncursesw,
+@@ -1285,6 +1285,7 @@
+ exts.append( Extension('_curses', ['_cursesmodule.c'],
+ include_dirs=curses_includes,
+ define_macros=curses_defines,
++ library_dirs = ['/usr/lib'],
+ libraries = curses_libs) )
+ elif curses_library == 'curses' and host_platform != 'darwin':
+ # OSX has an old Berkeley curses, not good enough for
+@@ -1298,6 +1299,7 @@
+
+ exts.append( Extension('_curses', ['_cursesmodule.c'],
+ define_macros=curses_defines,
++ library_dirs = ['/usr/lib'],
+ libraries = curses_libs) )
+ else:
+ missing.append('_curses')
+@@ -1462,7 +1464,7 @@
+ macros = dict()
+ libraries = []
+
+- elif host_platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'):
++ elif host_platform in ('freebsd7', 'freebsd8', 'freebsd9', 'freebsd10'):
+ # FreeBSD's P1003.1b semaphore support is very experimental
+ # and has many known problems. (as of June 2008)
+ macros = dict()
+@@ -2143,8 +2145,7 @@
+ # If you change the scripts installed here, you also need to
+ # check the PyBuildScripts command above, and change the links
+ # created by the bininstall target in Makefile.pre.in
+- scripts = ["Tools/scripts/pydoc3", "Tools/scripts/idle3",
+- "Tools/scripts/2to3", "Tools/scripts/pyvenv"]
++ scripts = []
+ )
+
+ # --install-platlib