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
> git clone [email protected]:python/cpython
> mkdir -p builds/dbg
> cd builds/dbg
> ../../cpython/configure --with-pydebug
> make -j
This is useful for e.g. keeping both debug and opt and asan builds around, without constantly having to make clean and recompile.
Currently the output of make regen-cases is cwd-dependent, so running it from an out-of-tree build (with no other changes) will change all #line directives in generated_cases.c.h from e.g. Python/bytecodes.c to e.g. ../../cpython/Python/bytecodes.c.
This is easily fixable by inserting a couple os.path.relpath(..., ROOT) calls in the cases generator, to ensure all the filenames used in #line directives are always relative to the repo root, regardless of cwd.
Uh oh!
There was an error while loading. Please reload this page.
Bug report
Python supports out-of-tree builds, e.g.:
This is useful for e.g. keeping both debug and opt and asan builds around, without constantly having to
make clean
and recompile.Currently the output of
make regen-cases
is cwd-dependent, so running it from an out-of-tree build (with no other changes) will change all#line
directives ingenerated_cases.c.h
from e.g.Python/bytecodes.c
to e.g.../../cpython/Python/bytecodes.c
.This is easily fixable by inserting a couple
os.path.relpath(..., ROOT)
calls in the cases generator, to ensure all the filenames used in#line
directives are always relative to the repo root, regardless of cwd.Linked PRs
The text was updated successfully, but these errors were encountered: