gccNGPackages_15: fix gfortran & libstdcxx (#424411)
This commit is contained in:
commit
d6d5e9a7c6
@ -726,6 +726,15 @@ stdenvNoCC.mkDerivation {
|
||||
echo "-isystem ${getDev libcxx}/include/c++/v1" >> $out/nix-support/libcxx-cxxflags
|
||||
echo "-stdlib=libc++" >> $out/nix-support/libcxx-ldflags
|
||||
''
|
||||
# GCC NG friendly libc++
|
||||
+ optionalString (libcxx != null && libcxx.isGNU or false) ''
|
||||
for dir in ${getDev libcxx}/include/c++/*; do
|
||||
echo "-isystem $dir" >> $out/nix-support/libcxx-cxxflags
|
||||
done
|
||||
for dir in ${getDev libcxx}/include/c++/*/${targetPlatform.config}; do
|
||||
echo "-isystem $dir" >> $out/nix-support/libcxx-cxxflags
|
||||
done
|
||||
''
|
||||
|
||||
##
|
||||
## Initial CFLAGS
|
||||
|
@ -121,6 +121,21 @@ makeScopeWithSplicing' {
|
||||
};
|
||||
|
||||
gfortran = wrapCCWith rec {
|
||||
cc = gccPackages.gfortran-unwrapped;
|
||||
libcxx = targetGccPackages.libstdcxx;
|
||||
bintools = binutils;
|
||||
extraPackages = [
|
||||
targetGccPackages.libgcc
|
||||
];
|
||||
nixSupport.cc-cflags = [
|
||||
"-B${targetGccPackages.libgcc}/lib"
|
||||
"-B${targetGccPackages.libssp}/lib"
|
||||
"-B${targetGccPackages.libatomic}/lib"
|
||||
"-B${targetGccPackages.libgfortran}/lib/"
|
||||
];
|
||||
};
|
||||
|
||||
gfortranNoLibgfortran = wrapCCWith rec {
|
||||
cc = gccPackages.gfortran-unwrapped;
|
||||
libcxx = targetGccPackages.libstdcxx;
|
||||
bintools = binutils;
|
||||
@ -211,7 +226,7 @@ makeScopeWithSplicing' {
|
||||
|
||||
libgfortran = callPackage ./libgfortran {
|
||||
stdenv = overrideCC stdenv buildGccPackages.gcc;
|
||||
inherit (buildGccPackages) gfortran;
|
||||
gfortran = buildGccPackages.gfortranNoLibgfortran;
|
||||
};
|
||||
|
||||
libstdcxx = callPackage ./libstdcxx {
|
||||
|
Loading…
x
Reference in New Issue
Block a user