Commit graph

240 commits

Author SHA1 Message Date
Guido van Rossum 537a551e23 Bump version to 2.0b1. Change copyright to BeOpen, CNRI, SMC. 2000-06-29 22:30:37 +00:00
Fred Drake a3f6e91307 This patch extends PC/config.h and configure.in as appropriate for
64-bit readiness (the config values are needed for patches that I will
be submitting later today. The changes are as follows:

- add SIZEOF_OFF_T #define's to PC/config.h (it was already in configure.in)

- add SIZEOF_TIME_T #define to PC/config.h and configure
Needed for some buffer overflow checking because sizeof(time_t) is
different on Win64.

- add SIZEOF_FPOS_T #define
Needed for the Win64 large file support implementation.

- add SIZEOF_HKEY in PC/config.h only
Needed for proper Win32 vs. Win64 handling in PC/winreg.c

- #define HAVE_LARGEFILE_SUPPORT for Win64

- typedef long intptr_t; for all Windows except Win64 (which defines it
itself)
This is a new ANSI (I think) type that is useful (and used by me) for
proper handling in msvcrtmodule.c and posixmodule.c

- indent the nested #ifdef's and #defines in PC/config.h
This is *so* much more readable. There cannot be a compiler
compatibilty issue here can there? Perl uses indented #defines and it
compiles with everything.
2000-06-29 20:44:47 +00:00
Fred Drake 13634cf7a4 This patch addresses two main issues: (1) There exist some non-fatal
errors in some of the hash algorithms. For exmaple, in float_hash and
complex_hash a certain part of the value is not included in the hash
calculation. See Tim's, Guido's, and my discussion of this on
python-dev in May under the title "fix float_hash and complex_hash for
64-bit *nix"

(2) The hash algorithms that use pointers (e.g. func_hash, code_hash)
are universally not correct on Win64 (they assume that sizeof(long) ==
sizeof(void*))

As well, this patch significantly cleans up the hash code. It adds the
two function _Py_HashDouble and _PyHash_VoidPtr that the various
hashing routine are changed to use.

These help maintain the hash function invariant: (a==b) =>
(hash(a)==hash(b))) I have added Lib/test/test_hash.py and
Lib/test/output/test_hash to test this for some cases.
2000-06-29 19:17:04 +00:00
Fred Drake ee8c418408 Finish converting the winreg extension to _winreg. 2000-06-29 16:43:49 +00:00
Fred Drake 270e19b060 Update the module name to _winreg, pending checkin of Paul Prescod's
OO wrapper for this module.
2000-06-29 16:14:14 +00:00
Guido van Rossum 1c44e28766 Trent Mick: familiar simple Win64 patches 2000-06-28 22:20:06 +00:00
Fred Drake e39607f27e Changed the #error to a #warning when checking gcc versions, and
noted the minimum recommended version in the message.
2000-06-28 03:54:48 +00:00
Fred Drake 91c4e2bf12 Patch from Rene Liebscher <R.Liebscher@gmx.de>, slightly modified and
commented by Fred Drake, to prevent usage of sufficiently broken GCC
versions.
2000-06-19 13:41:54 +00:00
Mark Hammond b422f95db0 Cleanup a few docstrings. 2000-06-09 06:01:47 +00:00
Jeremy Hylton 847a9968e9 Patch from M.-A. Lemburg:
Python on UNIX now trusts PYTHONHOME unconditionally

Modules/getpath.c:

Landmark changed to os.py.

Setting PYTHONHOME now unconditionally sets sys.prefix
(and sys.exec_prefix). No further checks are done whether the
standard lib can be found in that location or not. This is in
sync with the PC subdir getpath implementations.

PC/getpathp.c:

Landmark changed to os.py.

PC/os2vacpp/getpathp.c:

Landmark changed to os.py.

Note: BAW's checkin on exceptions.c eliminates earlier concerns about
a bogus PYTHONHOME value leading to a core dump.  Instead it causes a
useless sys.path and prevents imports.
2000-05-26 21:49:07 +00:00
Guido van Rossum da5cc82d59 Trent Mick:
Use "win32" for sys.platform on Win64 instead of "win32" because:
1. While it may be confusing to the Python scriptor on Win64 that he has to
   check for win*32*, that is something that he will learn the first time. It
   is better than the alternative of the scriptor happily using "win64" and
   then that code not running on Win32 for no good reason.
2. The main question is: is Win64 so much more like Win32 than different from
   it that the common-case general Python programmer should not ever have to
   make the differentiation in his Python code. Or, at least, enough so that
   such differentiation by the Python scriptor is rare enough that some other
   provided mechanism is sufficient (even preferable). Currently the answer
   is yes. Hopefully MS will not change this answer.
2000-05-10 13:25:32 +00:00
Guido van Rossum 23ef82ffe3 Trent Mick:
The following modules are specifically excluded in the Win64 build:
audioop, binascii, imageop, rgbimg. They are advertised as heavily 32-bit
dependent.  [They should probably be fixed!  --GvR]
2000-05-08 14:15:19 +00:00
Guido van Rossum c66ae966ed Trent Mick:
Changes to PC\config.[hc] for Win64. MSVC defines _WINxx to differentiate the
various windows platforms. Python's MS_WINxx are keyed off of these. Note
that _WIN32 (and hence MS_WIN32 in Python) are defined on Win32 *and* on
Win64. This is for compatibility reasons. The idea is that the common case is
that code specific to Win32 will also work on Win64 rather than being
specific to Win32 (i.e. there is more the same than different in WIn32 and
Win64).

The following modules are specifically excluded in the Win64 build:
audioop, binascii, imageop, rgbimg. They are advertised as heavily 32-bit
dependent.  [They should probably be fixed!  --GvR]

The patch to config.h looks big but it really is not. These are the effective
changes:
- MS_WINxx are keyed off _WINxx
- SIZEOF_VOID_P is set to 8 for Win64
- COMPILER string is changed appropriately for Win64
2000-05-08 14:14:48 +00:00
Guido van Rossum b18618dab7 Vladimir Marangozov's long-awaited malloc restructuring.
For more comments, read the patches@python.org archives.
For documentation read the comments in mymalloc.h and objimpl.h.

(This is not exactly what Vladimir posted to the patches list; I've
made a few changes, and Vladimir sent me a fix in private email for a
problem that only occurs in debug mode.  I'm also holding back on his
change to main.c, which seems unnecessary to me.)
2000-05-03 23:44:39 +00:00
Guido van Rossum db575db0d6 Add definition of socklen_t so that socketmodule.c will compile on Windows. 2000-04-24 15:37:34 +00:00
Guido van Rossum a8ee4c31bf Mark Hammond:
* Base address for all extension modules updated. PC\dllbase_nt.txt
also updated.  Erroneous "libpath" directory removed for all
projects.

* winsound module moved from a builtin module to an extension
module.  This was done primarily to avoid Python16.dll needing to
pull in winmm.dll.  Really dumb test added for winsound - but if
nothing else it ensures the module imports.
2000-04-21 21:26:43 +00:00
Guido van Rossum f4a3bd4991 Remove _socket, select, soundex, and unicodedata. These have been
moved to their own DLLs, or are obsolete (soundex).
2000-04-06 14:41:11 +00:00
Guido van Rossum 4f3cc35cc1 Get rid of Win32s check. 2000-04-04 22:48:55 +00:00
Guido van Rossum 5cf648b654 Seems there was a version string here that still looked like 1.5.2. 2000-03-30 22:59:09 +00:00
Guido van Rossum 88716bba55 Revamped path access again, by Mark Hammond, to be more robust in the
light of three different situations: (1) running from build; (2)
running from installed; (3) running without being able to find an
installation (e.g. as a COM object).  The system paths in the
repository are only used for (3); the path deduced from the
installation location are used otherwise.  PYTHONHOME overrides in all
cases.

Read the comments for more details.
2000-03-30 19:45:39 +00:00
Guido van Rossum 9c94a8882c Version -> 1.6. 2000-03-29 01:50:50 +00:00
Guido van Rossum e02e48be6f Changes to completely ignore the registry when it detects that you are
running out of the build directory.  This means that it will no longer
try to use an older version of the library when an older version has
been installed.
2000-03-29 01:49:47 +00:00
Guido van Rossum 436364c8a0 Change the pragmas to use python16.lib instead of python15.lib. (Took
me half an hour to find why it was still linking with python15.dll!)
2000-03-29 01:48:29 +00:00
Guido van Rossum 9f3712c6f1 Mark Hammond: new winreg module; updated dllbase file. 2000-03-28 20:37:15 +00:00
Guido van Rossum 76bd689a8d VC++ project changes to add new Unicode files and modules.
(I did this under VC++ 5.0 -- hope this doesn't break anything.)
2000-03-11 00:13:14 +00:00
Guido van Rossum bffd683f73 The rest of the changes by Trent Mick and Dale Nagata for warning-free
compilation on NT Alpha.  Mostly added casts etc.
2000-01-20 22:32:56 +00:00
Guido van Rossum 9f9fa6d0c9 Add HAVE_DYNAMIC_LOADING.
Define Py_DEBUG when compiling in debug mode.  (Is that a good idea?)
1999-12-20 22:57:41 +00:00
Guido van Rossum 99eb7a1255 Mark Hammond writes:
Attached is a context diff to winsound.c that adds a Beep() function
to play a sound through the PC speaker.  Seems to make sense to have
this added, so I just went and did it!
1999-10-01 14:29:17 +00:00
Guido van Rossum c87f5f4f7a Set the max recursion limit to 5000 -- rather conservative (this uses
0.5 MB of the 1 MB available by default for stack on Win32 platforms).
1999-06-09 15:36:37 +00:00
Guido van Rossum be211a5019 Added sha module! 1999-04-13 15:41:10 +00:00
Guido van Rossum a946210a9f Bump the myusterious M$ version number from 1,5,2,1 to 1,5,2,3.
(I can't even display this on NT, maybe Win/98 can?)
1999-04-13 14:23:45 +00:00
Guido van Rossum a0e6be721b Remove all VC++ info (except VC 1.5) from readme.txt;
remove the VC++ 4.0 project file; remove the unused _tkinter extern defs.
1999-04-12 14:49:01 +00:00
Guido van Rossum d7c18c43bf No longer needed. 1999-04-10 18:42:02 +00:00
Guido van Rossum dcb0a57874 Avoid totally empty files. 1999-04-10 14:00:28 +00:00
Guido van Rossum 6543e88d2a Check for potential error returned by _ungetch(). 1999-02-16 19:40:02 +00:00
Guido van Rossum 8f81a22d41 Some weird symbol (M_I386) was used to decide whether to include the
audioop module; this was no longer defined.  Use MS_WINDOWS instead.
(I have a feeling that this was for the WATCOM port; too bad.)
1999-02-05 22:34:57 +00:00
Guido van Rossum e600578ac7 Add winsound -- by Toby Dickenson with permission. 1999-02-04 22:40:42 +00:00
Guido van Rossum 945554709e Bruce Wheeler quotes Mark Hammond with a different version of the
last patch to this file: use pathLen, not bufSize, as the initializer.
1999-01-14 22:40:30 +00:00
Guido van Rossum 3d37f43293 Jim Ahlstrom added some SIZEOF defs for VC and WATCOM (only). 1999-01-14 18:51:53 +00:00
Guido van Rossum 9df827f3ba Need to define DL_EXPORT, of course! 1998-12-10 16:50:49 +00:00
Guido van Rossum e18f8878aa No longer needed. 1998-12-10 16:50:14 +00:00
Guido van Rossum 2e782e86b1 Add buffer module entry points. 1998-10-07 14:47:46 +00:00
Guido van Rossum e8afe516ab New set of files for the OS/2 port by Jeff Rush. 1998-09-28 22:02:40 +00:00
Guido van Rossum 4da55f0560 Add define of HAVE_STDDEF_H (to 1). Suggested by Greg Stein. 1998-09-23 13:35:45 +00:00
Guido van Rossum 78694d970f Patches from Greg Stein to support 'P' format in struct module's
native format, as void* (translated to Python int or long).
Also adds PyLong_FromVoidPtr and PyLong_AsVoidPtr to longobject.c.
1998-09-18 14:14:13 +00:00
Guido van Rossum e0bdf99c0b At Greg Stein's request, add PyLong_*LongLong entry points. 1998-09-17 13:58:37 +00:00
Guido van Rossum b00d252586 Define SIZEOF_LONG_LONG (as 8) at Greg Stein's request. 1998-09-17 13:19:36 +00:00
Guido van Rossum 3293b07df5 Patch by Mark Hammond to support 64-bit ints on MS platforms.
The MS compiler doesn't call it 'long long', it uses __int64,
so a new #define, LONG_LONG, has been added and all occurrences
of 'long long' are replaced with it.
1998-08-25 16:07:15 +00:00
Guido van Rossum 9b499d2a9c Define HAVE_STRERROR. 1998-08-12 02:10:05 +00:00
Guido van Rossum 24edfbb61d Back out of a recent policy change (Mark Hammond disagreed).
The registry always comes first and the default is always appended.
1998-08-11 20:35:56 +00:00