Sven Tennie pushed to branch wip/supersven/cross-compiler-manual-test-jobs at Glasgow Haskell Compiler / GHC

Commits:

2 changed files:

Changes:

  • .gitlab/ci.sh
    ... ... @@ -708,6 +708,17 @@ function test_hadrian() {
    708 708
         # ---
    
    709 709
         # > main = putStrLn "hello world"
    
    710 710
         run diff -w expected actual
    
    711
    +
    
    712
    +    if [[ "${CI_MERGE_REQUEST_LABELS:-}" == *"cross-run-testsuite"* ]]; then
    
    713
    +      EXTRA_HC_OPTS="-fexternal-interpreter" run_hadrian \
    
    714
    +        test \
    
    715
    +        --summary-junit=./junit.xml \
    
    716
    +        --test-have-intree-files \
    
    717
    +        --test-compiler="${test_compiler}" \
    
    718
    +        "runtest.opts+=${RUNTEST_ARGS:-}" \
    
    719
    +        "runtest.opts+=--unexpected-output-dir=$TOP/unexpected-test-output" \
    
    720
    +        || fail "hadrian cross full testsuite"
    
    721
    +    fi
    
    711 722
       elif [[ -n "${REINSTALL_GHC:-}" ]]; then
    
    712 723
         run_hadrian \
    
    713 724
           test \
    

  • changelog.d/cross-compiler-testsuite
    1
    +section: packaging
    
    2
    +issues: #27372
    
    3
    +mrs: !16176
    
    4
    +synopsis: Run full testsuite for cross-compilers via 'cross-run-testsuite' MR label
    
    5
    +
    
    6
    +description: {
    
    7
    +  Adding the ``cross-run-testsuite`` label to a merge request causes the CI
    
    8
    +  pipeline to run the full testsuite for cross-compiler targets (riscv64,
    
    9
    +  aarch64-linux-gnu, loongarch64, aarch64-unknown-mingw32) in addition to
    
    10
    +  the existing smoke test. Results are expected to have failures under
    
    11
    +  emulation, but provide an overview and confidence in cross-compiler
    
    12
    +  correctness. The label is opt-in because emulated test runs take
    
    13
    +  significantly longer than native ones.
    
    14
    +}