This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: Allow to setup Clang as default compiler for modules build
Type: enhancement Stage: resolved
Components: Distutils, Windows Versions: Python 3.8
Status: closed Resolution: out of date
Dependencies: Superseder:
Assigned To: Nosy List: Jaime Torres, corona10, dstufft, eric.araujo, matrixise, paul.moore, steve.dower, tim.golden, zach.ware
Priority: normal Keywords:

Created on 2018-11-14 12:08 by Jaime Torres, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Messages (6)
msg329902 - (view) Author: Jaime Torres (Jaime Torres) Date: 2018-11-14 12:08
Clang is not in the list of allowed compilers when executed:
python build --help-compiler

  --compiler=bcpp     Borland C++ Compiler
  --compiler=cygwin   Cygwin port of GNU C Compiler for Win32
  --compiler=mingw32  Mingw32 port of GNU C Compiler for Win32
  --compiler=msvc     Microsoft Visual C++
  --compiler=unix     standard UNIX-style compiler

I've tried to use the value unix in windows, to see if it will search for environment variables CC and CXX, but without success.
msg329903 - (view) Author: Stéphane Wirtel (matrixise) * (Python committer) Date: 2018-11-14 12:22
I confirm the issue, the main issue we have to support the CLang compiler into distutils.
msg330079 - (view) Author: Dong-hee Na (corona10) * (Python committer) Date: 2018-11-19 08:33

Hi, Stéphane

Can I take a look at this issue if no one works on it?

I have contributed to CPython, but it seems to be a good opportunity to contribute to a larger module.

One more thing,
It would be a good guide if you let me know what
I should pay attention to when solving this issue.

msg330080 - (view) Author: Stéphane Wirtel (matrixise) * (Python committer) Date: 2018-11-19 08:42
Of course you can, good luck, if you need help ping us.
msg330086 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2018-11-19 11:33
You might consider adding this support to setuptools rather than CPython. The distutils module is basically closed to non-essential enhancements like this, and will eventually be deprecated for public use (which means totally unused on Windows and only used to build CPython itself on other platforms).

Setuptools will merge in what it needs to cover existing scenarios and will become a required dependency for distutils-like builds. So eventually it will end up only in there anyway, and people will get to use it sooner if you start by putting it in setuptools.
msg386316 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2021-02-03 18:16
Distutils is now deprecated (see PEP 632) and all tagged issues are being closed. From now until removal, only release blocking issues will be considered for distutils.

If this issue does not relate to distutils, please remove the component and reopen it. If you believe it still requires a fix, most likely the issue should be re-reported at
Date User Action Args
2022-04-11 14:59:08adminsetgithub: 79425
2021-02-03 18:16:28steve.dowersetstatus: open -> closed
resolution: out of date
messages: + msg386316

stage: test needed -> resolved
2018-11-19 11:33:06steve.dowersettype: enhancement
stage: test needed
messages: + msg330086
versions: - Python 3.7
2018-11-19 08:42:14matrixisesetmessages: + msg330080
2018-11-19 08:33:17corona10setnosy: + corona10
messages: + msg330079
2018-11-15 19:53:20brett.cannonsetnosy: + paul.moore, tim.golden, zach.ware, steve.dower
components: + Windows
2018-11-14 12:22:55matrixisesetversions: + Python 3.8
2018-11-14 12:22:50matrixisesetnosy: + matrixise
messages: + msg329903
2018-11-14 12:08:32Jaime Torrescreate