cpython/Lib/distutils
Gustavo Niemeyer 6b016852f8 This patch fixes the following bugs:
[#413582] g++ must be called for c++ extensions
[#454030] distutils cannot link C++ code with GCC

topdir = "Lib/distutils"

* bcppcompiler.py
  (BCPPCompiler.create_static_lib): Fixed prototype, removing extra_preargs
  and extra_postargs parameters. Included target_lang parameter.
  (BCPPCompiler.link): Included target_lang parameter.

* msvccompiler.py
  (MSVCCompiler.create_static_lib): Fixed prototype, removing extra_preargs
  and extra_postargs parameters. Included target_lang parameter.
  (MSVCCompiler.link): Included target_lang parameter.

* ccompiler.py
  (CCompiler): New language_map and language_order attributes, used by
  CCompiler.detect_language().

  (CCompiler.detect_language): New method, will return the language of
  a given source, or list of sources. Individual source language is
  detected using the language_map dict. When mixed sources are used,
  language_order will stablish the language precedence.

  (CCompiler.create_static_lib, CCompiler.link, CCompiler.link_executable,
   CCompiler.link_shared_object, CCompiler.link_shared_lib):
  Inlcuded target_lang parameter.

* cygwinccompiler.py
  (CygwinCCompiler.link): Included target_lang parameter.

* emxccompiler.py
  (EMXCCompiler.link): Included target_lang parameter.

* mwerkscompiler.py
  (MWerksCompiler.link): Included target_lang parameter.

* extension.py
  (Extension.__init__): New 'language' parameter/attribute, initialized
  to None by default. If provided will overlap the automatic detection
  made by CCompiler.detect_language(), in build_ext command.

* sysconfig.py
  (customize_compiler): Check Makefile for CXX option, and also the
  environment variable CXX. Use the resulting value in the 'compiler_cxx'
  parameter of compiler.set_executables().

* unixccompiler.py
  (UnixCCompiler): Included 'compiler_cxx' in executables dict, defaulting
  to 'cc'.
  (UnixCCompiler.create_static_lib): Included target_lang parameter.
  (UnixCCompiler.link): Included target_lang parameter, and made
  linker command use compiler_cxx, if target_lang is 'c++'.

* command/build_ext.py
  (build_ext.build_extension): Pass new ext.language attribute
  to compiler.link_shared_object()'s target_lang parameter. If
  ext.language is not provided, detect language using
  compiler.detect_language(sources) instead.

* command/config.py
  (config._link): Pass already available lang parameter as target_lang
  parameter of compiler.link_executable().
2002-11-05 16:12:02 +00:00
..
command This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
__init__.py With Andrew's blessing: distutils version number is now 1.0.3. 2001-10-05 20:43:09 +00:00
archive_util.py Make setup.py less chatty by default. 2002-06-04 20:14:43 +00:00
bcppcompiler.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
ccompiler.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
cmd.py Use distutils.debug.DEBUG instead of distutils.core.DEBUG. 2002-09-11 16:31:53 +00:00
core.py Add get_distutil_options(); future setup.py files can use this to check 2002-11-04 13:45:15 +00:00
cygwinccompiler.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
debug.py Define DEBUG in a separate module to resolve circular references. 2002-09-11 16:28:52 +00:00
dep_util.py The comment said: 2002-06-04 18:55:54 +00:00
dir_util.py Make setup.py less chatty by default. 2002-06-04 20:14:43 +00:00
dist.py Catch only ImportError 2002-10-31 13:39:33 +00:00
emxccompiler.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
errors.py Added DistutilsTemplateError. 2000-07-30 01:03:31 +00:00
extension.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
fancy_getopt.py Test changes before checking them in. 2002-06-04 21:11:56 +00:00
file_util.py Make setup.py less chatty by default. 2002-06-04 20:14:43 +00:00
filelist.py Use distutils.debug.DEBUG instead of distutils.core.DEBUG. 2002-09-11 16:31:53 +00:00
log.py [Bug #620630] Flush stdout after logging every message. Without it, 2002-11-04 14:27:43 +00:00
msvccompiler.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
mwerkscompiler.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
README This little note is to clarify things for people who go poking around the 2000-04-09 02:31:45 +00:00
spawn.py Make setup.py less chatty by default. 2002-06-04 20:14:43 +00:00
sysconfig.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
text_file.py Whitespace normalization. 2001-12-06 20:51:35 +00:00
unixccompiler.py This patch fixes the following bugs: 2002-11-05 16:12:02 +00:00
util.py SF bug #574235, convert_path fails with empty pathname 2002-08-13 17:42:57 +00:00
version.py Whitespace normalization. 2001-12-06 20:51:35 +00:00

This directory contains only a subset of the Distutils, specifically the
Python modules in the 'distutils' and 'distutils.command' packages.
Technically, this is all you need to distribute and install Python modules
using the Distutils.  Most people will want some documentation and other
help, though.  Currently, everything can be found at the Distutils web page:

    http://www.python.org/sigs/distutils-sig/

From there you can access the latest documentation, or download a standalone
Distutils release that includes all the code in this directory, plus
documentation, test scripts, examples, etc.

The Distutils documentation isn't yet part of the standard Python
documentation set, but will be soon.

        Greg Ward (gward@python.net)

$Id$