-
Notifications
You must be signed in to change notification settings - Fork 13.9k
Description
Most command wrappers assume output artifacts will be emitted to tmp_dir() (which calculates TMPDIR as is used in tools.mk), which is a scratchpad directory that is intended to be unique for each run-make test so they don't interfere with each other, and that output artifact emission is contained to the directory. Typically command wrappers will have --out-dir=tmp_dir() presets.
The naming of tmp_dir() however is pretty bad -- it being a "temporary directory" is not to be confused with env::temp_dir.
Do note, however, that tools.mk setting TMPDIR has other effects:
On Unix, returns the value of the TMPDIR environment variable if it is set
I don't know if this is intentional, but if it is intended to even control where e.g. codegen artifacts are emitted, then setting TMPDIR does nothing on Windows: we also need to set TMP/TEMP on Windows.