Commit Graph

502 Commits

Author SHA1 Message Date
Thomas Heller bb4b7d2d68 Copied the sources from the distutils CVS repository.
Changed the MSVC project file to create the exe in the
lib/distutils/command directory, bdist_wininst.py must still be
changed to use it.

Also changed to use the same zlib as the zlib module - this has the nice
sideeffect that now the buggy 1.1.3 version is no longer used.

Most of the source files now conform to PEP 7, except for the maximum
line length.  Windows api programming in 78 character lines =:(.

README.txt is a new file, but still empty except for placeholders.
2002-11-22 20:39:33 +00:00
Tim Peters c7ff90bbbb Forgot a paren in the MSVC + 64-bit + Intel case. 2002-11-11 20:21:06 +00:00
Tim Peters 062843354f Some help for SF 614770: MSVC 7.0 compiler support
This changes sys.version under Microsoft builds to include the MS compiler
version number (_MSC_VER).  Since VC 6 and VC 7 are apparently
incompatible, and both can be installed on a single box, distutils needs
some way to figure out which version of MSVC a given Python was compiled
under.

As also suggested by MvL, got rid of #ifdef'ery for the defunct _M_ALPHA
target.

Bugfix candidate?  Hard to say.  As far as I'm concerned, VC 7 wasn't
a supported platform in the 2.2 line.  If somebody thinks it should be,
they can do the work.
2002-11-11 19:44:39 +00:00
Tim Peters b0ead4ea4a Start building the bz2 module on Windows.
CAUTION:  The Python test still has many failures, but I'm out of time
for this now (already took much longer than hoped to get this far).
The base bz2 library does pass its own tests (see next).

CAUTION:  People building on Windows have to download and build tne
bz2 compression libraries now.  See PCbuild\readme.txt for complete
instructions.
2002-11-09 04:48:58 +00:00
Tim Peters c78462fb94 The MS resource compiler simply cannot be convinced to do arithmetic
correctly.  So field3.py is a Python program that can.  This injects
another manual step into the Python release process for Windows; so
it goes.
2002-10-11 18:25:52 +00:00
Tim Peters ce2f663c48 Repair the DLL name -- this has to match the major.minor version numbers. 2002-10-11 17:51:44 +00:00
Mark Hammond c2e85bd4e2 Patch 594001: PEP 277 - Unicode file name support for Windows NT. 2002-10-03 05:10:39 +00:00
Guido van Rossum e3a8e7ed1d Call me anal, but there was a particular phrase that was speading to
comments everywhere that bugged me: /* Foo is inlined */ instead of
/* Inline Foo */.  Somehow the "is inlined" phrase always confused me
for half a second (thinking, "No it isn't" until I added the missing
"here").  The new phrase is hopefully unambiguous.
2002-08-19 19:26:42 +00:00
Andrew MacIntyre 1adbcebbec update contact info 2002-08-18 06:32:46 +00:00
Andrew MacIntyre 1994c7f1cf Prep for 2.3:
- update DLL version number
 - add files required for 2.3 (no changes to modules though)
 - restructure build of pgen.exe

NOTE:  As I don't have the VACPP compiler, these changes are untested.
Apart from slightly re-ordering some file lists, and matching file name
casing, I believe these changes are the minimum necessary to build 2.3
with VACPP.
2002-08-18 06:31:01 +00:00
Andrew MacIntyre ffcf899554 make port notes current 2002-08-18 06:28:21 +00:00
Andrew MacIntyre 4fffdff2be Build process updates:
- the security fixes to tempfile have lead to test_tempfile wanting
   to create 100 temporary files.  as the EMX default is only 40,
   the number of file handles has been bumped (up to 250).
 - changes to pgen have required restructuring its build support.
2002-08-18 06:26:33 +00:00
Mark Hammond fe51c6d66e Excise DL_EXPORT/DL_IMPORT from Modules/*. Required adding a prototype
for Py_Main().

Thanks to Kalle Svensson and Skip Montanaro for the patches.
2002-08-02 02:27:13 +00:00
Mark Hammond 2795dae20d Remove a strange single quote that didn't seem to upset the compilers! 2002-07-22 13:28:21 +00:00
Mark Hammond e407e2ac42 Nuke the only DL_* in this directory. 2002-07-22 13:26:41 +00:00
Mark Hammond 8235ea1c3a Land Patch [ 566100 ] Rationalize DL_IMPORT and DL_EXPORT. 2002-07-19 06:55:41 +00:00
Tim Peters 02488ff173 Windows has no actual need for BAD_STATIC_FORWARD, so got rid of it. 2002-07-17 15:32:40 +00:00
Tim Peters 7a1f91709b WINDOWS_LEAN_AND_MEAN: There is no such symbol, although a very few
MSDN sample programs use it, apparently in error.  The correct name
is WIN32_LEAN_AND_MEAN.  After switching to the correct name, in two
cases more was needed because the code actually relied on things that
disappear when WIN32_LEAN_AND_MEAN is defined.
2002-07-14 22:14:19 +00:00
Tim Peters 943382c8e5 Removed WITH_CYCLE_GC #ifdef-ery. Holes:
+ I'm not sure what to do about configure.in.  Left it alone.

+ Ditto pyexpat.c.  Fred or Martin will know what to do.
2002-07-07 03:59:34 +00:00
Martin v. Löwis 6238d2b024 Patch #569753: Remove support for WIN16.
Rename all occurrences of MS_WIN32 to MS_WINDOWS.
2002-06-30 15:26:10 +00:00
Tim Peters 0444302710 Nuked another reference to newmodule.c. 2002-06-16 01:37:36 +00:00
Tim Peters 0add0e86c7 Removed newmodule.c from the project, and removed references to it from
the Windowish builds.
2002-06-16 01:34:49 +00:00
Guido van Rossum bea18ccde6 SF patch 568629 by Oren Tirosh: types made callable.
These built-in functions are replaced by their (now callable) type:

    slice()
    buffer()

and these types can also be called (but have no built-in named
function named after them)

    classobj (type name used to be "class")
    code
    function
    instance
    instancemethod (type name used to be "instance method")

The module "new" has been replaced with a small backward compatibility
placeholder in Python.

A large portion of the patch simply removes the new module from
various platform-specific build recipes.  The following binary Mac
project files still have references to it:

    Mac/Build/PythonCore.mcp
    Mac/Build/PythonStandSmall.mcp
    Mac/Build/PythonStandalone.mcp

[I've tweaked the code layout and the doc strings here and there, and
added a comment to types.py about StringTypes vs. basestring.  --Guido]
2002-06-14 20:41:17 +00:00
Martin v. Löwis 14f8b4cfcb Patch #568124: Add doc string macros. 2002-06-13 20:33:02 +00:00
Andrew MacIntyre b3bfa7f9dc refresh to pick up recent changes 2002-06-10 08:05:26 +00:00
Andrew MacIntyre 4a79e36018 make _sre a dynamically loadable module and build xxsubtype 2002-06-10 08:04:29 +00:00
Martin v. Löwis 2befa48926 Patch #505375: Make doc strings optional. 2002-06-09 13:41:37 +00:00
Andrew MacIntyre 07c639f577 add enumobject.c to build machinery 2002-04-30 13:06:32 +00:00
Andrew MacIntyre 63c9d50a84 add enumobject.c to build machinery 2002-04-30 12:06:23 +00:00
Tim Peters 639295f0a5 Enable universal newlines on Windows. Note that NEWS needs more words! 2002-04-21 07:30:30 +00:00
Neal Norwitz c15acef4a4 Fix grammar 2002-04-15 22:57:46 +00:00
Andrew MacIntyre 6c65531511 update build infrastructure for pymalloc and bool changes 2002-04-15 12:09:45 +00:00
Mark Hammond 362ed3451e Different .pyc icon - use "paler" colors to better differentiate it from the main .py icon. As discussed with Tim (prompted by cl.lpy posting) 2002-04-11 05:40:34 +00:00
Mark Hammond e7fefbf68d Fix bugs:
457466: popenx() argument mangling hangs python
 226766: popen('python -c"...."') tends to hang

Fixes argument quoting in w9xpopen.exe for Windows 9x.  w9xpopen.exe
also never attempts to display a MessageBox when not executed
interactively.

Added test_popen() test.  This test currently just executes
"python -c ..." as a child process, and checks that the expected
arguments were all recieved correctly by the child process.  This
test succeeds for me on Win9x, win2k and Linux, and I hope it does
for other popen supported platforms too :)
2002-04-03 01:47:00 +00:00
Neal Norwitz 031829d3ef Use symbolic METH_VARARGS instead of 1 for ml_flags 2002-03-31 14:37:44 +00:00
Tim Peters b26f3639ed Enable pymalloc by default in the Windows build. 2002-03-22 06:32:32 +00:00
Martin v. Löwis 272cb40e31 Patch #520062: Support IPv6 with VC.NET. 2002-03-01 08:31:07 +00:00
Andrew MacIntyre 41d97d6777 Create and populate OS/2 EMX port build directory:
PC/os2emx/
    Makefile
    README.os2emx
    config.c
    dlfcn.c            // libdl emulation code for loadable extensions
    dlfcn.h
    dllentry.c         // DLL initialisation routine for Python DLL
    getpath.c
    pyconfig.h
    python23.def       // Python DLL symbol export definitions
    pythonpm.c         // console-less PM interpreter wrapper
2002-02-17 05:23:30 +00:00
Tim Peters 30022ea606 Removed #include of obsolete ver.h. VC6 doesn't need it, and David Ascher
reports it doesn't exist anymore under .NET.
2002-01-24 00:04:37 +00:00
Martin v. Löwis cdc4451222 Include <unistd.h> in Python.h. Fixes #500924. 2002-01-12 11:05:12 +00:00
Tim Peters 83a3f0c305 Windows build: close out 2.2, prep for 2.3. 2001-12-21 22:06:12 +00:00
Tim Peters fc1a7ce985 Update the example Windows extension to 2.2 (was hardcoded to 2.1). 2001-12-15 22:27:01 +00:00
Tim Peters 1ca1296157 The parser doesn't need its own implementation of assert, and having its
own interfered with including Python.h.  Remove Python's assert.h.
2001-12-04 03:18:48 +00:00
Barry Warsaw 58ab084ac6 PyWin_FindRegisteredModule(): Conversion of sprintf() to
PyOS_snprintf() for buffer overrun avoidance.
2001-11-28 21:03:37 +00:00
Tim Peters 603c6831d0 SF patch 473749 compile under OS/2 VA C++, from Michael Muller.
Changes enabling Python to compile under OS/2 Visual Age C++.
2001-11-05 02:45:59 +00:00
Tim Peters 5b40f1c212 SF bug #474077 2.2b1: Error compiling extns with BCC
Removed "#undef HAVE_HYPOT" line from Borland config, as suggested.
Whether this will break some other Borland usage is a good question I
can't answer.
2001-10-30 21:09:55 +00:00
Tim Peters 1566a17af5 Get hotshot closer to compiling on Windows.
Still broken:  GETTIMEOFDAY.  This macro obviously isn't being defined
on Windows, so there's logic errors here I'd rather Fred untangled.
2001-10-12 22:08:39 +00:00
Mark Hammond 19fdbfb5c4 Fix bug #410274 - sys.prefix isn't always set.
If after calculating sys.path we do not have sys.prefix set, we loop over all path entries checking if one can point to our home directory.
2001-09-07 14:08:01 +00:00
Mark Hammond c2d272a1d5 Base address updates for bug #442142 - DLL base assignments need update 2001-09-06 06:42:00 +00:00
Tim Peters 6e13a562ae Enable large file support on Win32 systems.
Curious:  the MS docs say stati64 etc are supported even on Win95, but
Win95 doesn't support a filesystem that allows partitions > 2 Gb.

test_largefile:  This was opening its test file in text mode.  I have no
idea how that worked under Win64, but it sure needs binary mode on Win98.
BTW, on Win98 test_largefile runs quickly (under a second).
2001-09-06 00:32:15 +00:00
Tim Peters 79248aa1e4 SF bug [#456252] Python should never stomp on [u]intptr_t.
pyport.h:  typedef a new Py_intptr_t type.
    DELICATE ASSUMPTION:  That HAVE_UINTPTR_T implies intptr_t is
    available as well as uintptr_t.  If that turns out not to be
    true, things must get uglier (C99 wants both, so I think it's
    an assumption we're *likely* to get away with).
thread_nt.h, PyThread_start_new_thread:  MS _beginthread is documented
    as returning unsigned long; no idea why uintptr_t was being used.
Others:  Always use Py_[u]intptr_t, never [u]intptr_t directly.
2001-08-29 21:37:10 +00:00
Tim Peters a6b9e3c814 Windows fiddling for 2.2a2: bump build number; update copyright and
company info in resource files; change installer strings to match.
This belongs in the release branch too, of course.
2001-08-19 00:56:28 +00:00
Tim Peters 6d6c1a35e0 Merge of descr-branch back into trunk. 2001-08-02 04:15:00 +00:00
Tim Peters 76f373d081 Repair more now-obsolete references to config.h. 2001-07-26 21:34:59 +00:00
Martin v. Löwis 4f1cd8bdcb Patch #411138: Rename config.h to pyconfig.h. Closes bug #231774. 2001-07-26 13:41:06 +00:00
Neil Schemenauer 7d4bb9f179 Add -E command line switch (ignore environment variables like PYTHONHOME
and PYTHONPATH).
2001-07-23 16:30:27 +00:00
Fred Drake 832181e5dc Define the constants needed to allow the os.tempnam(), os.tmpfile(), and
os.tmpnam() functions to be made available.

This is part of SF patch #435492.
2001-07-17 20:35:59 +00:00
Tim Peters 0d5dd68692 Python.h: Don't attempt to redefine NDEBUG if it's already defined.
Others:  Remove redundant includes of assert.h.
2001-07-15 18:38:47 +00:00
Fredrik Lundh 793c1972fe make wchar_t usable again on Windows (this enables the MBCS codecs) 2001-06-27 19:49:17 +00:00
Fredrik Lundh 9b14ab367a Make Unicode work a bit better on Windows... 2001-06-26 22:59:49 +00:00
Tim Peters 208efe5640 Windows build broke from recent Unicode changes -- need to #define
SIZEOF_SHORT by hand here.
Also added dynamic check that SIZEOF_SHORT is correct for the platform (in
_testcapimodule).
2001-06-26 22:40:47 +00:00
Tim Peters 58e0a8c130 SF patch #418147 Fixes to allow compiling w/ Borland, from Stephen Hansen. 2001-05-14 22:32:33 +00:00
Tim Peters d29abb9915 SF bug 418296: WinMain.c should use WIN32_LEAN_AND_MEAN.
I believe Kevin Rodgers here!  The old WINDOWS_LEAN_AND_MEAN has, AFAICT,
always been wrong.
2001-04-24 05:16:29 +00:00
Tim Peters 7f00deb032 SF bug #417508: 'hypot' not found with Borland C++Build. 2001-04-21 03:20:47 +00:00
Tim Peters 52709e321c Move Windows stuff to 2.2, so CVS builds won't interfere with 2.1
installations.
2001-04-18 21:12:25 +00:00
Tim Peters b2a22f4533 Magic strings in both Python and the Wise installer define the registry key
to be used in Windows.  They got out of synch.  Repaired that, and added
comments to each one pointing at the other.
2001-03-11 04:30:35 +00:00
Tim Peters 8de0c1716b Removed now-unreferenced CHECK_IMPORT_CASE from Windows config.h.
NOTE:  someone who understands Unix config should remove it from acconfig.h too.
2001-02-28 08:15:16 +00:00
Mark Hammond 5edc627f66 Checkin updated version of patch #103933 . As Thomas says, fixes the bugs #131064, #129584, #127722. See the discussion in bug #131064 2001-02-23 11:38:38 +00:00
Tim Peters e79af273e8 Flesh out PlaySound() docs enough so that SND_ALIAS isn't hopelessly confusing.
If someone knows how to turn the new table of guaranteed-registered system
sounds into a LaTeX table, be my guest.
2001-02-20 10:02:21 +00:00
Tim Peters 373d151666 More typos. libwinsound.tex typo noted by Peter Funk (thanks!). 2001-02-19 08:36:41 +00:00
Tim Peters 3e50242127 Repair tab/space screwup. 2001-02-19 07:33:23 +00:00
Tim Peters 25a9ce371c Take a tour of hell's seedier neighborhoods to try to make winsound.Beep()
do something non-useless on Win9X boxes.  WinME unknown to me.  Someone with
NT/2000 make sure it still works there!
2001-02-19 07:06:36 +00:00
Tim Peters 909bc1cf63 SF bug #131225: sys.winver is still '2.0' in python 2.1a2.
SF patch #103683: Alternative dll version resources.
Changes similar to the patch.  MarkH should review.
File version and Product version text strings now 2.1a2.
64-bit file and product version numbers are now
    PY_MAJOR_VERSION, PY_MINOR_VERSION, messy, PYTHON_API_VERSION
where
    messy = PY_MICRO_VERSION*1000 + PY_RELEASE_LEVEL*10 + PY_RELEASE_SERIAL
Updated company name to "Digital Creations 2".
Copyright now lists Guido; "C in a circle" symbol used instead of (C).
Comments added so this is less likely to get flubbed again, and
#if/#error guys added to trigger if the version number manipulations
above overflow.
2001-02-09 07:02:22 +00:00
Tim Peters 747d5b63db Teach Windows build about the _weakref module. 2001-02-02 00:07:07 +00:00
Tim Peters be30c6b900 New info in beep() docstring. 2001-01-25 20:40:28 +00:00
Tim Peters 5458fcf9c5 Repair "selective cut-&-paste" screwup. 2001-01-19 19:17:46 +00:00
Tim Peters a2bf2709b3 Update the example DLL instructions for 2.1. Add example.def to the
MSVC project file (as the instructions always recommended doing).
2001-01-19 08:45:48 +00:00
Tim Peters 97c9640cc9 Windows: 2.1a1 changes so Python runs again. Note that the python20
subproject is gone, replaced by the new pythoncore subproject.
2001-01-17 23:23:13 +00:00
Tim Peters 58c82f0b56 Assorted xreadlines problems:
Wasn't built on Windows; not in config.c either.
    Module init function missing DL_EXPORT magic.
    test_xreadline output file obviously wrong (started w/ "test_xrl").
    test program very unclear about what was expected.
2001-01-09 23:26:39 +00:00
Tim Peters 5fa0bd64a8 Partial fix for SF bug 122780 (msvcrt.locking constants aren't defined).
Still needs docs; see bug report (which was reassigned to Fred) for MS's docs.
2000-12-12 01:58:56 +00:00
Guido van Rossum 6042741948 Rip out DOS and Win16 support. 2000-11-13 17:29:30 +00:00
Guido van Rossum 1bb7734c7e Rip out Win3.1 and DOS support 2000-11-13 17:24:13 +00:00
Mark Hammond 8bf9e3b943 Prevent possible buffer overflow exploits under Windows. As per (the very quick) patch Patch #101801. 2000-10-07 11:10:50 +00:00
Mark Hammond 4779a0a6fd Remove some debugging messages - although this code is a complete hack, we dont need to announce it to the world every time they use freeze! 2000-10-05 22:10:33 +00:00
Trent Mick c85eb0bd4b Enable the binascii module for Win64. It builds and passes the test suite.
(I had explicitly disabled it a while ago, possibly unecessarily, along with
rgbimg, audioop, and imageop, which are advertised as "not for 64-bit
platforms.)
2000-10-04 20:57:29 +00:00
Mark Hammond e61aca7d4a Patch for [ Bug #113828 ] getpythonregpath with null data in registry key
If there was a NULL registry key, Python could barf.

Also wraps some surrounding lines to 80 chars.
2000-09-10 09:14:53 +00:00
Guido van Rossum 8586991099 REMOVED all CWI, CNRI and BeOpen copyright markings.
This should match the situation in the 1.6b1 tree.
2000-09-01 23:29:29 +00:00
Jeremy Hylton ee5adfbae6 add user-modifiable recursion_limit
ceval.c:
    define recurion_limit (static), default value is 2500
    define Py_GetRecursionLimit and Py_SetRecursionLimit
    raise RuntimeError if limit is exceeded
PC/config.h:
    remove plat-specific definition
sysmodule.c:
    add sys.(get|set)recursionlimit
2000-08-31 19:23:01 +00:00
Mark Hammond 48b3eee170 Registered modules could only exist in HKEY_LOCAL_MACHINE - now HKEY_CURRENT_USER can override. 2000-08-22 11:20:21 +00:00
Mark Hammond c756bdb66c From Rene Liebscher:
This patch makes it possible to use gnu-win32 and lcc-win32
(http://www.cs.virginia.edu/~lcc-win32/) compilers to build
extension modules. It adds compiler specific sections to
PC/config.h .
It also extends the Borland compiler section. This has then two parts,
one for Win32 and the other one for the rest. The Win32 part
should be almost complete.

*** This patch is not intended to make it possible to compile
     Python with these compilers, it is intended to be able to
     use these compilers to build extension modules. ****
2000-08-15 22:33:59 +00:00
Mark Hammond fb439abbc9 Patch #101032, from David Bolen:
Ensure the "proxied" command's return code bubbles back up.
2000-08-14 05:04:28 +00:00
Fredrik Lundh 6947d0b65e -- from Trent Mick: [Patch #101010] replace use of INT_PTR
with uintptr_t (fix MSVC 5.0 build)
2000-08-07 20:16:28 +00:00
Greg Ward ff7b562bc6 Pragmas that instruct the linker to link against python20.lib (or
python20_d.lib) only active on MSVC++; different library formats needed
for different compilers, and it's handled by the Distutils anyways.
2000-08-05 00:58:14 +00:00
Mark Hammond 4e80bb551e Allow any object supporting the buffer protocol to be written as a binary object. 2000-07-28 03:44:41 +00:00
Thomas Wouters a534594fc7 ANSIfication: remove very-old-varargs code, fix function declarations so
they include prototypes.
2000-07-22 23:59:33 +00:00
Thomas Wouters 7889010731 Miscelaneous ANSIfications. I'm assuming here 'main' should take (int,
char**) and return an int even on PC platforms. If not, please fix
PC/utils/makesrc.c ;-P
2000-07-22 19:25:51 +00:00
Thomas Wouters 7e47402264 Spelling fixes supplied by Rob W. W. Hooft. All these are fixes in either
comments, docstrings or error messages. I fixed two minor things in
test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't").

There is a minor style issue involved: Guido seems to have preferred English
grammar (behaviour, honour) in a couple places. This patch changes that to
American, which is the more prominent style in the source. I prefer English
myself, so if English is preferred, I'd be happy to supply a patch myself ;)
2000-07-16 12:04:32 +00:00
Guido van Rossum f981c8f915 Add "exceptions" to list of built-in modules for the sake of
sys.builtin_module_names.  (Noticed by Toby Dickenson.)

[Tim, please test!]
2000-07-12 12:11:36 +00:00
Fredrik Lundh 43298d1fff - win95/98 helper for new os.popen code
this should be built as a console application (link with
  USER32.LIB), and installed in the same directory as the
  Python DLL.
2000-07-09 11:35:36 +00:00
Fredrik Lundh c0348ac670 - removed barry's workaround, to make room for
bill's more complete solution.
2000-07-08 20:49:58 +00:00
Fredrik Lundh ddbc11893f - this is a tentative checkin of the #100764 patch (by
Barry Scott).  it appears to solve the problem on NT
  and 2000, but not on Windows 95.

  in other words, it's better than before, but not per-
  fect.  I'll leave the patch open for now.
2000-07-08 18:06:41 +00:00
Tim Peters db6382941b Squash signed-vs-unsigned warning. Also edits to bring into line
with Python coding stds (max line length, C-style comments).
2000-07-03 23:51:17 +00:00
Tim Peters b4dccf0dcd Checked in a wrong version. 2000-07-02 23:21:49 +00:00
Tim Peters 090c2161a1 The example_nt directory was old enough to vote. Frank Stajano
pointed out some of the problems he had following the instructions,
and I stumbled into the others:  MSVC has changed in several
respects, Python has changed the directories into which it builds
its own Windows outputs, and we grew the unusual scheme of
appending "_d" to the names of debug-mode output files.

This should all work with VC6 + CVS Python now.  Some other Windows
geek please confirm!  And the less you know, the better <0.5 wink>.

Explanations and examples for versions of MSVC before 6, and
versions of Python before 2.0b1, have been removed, because
they're too different and so confuse life.  This last step I OK'ed
with Guido first (indeed, 'twas his idea!).
2000-07-02 23:18:43 +00:00
Guido van Rossum ffcc3813d8 Change copyright notice - 2nd try. 2000-06-30 23:58:06 +00:00
Guido van Rossum fd71b9e9d4 Change copyright notice. 2000-06-30 23:50:40 +00:00
Guido van Rossum 361b583e88 Only include <basetsd.h> for VC 6.0 and higher. 2000-06-30 22:17:53 +00:00
Guido van Rossum 47674029e1 As Neil Schemenauer points out, WITH_CYCLE_GC should be uncommented if
we want to have GC enabled in the beta.
2000-06-30 20:31:50 +00:00
Fred Drake 25e1726d31 [*** Not tested as I don't have Windows running right now! ***]
Trent Mick <trentm@activestate.com>:

Fix PC/msvcrtmodule.c and PC/winreg.c for Win64. Basically:

- sizeof(HKEY) > sizeof(long) on Win64, so use PyLong_FromVoidPtr()
instead of PyInt_FromLong() to return HKEY values on Win64

- Check for string overflow of an arbitrary registry value (I know
that ensuring that a registry value does not overflow 2**31 characters
seems ridiculous but it is *possible*).

Closes SourceForge patch #100517.
2000-06-30 17:48:51 +00:00
Mark Hammond 306e2403fa Python's .lib is now named Python20.lib 2000-06-30 15:47:02 +00:00
Guido van Rossum ae1b5b2e98 Trivial commit to test Windows CVS capabilities. 2000-06-30 13:00:32 +00:00
Jeremy Hylton c5007aa5c3 final patches from Neil Schemenauer for garbage collection 2000-06-30 05:02:53 +00:00
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
Guido van Rossum d741f4c48c Added a bunch of symbols detected by Marc Lemburg's script. 1998-08-09 04:00:05 +00:00
Guido van Rossum 43ff114d2b Sigh. More restructuring was needed.
Make an explicit test for whether the prefix is in fact the
source directory, and then don't use the registry.
1998-08-08 23:40:40 +00:00
Guido van Rossum 3804d7ee97 Add PyEval_CallFunction() and PyEval_CallMethod(). 1998-08-08 20:55:59 +00:00
Guido van Rossum c499572a98 This file's previous log message is bogus. The real change is that
when it gets the path from the registry, it no longer appends the
default path to the end (which would mostly be a duplication).
1998-08-08 20:05:31 +00:00
Guido van Rossum 639ccae5f6 This file's previous log message is bogus.
The real change is that it now includes "Python.h".
1998-08-08 20:00:49 +00:00
Guido van Rossum 67ab67218b Different version games:
- MS_DLL_ID is now set to "1.5" instead of "1.5.x" so Mark Hammond's
  extensions won't have to be changed.
- FILEVERSION and PRODUCTVERSION are set to 1,5,2,1.
  (The last number could be the build# or the alpha release# or so.)
1998-08-08 19:58:59 +00:00
Guido van Rossum 1a87be1422 Shouldn't include the lib pragma when building python15.dll itself! 1998-08-08 18:25:43 +00:00
Guido van Rossum 444383039d Added _PyTuple_Resize to list of exported symbols. Don't know how it
could hide so long...
1998-08-08 17:40:28 +00:00
Guido van Rossum 446f033e23 For Win32, added pragmas specifying the python15[_d].lib library. 1998-08-07 15:32:00 +00:00
Guido van Rossum 1127487972 Bump MS_DLL_ID to 1.5.2 1998-08-06 04:56:06 +00:00
Guido van Rossum c531270b72 New version of makefile for Windows 3.1 from Jim Ahlstrom. 1998-08-05 21:14:32 +00:00
Guido van Rossum cc93d9568c New version of VC 1.5 makefile from Jim Ahlstrom. 1998-08-05 21:13:54 +00:00
Guido van Rossum eb891ae045 Get rid of obsolete setup_nt subdirectory. 1998-08-05 21:10:58 +00:00
Guido van Rossum bc160b50c5 Getting rid of this ancient stuff. 1998-08-05 21:10:09 +00:00
Guido van Rossum f6fc1ec462 Jim A's new versions of these 1998-08-03 20:23:42 +00:00
Guido van Rossum 28700c464a Use Py_GetPythonHome() instead of getenv("PYTHONHOME"). 1998-07-27 13:49:04 +00:00
Guido van Rossum 8b2b3ce4be Two changes:
(1) Use Py_GetPythonHome() instead of getenv("PYTHONHOME");

(2) Mark Hammond's patch to search for .pyc/.pyo landmark as well.
1998-07-27 13:48:07 +00:00
Guido van Rossum 251c9fc60a Added Py_{Get,Set}PythonHome. 1998-06-19 19:24:08 +00:00
Guido van Rossum 40ae0e93cd Added _locale 1998-06-19 04:29:55 +00:00
Guido van Rossum 76ec53c64d Subject: Bug in PC/import_nt.c
From: Dan Pierson <dan@remote.control.com>
To: "Mark Hammond (E-mail)" <MHammond@skippinet.com.au>,
    "Guido van Rossum (E-mail)" <guido@cnri.reston.va.us>
Date: Mon, 8 Jun 1998 17:25:07 -0400

RegistryQueryValue requires that its fourth argument be initialized to
the length of the buffer being passed in, this wasn't being done.  I
also split the call and status test into two lines with a local variable
so that I could look at the status in the debugger.
1998-06-15 18:01:34 +00:00
Guido van Rossum d3ab101fac Quick fix -- define SIZEOF_LONG and SIZEOF_INT. 1998-05-29 02:53:29 +00:00
Guido van Rossum cd3462f1f7 Moving to PCbuild 1998-05-29 02:32:34 +00:00
Guido van Rossum e4e021bf21 Release the interpreter lock for calls that may block: _locking(),
_getch(), _getche().

Fix bogus error return when open_osfhandle() doesn't have the right
argument list.
1998-05-29 01:27:07 +00:00
Guido van Rossum 2028dd0423 Replaced the VC++ 5.x instructions with a pointer to ../PCbuild. 1998-05-26 14:20:15 +00:00
Guido van Rossum 9c1bc5b1f6 Moved VC++ 5.x files to ../PCbuild. 1998-05-26 14:17:18 +00:00
Guido van Rossum 1c096b7289 Mark Hammond writes:
Also, here is a new version of import_nt.c, which allows you to register a
Debug module in the registry.  While I was there I removed some of the
ugliness - what was I thinking :-)
1998-05-26 13:53:23 +00:00
Guido van Rossum c8498dc604 Add PyErr_PrintEx and PySequence_Contains. 1998-05-22 00:56:20 +00:00
Guido van Rossum b9d9d72ae0 Install config.h.
Adapt to new build conventions (get rid of Release directory).
1998-05-16 01:51:49 +00:00
Guido van Rossum 837d8bf1d7 Change the output names. Do away with the Release and Debug
subdirectories.

All final products go into the current directory (i.e., PCbuild).

Object files go into temp-release and temp-debug.

Debug versions of DLLs have _d appended to their basename, e.g. the
debug version of python15.dll is python15_d.dll, the debug version of
python.exe is python_d.exe, and the debug version of parser.pyd is
parser_d.pyd.  (See corresponding patch to importdl.c.)  Uniformly
changed all extension modules to use .pyd, not .dll.
1998-05-15 20:26:31 +00:00
Guido van Rossum 3d9a0585e1 Add some symbols. Remove the LIBRARY statement at the top (and the
commented-out CODE/DATA statements).
1998-05-15 20:04:21 +00:00
Guido van Rossum 0332578a3a Oops -- Lib/Test should be Lib/test, of course! 1998-04-14 02:16:23 +00:00
Guido van Rossum 4b601ae381 Missing symbols reported by Andrew Loewenstern. 1998-04-13 22:30:08 +00:00
Guido van Rossum f61ee63a35 Update version. 1998-04-13 22:22:32 +00:00
Guido van Rossum 5fb2b61c64 Set version and title to Python 1.5.1. 1998-04-11 02:36:35 +00:00
Guido van Rossum 52f4915269 Oops, ".\DLLs" should be in the default path now. 1998-04-11 02:31:30 +00:00
Guido van Rossum cfb798e708 Delete reopmodule.c 1998-04-10 21:30:05 +00:00
Guido van Rossum 4a7d701f00 Delete references to initreop(). 1998-04-10 21:29:11 +00:00
Guido van Rossum 63096d48fa Add HAVE_MKTIME. 1998-04-10 21:28:49 +00:00