diff options
author | Dmitry Sivachenko <demon@FreeBSD.org> | 2012-12-20 11:55:54 +0000 |
---|---|---|
committer | Dmitry Sivachenko <demon@FreeBSD.org> | 2012-12-20 11:55:54 +0000 |
commit | c3793c1fde88009d5b50d3f0b8748cea6df7c7e0 (patch) | |
tree | 36ea74c9b0eb6713a8bac3cfa34730e1f90d7ec9 /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-configure | 25 | ||||
-rw-r--r-- | lang/python33/files/patch-Modules-fcntlmodule.c | 53 | ||||
-rw-r--r-- | lang/python33/files/patch-setup.py | 73 |
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 |