Two changes:

- Use -fPIC instead of -fpic (latter breaks py-Numeric on sparc).
   Suggested by tv@netbsd.org. This is inherited by most py-*
   packages. Change sent to guido@cnri.reston.va.us.

 - Remove official patches from patches dir. Use PATCHFILES mechanism
   instead to get them from www.python.org.
This commit is contained in:
tsarna 1998-07-11 20:33:12 +00:00
parent 0176fb147c
commit 99de3c8caf
18 changed files with 69 additions and 880 deletions

View file

@ -1,4 +1,4 @@
# $NetBSD: Makefile,v 1.6 1998/06/22 12:44:31 agc Exp $
# $NetBSD: Makefile,v 1.7 1998/07/11 20:33:12 tsarna Exp $
#
DISTNAME= pyth151
@ -7,12 +7,25 @@ CATEGORIES= lang
MASTER_SITES= ftp://ftp.python.org/pub/python/src/
EXTRACT_SUFX= .tgz
MAINTAINER= tsarna@endicor.com
MAINTAINER= tsarna@netbsd.org
# Official post-release patches from www.python.org
PATCH_SITES= http://www.python.org/1.5/patches-1.5.1/
PATCHFILES= freeze.1.txt _tkinter.1.txt configure.1.txt \
object.1.txt parsermodule.1.txt zlibmodule.1.txt \
string.1.txt bltinmodule.1.txt timemodule.1.txt \
fileobject.1.txt urllib.1.txt pcre.1.txt \
configure.2.txt imaplib.1.txt urllib.2.txt \
sgmllib.1.txt bltinmodule.2.txt ceval.1.txt gzip.1.txt \
imaplib.2.txt import.1.txt imaplib.3.txt \
stringobject.1.txt sgmllib.2.txt
WRKSRC= ${WRKDIR}/Python-1.5.1
GNU_CONFIGURE= yes
MAKE_FLAGS+= 'OPT=${CFLAGS}'
# Handle the module setup file:
# - disable some modules on 64 bit platforms
# - handle machines with no dynamic loader

View file

@ -1 +1,25 @@
MD5 (pyth151.tgz) = eb8ef6e37e543058a2d47996ecf62427
MD5 (freeze.1.txt) = 7cb9266ba6db670cd019cf27c77468ef
MD5 (_tkinter.1.txt) = 7298bfd731a613a28e2cb72ad8e3e266
MD5 (configure.1.txt) = 8d525b80d2442021dc29fbd328b8f87d
MD5 (object.1.txt) = f03bad9c3d67190232fce407b0c0fa51
MD5 (parsermodule.1.txt) = 24e41667e705fbe310e8d8dd85da706d
MD5 (zlibmodule.1.txt) = 7d8dfda5f91fd370e001d1f544afd279
MD5 (string.1.txt) = 581f5dc5c173e8f9927a5a71f7c2b0cc
MD5 (bltinmodule.1.txt) = c1edf803162860802d45c32d9799daaa
MD5 (timemodule.1.txt) = 7f53c69797c03c7db56f117514790e0d
MD5 (fileobject.1.txt) = 20ebd260276bdf6c3723c62a370e1c8c
MD5 (urllib.1.txt) = d8b46f39d521d5d6738fe4c6e905a313
MD5 (pcre.1.txt) = f3776741849f1be9fc1cd55dc0faeadd
MD5 (configure.2.txt) = a51d521cf899a74b234f5b0fc1a2207c
MD5 (imaplib.1.txt) = ece2e50e69e7ec86c1a9cc310d5ae220
MD5 (urllib.2.txt) = e0189571f5b40a87be4c20ad13a02e62
MD5 (sgmllib.1.txt) = e5ef0538266ff97efd830dfdcc2fcdd5
MD5 (bltinmodule.2.txt) = 07ba49023b28437733ec611ddf4558fb
MD5 (ceval.1.txt) = 1d062f62a16189df9832defd22aa9735
MD5 (gzip.1.txt) = 55140b037c55b19795ed4543986c2fd4
MD5 (imaplib.2.txt) = f8cb53849055badd3037545a92d1a123
MD5 (import.1.txt) = 15ab480458410b0450b07f3eedb15cda
MD5 (imaplib.3.txt) = 3a8180096777c690c5ffd8c4fbd6c38b
MD5 (stringobject.1.txt) = d1ccf56c0db0ba1df715ce55a5788ed3
MD5 (sgmllib.2.txt) = 0ad52d457fbc84fbffe5b7b984e3d8d4

View file

@ -1,18 +0,0 @@
Index: Tools/freeze/freeze.py
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Tools/freeze/freeze.py,v
retrieving revision 1.25
retrieving revision 1.26
diff -c -r1.25 -r1.26
*** freeze.py 1998/03/20 17:37:18 1.25
--- freeze.py 1998/04/20 17:53:19 1.26
***************
*** 72,78 ****
import os
import string
import sys
- import addpack
# Import the freeze-private modules
--- 72,77 ----

View file

@ -1,19 +0,0 @@
Index: Modules/_tkinter.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Modules/_tkinter.c,v
retrieving revision 1.62
diff -c -r1.62 _tkinter.c
*** _tkinter.c 1998/04/10 22:27:26 1.62
--- _tkinter.c 1998/04/20 18:19:51
***************
*** 1548,1554 ****
--- 1548,1556 ----
if (PyErr_Occurred())
return;
+ #if TKMAJORMINOR >= 8000
Py_AtExit(Tcl_Finalize);
+ #endif
#ifdef macintosh
/*

View file

@ -1,50 +0,0 @@
Index: configure.in
===================================================================
RCS file: /projects/cvsroot/python/dist/src/configure.in,v
retrieving revision 1.83
retrieving revision 1.84
diff -c -r1.83 -r1.84
*** configure.in 1998/04/13 15:27:01 1.83
--- configure.in 1998/04/20 18:51:54 1.84
***************
*** 314,320 ****
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
IRIX*/6*) case $CC in
*gcc*) CCSHARED="-shared";;
! *) CCSHARED="-shared -all";;
esac;;
esac
fi
--- 314,320 ----
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
IRIX*/6*) case $CC in
*gcc*) CCSHARED="-shared";;
! *) CCSHARED="";;
esac;;
esac
fi
Index: configure
===================================================================
RCS file: /projects/cvsroot/python/dist/src/configure,v
retrieving revision 1.76
retrieving revision 1.77
diff -c -r1.76 -r1.77
*** configure 1998/04/13 15:26:57 1.76
--- configure 1998/04/20 18:51:49 1.77
***************
*** 1865,1871 ****
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
IRIX*/6*) case $CC in
*gcc*) CCSHARED="-shared";;
! *) CCSHARED="-shared -all";;
esac;;
esac
fi
--- 1865,1871 ----
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
IRIX*/6*) case $CC in
*gcc*) CCSHARED="-shared";;
! *) CCSHARED="";;
esac;;
esac
fi

View file

@ -1,27 +0,0 @@
Index: Objects/object.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Objects/object.c,v
retrieving revision 2.55
retrieving revision 2.56
diff -c -r2.55 -r2.56
*** object.c 1998/04/11 15:17:34 2.55
--- object.c 1998/04/21 22:25:01 2.56
***************
*** 188,195 ****
ret = -1;
}
else {
! fprintf(fp, "%s",
! PyString_AsString(s));
}
Py_XDECREF(s);
}
--- 188,195 ----
ret = -1;
}
else {
! ret = PyObject_Print(s, fp,
! Py_PRINT_RAW);
}
Py_XDECREF(s);
}

View file

@ -1,112 +0,0 @@
Index: Modules/parsermodule.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Modules/parsermodule.c,v
retrieving revision 2.25
retrieving revision 2.26
diff -c -r2.25 -r2.26
*** parsermodule.c 1998/04/13 18:45:18 2.25
--- parsermodule.c 1998/04/21 22:31:45 2.26
***************
*** 473,483 ****
static PyMethodDef
parser_methods[] = {
! {"compile", parser_compileast, METH_VARARGS},
! {"isexpr", parser_isexpr, METH_VARARGS},
! {"issuite", parser_issuite, METH_VARARGS},
! {"tolist", parser_ast2list, METH_VARARGS},
! {"totuple", parser_ast2tuple, METH_VARARGS},
{NULL}
};
--- 473,488 ----
static PyMethodDef
parser_methods[] = {
! {"compile", (PyCFunction)parser_compileast, METH_VARARGS,
! "Compile this AST object into a code object."},
! {"isexpr", (PyCFunction)parser_isexpr, METH_VARARGS,
! "Determines if this AST object was created from an expression."},
! {"issuite", (PyCFunction)parser_issuite, METH_VARARGS,
! "Determines if this AST object was created from a suite."},
! {"tolist", (PyCFunction)parser_ast2list, METH_VARARGS,
! "Creates a list-tree representation of this AST."},
! {"totuple", (PyCFunction)parser_ast2tuple, METH_VARARGS,
! "Creates a tuple-tree representation of this AST."},
{NULL}
};
***************
*** 2685,2711 ****
* inheritance.
*/
static PyMethodDef parser_functions[] = {
! {"ast2tuple", parser_ast2tuple, METH_VARARGS,
"Creates a tuple-tree representation of an AST."},
! {"ast2list", parser_ast2list, METH_VARARGS,
"Creates a list-tree representation of an AST."},
! {"compileast", parser_compileast, METH_VARARGS,
"Compiles an AST object into a code object."},
! {"expr", parser_expr, METH_VARARGS,
"Creates an AST object from an expression."},
! {"isexpr", parser_isexpr, METH_VARARGS,
"Determines if an AST object was created from an expression."},
! {"issuite", parser_issuite, METH_VARARGS,
"Determines if an AST object was created from a suite."},
! {"suite", parser_suite, METH_VARARGS,
"Creates an AST object from a suite."},
! {"sequence2ast", parser_tuple2ast, METH_VARARGS,
"Creates an AST object from a tree representation."},
! {"tuple2ast", parser_tuple2ast, METH_VARARGS,
"Creates an AST object from a tree representation."},
/* private stuff: support pickle module */
! {"_pickler", parser__pickler, METH_VARARGS,
"Returns the pickle magic to allow ast objects to be pickled."},
{0, 0, 0}
--- 2690,2716 ----
* inheritance.
*/
static PyMethodDef parser_functions[] = {
! {"ast2tuple", (PyCFunction)parser_ast2tuple, METH_VARARGS,
"Creates a tuple-tree representation of an AST."},
! {"ast2list", (PyCFunction)parser_ast2list, METH_VARARGS,
"Creates a list-tree representation of an AST."},
! {"compileast", (PyCFunction)parser_compileast, METH_VARARGS,
"Compiles an AST object into a code object."},
! {"expr", (PyCFunction)parser_expr, METH_VARARGS,
"Creates an AST object from an expression."},
! {"isexpr", (PyCFunction)parser_isexpr, METH_VARARGS,
"Determines if an AST object was created from an expression."},
! {"issuite", (PyCFunction)parser_issuite, METH_VARARGS,
"Determines if an AST object was created from a suite."},
! {"suite", (PyCFunction)parser_suite, METH_VARARGS,
"Creates an AST object from a suite."},
! {"sequence2ast", (PyCFunction)parser_tuple2ast, METH_VARARGS,
"Creates an AST object from a tree representation."},
! {"tuple2ast", (PyCFunction)parser_tuple2ast, METH_VARARGS,
"Creates an AST object from a tree representation."},
/* private stuff: support pickle module */
! {"_pickler", (PyCFunction)parser__pickler, METH_VARARGS,
"Returns the pickle magic to allow ast objects to be pickled."},
{0, 0, 0}
***************
*** 2761,2767 ****
/* register to support pickling */
module = PyImport_ImportModule("copy_reg");
if (module != NULL) {
! PyObject *func, *constructor, *pickler;
func = PyObject_GetAttrString(module, "pickle");
pickle_constructor = PyDict_GetItemString(dict, "sequence2ast");
--- 2766,2772 ----
/* register to support pickling */
module = PyImport_ImportModule("copy_reg");
if (module != NULL) {
! PyObject *func, *pickler;
func = PyObject_GetAttrString(module, "pickle");
pickle_constructor = PyDict_GetItemString(dict, "sequence2ast");

View file

@ -1,17 +0,0 @@
Index: Modules/zlibmodule.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Modules/zlibmodule.c,v
retrieving revision 2.12
diff -c -r2.12 zlibmodule.c
*** zlibmodule.c 1997/12/18 05:21:29 2.12
--- zlibmodule.c 1998/04/22 21:32:04
***************
*** 217,222 ****
--- 217,223 ----
{
case(Z_STREAM_END):
break;
+ case(Z_BUF_ERROR):
case(Z_OK):
/* need more memory */
if (_PyString_Resize(&result_str, r_strlen << 1) == -1)

View file

@ -1,116 +0,0 @@
Index: Lib/string.py
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Lib/string.py,v
retrieving revision 1.41
retrieving revision 1.42
diff -c -r1.41 -r1.42
*** string.py 1998/03/30 17:22:30 1.41
--- string.py 1998/04/20 14:01:00 1.42
***************
*** 326,348 ****
return r
# "Safe" environment for eval()
! safe_env = {"__builtins__": {}}
# Convert string to float
! re = None
def atof(str):
"""atof(s) -> float
Return the floating point number represented by the string s.
"""
! global re
! if re is None:
# Don't fail if re doesn't exist -- just skip the syntax check
try:
import re
except ImportError:
! re = 0
sign = ''
s = strip(str)
if s and s[0] in '+-':
--- 326,350 ----
return r
# "Safe" environment for eval()
! _safe_env = {"__builtins__": {}}
# Convert string to float
! _re = None
def atof(str):
"""atof(s) -> float
Return the floating point number represented by the string s.
"""
! global _re
! if _re is None:
# Don't fail if re doesn't exist -- just skip the syntax check
try:
import re
except ImportError:
! _re = 0
! else:
! _re = re
sign = ''
s = strip(str)
if s and s[0] in '+-':
***************
*** 351,360 ****
if not s:
raise ValueError, 'non-float argument to string.atof'
while s[0] == '0' and len(s) > 1 and s[1] in digits: s = s[1:]
! if re and not re.match('[0-9]*(\.[0-9]*)?([eE][-+]?[0-9]+)?$', s):
raise ValueError, 'non-float argument to string.atof'
try:
! return float(eval(sign + s, safe_env))
except SyntaxError:
raise ValueError, 'non-float argument to string.atof'
--- 353,362 ----
if not s:
raise ValueError, 'non-float argument to string.atof'
while s[0] == '0' and len(s) > 1 and s[1] in digits: s = s[1:]
! if _re and not _re.match('[0-9]*(\.[0-9]*)?([eE][-+]?[0-9]+)?$', s):
raise ValueError, 'non-float argument to string.atof'
try:
! return float(eval(sign + s, _safe_env))
except SyntaxError:
raise ValueError, 'non-float argument to string.atof'
***************
*** 384,390 ****
for c in s:
if c not in digits:
raise ValueError, 'non-integer argument to string.atoi'
! return eval(sign + s, safe_env)
# Convert string to long integer
def atol(str, base=10):
--- 386,392 ----
for c in s:
if c not in digits:
raise ValueError, 'non-integer argument to string.atoi'
! return eval(sign + s, _safe_env)
# Convert string to long integer
def atol(str, base=10):
***************
*** 413,419 ****
for c in s:
if c not in digits:
raise ValueError, 'non-integer argument to string.atol'
! return eval(sign + s + 'L', safe_env)
# Left-justify a string
def ljust(s, width):
--- 415,421 ----
for c in s:
if c not in digits:
raise ValueError, 'non-integer argument to string.atol'
! return eval(sign + s + 'L', _safe_env)
# Left-justify a string
def ljust(s, width):

View file

@ -1,25 +0,0 @@
Index: Python/bltinmodule.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Python/bltinmodule.c,v
retrieving revision 2.115
retrieving revision 2.116
diff -c -r2.115 -r2.116
*** bltinmodule.c 1998/04/10 22:25:25 2.115
--- bltinmodule.c 1998/04/23 21:46:19 2.116
***************
*** 1282,1288 ****
Py_DECREF(v);
return NULL;
}
! PyList_SetItem(v, i, w);
ilow += istep;
}
return v;
--- 1282,1288 ----
Py_DECREF(v);
return NULL;
}
! PyList_GET_ITEM(v, i) = w;
ilow += istep;
}
return v;

View file

@ -1,33 +0,0 @@
Index: Modules/timemodule.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Modules/timemodule.c,v
retrieving revision 2.58
diff -c -r2.58 timemodule.c
*** timemodule.c 1998/03/06 17:16:21 2.58
--- timemodule.c 1998/04/27 18:47:53
***************
*** 304,309 ****
--- 304,311 ----
char *outbuf = 0;
int i;
+ memset((ANY *) &buf, '\0', sizeof(buf));
+
if (!PyArg_ParseTuple(args, "s(iiiiiiiii)",
&fmt,
&(buf.tm_year),
***************
*** 321,332 ****
buf.tm_mon--;
buf.tm_wday = (buf.tm_wday + 1) % 7;
buf.tm_yday--;
- #ifdef HAVE_MKTIME
- /* This call is only there to adjust the numbers to be within
- bounds. When we don't have mktime(), we say the caller is
- responsible for that... */
- (void) mktime(&buf);
- #endif
/* I hate these functions that presume you know how big the output
* will be ahead of time...
*/
--- 323,328 ----

View file

@ -1,15 +0,0 @@
--- Objects/fileobject.c.orig Sat Apr 11 00:16:34 1998
+++ Objects/fileobject.c Wed May 6 23:09:41 1998
@@ -415,7 +415,11 @@
struct stat st;
if (fstat(fileno(f->f_fp), &st) == 0) {
end = st.st_size;
- pos = ftell(f->f_fp);
+ pos = lseek(fileno(f->f_fp), 0L, SEEK_CUR);
+ if (pos >= 0)
+ pos = ftell(f->f_fp);
+ if (pos < 0)
+ clearerr(f->f_fp);
if (end > pos && pos >= 0)
return end - pos + 1;
/* Add 1 so if the file were to grow we'd notice. */

View file

@ -1,21 +0,0 @@
--- Lib/urllib.py.orig Sat Apr 11 03:18:35 1998
+++ Lib/urllib.py Wed May 6 23:26:57 1998
@@ -221,6 +221,7 @@
else:
host, selector = url
urltype, rest = splittype(selector)
+ url = rest
user_passwd = None
if string.lower(urltype) != 'http':
realhost = None
@@ -455,8 +456,8 @@
user, passwd = self.get_user_passwd(host, realm, i)
if not (user or passwd): return None
host = user + ':' + passwd + '@' + host
- newurl = '//' + host + selector
- return self.open_http(newurl)
+ newurl = 'http://' + host + selector
+ return self.open(newurl)
def get_user_passwd(self, host, realm, clear_cache = 0):
key = realm + '@' + string.lower(host)

View file

@ -1,257 +0,0 @@
Index: Modules/pcre-int.h
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Modules/pcre-int.h,v
retrieving revision 2.3
diff -c -r2.3 pcre-int.h
*** pcre-int.h 1998/04/03 21:13:23 2.3
--- pcre-int.h 1998/05/01 14:52:20
***************
*** 3,9 ****
*************************************************/
! #define PCRE_VERSION "1.07 16-Feb-1998"
/* This is a library of functions to support regular expressions whose syntax
--- 3,9 ----
*************************************************/
! #define PCRE_VERSION "1.09 28-Apr-1998"
/* This is a library of functions to support regular expressions whose syntax
***************
*** 80,90 ****
#ifdef FOR_PYTHON
#define PUBLIC_OPTIONS \
(PCRE_CASELESS|PCRE_EXTENDED|PCRE_ANCHORED|PCRE_MULTILINE| \
! PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA|PCRE_LOCALE)
#else
#define PUBLIC_OPTIONS \
(PCRE_CASELESS|PCRE_EXTENDED|PCRE_ANCHORED|PCRE_MULTILINE| \
! PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA)
#endif
#define PUBLIC_EXEC_OPTIONS \
(PCRE_CASELESS|PCRE_ANCHORED|PCRE_MULTILINE|PCRE_NOTBOL|PCRE_NOTEOL| \
--- 80,91 ----
#ifdef FOR_PYTHON
#define PUBLIC_OPTIONS \
(PCRE_CASELESS|PCRE_EXTENDED|PCRE_ANCHORED|PCRE_MULTILINE| \
! PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA|PCRE_UNGREEDY| \
! PCRE_LOCALE)
#else
#define PUBLIC_OPTIONS \
(PCRE_CASELESS|PCRE_EXTENDED|PCRE_ANCHORED|PCRE_MULTILINE| \
! PCRE_DOTALL|PCRE_DOLLAR_ENDONLY|PCRE_EXTRA|PCRE_UNGREEDY)
#endif
#define PUBLIC_EXEC_OPTIONS \
(PCRE_CASELESS|PCRE_ANCHORED|PCRE_MULTILINE|PCRE_NOTBOL|PCRE_NOTEOL| \
Index: Modules/pcre.h
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Modules/pcre.h,v
retrieving revision 2.6
diff -c -r2.6 pcre.h
*** pcre.h 1998/04/03 21:13:25 2.6
--- pcre.h 1998/05/01 14:52:20
***************
*** 34,39 ****
--- 34,40 ----
#define PCRE_EXTRA 0x0040
#define PCRE_NOTBOL 0x0080
#define PCRE_NOTEOL 0x0100
+ #define PCRE_UNGREEDY 0x0400
#ifdef FOR_PYTHON
#define PCRE_LOCALE 0x0200
#endif
Index: Modules/pypcre.c
===================================================================
RCS file: /projects/cvsroot/python/dist/src/Modules/pypcre.c,v
retrieving revision 2.12
diff -c -r2.12 pypcre.c
*** pypcre.c 1998/04/10 21:50:23 2.12
--- pypcre.c 1998/05/01 14:52:21
***************
*** 1216,1221 ****
--- 1216,1222 ----
int repeat_type, op_type;
int repeat_min, repeat_max;
int bravalue, length;
+ int greedy_default, greedy_non_default;
register int c;
register uschar *code = *codeptr;
const uschar *ptr = *ptrptr;
***************
*** 1224,1229 ****
--- 1225,1235 ----
uschar class[32];
uschar *class_flag; /* Pointer to the single-byte flag for OP_CLASS_L */
+ /* Set up the default and non-default settings for greediness */
+
+ greedy_default = ((options & PCRE_UNGREEDY) != 0);
+ greedy_non_default = greedy_default ^ 1;
+
/* Switch on next character until the end of the branch */
for (;; ptr++)
***************
*** 1536,1545 ****
goto FAILED;
}
! /* If the next character is '?' this is a minimizing repeat. Advance to the
next character. */
! if (ptr[1] == '?') { repeat_type = 1; ptr++; } else repeat_type = 0;
/* If the maximum is zero then the minimum must also be zero; Perl allows
this case, so we do too - by simply omitting the item altogether. */
--- 1542,1554 ----
goto FAILED;
}
! /* If the next character is '?' this is a minimizing repeat, by default,
! but if PCRE_UNGREEDY is set, it works the other way round. Advance to the
next character. */
! if (ptr[1] == '?')
! { repeat_type = greedy_non_default; ptr++; }
! else repeat_type = greedy_default;
/* If the maximum is zero then the minimum must also be zero; Perl allows
this case, so we do too - by simply omitting the item altogether. */
***************
*** 1628,1641 ****
/* If the mininum is 1 and the previous item was a character string,
we either have to put back the item that got cancelled if the string
length was 1, or add the character back onto the end of a longer
! string. For a character type nothing need be done; it will just get put
! back naturally. */
else if (*previous == OP_CHARS)
{
if (code == previous) code += 2; else previous[1]++;
}
/* If the maximum is unlimited, insert an OP_STAR. */
if (repeat_max < 0)
--- 1637,1656 ----
/* If the mininum is 1 and the previous item was a character string,
we either have to put back the item that got cancelled if the string
length was 1, or add the character back onto the end of a longer
! string. For a character type nothing need be done; it will just get
! put back naturally. Note that the final character is always going to
! get added below. */
else if (*previous == OP_CHARS)
{
if (code == previous) code += 2; else previous[1]++;
}
+ /* For a single negated character we also have to put back the
+ item that got cancelled. */
+
+ else if (*previous == OP_NOT) code++;
+
/* If the maximum is unlimited, insert an OP_STAR. */
if (repeat_max < 0)
***************
*** 1779,1784 ****
--- 1794,1801 ----
case 'm':
case 's':
case 'x':
+ case 'U':
+ case 'X':
ptr++;
while (*ptr != ')') ptr++;
previous = NULL;
***************
*** 2484,2490 ****
ptr += 2;
break;
}
! /* Else fall thourh */
/* Else loop setting valid options until ) is met. Anything else is an
error. */
--- 2501,2507 ----
ptr += 2;
break;
}
! /* Else fall through */
/* Else loop setting valid options until ) is met. Anything else is an
error. */
***************
*** 2519,2524 ****
--- 2536,2551 ----
length -= spaces; /* Already counted spaces */
continue;
}
+ else if (c == 'X')
+ {
+ options |= PCRE_EXTRA;
+ continue;
+ }
+ else if (c == 'U')
+ {
+ options |= PCRE_UNGREEDY;
+ continue;
+ }
else if (c == ')') break;
*errorptr = ERR12;
***************
*** 2725,2738 ****
if (re->options != 0)
{
! printf("%s%s%s%s%s%s%s\n",
((re->options & PCRE_ANCHORED) != 0)? "anchored " : "",
((re->options & PCRE_CASELESS) != 0)? "caseless " : "",
((re->options & PCRE_EXTENDED) != 0)? "extended " : "",
((re->options & PCRE_MULTILINE) != 0)? "multiline " : "",
((re->options & PCRE_DOTALL) != 0)? "dotall " : "",
((re->options & PCRE_DOLLAR_ENDONLY) != 0)? "endonly " : "",
! ((re->options & PCRE_EXTRA) != 0)? "extra " : "");
}
if ((re->options & PCRE_FIRSTSET) != 0)
--- 2752,2766 ----
if (re->options != 0)
{
! printf("%s%s%s%s%s%s%s%s\n",
((re->options & PCRE_ANCHORED) != 0)? "anchored " : "",
((re->options & PCRE_CASELESS) != 0)? "caseless " : "",
((re->options & PCRE_EXTENDED) != 0)? "extended " : "",
((re->options & PCRE_MULTILINE) != 0)? "multiline " : "",
((re->options & PCRE_DOTALL) != 0)? "dotall " : "",
((re->options & PCRE_DOLLAR_ENDONLY) != 0)? "endonly " : "",
! ((re->options & PCRE_EXTRA) != 0)? "extra " : "",
! ((re->options & PCRE_UNGREEDY) != 0)? "ungreedy " : "");
}
if ((re->options & PCRE_FIRSTSET) != 0)
***************
*** 3070,3076 ****
if (md->offset_top == NULL || md->eptr == NULL || md->ecode == NULL ||
md->off_num == NULL || md->r1 == NULL || md->r2 == NULL)
{
! PyErr_SetString(PyExc_MemoryError, "Can't increase failure stack for re operation");
longjmp(md->error_env, 1);
}
return 0;
--- 3098,3104 ----
if (md->offset_top == NULL || md->eptr == NULL || md->ecode == NULL ||
md->off_num == NULL || md->r1 == NULL || md->r2 == NULL)
{
! PyErr_NoMemory();
longjmp(md->error_env, 1);
}
return 0;

View file

@ -1,137 +0,0 @@
Index: config.h.in
===================================================================
RCS file: /projects/cvsroot/python/dist/src/config.h.in,v
retrieving revision 2.34
diff -c -r2.34 config.h.in
*** config.h.in 1998/04/10 19:17:15 2.34
--- config.h.in 1998/05/01 16:47:39
***************
*** 396,398 ****
--- 396,401 ----
/* Define if you have the ieee library (-lieee). */
#undef HAVE_LIBIEEE
+
+ /* Define if you have the m library (-lm). */
+ #undef HAVE_LIBM
Index: configure
===================================================================
RCS file: /projects/cvsroot/python/dist/src/configure,v
retrieving revision 1.77
diff -c -r1.77 configure
*** configure 1998/04/20 18:51:49 1.77
--- configure 1998/05/01 16:54:17
***************
*** 1989,2012 ****
echo "$ac_t""no" 1>&6
fi
# Dynamic linking for HP-UX
! echo $ac_n "checking for getpwnam in -lsun""... $ac_c" 1>&6
! echo "configure:1994: checking for getpwnam in -lsun" >&5
! ac_lib_var=`echo sun'_'getpwnam | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
! LIBS="-lsun $LIBS"
cat > conftest.$ac_ext <<EOF
#line 2002 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
! char getpwnam();
int main() {
! getpwnam()
; return 0; }
EOF
if { (eval echo configure:2013: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
--- 1989,2012 ----
echo "$ac_t""no" 1>&6
fi
# Dynamic linking for HP-UX
! echo $ac_n "checking for pow in -lm""... $ac_c" 1>&6
! echo "configure:1994: checking for pow in -lm" >&5
! ac_lib_var=`echo m'_'pow | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
ac_save_LIBS="$LIBS"
! LIBS="-lm $LIBS"
cat > conftest.$ac_ext <<EOF
#line 2002 "configure"
#include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
! char pow();
int main() {
! pow()
; return 0; }
EOF
if { (eval echo configure:2013: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
***************
*** 2024,2041 ****
fi
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
echo "$ac_t""yes" 1>&6
! ac_tr_lib=HAVE_LIB`echo sun | sed -e 's/[^a-zA-Z0-9_]/_/g' \
-e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
cat >> confdefs.h <<EOF
#define $ac_tr_lib 1
EOF
! LIBS="-lsun $LIBS"
else
echo "$ac_t""no" 1>&6
fi
! # NIS (== YP) interface for IRIX 4
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
# However on SGI IRIX, these exist but are broken.
if test "$ac_sys_system" != IRIX
--- 2024,2041 ----
fi
if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
echo "$ac_t""yes" 1>&6
! ac_tr_lib=HAVE_LIB`echo m | sed -e 's/[^a-zA-Z0-9_]/_/g' \
-e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
cat >> confdefs.h <<EOF
#define $ac_tr_lib 1
EOF
! LIBS="-lm $LIBS"
else
echo "$ac_t""no" 1>&6
fi
! # Std math lib -- assume needed if it exists
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
# However on SGI IRIX, these exist but are broken.
if test "$ac_sys_system" != IRIX
Index: configure.in
===================================================================
RCS file: /projects/cvsroot/python/dist/src/configure.in,v
retrieving revision 1.84
diff -c -r1.84 configure.in
*** configure.in 1998/04/20 18:51:54 1.84
--- configure.in 1998/05/01 16:54:12
***************
*** 345,351 ****
# checks for libraries
AC_CHECK_LIB(dl, dlopen) # Dynamic linking for SunOS/Solaris and SYSV
AC_CHECK_LIB(dld, shl_load) # Dynamic linking for HP-UX
! AC_CHECK_LIB(sun, getpwnam) # NIS (== YP) interface for IRIX 4
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
# However on SGI IRIX, these exist but are broken.
if test "$ac_sys_system" != IRIX
--- 345,351 ----
# checks for libraries
AC_CHECK_LIB(dl, dlopen) # Dynamic linking for SunOS/Solaris and SYSV
AC_CHECK_LIB(dld, shl_load) # Dynamic linking for HP-UX
! AC_CHECK_LIB(m, pow) # Std math lib -- assume needed if it exists
# Most SVR4 platforms (e.g. Solaris) need -lsocket and -lnsl.
# However on SGI IRIX, these exist but are broken.
if test "$ac_sys_system" != IRIX

View file

@ -1,19 +0,0 @@
--- Lib/sgmllib.py.orig Thu Mar 26 22:12:54 1998
+++ Lib/sgmllib.py Wed May 6 23:10:29 1998
@@ -30,12 +30,12 @@
endbracket = re.compile('[<>]')
special = re.compile('<![^<>]*>')
commentopen = re.compile('<!--')
-commentclose = re.compile('--[ \t\n]*>')
+commentclose = re.compile('--[%s]*>' % string.whitespace)
tagfind = re.compile('[a-zA-Z][a-zA-Z0-9]*')
attrfind = re.compile(
- '[ \t\n]+([a-zA-Z_][-.a-zA-Z_0-9]*)'
- '([ \t\n]*=[ \t\n]*'
- r'(\'[^\']*\'|"[^"]*"|[-a-zA-Z0-9./:+*%?!\(\)_#=~]*))?')
+ '[ \t\n\r]+([a-zA-Z_][-.a-zA-Z_0-9]*)'
+ + ('([%s]*=[%s]*' % (string.whitespace, string.whitespace))
+ + r'(\'[^\']*\'|"[^"]*"|[-a-zA-Z0-9./:+*%?!\(\)_#=~]*))?')
# SGML parser base class -- find tags and call handler functions.

View file

@ -1,12 +0,0 @@
--- Lib/imaplib.py.orig Sat Apr 11 05:11:51 1998
+++ Lib/imaplib.py Wed May 6 23:27:32 1998
@@ -275,9 +275,6 @@
(typ, [data]) = <instance>.list(user, password)
"""
- if not 'AUTH=LOGIN' in self.capabilities \
- and not 'AUTH-LOGIN' in self.capabilities:
- raise self.error("server doesn't allow LOGIN authorisation")
typ, dat = self._simple_command('LOGIN', user, password)
if typ != 'OK':
raise self.error(dat)

View file

@ -0,0 +1,30 @@
$NetBSD: patch-ba,v 1.1 1998/07/11 20:33:15 tsarna Exp $
Use -fPIC so things don't break if they get too big (like py-Numeric on
sparc). This setting is inherited by most py-* packages via the Python
module-building system.
Sent to GvR <guido@cnri.reston.va.us>
--- configure.orig Fri Jul 10 19:40:07 1998
+++ configure Fri Jul 10 19:45:52 1998
@@ -1861,7 +1861,7 @@
else CCSHARED="+z";
fi;;
Linux*) CCSHARED="-fpic";;
- FreeBSD*|NetBSD*|OpenBSD*) CCSHARED="-fpic";;
+ FreeBSD*|NetBSD*|OpenBSD*) CCSHARED="-fPIC";;
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
IRIX*/6*) case $CC in
*gcc*) CCSHARED="-shared";;
--- configure.in.orig Fri Jul 10 22:58:44 1998
+++ configure.in Fri Jul 10 22:59:04 1998
@@ -310,7 +310,7 @@
else CCSHARED="+z";
fi;;
Linux*) CCSHARED="-fpic";;
- FreeBSD*|NetBSD*|OpenBSD*) CCSHARED="-fpic";;
+ FreeBSD*|NetBSD*|OpenBSD*) CCSHARED="-fPIC";;
SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
IRIX*/6*) case $CC in
*gcc*) CCSHARED="-shared";;