diff options
Diffstat (limited to 'hadrian/src/Builder.hs')
-rw-r--r-- | hadrian/src/Builder.hs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/hadrian/src/Builder.hs b/hadrian/src/Builder.hs index 743d169644..5d7ff33720 100644 --- a/hadrian/src/Builder.hs +++ b/hadrian/src/Builder.hs @@ -317,6 +317,15 @@ systemBuilderPath builder = case builder of Happy -> fromKey "happy" HsCpp -> fromKey "hs-cpp" Ld _ -> fromKey "ld" + -- MergeObjects Stage0 is a special case in case of + -- cross-compiling. We're building stage1, e.g. code which will be + -- executed on the host and hence we need to use host's merge + -- objects tool and not the target merge object tool. + -- Note, merge object tool is usually platform linker with some + -- parameters. E.g. building a cross-compiler on and for x86_64 + -- which will target ppc64 means that MergeObjects Stage0 will use + -- x86_64 linker and MergeObject _ will use ppc64 linker. + MergeObjects Stage0 -> fromKey "system-merge-objects" MergeObjects _ -> fromKey "merge-objects" Make _ -> fromKey "make" Makeinfo -> fromKey "makeinfo" |