diff --git a/hadrian/cfg/default.target.in b/hadrian/cfg/default.target.in
index 47636f89ff05384604a775b8518cc9332dfa5ceb..84da17bc160d78a3aff27e7c1338cb78b18c8f1e 100644
--- a/hadrian/cfg/default.target.in
+++ b/hadrian/cfg/default.target.in
@@ -34,6 +34,6 @@ Target
 
 , tgtRanlib = Just (Ranlib {ranlibProgram = Program {prgPath = "@RanlibCmd@", prgFlags = []}})
 , tgtNm = Nm {nmProgram = Program {prgPath = "@NmCmd@", prgFlags = []}}
-, tgtMergeObjs = Just (MergeObjs {mergeObjsProgram = Program {prgPath = "@MergeObjsCmd@", prgFlags = @MergeObjsArgsList@}, mergeObjsSupportsResponseFiles = @MergeObjsSupportsResponseFilesBool@})
+, tgtMergeObjs = @MergeObjsCmdMaybe@
 , tgtWindres = @WindresCmdMaybeProg@
 }
diff --git a/m4/prep_target_file.m4 b/m4/prep_target_file.m4
index 9a9b6df06013d6b4696116eaac6d80678d735921..89e773f7512706c28ff52f7bac063d51a5acb0d5 100644
--- a/m4/prep_target_file.m4
+++ b/m4/prep_target_file.m4
@@ -160,6 +160,14 @@ AC_DEFUN([PREP_TARGET_FILE],[
     PREP_LIST([CONF_CXX_OPTS_STAGE0])
     PREP_LIST([CONF_GCC_LINKER_OPTS_STAGE0])
 
+
+    if test -z "$MergeObjsCmd"; then
+      MergeObjsCmdMaybe=Nothing
+    else
+      MergeObjsCmdMaybe="Just (MergeObjs {mergeObjsProgram = Program {prgPath = \"$MergeObjsCmd\", prgFlags = $MergeObjsArgsList}, mergeObjsSupportsResponseFiles = $MergeObjsSupportsResponseFilesBool})"
+    fi
+    AC_SUBST([MergeObjsCmdMaybe])
+
     dnl PREP_ENDIANNESS
     case "$TargetWordBigEndian" in
         YES)