506ec38e7f
this allows a compiler derivation to provide a hardeningUnsupportedFlagsByTargetPlatform passthru attr that will be called with the targetPlatform to determine the unsupported hardening flags for that platform. we can do this because even though a clang compiler is multi-target by nature, cc-wrapper effectively fixes the target platform at wrapping time. otherwise we'd have to sniff the intended target at runtime, which wouldn't be fun at all. the advantage of using a new attribute instead of allowing hardeningUnsupportedFlags to optionally be a function is that hardeningUnsupportedFlags retains its simple overriding pattern for simple cases (i.e. `(prev.hardeningUnsupportedFlags or []) ++ [ "foo" ]` ) which will continue to work as long as the bottom-most function of hardeningUnsupportedFlagsByTargetPlatform falls back to hardeningUnsupportedFlags. |
||
---|---|---|
.. | ||
add-clang-cc-cflags-before.sh | ||
add-flags.sh | ||
add-gnat-extra-flags.sh | ||
add-hardening.sh | ||
cc-wrapper.sh | ||
default.nix | ||
fortran-hook.sh | ||
gnat-wrapper.sh | ||
go-wrapper.sh | ||
setup-hook.sh |