Print more nicely in -ddump-splices
[ghc-hetmet.git] / gmp / ghc.mk
index 1a71e17..3c5190a 100644 (file)
@@ -1,3 +1,15 @@
+# -----------------------------------------------------------------------------
+#
+# (c) 2009 The University of Glasgow
+#
+# This file is part of the GHC build system.
+#
+# To understand how the build system works and how to modify it, see
+#      http://hackage.haskell.org/trac/ghc/wiki/Building/Architecture
+#      http://hackage.haskell.org/trac/ghc/wiki/Building/Modifying
+#
+# -----------------------------------------------------------------------------
+
 
 # Compile GMP only if we don't have it already
 #
@@ -26,6 +38,7 @@ ifneq "$(HaveLibGmp)" "YES"
 ifneq "$(HaveFrameworkGMP)" "YES"
 
 INSTALL_LIBS += gmp/libgmp.a
+INSTALL_HEADERS += gmp/gmp.h
 
 $(eval $(call all-target,gmp_dynamic,gmp/libgmp.a))
 
@@ -66,9 +79,7 @@ PLATFORM := $(shell echo $(HOSTPLATFORM) | sed 's/i[567]86/i486/g')
 GMP_TARBALL := $(wildcard gmp/tarball/gmp*.tar.bz2)
 GMP_DIR := $(patsubst gmp/tarball/%-nodoc.tar.bz2,%,$(GMP_TARBALL))
 
-# XXX INSTALL_HEADERS += gmp.h
-
-gmp/libgmp.a:
+gmp/libgmp.a gmp/gmp.h:
        $(RM) -rf $(GMP_DIR) gmp/gmpbuild
        cd gmp && $(TAR) -jxf ../$(GMP_TARBALL)
        mv gmp/$(GMP_DIR) gmp/gmpbuild
@@ -80,11 +91,14 @@ gmp/libgmp.a:
            CC=$(WhatGccIsCalled) $(SHELL) configure \
                  --enable-shared=no --host=$(PLATFORM) --build=$(PLATFORM)
        $(MAKE) -C gmp/gmpbuild MAKEFLAGS=
+       $(CP) gmp/gmpbuild/gmp.h gmp/
        $(CP) gmp/gmpbuild/.libs/libgmp.a gmp/
        $(RANLIB) gmp/libgmp.a
 
+ifneq "$(NO_CLEAN_GMP)" "YES"
 $(eval $(call clean-target,gmp,,\
-  gmp/libgmp.a gmp/gmpbuild gmp/$(GMP_DIR)))
+  gmp/libgmp.a gmp/gmp.h gmp/gmpbuild gmp/$(GMP_DIR)))
+endif
 
 # XXX TODO:
 #stamp.gmp.shared: