summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mk/config.mk.in1
-rw-r--r--utils/ghc-cabal/ghc.mk4
2 files changed, 4 insertions, 1 deletions
diff --git a/mk/config.mk.in b/mk/config.mk.in
index f2d077678c..01bbc75b1d 100644
--- a/mk/config.mk.in
+++ b/mk/config.mk.in
@@ -598,6 +598,7 @@ PIC = pic
PREPROCESSCMD = $(CC) -E
RANLIB = @RANLIB@
SED = @SedCmd@
+TR = tr
SHELL = /bin/sh
HaveDtrace = @HaveDtrace@
diff --git a/utils/ghc-cabal/ghc.mk b/utils/ghc-cabal/ghc.mk
index b238db91ba..f495048d22 100644
--- a/utils/ghc-cabal/ghc.mk
+++ b/utils/ghc-cabal/ghc.mk
@@ -79,9 +79,11 @@ $(GHC_CABAL_DIR)/dist-dummy-ghc/build/dummy-ghc.hs : $(GHC_CABAL_DIR)/ghc.mk $(M
# ( "PostfixOperators", ...
# then it translates them into
# ["PostfixOperators"] ++
+# Tabs are a pain to handle portably with sed, so rather than worrying
+# about them we just use tr to remove them all before we start.
echo 'extensions :: [String]' >> $@
echo 'extensions =' >> $@
- '$(SED)' '/^xFlags/,/]/s/^[[:space:]]*([[:space:]]*\("[^"]*"\)[^"]*/ [\1] ++/p;d' compiler/main/DynFlags.hs >> $@
+ '$(TR)' -d '\t' < compiler/main/DynFlags.hs | '$(SED)' '/^xFlags/,/]/s/^ *( *\("[^"]*"\)[^"]*/ [\1] ++/p;d' >> $@
echo ' []' >> $@
# We don't build dummy-ghc with Cabal, so we need to pass -package