From: Ian Lynagh Date: Wed, 22 Aug 2007 20:20:40 +0000 (+0000) Subject: Add a bindisttest directory X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=f700c53dceab14939616be22d114f6509caa3aad Add a bindisttest directory After make binary-dist stage=2 you can run make in bindisttest/ to test it --- diff --git a/Makefile b/Makefile index 6f38c13..a5936f4 100644 --- a/Makefile +++ b/Makefile @@ -238,8 +238,6 @@ install-docs :: # binary-dist is a GHC addition for binary distributions # -BIN_DIST_TARBALL=ghc-$(ProjectVersion)-$(TARGETPLATFORM).tar.bz2 - binary-dist:: -rm -rf $(BIN_DIST_DIR) -$(RM) $(BIN_DIST_DIR).tar.gz @@ -564,6 +562,9 @@ MAINTAINER_CLEAN_FILES += VERSION extraclean:: $(RM) -rf autom4te.cache +clean distclean :: + $(MAKE) -C bindisttest $@ + # ----------------------------------------------------------------------------- # Turn off target.mk's rules for 'all', 'boot' and 'install'. diff --git a/bindisttest/HelloWorld.hs b/bindisttest/HelloWorld.hs new file mode 100644 index 0000000..56e1e89 --- /dev/null +++ b/bindisttest/HelloWorld.hs @@ -0,0 +1,5 @@ + +module Main (main) where + +main :: IO () +main = putStr "Hello world!" diff --git a/bindisttest/Makefile b/bindisttest/Makefile new file mode 100644 index 0000000..d29c3d8 --- /dev/null +++ b/bindisttest/Makefile @@ -0,0 +1,32 @@ + +.PHONY: default_target + +default_target: all + +# Ideally we'd just include something to give us variables +# for paths and arguments to tools etc, and those set in mk/build.mk. +TOP=.. +include $(TOP)/mk/boilerplate.mk + +INST_DIR = $(FPTOOLS_TOP_ABS)/bindisttest/installed + +all: + $(RM) -rf installed + $(RM) -rf ghc* + $(RM) HelloWorld HelloWorld.o HelloWorld.hi output + $(TAR) -jxf $(BIN_DIST_TARBALL) + cd $(BIN_DIST_NAME) && ./configure --prefix=$(INST_DIR) + cd $(BIN_DIST_NAME) && make install + $(INST_DIR)/bin/ghc --make HelloWorld + ./HelloWorld > output + $(CONTEXT_DIFF) output expected_output + +clean distclean: + $(RM) -rf installed + $(RM) -rf ghc* + $(RM) HelloWorld HelloWorld.o HelloWorld.hi output + +# Ignore a load of other standard targets +install install-docs doc: + @: + diff --git a/bindisttest/expected_output b/bindisttest/expected_output new file mode 100644 index 0000000..6769dd6 --- /dev/null +++ b/bindisttest/expected_output @@ -0,0 +1 @@ +Hello world! \ No newline at end of file diff --git a/mk/config.mk.in b/mk/config.mk.in index 0feecbd..741abd3 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -507,6 +507,7 @@ FPTOOLS_TOP_ABS_PLATFORM = @hardtop_plat@ BIN_DIST_NAME=ghc-$(ProjectVersion) BIN_DIST_TOPDIR=$(FPTOOLS_TOP_ABS) BIN_DIST_DIR=$(BIN_DIST_TOPDIR)/$(BIN_DIST_NAME) +BIN_DIST_TARBALL=$(BIN_DIST_TOPDIR)/$(BIN_DIST_NAME)-$(TARGETPLATFORM).tar.bz2 # # Installation directories, we don't use half of these,