Andrew Kelley
1d750d7067
Maker.Step.Run: fix leak in evalGeneric
2026-05-25 20:34:44 -07:00
Andrew Kelley
5b022623cf
Maker.Step.Compile: fix memory leak in checkCompileErrors
2026-05-25 20:17:41 -07:00
Andrew Kelley
f3dd10d40f
Maker: add --debug-maker-leaks flag and fix some leaks
2026-05-25 20:14:34 -07:00
Andrew Kelley
66f0564c3a
Maker.Watch: clean up a couple error logs
2026-05-25 19:27:16 -07:00
Andrew Kelley
cb1f3e0ac4
Maker.Step.Compile: leak into the global arena less
2026-05-25 19:27:16 -07:00
Andrew Kelley
198f35c98c
Maker: restore commit: clear step inputs when resetting the step
...
I'm a bit confused because my understanding is that each step is
supposed to make its own decision about whether to clear its watch
inputs and start over, or retain them from the previous update. However,
without this fix in place, the problem from #35224 manifests itself
again.
Since this fix is in place in master branch, I'll leave it for now and
audit the file watching logic later.
2026-05-25 18:54:37 -07:00
Andrew Kelley
19c63406d4
LazyPath: store relative paths as actual strings
2026-05-25 18:54:37 -07:00
Andrew Kelley
860d5ab9c4
Maker: implement relativePath with non-empty subpath for zig_exe
2026-05-25 18:54:36 -07:00
Andrew Kelley
35ee3747eb
Maker.Step: avoid unnecessary compilation failure
...
On s390x the cache line size is 256 so this check was failing. That's
not useful, just check only for more common cache line sizes.
2026-05-25 18:54:36 -07:00
Andrew Kelley
bd1b47733b
zig build: remove --build-runner CLI parameter
...
There is no concept of a "build runner" any more; it has been split in two:
configurer and maker.
Users of this feature will likely want to no longer override any logic, and
instead consume the configuration file produced by configurer.
If overriding one or the other of these is desired, the feature will need to be
re-introduced (as --override-maker or --override-configurer).
2026-05-25 18:54:36 -07:00
Andrew Kelley
1aa65d094e
Maker.Step.Run: leak into global arena less
...
There are still some uses:
- fuzzing
- generated paths (will require adjusting all step logic)
- Step.result_stderr
2026-05-25 18:54:36 -07:00
Andrew Kelley
9eb85c4e5e
build system: track TODOs outside source code
...
related to #363
2026-05-25 18:54:36 -07:00
Andrew Kelley
65c96c4035
Maker.Step.Run: add missing PATH entries for DLLs
2026-05-25 18:54:36 -07:00
Andrew Kelley
d1a4462032
Maker.Step.InstallArtifact: use gpa for fs walking
2026-05-25 18:54:36 -07:00
Andrew Kelley
c5517102e7
Maker: delete ConfigHeader unit tests
...
these will work better as standalone tests that exercise the std.Build
API.
2026-05-25 18:54:36 -07:00
Andrew Kelley
c0504a8fa8
fuzzer: get it working again
2026-05-25 18:54:36 -07:00
Andrew Kelley
0aa613d9bf
Maker.Step.Run: fix passing -L to qemu
2026-05-25 18:54:36 -07:00
Andrew Kelley
ed492ff51c
Maker.Step.WriteFile: fix not creating dir entries
2026-05-25 18:54:36 -07:00
Andrew Kelley
626e410413
Maker: fix regressed dyn lib symlink logic
2026-05-25 18:54:36 -07:00
Andrew Kelley
642d017fea
Maker: fix resolveLazyPath accidental mutation
2026-05-25 18:54:36 -07:00
Andrew Kelley
9b6dd7ee5c
zig build CLI: change --debug-maker to --maker-opt=[mode]
...
the --debug- prefixed args are reserved for compiler debugging flags.
2026-05-25 18:54:36 -07:00
Andrew Kelley
bd84824d9f
Maker: fix compilation on BSDs
2026-05-25 18:54:36 -07:00
Andrew Kelley
fed031031d
Maker: fix compilation on windows
2026-05-25 18:54:36 -07:00
Andrew Kelley
b069a2eb21
Maker: update macos file watching code to new api
2026-05-25 18:54:36 -07:00
Andrew Kelley
05fbeb4ea7
Maker.Step.Run: fix wrong allocator used
2026-05-25 18:54:36 -07:00
Andrew Kelley
fa7433a924
fix std-docs.zig compilation
2026-05-25 18:54:36 -07:00
Andrew Kelley
2edeeb5a64
zig build: add CLI usage for --print-configuration
2026-05-25 18:54:36 -07:00
Andrew Kelley
6d5fbb26da
Maker: enhance debuggability when resolveLazyPath fails
2026-05-25 18:54:36 -07:00
Andrew Kelley
9989f72c61
Maker: implement ConfigHeader
2026-05-25 18:54:36 -07:00
Andrew Kelley
e435299cfa
Maker: progress towards ConfigHeader
...
however... why is this done in the make phase anyway? making a header
like this is typically done by the configure phase...
2026-05-25 18:54:36 -07:00
Andrew Kelley
ed1f005826
Maker: finish implementing Step.Compile.appendIncludeDirFlags
2026-05-25 18:54:36 -07:00
Andrew Kelley
31c159c228
Maker: implement CheckFile
2026-05-25 18:54:36 -07:00
Andrew Kelley
92038675af
zig build: implement findProgram (not lazy)
2026-05-25 18:54:36 -07:00
Andrew Kelley
1edc5d7d67
Maker: implement FindProgram (lazy)
2026-05-25 18:54:36 -07:00
Andrew Kelley
54bb8d2dd9
implement the concept of configure cache poisoning
2026-05-25 18:54:36 -07:00
Andrew Kelley
df8aaad058
maker: extract some pkg-config logic into reusable API
2026-05-25 18:54:36 -07:00
Andrew Kelley
a874e729df
zig build: remove "cc args" from Run steps
...
Not sure what I was thinking. This is silly, translate-c package simply
needs to pass this data (link_libc and target) to the CLI application,
which can then do the appropriate behavior.
2026-05-25 18:54:36 -07:00
Andrew Kelley
996b411809
Configuration: more type safety for adding data
...
erased method still exists for when the result will be converted to an
int anyway.
2026-05-25 18:54:36 -07:00
Andrew Kelley
4cbc03dce3
Maker: we don't actually need to scan the modules
2026-05-25 18:54:36 -07:00
Andrew Kelley
df92898ec3
Maker: fix packagePath function
...
Currently, neither configurer nor Maker is aware of the standard zig
package path, and the root path is stored as a bare string rather than
relative to a known base directory. Without changing that, we must
construct a cwd relative path here rather than using knowledge of the
standard package path plus package hash.
Also fixes a bug that would have been prevented by implementing the
accepted proposal https://github.com/ziglang/zig/issues/25315
2026-05-25 18:54:36 -07:00
Andrew Kelley
619f23b3c7
CLI: support both --fork=[path] and --fork [path]
2026-05-25 18:54:36 -07:00
Andrew Kelley
91a7ea4ff4
Maker: implement TranslateC
2026-05-25 18:54:36 -07:00
Andrew Kelley
940b9bccc2
Configuration: fix Cpu.Arch enum mismatch
2026-05-25 18:54:36 -07:00
Andrew Kelley
d1204d4104
Maker.Step.Run: implement addPathForDynLibs
2026-05-25 18:54:36 -07:00
Andrew Kelley
3a259e2f0f
Maker.Step.Compile: implement checkCompileErrors
2026-05-25 18:54:36 -07:00
Andrew Kelley
ec65f129d8
Maker: lower -target arguments
2026-05-25 18:54:35 -07:00
Andrew Kelley
2c70c40499
configurer: fix serialization of Run path_directory args
2026-05-25 18:54:35 -07:00
Andrew Kelley
bb1b59ee1f
Maker: implement Step.InstallDir
2026-05-25 18:54:35 -07:00
Andrew Kelley
db7ceada15
Maker: implement Step.WriteFile
2026-05-25 18:54:35 -07:00
Andrew Kelley
398ea7e492
Maker: handle fallible child proc capture gracefully
2026-05-25 18:54:35 -07:00