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.

classification
Title: No option to include system headers in distutils.core.Extension
Type: enhancement Stage: resolved
Components: Distutils Versions: Python 3.7
process
Status: closed Resolution: out of date
Dependencies: Superseder:
Assigned To: Nosy List: danh, dstufft, eric.araujo, steve.dower
Priority: normal Keywords:

Created on 2018-06-30 15:29 by danh, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Messages (2)
msg320788 - (view) Author: Dan Hemberger (danh) * Date: 2018-06-30 15:29
The distutils.core.Extension class has a constructor argument `include_dirs`, which includes each directory with `-I`. However, it is sometimes desirable to include additional system headers using `-isystem`. Currently, this is only possible by manually constructing the compiler argument and passing it to the `extra_compile_args` argument of distutils.core.Extension.

Since `-isystem` is a commonly used compiler option, I think it would be useful to add a new argument and attribute to distutils.core.Extension called `system_include_dirs`, which would use `-isystem` instead of `-I` when building the compiler command.
msg386339 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2021-02-03 18:19
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 https://github.com/pypa/setuptools
History
Date User Action Args
2022-04-11 14:59:02adminsetgithub: 78193
2021-02-03 18:19:28steve.dowersetstatus: open -> closed

nosy: + steve.dower
messages: + msg386339

resolution: out of date
stage: resolved
2018-06-30 15:31:07danhsettype: enhancement
2018-06-30 15:29:14danhcreate