lib: Clean up how linux and gcc config is specified

Second attempt of 8929989614589ee3acd070a6409b2b9700c92d65; see that
commit for details.

This reverts commit 0bc275e634.
This commit is contained in:
John Ericson
2021-01-22 20:33:55 -05:00
parent 2bc16b381e
commit 9c213398b3
38 changed files with 440 additions and 434 deletions

View File

@@ -60,18 +60,17 @@ in
configureFlags = let
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
host = stdenv.hostPlatform.platform;
isAarch32 = stdenv.hostPlatform.isAarch32;
inherit (stdenv.hostPlatform) gcc isArch32;
in sharedConfigureFlags ++ [
"--without-dtrace"
] ++ (optionals isCross [
"--cross-compiling"
"--without-intl"
"--without-snapshot"
]) ++ (optionals (isCross && isAarch32 && hasAttr "fpu" host.gcc) [
"--with-arm-fpu=${host.gcc.fpu}"
]) ++ (optionals (isCross && isAarch32 && hasAttr "float-abi" host.gcc) [
"--with-arm-float-abi=${host.gcc.float-abi}"
]) ++ (optionals (isCross && isAarch32 && hasAttr "fpu" gcc) [
"--with-arm-fpu=${gcc.fpu}"
]) ++ (optionals (isCross && isAarch32 && hasAttr "float-abi" gcc) [
"--with-arm-float-abi=${gcc.float-abi}"
]) ++ (optionals (isCross && isAarch32) [
"--dest-cpu=arm"
]) ++ extraConfigFlags;