You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Need setup.py to pick up -isystem flags from CPPFLAGS #81944
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
assignee=Noneclosed_at=Nonecreated_at=<Date2019-08-05.15:10:05.216>labels= ['type-feature', '3.8', '3.9', 'build']
title='Need setup.py to pick up -isystem flags from CPPFLAGS'updated_at=<Date2019-08-05.15:15:28.475>user='https://github.com/jherland'
First time contributor here, still learning the ropes.
We're cross-compiling python in an environment where we set up CPPFLAGS, LDFLAGS, etc. to point directly to the locations where we have built Python's dependencies. For example, we will typically build Python in an environment that includes:
setup.py already picks up our -L options from LDFLAGS and propagates them into the build commands, but the -isystem options from CPPFLAGS are currently ignored.
I will post a PR that teaches setup.py to handle -isystem options in CPPFLAGS the same way it currently handles -I options.
Activity
jherland commentedon Aug 5, 2019
First time contributor here, still learning the ropes.
We're cross-compiling python in an environment where we set up CPPFLAGS, LDFLAGS, etc. to point directly to the locations where we have built Python's dependencies. For example, we will typically build Python in an environment that includes:
CPPFLAGS=\
-isystem /path/to/ncurses/build/include \
-isystem /path/to/libffi/build/include \
-isystem /path/to/zlib/build/include \
-isystem /path/to/openssl/build/include \
-isystem /path/to/readline/build/include
LDFLAGS=\
-L/path/to/ncurses/build/lib \
-L/path/to/libffi/build/lib \
-L/path/to/zlib/build/lib \
-L/path/to/openssl/build/lib \
-L/path/to/ciscossl-fom/build/lib \
-L/path/to/readline/build/lib
setup.py already picks up our -L options from LDFLAGS and propagates them into the build commands, but the -isystem options from CPPFLAGS are currently ignored.
I will post a PR that teaches setup.py to handle -isystem options in CPPFLAGS the same way it currently handles -I options.
serhiy-storchaka commentedon Dec 26, 2023
setup.pyno longer used to build CPython since 3.12 (see #94474).