Andrew Kelley
58f8dcd15e
std.Build: improve documentation for UpdateSourceFiles step
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
eb80aa0060
std.Build.LazyPath.basename: fix impl
...
* no more parameters
* don't call getPath2, that was never valid to call in the configure
phase...
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
Andrew Kelley
4aa8fa898d
Maker.PkgConfig: fix regression when pkg-config not found
...
unless pkg_config == .force, this is supposed to be allowed
2026-05-25 18:54:35 -07:00
Andrew Kelley
d988146638
std.process.Child: add format and success methods
2026-05-25 18:54:35 -07:00
Andrew Kelley
5fb120a3c0
maker: implement cleanTmpFiles
2026-05-25 18:54:35 -07:00
Andrew Kelley
9709efce98
std.Build.Step.Run: introduce Arg.cc_args
...
provides a way for the build system to append -target and -isystem/-I
flags to a Run step.
needed by translate-c package to avoid doing naughty stuff in the
configure phase.
2026-05-25 18:54:35 -07:00
Andrew Kelley
e2dbf6f48f
Maker.PkgConfig: use mem.cutPrefix
2026-05-25 18:54:35 -07:00
Andrew Kelley
fb9118195e
maker: implement pkg-config integration
...
featuring:
* better error reporting
* including PKG_CONFIG environment variable in `zig env`
* memoizing the output of `pkg-config --list-all`
2026-05-25 18:54:35 -07:00
Andrew Kelley
5644d68f14
more colorful wip panics
2026-05-25 18:54:35 -07:00
Andrew Kelley
43209551b7
maker: implement Step.Options
...
also revert #35224
2026-05-25 18:54:35 -07:00
Andrew Kelley
bd4c1e34d2
configurer: add search_prefixes back
...
It is generally best practice to avoid calling this function, instead
relying on the user to provide these paths via the standard build system
interface. However, when integrating with other build systems, the user
may have already provided the information to the other build system, and
thus it is desirable to use that same information without requiring the
user to provide it again.
2026-05-25 18:54:35 -07:00
Andrew Kelley
a249201aec
maker: fix Step.Fmt
2026-05-25 18:54:35 -07:00
Andrew Kelley
42be6c0088
configurer: serialize Step.TranslateC
2026-05-25 18:54:35 -07:00
Andrew Kelley
315d6ee59b
configurer: serialize Step.ConfigHeader
2026-05-25 18:54:35 -07:00
Andrew Kelley
7e6be7ee6e
configurer: serialize Step.ObjCopy
2026-05-25 18:54:35 -07:00
Andrew Kelley
f158262b30
configurer: serialize Step.Options
2026-05-25 18:54:35 -07:00
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
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
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
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