Magnus pushed to branch wip/mangoiv/ci-stages at Glasgow Haskell Compiler / GHC
Commits:
-
c29b8d0c
by mangoiv at 2026-09-22T17:35:09+02:00
-
a771cdfc
by mangoiv at 2026-09-22T17:35:11+02:00
-
29cf6177
by mangoiv at 2026-09-22T17:35:11+02:00
-
41a689bb
by mangoiv at 2026-09-22T17:35:11+02:00
-
9cb25b4a
by mangoiv at 2026-09-22T17:35:12+02:00
-
ad4003cb
by mangoiv at 2026-09-22T17:35:16+02:00
-
9e18719e
by mangoiv at 2026-09-22T17:35:16+02:00
6 changed files:
- .gitlab/ci.sh
- .gitlab/common.sh
- distrib/configure.ac.in
- m4/subst_tooldir.m4
- testsuite/driver/runtests.py
- testsuite/driver/testlib.py
Changes:
| ... | ... | @@ -685,7 +685,6 @@ function test_hadrian() { |
| 685 | 685 | tar -xf "$bindist_tar" -C "$dist_dir"
|
| 686 | 686 | fi
|
| 687 | 687 | |
| 688 | - check_msys2_deps _build/stage1/bin/ghc --version
|
|
| 689 | 688 | check_release_build
|
| 690 | 689 | |
| 691 | 690 | # GitLab's log viewer renders ANSI colors, but stdout here is not a tty,
|
| ... | ... | @@ -974,7 +973,9 @@ function run_hadrian() { |
| 974 | 973 | if [ -n "${VERBOSE:-}" ]; then args+=("-V"); fi
|
| 975 | 974 | # Before running the compiler, unset variables gitlab env vars as these
|
| 976 | 975 | # can destabilise the performance test (see #20341)
|
| 977 | - (unset $(compgen -v | grep CI_*);
|
|
| 976 | + (unset $(compgen -v | grep -E '^(CI_|FF_|GITLAB_)');
|
|
| 977 | + # dump the env before running hdarian itself.
|
|
| 978 | + start_section run_hadrian_env "env for runnning hadrian"; env; end_section run_hadrian_env
|
|
| 978 | 979 | run "${HADRIAN_PATH:-hadrian/build-cabal}" \
|
| 979 | 980 | --flavour="$BUILD_FLAVOUR" \
|
| 980 | 981 | -j"$cores" \
|
| ... | ... | @@ -47,7 +47,7 @@ info() { echo_color "${LT_BLUE}" "$1"; } |
| 47 | 47 | fail() { error "error: $1"; exit 1; }
|
| 48 | 48 | |
| 49 | 49 | function run() {
|
| 50 | - info "Running $*..."
|
|
| 50 | + info "Running $*"
|
|
| 51 | 51 | "$@" || ( error "$* failed"; return 1; )
|
| 52 | 52 | }
|
| 53 | 53 |
| ... | ... | @@ -103,7 +103,7 @@ AC_ARG_ENABLE(distro-toolchain, |
| 103 | 103 | AC_SUBST([EnableDistroToolchain])
|
| 104 | 104 | |
| 105 | 105 | if test "$HostOS" = "mingw32" -a "$EnableDistroToolchain" = "NO"; then
|
| 106 | - FP_SETUP_WINDOWS_TOOLCHAIN([$hardtop/mingw/], [\$\$topdir/../mingw/])
|
|
| 106 | + FP_SETUP_WINDOWS_TOOLCHAIN([$hardtop/mingw/], [\$topdir/../mingw/])
|
|
| 107 | 107 | fi
|
| 108 | 108 | |
| 109 | 109 |
| ... | ... | @@ -41,5 +41,5 @@ dnl ghc-toolchain. |
| 41 | 41 | # See Note [How we configure the bundled windows toolchain]
|
| 42 | 42 | AC_DEFUN([SUBST_TOOLDIR],
|
| 43 | 43 | [
|
| 44 | - sed -i.bkp $1 's%'"$mingw_prefix"'%'"$mingw_install_prefix"'%g'
|
|
| 44 | + sed -i.bkp 's%'"$mingw_prefix"'%'"$mingw_install_prefix"'%g' $1
|
|
| 45 | 45 | ]) |
| ... | ... | @@ -353,6 +353,7 @@ except Exception as e: |
| 353 | 353 | print('Failed to detect CPU features: ', e)
|
| 354 | 354 | |
| 355 | 355 | sys.stdout.flush()
|
| 356 | +sys.stderr.flush()
|
|
| 356 | 357 | |
| 357 | 358 | if config.local:
|
| 358 | 359 | tempdir = ''
|
| ... | ... | @@ -479,6 +480,9 @@ for name in config.only: |
| 479 | 480 | # .T file errors.
|
| 480 | 481 | pass
|
| 481 | 482 | |
| 483 | +sys.stdout.flush()
|
|
| 484 | +sys.stderr.flush()
|
|
| 485 | + |
|
| 482 | 486 | if config.list_broken:
|
| 483 | 487 | print('')
|
| 484 | 488 | print('Broken tests:')
|
| ... | ... | @@ -506,12 +510,17 @@ else: |
| 506 | 510 | # wait for parallel tests to finish
|
| 507 | 511 | asyncio.run(run_parallelTests())
|
| 508 | 512 | |
| 513 | + sys.stdout.flush()
|
|
| 514 | + sys.stderr.flush()
|
|
| 515 | + |
|
| 509 | 516 | # Run the following tests purely sequential
|
| 510 | 517 | async def run_aloneTests():
|
| 511 | 518 | for oneTest in aloneTests:
|
| 512 | 519 | if stopping():
|
| 513 | 520 | break
|
| 514 | 521 | await oneTest(None)
|
| 522 | + sys.stdout.flush()
|
|
| 523 | + sys.stderr.flush()
|
|
| 515 | 524 | |
| 516 | 525 | asyncio.run(run_aloneTests())
|
| 517 | 526 | |
| ... | ... | @@ -520,6 +529,7 @@ else: |
| 520 | 529 | |
| 521 | 530 | # flush everything before we continue
|
| 522 | 531 | sys.stdout.flush()
|
| 532 | + sys.stderr.flush()
|
|
| 523 | 533 | |
| 524 | 534 | # Dump metrics data.
|
| 525 | 535 | print("\nPerformance Metrics (test environment: {}):\n".format(config.test_env))
|
| ... | ... | @@ -1697,11 +1697,6 @@ async def test_common_work(name: TestName, opts, |
| 1697 | 1697 | do_ways = []
|
| 1698 | 1698 | config.hadrian_deps |= getTestOpts().hadrian_deps
|
| 1699 | 1699 | |
| 1700 | - # Skip tests which require hadrian dependencies if we are testing
|
|
| 1701 | - # an out-of-tree compiler as Hadrian is unavailable. See #13897.
|
|
| 1702 | - if not config.in_tree_compiler and getTestOpts().hadrian_deps - {'test:ghc'}:
|
|
| 1703 | - do_ways = []
|
|
| 1704 | - |
|
| 1705 | 1700 | # Run the required tests...
|
| 1706 | 1701 | for way in do_ways:
|
| 1707 | 1702 | if stopping():
|