mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-19 00:08:32 +01:00
Merge #151983: wrapper: Fortran: disable stackprotector
...hardening on darwin aarch64 (merge into staging)
This commit is contained in:
commit
5b5843e2b2
2 changed files with 9 additions and 2 deletions
|
@ -249,12 +249,19 @@ stdenv.mkDerivation {
|
|||
wrap ${targetPrefix}gdc $wrapper $ccPath/${targetPrefix}gdc
|
||||
''
|
||||
|
||||
+ optionalString cc.langFortran or false ''
|
||||
+ optionalString cc.langFortran or false (''
|
||||
wrap ${targetPrefix}gfortran $wrapper $ccPath/${targetPrefix}gfortran
|
||||
ln -sv ${targetPrefix}gfortran $out/bin/${targetPrefix}g77
|
||||
ln -sv ${targetPrefix}gfortran $out/bin/${targetPrefix}f77
|
||||
export named_fc=${targetPrefix}gfortran
|
||||
''
|
||||
# Darwin aarch64 fortran compilations seem to fail otherwise, see:
|
||||
# https://github.com/NixOS/nixpkgs/issues/140041
|
||||
+ (if (stdenvNoCC.isDarwin && stdenvNoCC.isAarch64) then ''
|
||||
export fortran_hardening="pic strictoverflow relro bindnow"
|
||||
'' else ''
|
||||
export fortran_hardening="pic strictoverflow relro bindnow stackprotector"
|
||||
''))
|
||||
|
||||
+ optionalString cc.langJava or false ''
|
||||
wrap ${targetPrefix}gcj $wrapper $ccPath/${targetPrefix}gcj
|
||||
|
|
|
@ -5,7 +5,7 @@ export FC${role_post}=@named_fc@
|
|||
|
||||
# If unset, assume the default hardening flags.
|
||||
# These are different for fortran.
|
||||
: ${NIX_HARDENING_ENABLE="stackprotector pic strictoverflow relro bindnow"}
|
||||
: ${NIX_HARDENING_ENABLE="@fortran_hardening@"}
|
||||
export NIX_HARDENING_ENABLE
|
||||
|
||||
unset -v role_post
|
||||
|
|
Loading…
Reference in a new issue