diff options
author | Ben Gamari <ben@smart-cactus.org> | 2019-10-22 13:26:28 -0400 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2019-10-29 03:48:20 -0400 |
commit | 6a0902702d64ce683c81c04069f46f6e1078a094 (patch) | |
tree | fe3b669b038f570b67b3bd450d37cb3da9b9634e /hadrian/src/Settings/Packages.hs | |
parent | 8e5de15da1ded1909e10483c7ae3ba1ae3e87b17 (diff) | |
download | haskell-6a0902702d64ce683c81c04069f46f6e1078a094.tar.gz |
hadrian: Define NOSMP when building rts unregisterised
It seems that NOSMP was previously only defined when compiling the
compiler, not the RTS. Fix this.
In addition do some spring-cleaning and make the logic match that of the
Make build system.
Diffstat (limited to 'hadrian/src/Settings/Packages.hs')
-rw-r--r-- | hadrian/src/Settings/Packages.hs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/hadrian/src/Settings/Packages.hs b/hadrian/src/Settings/Packages.hs index 349c6518fb..014b1283c3 100644 --- a/hadrian/src/Settings/Packages.hs +++ b/hadrian/src/Settings/Packages.hs @@ -61,8 +61,8 @@ packageArgs = do [ arg "--disable-library-for-ghci" , anyTargetOs ["openbsd"] ? arg "--ld-options=-E" , flag GhcUnregisterised ? arg "--ghc-option=-DNO_REGS" - , notM ghcWithSMP ? arg "--ghc-option=-DNOSMP" - , notM ghcWithSMP ? arg "--ghc-option=-optc-DNOSMP" + , notM targetSupportsSMP ? arg "--ghc-option=-DNOSMP" + , notM targetSupportsSMP ? arg "--ghc-option=-optc-DNOSMP" , (any (wayUnit Threaded) rtsWays) ? notStage0 ? arg "--ghc-option=-optc-DTHREADED_RTS" , ghcWithInterpreter ? @@ -231,6 +231,8 @@ rtsPackageArgs = package rts ? do , inputs ["**/RtsMessages.c", "**/Trace.c"] ? arg ("-DProjectVersion=" ++ show projectVersion) + , notM targetSupportsSMP ? arg "-DNOSMP" + , input "**/RtsUtils.c" ? pure [ "-DProjectVersion=" ++ show projectVersion , "-DHostPlatform=" ++ show hostPlatform |