gdc: nicer eval failure from versions >= 12
12 will also be copied into future versions; these parts seem OK to be copied by default.
This commit is contained in:
parent
c11d9597c1
commit
cb4e7fd9bc
1 changed files with 9 additions and 2 deletions
|
@ -3,6 +3,7 @@
|
||||||
, langAda ? false
|
, langAda ? false
|
||||||
, langObjC ? stdenv.targetPlatform.isDarwin
|
, langObjC ? stdenv.targetPlatform.isDarwin
|
||||||
, langObjCpp ? stdenv.targetPlatform.isDarwin
|
, langObjCpp ? stdenv.targetPlatform.isDarwin
|
||||||
|
, langD ? false
|
||||||
, langGo ? false
|
, langGo ? false
|
||||||
, reproducibleBuild ? true
|
, reproducibleBuild ? true
|
||||||
, profiledCompiler ? false
|
, profiledCompiler ? false
|
||||||
|
@ -41,6 +42,10 @@ assert stdenv.hostPlatform.isDarwin -> gnused != null;
|
||||||
assert langGo -> langCC;
|
assert langGo -> langCC;
|
||||||
assert langAda -> gnatboot != null;
|
assert langAda -> gnatboot != null;
|
||||||
|
|
||||||
|
# TODO: fixup D bootstapping, probably by using gdc11 (and maybe other changes).
|
||||||
|
# error: GDC is required to build d
|
||||||
|
assert !langD;
|
||||||
|
|
||||||
# threadsCross is just for MinGW
|
# threadsCross is just for MinGW
|
||||||
assert threadsCross != null -> stdenv.targetPlatform.isWindows;
|
assert threadsCross != null -> stdenv.targetPlatform.isWindows;
|
||||||
|
|
||||||
|
@ -68,6 +73,7 @@ let majorVersion = "12";
|
||||||
url = "https://github.com/fxcoudert/gcc/compare/releases/gcc-11.1.0...gcc-11.1.0-arm-20210504.diff";
|
url = "https://github.com/fxcoudert/gcc/compare/releases/gcc-11.1.0...gcc-11.1.0-arm-20210504.diff";
|
||||||
sha256 = "sha256-JqCGJAfbOxSmkNyq49aFHteK/RFsCSLQrL9mzUCnaD0=";
|
sha256 = "sha256-JqCGJAfbOxSmkNyq49aFHteK/RFsCSLQrL9mzUCnaD0=";
|
||||||
})
|
})
|
||||||
|
++ optional langD ../libphobos.patch
|
||||||
|
|
||||||
# Obtain latest patch with ../update-mcfgthread-patches.sh
|
# Obtain latest patch with ../update-mcfgthread-patches.sh
|
||||||
++ optional (!crossStageStatic && targetPlatform.isMinGW) ./Added-mcf-thread-model-support-from-mcfgthread.patch;
|
++ optional (!crossStageStatic && targetPlatform.isMinGW) ./Added-mcf-thread-model-support-from-mcfgthread.patch;
|
||||||
|
@ -208,6 +214,7 @@ stdenv.mkDerivation ({
|
||||||
enableShared
|
enableShared
|
||||||
|
|
||||||
langC
|
langC
|
||||||
|
langD
|
||||||
langCC
|
langCC
|
||||||
langFortran
|
langFortran
|
||||||
langAda
|
langAda
|
||||||
|
@ -248,14 +255,14 @@ stdenv.mkDerivation ({
|
||||||
|
|
||||||
inherit
|
inherit
|
||||||
(import ../common/extra-target-flags.nix {
|
(import ../common/extra-target-flags.nix {
|
||||||
inherit lib stdenv crossStageStatic libcCross threadsCross;
|
inherit lib stdenv crossStageStatic langD libcCross threadsCross;
|
||||||
})
|
})
|
||||||
EXTRA_FLAGS_FOR_TARGET
|
EXTRA_FLAGS_FOR_TARGET
|
||||||
EXTRA_LDFLAGS_FOR_TARGET
|
EXTRA_LDFLAGS_FOR_TARGET
|
||||||
;
|
;
|
||||||
|
|
||||||
passthru = {
|
passthru = {
|
||||||
inherit langC langCC langObjC langObjCpp langAda langFortran langGo version;
|
inherit langC langCC langObjC langObjCpp langAda langFortran langGo langD version;
|
||||||
isGNU = true;
|
isGNU = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue