#!/bin/sh set -e if [ -f mk/config.mk ]; then make distclean fi if [ -f mk/build.mk ]; then mv mk/build.mk mk/build.mk.bak fi # The default is a "quick" build echo BuildFlavour=quick >mk/build.mk cat mk/build.mk.sample >>mk/build.mk # You can override the default validate settings using mk/validate.mk # e.g. you could add GhcLibWays=p to test profiling. echo '-include $(TOP)/mk/validate.mk' >>mk/build.mk case $OSTYPE in cygwin|msys) config_args=--build=i386-unknown-mingw32 if [ -f c:/mingw/bin/gcc.exe ]; then config_args="$config_args --with-gcc=c:/mingw/bin/gcc" fi ;; esac if [ "$CPUS" = "" ]; then threads=2 else threads=`expr $CPUS + 1` fi sh boot ./configure $config_args make -j$threads # ToDo: use THREADS=$threads, see #1558 make -C testsuite/tests/ghc-regress fast stage=2 CLEANUP=1 2>&1 | tee testlog if grep '\<0 caused framework failures' testlog >/dev/null 2>/dev/null && grep '\<0 unexpected passes' testlog >/dev/null 2>/dev/null && grep '\<0 unexpected failures' testlog >/dev/null 2>/dev/null ; then echo "-------------------------------------------------------------------" echo "Congratulations! This tree is has passed minimal testing." echo echo "NOTE: If you have made changes that may cause failures not tested" echo "for by the minimal testing procedure, please do further testing" echo "as necessary." echo echo "When you are satisfied that you haven't broken anything, go ahead" echo "and push/send your patches". echo "-------------------------------------------------------------------" else echo "-------------------------------------------------------------------" echo "Oops! Looks like you have some unexpected test results or" echo "framework failures." echo "Please fix them before pushing/sending patches." echo "-------------------------------------------------------------------" fi