From 251bdb8d0ef09f81a4dd225bc39077ba4669b55b Mon Sep 17 00:00:00 2001 From: Matthew Pickering Date: Wed, 6 Apr 2022 17:26:28 +0100 Subject: ci: Add test to check that release jobs have profiling libraries --- .gitlab/ci.sh | 10 +++++++++- bindisttest/Makefile | 6 ++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/.gitlab/ci.sh b/.gitlab/ci.sh index a8cbdb6fbe..20ae2ff4a0 100755 --- a/.gitlab/ci.sh +++ b/.gitlab/ci.sh @@ -457,7 +457,7 @@ function test_make() { return fi - run "$MAKE" test_bindist TEST_PREP=YES + run "$MAKE" test_bindist TEST_PREP=YES TEST_PROF=$RELEASE_JOB run "$MAKE" V=0 VERBOSE=1 test \ THREADS="$cores" \ JUNIT_FILE=../../junit.xml \ @@ -497,6 +497,14 @@ function test_hadrian() { esac cd ../../../ + # If we are doing a release job, check the compiler can build a profiled executable + if [ "${RELEASE_JOB:-}" == "yes" ]; then + echo "main = print ()" > proftest.hs + $TOP/_build/install/bin/ghc$exe -prof proftest.hs + rm proftest.hs + fi + + run_hadrian \ test \ --summary-junit=./junit.xml \ diff --git a/bindisttest/Makefile b/bindisttest/Makefile index e49172c77d..3df55a9167 100644 --- a/bindisttest/Makefile +++ b/bindisttest/Makefile @@ -50,6 +50,12 @@ endif $(CONTEXT_DIFF) output expected_output # Without --no-user-package-db we might pick up random packages from ~/.ghc $(BIN_DIST_INST_DIR)/bin/ghc-pkg check --no-user-package-db +ifeq "$(TEST_PROF)" "yes" + $(BIN_DIST_INST_DIR)/bin/ghc --make -prof HelloWorld + ./HelloWorld > output + $(CONTEXT_DIFF) output expected_output +endif + clean distclean: "$(RM)" $(RM_OPTS_REC) $(BIN_DIST_INST_SUBDIR) -- cgit v1.2.1