aboutsummaryrefslogtreecommitdiff
path: root/src/AstGen.zig
diff options
context:
space:
mode:
authorIsaac Freund <mail@isaacfreund.com>2022-04-12 00:25:47 +0200
committerAndrew Kelley <andrew@ziglang.org>2022-04-12 06:12:44 -0400
commit38d6e1d8a85ff77bc98dd80f604525e0804dec11 (patch)
tree7244813c9400376f8efc71c8011f89b4683a08a0 /src/AstGen.zig
parentb9d86c6bc8e5d475ed8613bb241d1520377e629c (diff)
downloadzig-38d6e1d8a85ff77bc98dd80f604525e0804dec11.tar.gz
zig-38d6e1d8a85ff77bc98dd80f604525e0804dec11.zip
std.build: Fix transitive linkSystemLibraryName() dependencies
Currently transitive system library dependencies are always linked using linkSystemLibrary() and therefore pkg-config even if they were originally specified with linkSystemLibraryName() instead. This causes problems in practice for projects needing total control over exactly what library is linked, such as the mach game engine. This is fixed by keeping track of whether libraries are to be linked with pkg-config or not and holding off on actually running pkg-config until after transitive dependency resolution in LibExeObjStep.make(). This also fixes a separate issue with the pkg-config handling that could cause partial application of pkg-config flags if the first part of the pkg-config output parses correctly but there is an error later on. This error isn't always fatal as we fall back to a plain -lfoo in the case of linkSystemLibrary().
Diffstat (limited to 'src/AstGen.zig')
0 files changed, 0 insertions, 0 deletions