Commit Graph

154 Commits

Author SHA1 Message Date
Jeremy Hylton
3e0055f8c6 Merge ast-branch to head
This change implements a new bytecode compiler, based on a
transformation of the parse tree to an abstract syntax defined in
Parser/Python.asdl.

The compiler implementation is not complete, but it is in stable
enough shape to run the entire test suite excepting two disabled
tests.
2005-10-20 19:59:25 +00:00
Neal Norwitz
892a33f85a Get "make install" working again after adding Lib/test/bad_coding.py
which can't be compiled.  Thanks to Mat Martineau for spotting the problem.
2005-10-04 04:32:42 +00:00
Brett Cannon
08cd598c21 Introduced EXTRA_CFLAGS as an environment variable used by the Makefile. Meant
to be used for flags that change binary compatibility.

Distutils was tweaked to also use the variable if used during compilation of
the interpreter.
2005-04-24 22:26:38 +00:00
Bob Ippolito
7026a0aeef patch [1171735] - Darwin 8's headers disable functionality when
POSIX is enabled.  This prevents the toolbox glue, all of Carbon,
and various other non-POSIX features from compiling.  The POSIX
symbols are  still used by default, so turning off the #define
doesn't hurt.

Additionally, linker flags have changed for Darwin 8, and are
different for Darwin 8/gcc4 (default) and Darwin 8/gcc3.3.

Approved by Anthony
2005-03-28 23:23:47 +00:00
Fred Drake
e612c8ec81 install distutils.tests on Unix (contributed patch)
(closes SF bug #1093173)
2005-01-19 06:24:58 +00:00
Brett Cannon
516592f4ff setup.py now uses the library directories specified in LDFLAGS (`-L`
directories) and the include directories specified in CPPFLAGS (``-I``
directories) for compiling the extension modules.

This has led to the core being compiled with the values in the shell's
CPPFLAGS.  It has also removed the need for special casing to use Fink and
DarwinPorts under darwin since the needed directories can now be specified in
LDFLAGS and CPPFLAGS (e.g., DarwinPorts users can now do
``LDFLAGS=-L/opt/local/lib; CPPFLAGS=-I/opt/local/include; ./configure`` for
everything to work properly).

Parsing the values in the environment variables is done with getopt.  While optparse
would have been a nicer solution it cannot be used because of dependency issues
at execution time; optparse uses gettext which uses struct which will not have
been compiled when the code is imported.  If optparse ever makes its
importation of gettext optional by catching ImportError and setting _() to an
identity function then it can be used.
2004-12-07 00:42:59 +00:00
Martin v. Löwis
4d9559a47e Replace -soname with -h for Solaris compatibility. Fixes #1034496.
Backported to 2.3.
2004-09-26 17:26:55 +00:00
Jack Jansen
b36687a483 Don't hardcode "Python" as the framework name, we have a variable for it:
$PYTHONFRAMEWORK.
2004-07-16 08:43:47 +00:00
Anthony Baxter
1e2bd5bfb6 install test/decimaltestdata as well 2004-07-12 09:25:18 +00:00
Martin v. Löwis
737ea82a5a Patch #774665: Make Python LC_NUMERIC agnostic. 2004-06-08 18:52:54 +00:00
Jack Jansen
6b08a40442 Partial fix for #887242 (link extensions with dynamic_lookup in stead
of hard linking against the framework).

If $MACOSX_DEPLOYMENT_TARGET is set, and >= 10.3, during configure we
setup extensions to link with dynamic lookup. We also record the
value in the Makefile.

Distutils checks whether a value for MACOSX_DEPLOYMENT_TARGET was
recorded in the Makefile, and if it was insists that the current
value matches.

This is only a partial fix because it only applies to 2.4, and the
"two python problem" exists with Python 2.3 shipped with MacOSX 10.3,
which we have no influence over.
2004-06-03 12:41:45 +00:00
Martin v. Löwis
e440e47e91 Patch #957398: Add public API for Generator Object/Type. 2004-06-01 15:22:42 +00:00
Hye-Shik Chang
0e5e6c70e6 Ignore error status codes occurred while compiling site-packages
directory.
2004-03-18 07:51:27 +00:00
Jack Jansen
48e02e4c39 forward port of 1.136.6.2:
$(prefix) wasn't communicated to Mac/OSX/Makefile for all targets. Fixed.
2003-12-07 21:52:07 +00:00
Martin v. Löwis
e3be860619 Patch #841807: Check whether a versioned libpython.so symlink is needed
in altbininstall. Backported to 2.3.
2003-11-18 19:54:20 +00:00
Raymond Hettinger
a690a9967e * Migrate set() and frozenset() from the sandbox.
* Install the unittests, docs, newsitem, include file, and makefile update.
* Exercise the new functions whereever sets.py was being used.

Includes the docs for libfuncs.tex.  Separate docs for the types are
forthcoming.
2003-11-16 16:17:49 +00:00
Martin v. Löwis
2cc6c29e33 Patch #805678: Add .so symlink during make install. Backported to 2.3. 2003-09-20 10:50:48 +00:00
Jason Tishler
3076559ea5 This patch enables the building of Cygwin Python with a static core
which still supports shared extensions. It takes advantage the latest
Cygwin binutils (i.e., 20030901-1) which can export symbols from
executables:

http://cygwin.com/ml/cygwin-announce/2003-09/msg00002.html

Additionally, it finally lays to rest the following mailing list
subthread:

http://mail.python.org/pipermail/python-list/2002-May/102500.html

I tested the patch under Red Hat Linux 8.0 too
2003-09-04 11:04:06 +00:00
Martin v. Löwis
6702d8af71 Patch #770245: Pass LDFLAGS to pgen creation. 2003-07-13 10:10:42 +00:00
Jack Jansen
66b8483247 Fixed two bugs in MacOSX framework handling spotted by Edward Moy:
- In the top level Makefile, the argument to -install_name should be
  prepended with /System/Library/Frameworks/, so it is an absolute path.
- In the top level Makefile, because of 2), RUNSHARED needs to be set to
  DYLD_FRAMEWORK_PATH=<path to local framework> and $(RUNSHARED) prepended
  to the $(MAKE) lines in the frameworkinstallmaclib and
  frameworkinstallapps targets.
2003-07-04 12:14:39 +00:00
Martin v. Löwis
975302dbbe Set -d in compileall, to get proper path in case DESTDIR is not empty.
Also add force, to recompile string.pyc in DESTDIR (which would normally
compiled by running compileall.py).
2003-06-21 13:26:28 +00:00
Jack Jansen
4735b234d8 Set the executable bits when installing the shared library in a MacOSX
framework. Fixes #758112.
2003-06-20 20:36:53 +00:00
Jack Jansen
a1b77584f2 Added a target frameworkinstallextras (OSX framework build specific,
and not part of a normal frameworkinstall) that installs Demo and Tools
and a readme file into /Applications/MacPython-2.3/Extras. This will
give people access to the demos and tools if they instal Python through
the binary installer.
2003-06-19 22:35:20 +00:00
Martin v. Löwis
bc12262593 Properly bracket variables. Fixes part of #749911. 2003-06-14 13:11:24 +00:00
Guido van Rossum
d321efda26 Install idlelib and idlelib/Icons as well. 2003-06-13 20:49:55 +00:00
Guido van Rossum
b1ab4d940b Don't install Tools/idle any more. We now install Tools/scripts/idle
from setup.py.
2003-06-13 20:35:41 +00:00
Jack Jansen
9592fe9a49 Fixed the DESTDIR modifications to also allow MacOSX framework builds
to be installed to a different location. This should make the OSX binary
installer building a lot simpler.
2003-05-25 22:01:32 +00:00
Martin v. Löwis
ac826aac28 Patch #738325: Install optimized idlelib files. 2003-05-16 05:40:31 +00:00
Martin v. Löwis
8f51526837 Patch #735613: Pass install-purelib to idleinstall. 2003-05-11 20:28:02 +00:00
Martin v. Löwis
3b8ee0871e Patch #718286: Support DESTDIR. 2003-05-11 20:25:35 +00:00
Jack Jansen
a226b5723a Pass DIRMODE and FILEMODE to Mac/OSX/Makefile on framework builds (and
honor them). Use this when building the MacOSX binary installer to
get group-writeable files.

Ths fix works for directories and executables, not for files just yet,
because of bug #735274.
2003-05-09 15:08:39 +00:00
Skip Montanaro
c9803ab855 add Guido's reasoning behind running all tests twice 2003-05-06 16:17:27 +00:00
Skip Montanaro
446ad71569 add testall target - just adds -uall to the regrtest runs 2003-05-06 15:30:20 +00:00
Guido van Rossum
d3ab37f1df Changes from Jonathan Riehl to allow his pgen extension (PEP 269) to
work.  This includes some more code that used to be part of pgen in
the main parser; I'm okay with that.  I'll see if the Windows build
needs work next.
2003-04-17 14:55:42 +00:00
Jack Jansen
1fff697f8a Lib/plat-mac/lib-scriptpackages/SystemEvents added. 2003-03-31 09:39:54 +00:00
Martin v. Löwis
45ec95d4d8 Use soname option when building a shared libpython. Fixes #701823. 2003-03-30 15:37:33 +00:00
Skip Montanaro
0ed2ae46d5 include the csv package during installation 2003-03-20 23:35:38 +00:00
Jack Jansen
7b59b42a38 Added a define EXTRAMACHDEPPATH which can be used to add sys.path items
for specific platforms. Use this to add plat-mac and
plat-mac/lib-scriptpackages on MacOSX. Also tested for not having adverse
effects on Linux, and I think this code isn't used on Windows anyway.

Fixes #661521.
2003-03-17 15:44:10 +00:00
Jack Jansen
b4329f3f62 Patch #696613 by Ben Laurie: use "test -L" to test for symlinks in stead
of the older (and, according to some manpages, deprecated) "test -h".
2003-03-04 10:52:39 +00:00
Jack Jansen
c60968929e In make clobber also clean out the Python.framework. 2003-02-27 23:19:46 +00:00
Jack Jansen
04087b56ec In Mac OS X framework builds don't assume that the executable will be
called python.exe but actually pass it from the main Makefile to
Mac/OSX/Makefile. This makes framework builds work again on case
sensitive filesystems. Fixes bug #677753.
2003-02-25 12:41:10 +00:00
Jack Jansen
d68d9295fe Fixed typo in package name that went unnoticed because of MacOSX's case-insensitive
filenames.
2003-01-21 15:05:02 +00:00
Jack Jansen
f2c84d0fa7 Compile site-packages with -t, not -tt. 2003-01-21 13:50:34 +00:00
Jack Jansen
0780e470dc On MacOSX, added -prebind option to link phase for executable (and
framework, if applicable). This speeds up startup time by up to 50%.
2003-01-20 10:47:48 +00:00
Barry Warsaw
2c71ad3d72 Install email/test, email/test/data and bsddb/test subdirectories. 2003-01-20 01:13:21 +00:00
Martin v. Löwis
01f43118f7 Use RUNSHARED for python invocations. Fixes #661408. 2003-01-03 20:39:29 +00:00
Skip Montanaro
decc6a47df Split OPT make variable into OPT and BASECFLAGS. The latter contains those
compiler flags which are necessary to get a clean compile.  The former is
for user-specified optimizer, debug, trace fiddling.  See patch 640843.

Add /sw/lib and /sw/include to setup.py search paths on Darwin to take
advantage of fink goodies.

Add scriptsinstall target to Makefile to install certain scripts from
Tools/scripts directory.
2003-01-01 20:07:49 +00:00
Guido van Rossum
5ee95474c1 Revert SF patch 659809 -- it causes double options that can cause breakage. 2002-12-31 13:48:29 +00:00
Jack Jansen
83f898c86c Adapted for the move of Mac/Lib to Lib/plat-mac. Makefile.pre.in now
knows about plat-mac subdirectories, and configure adds a variable
EXTRAPLATDIR. These together take care of copying Lib/plat-mac to
the destination on darwin.

Adding plat-mac is still done with a .pth file which is only created when
you do a framework build. I'm not 100% happy with this, but fixing it
really needs a functional pythonw in non-framework builds, and I don't
think I can do that before 2.3a1 (but I'll try:-).
2002-12-30 22:23:40 +00:00
Guido van Rossum
acd738feb3 SF patch 659809, by Daniel Brotsky: fix Makefile.pre to use config
env.

This adds @CFLAGS@  and @CPPFLAGS@ to the end of the respective
variable definitions.  It also adds $(LDFLAGS) to the $(CC) invocation
to build $(PGEN).
2002-12-30 21:04:23 +00:00