+# -----------------------------------------------------------------------------
+#
+# (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
#
ifneq "$(HaveFrameworkGMP)" "YES"
INSTALL_LIBS += gmp/libgmp.a
+INSTALL_HEADERS += gmp/gmp.h
$(eval $(call all-target,gmp_dynamic,gmp/libgmp.a))
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
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: