Andrew Kelley
d7eab060db
configurer: serialize Step.UpdateSourceFiles
2026-05-25 18:54:35 -07:00
Andrew Kelley
f9f00c2dee
configurer: serialize Step.CheckFile
2026-05-25 18:54:35 -07:00
Andrew Kelley
d45f792c91
configurer: serialize Step.Fmt
2026-05-25 18:54:35 -07:00
Andrew Kelley
1186a10d4e
configurer: serialize WriteFile
2026-05-25 18:54:35 -07:00
Andrew Kelley
f4ae918684
configurer: implement serializing InstallDir
2026-05-25 18:54:35 -07:00
Andrew Kelley
ecba6324bf
configurer: update TranslateC step
...
and get zig's build.zig script fully compiling
2026-05-25 18:54:35 -07:00
Andrew Kelley
8a8bf5ad02
maker: update ObjCopy to new system
2026-05-25 18:54:35 -07:00
Andrew Kelley
affe5ed867
std.Build: port UpdateSourceFiles step to new system
2026-05-25 18:54:35 -07:00
Andrew Kelley
d3ec255a1f
more progress towards zig's build.zig compiling
2026-05-25 18:54:35 -07:00
Andrew Kelley
beef9fdf42
remove ios standalone test
...
relied on setting sysroot in configure phase
let's examine this use case more carefully next time before reinstating
this test.
2026-05-25 18:54:35 -07:00
Andrew Kelley
f9ebe0daa2
remove run_output_caching standalone test
...
it relied on custom build steps
2026-05-25 18:54:35 -07:00
Andrew Kelley
1a83b4d8fa
zig build: add zig_exe back to argv
...
trying to eliminate this can be a followup
2026-05-25 18:54:35 -07:00
Andrew Kelley
3d78589765
std.Build: port Fmt step to new system
...
and integrate properly with LazyPath
2026-05-25 18:54:35 -07:00
Andrew Kelley
ddabd57743
progress towards compiling zig's build script
2026-05-25 18:54:35 -07:00
Andrew Kelley
fa26566867
configurer: get InstallDir and Options steps compiling
2026-05-25 18:54:35 -07:00
Andrew Kelley
c57bf99043
Configuration: implement Storage.UnionList.tag
2026-05-25 18:54:35 -07:00
Andrew Kelley
364a1400ff
configurer: fix compilation in the presence of dependencies
2026-05-25 18:54:35 -07:00
Andrew Kelley
9ae410eec2
zig build: actually the configure passthru args are ordered
2026-05-25 18:54:35 -07:00
Andrew Kelley
ac0b1bfda2
build system: implement options
...
options which are passed to configurer and therefore observable by the
build script are added to the cache hash. A sorted list is hashed since
they are unordered.
2026-05-25 18:54:35 -07:00
Andrew Kelley
aec708ce25
build system: remove unneeded args from configurer
...
not needed:
* zig exe path
* zig lib dir
* build root
* local cache root
* global cache root
2026-05-25 18:54:35 -07:00
Andrew Kelley
1dc82c1328
configurer: remove Cache
2026-05-25 18:54:35 -07:00
Andrew Kelley
7819e4dea7
rename addCliExtras to addPassthruArgs
...
finally, a good name
2026-05-25 18:54:35 -07:00
Andrew Kelley
8f224bc3f0
rename addBuildPositionals to addCliExtras
...
they don't have to be positionals
2026-05-25 18:54:35 -07:00
Andrew Kelley
0d95b44a1c
build system: implement cli positionals
2026-05-25 18:54:35 -07:00
Andrew Kelley
a23050bf73
compiler: update callsites of std.zig.binNameAlloc
2026-05-25 18:54:35 -07:00
Andrew Kelley
fa23575767
maker: fix the has side effects logic in run step
2026-05-25 18:54:35 -07:00
Andrew Kelley
5f626d28c1
maker: report when result_oom flag is set
2026-05-25 18:54:34 -07:00
Andrew Kelley
1e956fda90
maker: add the --listen and --seed args back to run
2026-05-25 18:54:34 -07:00
Andrew Kelley
0f3471eb66
maker: finish porting over run step
2026-05-25 18:54:34 -07:00
Andrew Kelley
4e3d14f590
maker: update more Run step logic
2026-05-25 18:54:34 -07:00
Andrew Kelley
c8b583885d
maker: port Run step logic up to spawnChildAndCollect
2026-05-25 18:54:34 -07:00
Andrew Kelley
0d48cbb822
std.process.Environ.Map: add putAll and clearRetainingCapacity
2026-05-25 18:54:34 -07:00
Andrew Kelley
378b790ee2
maker: port more of Run step over
2026-05-25 18:54:34 -07:00
Andrew Kelley
5a4b5b549b
maker: restore Step.Run logic for adding artifact arg
...
When an artifact arg is added to a Run step, if the artifact is
installed, then the installation path is added rather than the cache
artifact path. This is probably something that should change in the
future, but the goal of this branch is to generally avoid breakage other
than that caused by phase separation.
2026-05-25 18:54:34 -07:00
Andrew Kelley
d707e37ec2
update todo text file
2026-05-25 18:54:34 -07:00
Andrew Kelley
24d260363f
configurer: fix bad serialization of strings in run args
2026-05-25 18:54:34 -07:00
Andrew Kelley
7c718fc72e
fix compilation errors from rebase conflicts
2026-05-25 18:54:34 -07:00
Andrew Kelley
088f815031
there are some unresolved branch conflicts
2026-05-25 18:54:34 -07:00
Andrew Kelley
a399d37886
maker: upgrade some of the run step logic
2026-05-25 18:54:34 -07:00
Andrew Kelley
81ee4ab32c
configurer: serialize all data from run steps
2026-05-25 18:54:34 -07:00
Andrew Kelley
8bc0913212
compiler: fix compilation errors
2026-05-25 18:54:34 -07:00
Andrew Kelley
e436d9c4ad
configurer: back out the string interning from prev commit
...
partial revert of 2d3fbb687fba1ed52b42998ac4dcbf2a042644ea - see its
commit message for reasoning
2026-05-25 18:54:34 -07:00
Andrew Kelley
c6d37f3895
configurer: make string duplication also intern
...
I had this idea to make b.dupe() also intern the strings since they will
be ultimately serialized to Configuration. Unfortunately the idea does
not work, because although a process-lived arena is used for the
string_bytes ArrayList of the Configuration.Wip, when the ArrayList is
resized, Allocator.free() memsets the freed memory to undefined, even
though it still technically lives due to being in a process-scoped
arena. So this commit will need to be partially reverted. However, I
kept it for posterity, and there are some more changes which I will now
note below.
- dupePaths: don't rewrite backslashes to forward slashes. backslashes
are valid in filenames on non-windows systems.
- always compile configurer in single-threaded mode
- use arena allocator for everything, no gpa for anything
- construct the Configuration.Wip instance earlier, so some stuff can be
prepopulated as desired.
- don't forget to flush
2026-05-25 18:54:34 -07:00
Andrew Kelley
1a63d26836
maker: implement TopLevel step
2026-05-25 18:54:34 -07:00
Andrew Kelley
aa0652ff8d
maker: implement InstallArtifact and InstallFile
2026-05-25 18:54:34 -07:00
Andrew Kelley
dd51fc30f8
maker: finish migrating compile step make logic
2026-05-25 18:54:34 -07:00
Andrew Kelley
b998d71e93
maker: finish lowering compile step CLI args
2026-05-25 18:54:34 -07:00
Andrew Kelley
c60d33f167
Configuration: refactor maxInt(u32)
2026-05-25 18:54:34 -07:00
Andrew Kelley
6ad6a58e5d
Configuration: fix bad serialization of PrefixedList and MultiList
...
Length zero is still serialized because there is no flag bit to hide the
length.
2026-05-25 18:54:34 -07:00
Andrew Kelley
a60ffaf5b3
maker: finish migrating most of CLI lowering code
2026-05-25 18:54:34 -07:00