[UPDATE] Update python24 to 2.4.4
Xin LI
delphij at freebsd.org
Sun Nov 26 19:46:17 PST 2006
>Submitter-Id: current-users
>Originator: Xin LI
>Organization: The FreeBSD Project
>Confidential: no
>Synopsis: [UPDATE] Update python24 to 2.4.4
>Severity: non-critical
>Priority: low
>Category: ports
>Class: update
>Release: FreeBSD 6.1-RELEASE-p3 i386
>Environment:
System: FreeBSD tarsier.delphij.net 6.1-RELEASE-p3 FreeBSD 6.1-RELEASE-p3 #37: Sun Aug 13 03:34:43 CST 2006 delphij at tarsier.delphij.net:/usr/obj/usr/src/sys/TARSIER i386
>Description:
Python 2.4.4 is a bugfix release of Python 2.4, on October 18, 2006.
>How-To-Repeat:
>Fix:
Do a s/2.4.3/2.4.4/ s/243/244/g against bsd.python.mk and apply
the attached patch:
--- patch-python24 begins here ---
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/lang/python24/Makefile,v
retrieving revision 1.155
diff -u -r1.155 Makefile
--- Makefile 13 Oct 2006 07:16:44 -0000 1.155
+++ Makefile 27 Nov 2006 03:28:40 -0000
@@ -6,8 +6,8 @@
#
PORTNAME= python24
-PORTVERSION= 2.4.3
-PORTREVISION= 3
+PORTVERSION= 2.4.4
+PORTREVISION= 0
CATEGORIES= lang python ipv6
MASTER_SITES= ${PYTHON_MASTER_SITES}
MASTER_SITE_SUBDIR= ${PYTHON_MASTER_SITE_SUBDIR}
Index: distinfo
===================================================================
RCS file: /home/ncvs/ports/lang/python24/distinfo,v
retrieving revision 1.62
diff -u -r1.62 distinfo
--- distinfo 9 Oct 2006 14:29:17 -0000 1.62
+++ distinfo 27 Nov 2006 03:32:49 -0000
@@ -1,3 +1,3 @@
-MD5 (python/Python-2.4.3.tgz) = edf994473a8c1a963aaa71e442b285b7
-SHA256 (python/Python-2.4.3.tgz) = 985a413932f5e31e6280b37da6b285a3a0b2748c6786643989ed9b23de97e2d5
-SIZE (python/Python-2.4.3.tgz) = 9348239
+MD5 (python/Python-2.4.4.tgz) = 82d000617baaef269ad5795c595fdc58
+SHA256 (python/Python-2.4.4.tgz) = 92be6e20cbc3111d9dd0c016d72ef7914c23b879dc52df7ba28df97afbf12e2e
+SIZE (python/Python-2.4.4.tgz) = 9531474
Index: files/patch-CVE-2006-4980
===================================================================
RCS file: files/patch-CVE-2006-4980
diff -N files/patch-CVE-2006-4980
--- files/patch-CVE-2006-4980 8 Oct 2006 06:48:01 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,67 +0,0 @@
---- Objects/unicodeobject.c 2006/08/22 08:09:11 51465
-+++ Objects/unicodeobject.c 2006/08/22 08:25:33 51466
-@@ -1970,7 +1970,28 @@
-
- static const char *hexdigit = "0123456789abcdef";
-
-- repr = PyString_FromStringAndSize(NULL, 2 + 6*size + 1);
-+ /* Initial allocation is based on the longest-possible unichr
-+ escape.
-+
-+ In wide (UTF-32) builds '\U00xxxxxx' is 10 chars per source
-+ unichr, so in this case it's the longest unichr escape. In
-+ narrow (UTF-16) builds this is five chars per source unichr
-+ since there are two unichrs in the surrogate pair, so in narrow
-+ (UTF-16) builds it's not the longest unichr escape.
-+
-+ In wide or narrow builds '\uxxxx' is 6 chars per source unichr,
-+ so in the narrow (UTF-16) build case it's the longest unichr
-+ escape.
-+ */
-+
-+ repr = PyString_FromStringAndSize(NULL,
-+ 2
-+#ifdef Py_UNICODE_WIDE
-+ + 10*size
-+#else
-+ + 6*size
-+#endif
-+ + 1);
- if (repr == NULL)
- return NULL;
-
-@@ -1995,15 +2016,6 @@
- #ifdef Py_UNICODE_WIDE
- /* Map 21-bit characters to '\U00xxxxxx' */
- else if (ch >= 0x10000) {
-- int offset = p - PyString_AS_STRING(repr);
--
-- /* Resize the string if necessary */
-- if (offset + 12 > PyString_GET_SIZE(repr)) {
-- if (_PyString_Resize(&repr, PyString_GET_SIZE(repr) + 100))
-- return NULL;
-- p = PyString_AS_STRING(repr) + offset;
-- }
--
- *p++ = '\\';
- *p++ = 'U';
- *p++ = hexdigit[(ch >> 28) & 0x0000000F];
-@@ -2016,8 +2028,8 @@
- *p++ = hexdigit[ch & 0x0000000F];
- continue;
- }
--#endif
-- /* Map UTF-16 surrogate pairs to Unicode \UXXXXXXXX escapes */
-+#else
-+ /* Map UTF-16 surrogate pairs to '\U00xxxxxx' */
- else if (ch >= 0xD800 && ch < 0xDC00) {
- Py_UNICODE ch2;
- Py_UCS4 ucs;
-@@ -2042,6 +2054,7 @@
- s--;
- size++;
- }
-+#endif
-
- /* Map 16-bit characters to '\uxxxx' */
- if (ch >= 256) {
Index: files/patch-setup.py
===================================================================
RCS file: /home/ncvs/ports/lang/python24/files/patch-setup.py,v
retrieving revision 1.10
diff -u -r1.10 patch-setup.py
--- files/patch-setup.py 13 Oct 2006 07:16:45 -0000 1.10
+++ files/patch-setup.py 27 Nov 2006 03:35:59 -0000
@@ -1,5 +1,5 @@
---- setup.py.orig Mon Oct 9 22:08:07 2006
-+++ setup.py Mon Oct 9 22:08:42 2006
+--- setup.py.orig Mon Nov 27 03:33:44 2006
++++ setup.py Mon Nov 27 03:35:40 2006
@@ -15,7 +15,7 @@
from distutils.command.install_lib import install_lib
@@ -9,7 +9,7 @@
def add_dir_to_list(dirlist, dir):
"""Add the directory 'dir' to the list 'dirlist' (at the front) if
-@@ -425,7 +425,7 @@
+@@ -442,7 +442,7 @@
if self.compiler.find_library_file(lib_dirs, 'readline'):
readline_libs = ['readline']
if self.compiler.find_library_file(lib_dirs,
@@ -18,12 +18,12 @@
readline_libs.append('ncursesw')
elif self.compiler.find_library_file(lib_dirs,
'ncurses'):
-@@ -681,7 +681,7 @@
-
+@@ -728,7 +728,7 @@
# Curses support, requiring the System V version of curses, often
# provided by the ncurses library.
+ panel_library = 'panel'
- if (self.compiler.find_library_file(lib_dirs, 'ncursesw')):
+ if (self.compiler.find_library_file(lib_dirs, 'xxxncursesw')):
curses_libs = ['ncursesw']
- exts.append( Extension('_curses', ['_cursesmodule.c'],
- libraries = curses_libs) )
+ # Bug 1464056: If _curses.so links with ncursesw,
+ # _curses_panel.so must link with panelw.
--- patch-python24 ends here ---
More information about the freebsd-python
mailing list