-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
every EmitOption field in std.Build.Step.Compile (for example: emit_docs) lacks FileSource integration #16351
Copy link
Copy link
Closed as not planned
Closed as not planned
Copy link
Labels
breakingImplementing this issue could cause existing code to no longer compile or have different behavior.Implementing this issue could cause existing code to no longer compile or have different behavior.bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorcontributor friendlyThis issue is limited in scope and/or knowledge of Zig internals.This issue is limited in scope and/or knowledge of Zig internals.enhancementSolving this issue will likely involve adding new logic or components to the codebase.Solving this issue will likely involve adding new logic or components to the codebase.zig build systemstd.Build, the build runner, `zig build` subcommand, package managementstd.Build, the build runner, `zig build` subcommand, package management
Metadata
Metadata
Assignees
Labels
breakingImplementing this issue could cause existing code to no longer compile or have different behavior.Implementing this issue could cause existing code to no longer compile or have different behavior.bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorcontributor friendlyThis issue is limited in scope and/or knowledge of Zig internals.This issue is limited in scope and/or knowledge of Zig internals.enhancementSolving this issue will likely involve adding new logic or components to the codebase.Solving this issue will likely involve adding new logic or components to the codebase.zig build systemstd.Build, the build runner, `zig build` subcommand, package managementstd.Build, the build runner, `zig build` subcommand, package management
Type
Fields
Give feedbackNo fields configured for issues without a type.
zig/lib/std/Build/Step/Compile.zig
Lines 49 to 58 in b9fc0d2
Instead of passing strings directly to the Zig CLI, the build system API should have a function for adding emission of each of these artifacts which returns a
FileSourcewhich can then be used as inputs in other parts of the build system API.As an example,
getOutputSourcealready does this for the CLI equivalent of-femit-bin.As a bonus, the build system should pass
-fno-emit-binunlessgetOutputSource()is called on the Compile Step. This will happen automatically in the case of adding an install step for the build artifact, which passes the result ofgetOutputSource()to an Install Step.