Commit Graph

1047 Commits

Author SHA1 Message Date
Martin v. Löwis 9f5c0c41ce Patch #736857, #736859: Add -e option to build_scripts. 2004-08-25 11:37:43 +00:00
Thomas Heller 30d0008577 The get_installer_filename() method forgot to return the name it
calculates.  Spotted by Cort Danger Stratton.
2004-08-17 10:15:07 +00:00
Tim Peters 6db15d7307 Whitespace normalization. 2004-08-04 02:36:18 +00:00
Fred Drake edcac8f416 make sure distutils logging is shut off in tests to avoid spurious output 2004-08-03 18:53:07 +00:00
Fred Drake d04573fef0 This allows additional commands to be provided for existing setup.py
scripts without modifying either the distutils installation or the
setup.py scripts of packages with which the new commands will be used.

Specifically, an option is added to distutils that allows additional
packages to be searched for command implementations in addition to
distutils.command.  The additional packages can be specified on the
command line or via the installation or personal configuration files
already loaded by distutils.

For discussion, see the thread starting with:

http://mail.python.org/pipermail/distutils-sig/2004-August/004112.html

This closes SF patch #102241.
2004-08-03 16:37:40 +00:00
Martin v. Löwis 7db57b3b41 Patch #870382: Automatically add msvcr71 to the list of libraries if
Python was built with VC 7.1.
2004-08-03 12:41:42 +00:00
Fred Drake 576298d3b2 - fix description of option table entries
- fix broken assert statement; should just raise
2004-08-02 17:58:51 +00:00
Fred Drake 25d88926b9 Since build_py handles package data installation, the list of outputs
can contain more than just .py files.  Make sure we only report
bytecode files for the .py files.
2004-07-28 14:55:10 +00:00
Thomas Heller 612eb09aae Factored out a method to determine the final installer filename. 2004-07-23 19:58:28 +00:00
Thomas Heller 6fa2474b20 Make the distutils version number the same as the python version. It
must be literally contained here, because it is still possible to
install this distutils in older Python versions.
2004-07-23 19:47:32 +00:00
Thomas Heller ee6fd06ecf bdist_wininst does now properly handle unicode strings or byte strings
with umlauts in the author argument and others.

Fixes sf # 993943.
2004-07-23 19:44:29 +00:00
Fred Drake b3d55d31d9 elaborate package data test to make sure get_outputs() gives the right
results when byte-code compilation is requested (in particular, make
sure that package data doesn't get a bogus byte-code listing
generated)
2004-07-21 18:53:06 +00:00
Thomas Heller 36a0f89c37 The binary layout of cfgdata has changed, so the magic number has to
change as well.
Recompiled binaries after this change.
2004-07-19 10:07:28 +00:00
Thomas Heller b8f134e3c3 The binary layout of cfgdata has changed, so the magic number has to
change as well.  Add a comment explaining this.
2004-07-19 09:45:46 +00:00
Tim Peters 182b5aca27 Whitespace normalization, via reindent.py. 2004-07-18 06:16:08 +00:00
Thomas Heller 040d6d02b7 The new distutils features justify a new version number, imo.
If someone has other ideas for the numbering scheme, please change to
something else (1.1.0 ?).
2004-07-16 18:14:37 +00:00
Thomas Heller b60b242d29 Recompiled after source file changes. 2004-07-14 15:22:05 +00:00
Thomas Heller a146feaa10 Fix SF#983164.
Patch from Mark Hammond:

bdist_wininst attempts to use the correct MSVC runtime for the current
version of Python. This doesn't work correctly when --target-version
is set. In that case, bdist_wininst still uses the *current*
sys.version (ie, 2.4) rather than the version specified as
--target-version. Thus, the msvc7 runtime based executable stub is
*always* used.

This patch "hard-codes" knowledge of earlier Python versions,
providing the correct result when Python 2.4 is used to build Python
2.3 and earlier distributions.

Remove the short variant (-v) of the --target-version command line
options, it conflicts with the --verbose/-v standard distutils switch.
2004-07-06 19:23:27 +00:00
Thomas Heller 32b8f8052a Fix for SF 982215: bdist_wininst - Next button not greyed out during file copy.
Patch from Mark Hammond.
Recompiled binary.

Already packported to the 2.3 branch.
2004-07-02 08:02:40 +00:00
Fred Drake ec6229e352 Make distutils "install --home" support all platforms. 2004-06-25 23:02:59 +00:00
Fred Drake 22021579a9 add boilerplate so the test modules can be run as scripts 2004-06-25 19:04:21 +00:00
Fred Drake 2c9f889122 add a couple of tests for the build_scripts command 2004-06-21 16:15:22 +00:00
Fred Drake 2b2fe94cde fix typo 2004-06-18 21:28:28 +00:00
Sjoerd Mullender 4dbda47aea If self.packages is None (this can happen, I saw it), return
immediately (since None is not a sequence you can iterate over).
2004-06-18 20:39:11 +00:00
Thomas Heller 89a2dc72b1 Rebuild the wininst.exe files. 2004-06-18 18:30:27 +00:00
Fred Drake b849eddde6 fix bug: list of data files was initialized too soon in build_py 2004-06-17 20:16:19 +00:00
Fred Drake b8ab8b6da8 move support code to a helper module to ease re-use 2004-06-17 20:14:50 +00:00
Fred Drake d0620dcf00 add a test that actually installs some scripts 2004-06-15 16:55:46 +00:00
Fred Drake bb7c14461d One unit test for distutils is not much, but is more than we had yesterday.
We need to write more; hopefully the barrier is a little lower now.
2004-06-15 15:49:46 +00:00
Fred Drake 0eb32a65b0 Add support for package data.
This is basically the support for package data from Phillip Eby's
setuptools package.  I've changed it only to fit it into the core
implementation rather than to live in subclasses, and added
documentation.
2004-06-11 21:50:33 +00:00
Anthony Baxter c982bbde1c Bug 957381: rpmbuild builds a -debuginfo rpm on recent Redhat and Fedora releases.
Ignore it, rather than breaking.

Will backport.

(and r1.1000 for Misc/NEWS!)
2004-06-11 17:16:46 +00:00
Hye-Shik Chang 2400e93057 SF #877165: Give an info about what C++ compiler command should be
used in cygwin and mingw32. (Reported by Michael Droettboom)
2004-06-05 18:37:53 +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
Tim Peters 2f50e90818 SF patch 959726: sdist versus SVN
The disutils sdist command now ignores .svn directories.
2004-05-31 19:27:59 +00:00
Walter Dörwald cbd0b365c1 Fix typo (from SF bug #962602) 2004-05-31 15:12:27 +00:00
Tim Peters c312b07d77 Reverting local change checked in by mistake. 2004-05-11 18:18:35 +00:00
Tim Peters 926bc22c65 Added 2.3.3 and 2.3.4 to the release table. Added 2004 to the list of
copyright years.
2004-05-11 18:13:10 +00:00
Fred Drake 4b49823edd make sure the default manifest generation includes files identified as
scripts
closes SF bug 796042
2004-03-25 22:04:52 +00:00
Martin v. Löwis 1c0f1f97fb Defer compilation of regular expressions until first use. 2004-03-25 14:58:19 +00:00
Anthony Baxter 05f842bae2 Basic dependency checking. setup() has two new optional arguments
requires and provides. requires is a sequence of strings, of the
form 'packagename-version'. The dependency checking so far merely
does an '__import__(packagename)' and checks for packagename.__version__
You can also leave off the version, and any version of the package
will be installed.
There's a special case for the package 'python' - sys.version_info
is used, so
requires= ( 'python-2.3', )
just works.

Provides is of the same format as requires - but if it's not supplied,
a provides is generated by adding the version to each entry in packages,
or modules if packages isn't there.
Provides is currently only used in the PKG-INFO file. Shortly, PyPI
will grow the ability to accept these lines, and register will be
updated to send them.

There's a new command 'checkdep' command that runs these checks.
For this version, only greater-than-or-equal checking is done. We'll
add the ability to specify an optional operator later.
2004-03-22 22:22:05 +00:00
Hye-Shik Chang 904de5b734 Make _spawn_posix be ready for EINTR. waitpid(2) can be interrupted
by SIGCHLD or sth because no signal is masked before. This fixes
an optimized installation problem on FreeBSD libpthread.
2004-02-24 23:54:17 +00:00
Thomas Heller 0bc9c919e8 Use the right wininstXX.exe, depending on
msvccompiler.get_build_version().

Distributions without a pre-install-script didn't work any longer, we
must at least provide the terminating NUL character.
2004-02-20 19:38:50 +00:00
Thomas Heller 612371dcb3 wininst-6.exe and wininst-7.1.exe are in CVS, so that they can be
included in Python distributions for systems other than Windows.
Windows installers can be build on non-Windows systems as long as they
only include pure python module distributions.
2004-02-20 18:33:38 +00:00
Thomas Heller 90b0f1c602 wininst.exe is no longer used - we now need wininst-6.exe or wininst-7.1.exe. 2004-02-20 18:26:55 +00:00
Thomas Heller 4ae4f83954 Recompiled the binary wininst.exe.
Patch #892660 from Mark Hammond, for distutils bdist_wininst command.

install.c: support for a 'pre-install-script', run before anything has
been installed. Provides a 'message_box' module function for use by
either the pre-install or post-install scripts.

bdist_wininst.py: support for pre-install script. Typo (build->built),
fixes so that --target-version can still work, even when the
distribution has extension modules - in this case, we insist on
--skip-build, as we still can't actually build other versions.
2004-02-20 14:44:32 +00:00
Thomas Heller a19cdad6dc Patch #892660 from Mark Hammond, for distutils bdist_wininst command.
install.c: support for a 'pre-install-script', run before anything has
been installed. Provides a 'message_box' module function for use by
either the pre-install or post-install scripts.

bdist_wininst.py: support for pre-install script. Typo (build->built),
fixes so that --target-version can still work, even when the
distribution has extension modules - in this case, we insist on
--skip-build, as we still can't actually build other versions.
2004-02-20 14:43:21 +00:00
Fred Drake f06116dcab commentary about how bad ConfigParser is doesn't help here, and the
suggested approach to dealing with it isn't a good one; we need a
better general purpose config reader, not a distutils-specific reader
2004-02-17 22:35:19 +00:00
Walter Dörwald 70a6b49821 Replace backticks with repr() or "%r"
From SF patch #852334.
2004-02-12 17:35:32 +00:00
Tim Peters 8279170ed2 Revert another local change that snuck into a whitespace normalization
patch.
2004-01-18 20:39:35 +00:00
Tim Peters 58eb11cf62 Whitespace normalization. 2004-01-18 20:29:55 +00:00
Thomas Heller 9436a75e4d Compile the files in the same order they are passed to the compiler.
Use case: Sometimes 'compiling' source files (with SWIG, for example)
creates additionl files which included by later sources.  The win32all
setup script requires this.

There is no SF item for this, but it was discussed on distutils-sig:
http://mail.python.org/pipermail/distutils-sig/2003-November/003514.html
2003-12-05 20:12:23 +00:00
Andrew MacIntyre 63ee110cf7 use same compiler switches as core for extensions 2003-12-02 12:17:59 +00:00
Thomas Heller b310591169 See SF #848614: distutils' msvccompiler now tries to detect that MSVC6
is installed but the registry settings are incomplete because the gui
has never been run.

Already backported to release23-maint.
2003-11-28 19:42:56 +00:00
Martin v. Löwis 23b44a39ce Patch #812378: Normalize white space. 2003-10-24 20:09:23 +00:00
Walter Dörwald f0dfc7ac5c Fix a bunch of typos in documentation, docstrings and comments.
(From SF patch #810751)
2003-10-20 14:01:56 +00:00
Jeremy Hylton e9a92aa03a Patch from John Anderson to enable VC 7.1 support.
I tested against VC 7.0 and it caused no problems there.
2003-07-17 14:41:07 +00:00
Gustavo Niemeyer 6cf26195c6 Do not add extra "\n" after bang line. 2003-06-27 19:33:38 +00:00
Thomas Heller cd494adc3b Fix for sf # 749210, wininst isn't build correctly after building zip.
The problem was that subcommands were not reinitialized.

Bugfix candidate, will backport myself.
2003-06-12 17:23:58 +00:00
Jack Jansen 19c0d943e9 Fixed indentation error. Closes bug #746953. 2003-06-01 19:27:40 +00:00
Martin v. Löwis b71bcb6322 Patch #740301: Add +s when linking shared libraries on HP-UX, use -L
for the library path.
2003-05-31 08:09:21 +00:00
Marc-André Lemburg f0b5d174c1 Restore Python 1.5.2 compatibility. 2003-05-14 19:48:57 +00:00
Jeremy Hylton 93724dbd3d Replace line somehow deleted before last checkin. 2003-05-09 16:55:28 +00:00
Jeremy Hylton 9ddf6c3803 Variant of SF patch 614770: MSVC 7 support
distutils now looks for the compiler version in sys.version, falling
back to MSVC 6 if the version isn't listed (Python 2.2 and lower).
Add helper routines for reading the registry.  Refactor many
module functions into methods of the compiler to avoid passing
lots of state as arguments.
2003-05-09 16:06:42 +00:00
Skip Montanaro fa012610c4 new method: has_function() - returns a boolean indicating whether the
argument function is available on the current platform
2003-04-24 19:49:23 +00:00
Jason Tishler d7e83a1d51 Patch #718049: Setting exe_extension for cygwin
On cygwin, the setup.py script uses unixccompiler.py for compiling and linking
C extensions. The unixccompiler.py script assumes that executables do not get
special extensions, which makes sense for Unix.  However, on Cygwin,
executables get an .exe extension.

This causes a problem during the configuration step (python setup.py config),
in which some temporary executables may be generated. As unixccompiler.py does
not know about the .exe extension, distutils fails to clean up after itself: it
does not remove _configtest.exe but tries to remove _configtest instead.

The attached patch to unixccompiler.py sets the correct exe_extension for
cygwin by checking if sys.platform is 'cygwin'. With this patch, distutils
cleans up after itself correctly.

Michiel de Hoon
University of Tokyo, Human Genome Center.
2003-04-18 17:27:47 +00:00
Jason Tishler 21664d854f Patch #709178: remove -static option from cygwinccompiler
After some more reflection (and no negative feedback), I am reverting the
original patch and applying my version, cygwinccompiler.py-shared.diff,
instead.

My reasons are the following:

1. support for older toolchains is retained
2. support for new toolchains (i.e., ld -shared) is added

The goal of my approach is to avoid breaking older toolchains while adding
better support for newer ones.
2003-04-14 12:51:26 +00:00
Jason Tishler dcae0dc4ed Patch #718551: cygwinccompiler.get_versions() patch
The cygwinccompiler.get_versions() function only handles versions numbers of
the form "x.y.z".  The attached patch enhances get_versions() to handle "x.y"
too (i.e., the ".z" is optional).

This change causes the unnecessary "--entry _DllMain@12" link option to be
suppressed for recent Cygwin and Mingw toolchains. Additionally, it directs
recent Mingw toolchains to use gcc instead of dllwrap during linking.
2003-04-09 20:13:59 +00:00
Jason Tishler 70367d3a6c Patch #709178: remove -static option from cygwinccompiler
Currently, the cygwinccompiler.py compiler handling in
distutils is invoking the cygwin and mingw compilers
with the -static option.

Logically, this means that the linker should choose to
link to static libraries instead of shared/dynamically
linked libraries.

Current win32 binutils expect import libraries to have
a .dll.a suffix and static libraries to have .a suffix.
If -static is passed, it will skip the .dll.a
libraries. This is pain if one has a tree with both
static and dynamic libraries using this naming
convention, and wish to use the dynamic libraries.

The -static option being passed in distutils is to get
around a bug in old versions of binutils where it would
get confused when it found the DLLs themselves.

The decision to use static or shared libraries is site
or package specific, and should be left to the setup
script or to command line options.
2003-04-09 16:03:57 +00:00
Andrew M. Kuchling 058a84f36a Remove the --verify option in favor of the standard -n/--dry-run option 2003-04-09 12:35:51 +00:00
Andrew M. Kuchling a52b85262a [Bug #693470] 'licence' as an alias for 'license' doesn't work.
This patch makes it work again.
2003-03-03 20:07:27 +00:00
Andrew M. Kuchling a2eaf31727 [Bug #69389] List register command in __all__, so setup.py --help-commands will now list it 2003-03-03 18:37:16 +00:00
Andrew M. Kuchling a9ccce3fee Improve description 2003-03-03 18:26:01 +00:00
Andrew M. Kuchling e557f3556f [Patch #695090 from Bernhard Herzog] Allow specifying both py_modules and packages 2003-02-28 22:03:04 +00:00
Andrew M. Kuchling 10da45e237 [Bug #668662] Patch from Pearu Pearson: if a C source file is
specified with an absolute path, the object file is also
    written to an absolute path.  The patch drops the drive and
    leading '/' from the source path, so a path like /path/to/foo.c
    results in an object file like build/temp.i686linux/path/to/foo.o.
2003-02-26 18:52:07 +00:00
Guido van Rossum af16065918 announce(): use the level argument to control the log level. 2003-02-20 02:10:08 +00:00
Guido van Rossum a85dbeb61f set_verbosity(): do something reasonable for out-of-range verbosity
levels.  (Previously, -vvv would be the same as -q!)
2003-02-20 02:09:30 +00:00
Andrew M. Kuchling 80be59b275 Include download_url in the data POSTed to the catalog server 2003-02-19 14:27:21 +00:00
Andrew M. Kuchling 188d85f475 [Patch #683939] Add download_url field to metadata 2003-02-19 14:16:01 +00:00
Andrew M. Kuchling 23c98c5f47 [Patch #684398] Rename verbose argument to show-response; don't conditionalize the get_classifiers() call 2003-02-19 13:49:35 +00:00
Andrew M. Kuchling e12dcd7ff4 Use python.org as the repository 2003-02-18 21:28:20 +00:00
Andrew M. Kuchling 679bc9fce5 [Patch #681504] Call customize_compiler in config command 2003-02-18 01:28:51 +00:00
Jack Jansen 4f82a513ca Pick up Makefile variable BASECFLAGS too. This is needed since OPT was
split into OPT and BASECFLAGS (Makefile.pre.in rev. 1.108), because
now there are essential CFLAGS in BASECFLAGS.
2003-02-10 14:02:33 +00:00
Just van Rossum ca3fec7162 patch #664131, fix config command on OSX and Linux 2003-02-03 11:43:54 +00:00
Thomas Heller 9582794c17 Pass the preprocessor options also to the resource compiler
when compiling .RC files.

From Robin Dunn, fixes SF # 669198.
2003-01-31 20:40:15 +00:00
Guido van Rossum d3590f937f Only log a message and chmod() when the mode isn't already what we
want it to be.  Log both the old and new mode.
2003-01-29 16:58:31 +00:00
Andrew M. Kuchling 6ffdaab808 Remove the recently-added get_distutil_options(), and just
have two tuples listing the legal keywords for setup() and Extension()
2003-01-27 16:30:36 +00:00
Guido van Rossum bcb0e20091 Change the mode of scripts in the build/scripts* directory to
executable.
2003-01-24 14:56:52 +00:00
Andrew M. Kuchling b8c7b9f0cc Translate spaces in the machine name to underscores
(Power Macintosh -> Power_Macintosh)
2003-01-06 13:28:12 +00:00
Andrew M. Kuchling 51a6a4c835 [Patch #658094 ] PEP 301 implementation
Add the 'register' distutils command
2003-01-03 15:29:28 +00:00
Andrew M. Kuchling 282e2c36ba [Patch #658094] PEP 301 implementation
Add 'classifiers' keyword to DistributionMetadata
2003-01-03 15:24:36 +00:00
Andrew M. Kuchling 8c6e0ec16a Bug #599248: strip directories when building Python. Out-of-tree builds should work again. 2002-12-29 17:00:57 +00:00
Marc-André Lemburg 0375079e93 Adding Python <= 2.2 support back in. 2002-12-03 08:45:11 +00:00
Andrew M. Kuchling 8e30bcdaaf Fix mode on scripts to have the read bit set (noted by Nicholas Riley) 2002-11-29 19:45:58 +00:00
Andrew M. Kuchling 31ddfb6942 [Part of patch #641685] Add .dylib as an extension for shared libraries 2002-11-27 13:45:26 +00:00
Fred Drake 94e7bb7dd6 Use "is" to test type objects, not "==". 2002-11-26 21:28:23 +00:00
Andrew M. Kuchling acd5cb2ff0 Fix for bug #410541: bdist builds bogus .zips
This adds a --relative option to the bdist_dumb command that defaults
to false; if true, the .tar.gz or .zip will be assembled using relative
paths.
2002-11-26 17:45:19 +00:00
Andrew M. Kuchling 40f23e0ddf Part of the fix for bug #410541: add ensure_relative() function 2002-11-26 17:42:48 +00:00
Thomas Heller 450cafae28 (This is hopefully the last large, funny checkin message for
bdist_wininst.py we will see.)

Removed the base64 encoded binary contents, wininst.exe must be in the
same directory as this file now.

wininst.exe must be recompiled and commited each time the sources in
PC/bdist_wininst are changed.
2002-11-22 21:08:34 +00:00
Thomas Heller 3a23c3fae1 get_python_version was not imported. 2002-11-22 20:57:20 +00:00
Andrew M. Kuchling fec3262691 Reflow comment 2002-11-21 20:41:07 +00:00