diff --git a/gmp/ghc.mk b/gmp/ghc.mk
index 5424dc9148b080675d1a739e08e3184c3564cffc..3e891bcb02b91348ec20ba362958023f8ebc6cc6 100644
--- a/gmp/ghc.mk
+++ b/gmp/ghc.mk
@@ -109,7 +109,7 @@ GMP_DIR := $(patsubst libraries/integer-gmp/gmp/tarball/%-nodoc-patched.tar.bz2,
 
 libraries/integer-gmp/gmp/libgmp.a libraries/integer-gmp/gmp/gmp.h:
 	$(RM) -rf $(GMP_DIR) libraries/integer-gmp/gmp/gmpbuild libraries/integer-gmp/gmp/objs
-	cat $(GMP_TARBALL) | $(BZIP2) -d { cd libraries/integer-gmp/gmp && $(TAR) -xf - ; }
+	cat $(GMP_TARBALL) | $(BZIP2) -d | { cd libraries/integer-gmp/gmp && $(TAR) -xf - ; }
 	mv libraries/integer-gmp/gmp/$(GMP_DIR) libraries/integer-gmp/gmp/gmpbuild
 	chmod +x libraries/integer-gmp/gmp/ln
 	cd libraries/integer-gmp/gmp; (set -o igncr 2>/dev/null) && set -o igncr; export SHELLOPTS; \