
Serge S. Gulin pushed to branch wip/T25974 at Glasgow Haskell Compiler / GHC Commits: d646cc97 by Serge S. Gulin at 2025-05-08T08:48:50+03:00 Test build wine! - - - - - 3 changed files: - .gitlab-ci.yml - .gitlab/generate-ci/gen_ci.hs - .gitlab/jobs.yaml Changes: ===================================== .gitlab-ci.yml ===================================== @@ -2,7 +2,7 @@ variables: GIT_SSL_NO_VERIFY: "1" # Commit of ghc/ci-images repository from which to pull Docker images - DOCKER_REV: 6e9f8f17086e56e83adae4a8a9d63e2fec3cb6c7 + DOCKER_REV: 14b23867eebc6d5f43e79dab32304175e2416797 # Sequential version number of all cached things. # Bump to invalidate GitLab CI cache. ===================================== .gitlab/generate-ci/gen_ci.hs ===================================== @@ -110,9 +110,19 @@ data Opsys | FreeBSD14 | Windows deriving (Eq) +data WineMode + = OnlyTest + -- ^ Wine will be used only to test binaries after cross-compile + -- which means we do cross-compile from Linux to Windows + | FullBuild + -- ^ Wine will be used for full process of compilation + -- which means compilation itself will be executed under Wine. + -- It makes possible to run compilation for Windows environment at Linux machines. + deriving (Eq) + data LinuxDistro = Debian12 - | Debian12Wine + | Debian12Wine WineMode | Debian12Riscv | Debian11 | Debian11Js @@ -316,7 +326,7 @@ distroName Debian12 = "deb12" distroName Debian11 = "deb11" distroName Debian11Js = "deb11-emsdk-closure" distroName Debian12Riscv = "deb12-riscv" -distroName Debian12Wine = "deb12-wine" +distroName (Debian12Wine _) = "deb12-wine" distroName Debian10 = "deb10" distroName Debian9 = "deb9" distroName Fedora33 = "fedora33" @@ -360,6 +370,7 @@ testEnv arch opsys bc = , ["no_tntc" | not (tablesNextToCode bc) ] , ["cross_"++triple | Just triple <- pure $ crossTarget bc ] , [flavourString (mkJobFlavour bc)] + , if opsys == Linux (Debian12Wine FullBuild) then ["_wine_full_build"] else [] ] -- | The hadrian flavour string we are going to use for this build @@ -728,6 +739,7 @@ data ValidateRule | I386Backend -- ^ Run this job when the "i386" label is set | WinArm64 -- ^ Run this job when the "aarch64" and "Windows" labels are set together without "LLVM backend" | WinArm64LLVM -- ^ Run this job when the "aarch64" and "Windows" labels are set together with "LLVM backend" + | WineArm64 -- ^ Run this job when the "aarch64" and "Wine" labels are set deriving (Show, Ord, Eq) -- | Convert the state of the rule into a string that gitlab understand. @@ -781,6 +793,10 @@ validateRuleString WinArm64LLVM = and_all , labelString "Windows" , validateRuleString LLVMBackend ] +validateRuleString WineArm64 = and_all + [ labelString "aarch64" + , labelString "Wine" + ] --------------------------------------------------------------------- -- The Job type @@ -847,6 +863,16 @@ job arch opsys buildConfig = NamedJob { name = jobName, jobInfo = Job {..} } , "bash .gitlab/ci.sh build_hadrian" , "bash .gitlab/ci.sh test_hadrian" ] + | Linux (Debian12Wine FullBuild) <- opsys + = [ "sudo chown ghc:ghc -R ." + , "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh setup" + , "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh configure" + -- We have to trigger cabal build in an independent way to mitigate Wine hangs at MSYS2/Arm64EC + , "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l -c './hadrian/build-cabal clean'" + , "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh build_hadrian" + -- It builds, it is already a huge win at the moment of this commit + -- TODO: , "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh test_hadrian" + ] | otherwise = [ "find libraries -name config.sub -exec cp config.sub {} \\;" | Darwin == opsys ] ++ [ "sudo chown ghc:ghc -R ." | Linux {} <- [opsys]] ++ @@ -897,6 +923,10 @@ job arch opsys buildConfig = NamedJob { name = jobName, jobInfo = Job {..} } ] in "RUNTEST_ARGS" =: unwords runtestArgs , if testsuiteUsePerf buildConfig then "RUNTEST_ARGS" =: "--config perf_path=perf" else mempty + -- TODO: move me to an appropriate way + , if crossTarget buildConfig == Just "aarch64-unknown-mingw32" && opsys == Linux (Debian12Wine FullBuild) + then "CONFIGURE_ARGS" =: "--build=x86_64-unknown-mingw32 --host=x86_64-unknown-mingw32" + else mempty ] jobArtifacts = Artifacts @@ -1277,51 +1307,73 @@ cross_jobs = [ -- Linux Aarch64 (Wine + FEX + MSYS64) => Windows Aarch64 , makeWinArmJobs $ addValidateRule WinArm64 - (validateBuilds AArch64 (Linux Debian12Wine) winAarch64Config) + (validateBuilds AArch64 (Linux (Debian12Wine OnlyTest)) winAarch64Config) , makeWinArmJobs $ addValidateRule WinArm64LLVM - (validateBuilds AArch64 (Linux Debian12Wine) (winAarch64Config {llvmBootstrap = True})) + (validateBuilds AArch64 (Linux (Debian12Wine OnlyTest)) (winAarch64Config {llvmBootstrap = True})) + , makeWineArmJobs + $ addValidateRule WineArm64 + (validateBuilds AArch64 (Linux (Debian12Wine FullBuild)) winAarch64Config) ] where javascriptConfig = (crossConfig "javascript-unknown-ghcjs" (Emulator "js-emulator") (Just "emconfigure")) { bignumBackend = Native } - makeWinArmJobs = modifyJobs - ( -- Cross compiler validate does not need any docs - setVariable "HADRIAN_ARGS" "--docs=none" - . setVariable "AR" (llvm_prefix ++ "llvm-ar") - . setVariable "CC" (llvm_prefix ++ "clang") - . setVariable "CXX" (llvm_prefix ++ "clang++") - . setVariable "NM" (llvm_prefix ++ "nm") - . setVariable "OBJCOPY" (llvm_prefix ++ "objcopy") - . setVariable "OBJDUMP" (llvm_prefix ++ "objdump") - . setVariable "RANLIB" (llvm_prefix ++ "llvm-ranlib") - . setVariable "SIZE" (llvm_prefix ++ "size") - . setVariable "STRINGS" (llvm_prefix ++ "strings") - . setVariable "STRIP" (llvm_prefix ++ "strip") - . setVariable "WindresCmd" (llvm_prefix ++ "windres") - . setVariable "LLVMAS" (llvm_prefix ++ "clang") - . setVariable "LD" (llvm_prefix ++ "ld") - -- See Note [Empty MergeObjsCmd] - -- Windows target require to make linker merge feature check disabled. - . setVariable "MergeObjsCmd" "" - -- Note [Wide Triple Windows] - -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -- LLVM MinGW Linux Toolchain expects to recieve "aarch64-w64-mingw32" - -- as a triple but we use more common "aarch64-unknown-mingw32". - -- Due of this we need configure ld manually for clang because - -- it will use system's ld otherwise when --target will be specified to - -- unexpected triple. - . setVariable "CFLAGS" cflags - . setVariable "CONF_CC_OPTS_STAGE2" cflags - ) where - llvm_prefix = "/opt/llvm-mingw-linux/bin/aarch64-w64-mingw32-" - -- See Note [Windows Toolchain Standard Library Options] - cflags = "-fuse-ld=" ++ llvm_prefix ++ "ld --rtlib=compiler-rt" + addWindowsCrossArmVars llvm_prefix exe_suffix cflags = modifyJobs + ( -- Cross compiler validate does not need any docs + setVariable "HADRIAN_ARGS" "--docs=none" + . setVariable "AR" (llvm_prefix ++ "llvm-ar" ++ exe_suffix) + . setVariable "CC" (llvm_prefix ++ "clang") + . setVariable "CXX" (llvm_prefix ++ "clang++") + . setVariable "NM" (llvm_prefix ++ "nm" ++ exe_suffix) + . setVariable "OBJCOPY" (llvm_prefix ++ "objcopy") + . setVariable "OBJDUMP" (llvm_prefix ++ "objdump") + . setVariable "RANLIB" (llvm_prefix ++ "llvm-ranlib" ++ exe_suffix) + . setVariable "SIZE" (llvm_prefix ++ "size") + . setVariable "STRINGS" (llvm_prefix ++ "strings") + . setVariable "STRIP" (llvm_prefix ++ "strip") + . setVariable "WindresCmd" (llvm_prefix ++ "windres") + . setVariable "LLVMAS" (llvm_prefix ++ "clang") + . setVariable "LD" (llvm_prefix ++ "ld") + -- See Note [Empty MergeObjsCmd] + -- Windows target require to make linker merge feature check disabled. + . setVariable "MergeObjsCmd" "" + -- Note [Wide Triple Windows] + -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + -- LLVM MinGW Linux Toolchain expects to recieve "aarch64-w64-mingw32" + -- as a triple but we use more common "aarch64-unknown-mingw32". + -- Due of this we need configure ld manually for clang because + -- it will use system's ld otherwise when --target will be specified to + -- unexpected triple. + . setVariable "CFLAGS" cflags + . setVariable "CONF_CC_OPTS_STAGE2" cflags + ) + + makeWinArmJobs = + let + llvm_prefix = "/opt/llvm-mingw-linux/bin/aarch64-w64-mingw32-" + -- See Note [Windows Toolchain Standard Library Options] + cflags = "-fuse-ld=" ++ llvm_prefix ++ "ld --rtlib=compiler-rt" + in addWindowsCrossArmVars llvm_prefix "" cflags winAarch64Config = (crossConfig "aarch64-unknown-mingw32" (Emulator "/opt/wine-arm64ec-msys2-deb12/bin/wine") Nothing) { bignumBackend = Native } + makeWineArmJobs = + let + llvm_path = "C:/msys64/opt/llvm-mingw-windows/bin" + llvm_prefix = llvm_path ++ "/aarch64-w64-mingw32-" + exe_suffix = ".exe" + -- See Note [Windows Toolchain Standard Library Options] + cflags = "-fuse-ld=" ++ llvm_path ++ "/bin/ld.lld --rtlib=compiler-rt -D_UCRT" + in modifyJobs + ( setVariable "TOOLCHAIN_SOURCE" "env" + . setVariable "DLLTOOL" (llvm_path ++ "/dlltool" ++ exe_suffix) + . setVariable "CC_STAGE0" (llvm_path ++ "/bin/x86_64-w64-mingw32-clang") + . setVariable "CONF_CC_OPTS_STAGE0" ("--target=x86_64-unknown-mingw32 " ++ cflags) + . setVariable "CONF_CC_OPTS_STAGE1" cflags + ) . (addWindowsCrossArmVars llvm_prefix exe_suffix cflags) + make_wasm_jobs cfg = modifyJobs ( -- See Note [Testing wasm ghci browser mode] @@ -1381,6 +1433,7 @@ platform_mapping = Map.map go combined_result , "x86_64-windows-validate" , "aarch64-linux-deb12-validate" , "aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate" + , "aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build" , "nightly-x86_64-linux-alpine3_20-wasm-cross_wasm32-wasi-release+host_fully_static+text_simdutf" , "nightly-x86_64-linux-deb11-validate" , "nightly-x86_64-linux-deb12-validate" @@ -1389,6 +1442,7 @@ platform_mapping = Map.map go combined_result , "nightly-aarch64-linux-deb10-validate" , "nightly-aarch64-linux-deb12-validate" , "nightly-aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate" + , "nightly-aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build" , "nightly-x86_64-linux-alpine3_12-validate" , "nightly-x86_64-linux-deb10-validate" , "nightly-x86_64-linux-fedora33-release" ===================================== .gitlab/jobs.yaml ===================================== @@ -477,6 +477,92 @@ "WindresCmd": "/opt/llvm-mingw-linux/bin/aarch64-w64-mingw32-windres" } }, + "aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build": { + "after_script": [ + ".gitlab/ci.sh save_cache", + ".gitlab/ci.sh save_test_output", + ".gitlab/ci.sh clean", + "cat ci_timings" + ], + "allow_failure": false, + "artifacts": { + "expire_in": "2 weeks", + "paths": [ + "ghc-aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build.tar.xz", + "junit.xml", + "unexpected-test-output.tar.gz" + ], + "reports": { + "junit": "junit.xml" + }, + "when": "always" + }, + "cache": { + "key": "aarch64-linux-deb12-wine-$CACHE_REV", + "paths": [ + "cabal-cache", + "toolchain" + ] + }, + "dependencies": [], + "image": "registry.gitlab.haskell.org/ghc/ci-images/aarch64-linux-deb12-wine:$DOCKER_REV", + "needs": [ + { + "artifacts": false, + "job": "hadrian-ghc-in-ghci" + } + ], + "rules": [ + { + "if": "((($ONLY_JOBS) && ($ONLY_JOBS =~ /.*\\baarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build(\\s|$).*/)) || (($ONLY_JOBS == null) && ((($CI_MERGE_REQUEST_LABELS =~ /.*full-ci.*/) || ($CI_MERGE_REQUEST_LABELS =~ /.*marge_bot_batch_merge_job.*/) || ($CI_COMMIT_BRANCH == \"master\") || ($CI_COMMIT_BRANCH =~ /ghc-[0-9]+\\.[0-9]+/)) || (($CI_MERGE_REQUEST_LABELS =~ /.*aarch64.*/) && ($CI_MERGE_REQUEST_LABELS =~ /.*Wine.*/))))) && ($RELEASE_JOB != \"yes\") && ($NIGHTLY == null)", + "when": "on_success" + } + ], + "script": [ + "sudo chown ghc:ghc -R .", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh setup", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh configure", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l -c './hadrian/build-cabal clean'", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh build_hadrian" + ], + "stage": "full-build", + "tags": [ + "aarch64-linux" + ], + "variables": { + "AR": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-llvm-ar.exe", + "BIGNUM_BACKEND": "native", + "BIN_DIST_NAME": "ghc-aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build", + "BUILD_FLAVOUR": "validate", + "CC": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-clang", + "CC_STAGE0": "C:/msys64/opt/llvm-mingw-windows/bin/bin/x86_64-w64-mingw32-clang", + "CFLAGS": "-fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CONFIGURE_ARGS": "--with-intree-gmp --enable-strict-ghc-toolchain-check --build=x86_64-unknown-mingw32 --host=x86_64-unknown-mingw32", + "CONF_CC_OPTS_STAGE0": "--target=x86_64-unknown-mingw32 -fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CONF_CC_OPTS_STAGE1": "-fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CONF_CC_OPTS_STAGE2": "-fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CROSS_EMULATOR": "/opt/wine-arm64ec-msys2-deb12/bin/wine", + "CROSS_TARGET": "aarch64-unknown-mingw32", + "CXX": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-clang++", + "DLLTOOL": "C:/msys64/opt/llvm-mingw-windows/bin/dlltool.exe", + "HADRIAN_ARGS": "--docs=none", + "INSTALL_CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "LD": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-ld", + "LLVMAS": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-clang", + "MergeObjsCmd": "", + "NM": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-nm.exe", + "OBJCOPY": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-objcopy", + "OBJDUMP": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-objdump", + "RANLIB": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-llvm-ranlib.exe", + "RUNTEST_ARGS": "", + "SIZE": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-size", + "STRINGS": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-strings", + "STRIP": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-strip", + "TEST_ENV": "aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build", + "TOOLCHAIN_SOURCE": "env", + "WindresCmd": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-windres" + } + }, "i386-linux-alpine3_20-validate": { "after_script": [ ".gitlab/ci.sh save_cache", @@ -1148,6 +1234,93 @@ "XZ_OPT": "-9" } }, + "nightly-aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build": { + "after_script": [ + ".gitlab/ci.sh save_cache", + ".gitlab/ci.sh save_test_output", + ".gitlab/ci.sh clean", + "cat ci_timings" + ], + "allow_failure": false, + "artifacts": { + "expire_in": "8 weeks", + "paths": [ + "ghc-aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build.tar.xz", + "junit.xml", + "unexpected-test-output.tar.gz" + ], + "reports": { + "junit": "junit.xml" + }, + "when": "always" + }, + "cache": { + "key": "aarch64-linux-deb12-wine-$CACHE_REV", + "paths": [ + "cabal-cache", + "toolchain" + ] + }, + "dependencies": [], + "image": "registry.gitlab.haskell.org/ghc/ci-images/aarch64-linux-deb12-wine:$DOCKER_REV", + "needs": [ + { + "artifacts": false, + "job": "hadrian-ghc-in-ghci" + } + ], + "rules": [ + { + "if": "(\"true\" == \"true\") && ($RELEASE_JOB != \"yes\") && ($NIGHTLY)", + "when": "on_success" + } + ], + "script": [ + "sudo chown ghc:ghc -R .", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh setup", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh configure", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l -c './hadrian/build-cabal clean'", + "/opt/wine-arm64ec-msys2-deb12/bin/wine c:/msys64/usr/bin/bash.exe -l .gitlab/ci.sh build_hadrian" + ], + "stage": "full-build", + "tags": [ + "aarch64-linux" + ], + "variables": { + "AR": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-llvm-ar.exe", + "BIGNUM_BACKEND": "native", + "BIN_DIST_NAME": "ghc-aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build", + "BUILD_FLAVOUR": "validate", + "CC": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-clang", + "CC_STAGE0": "C:/msys64/opt/llvm-mingw-windows/bin/bin/x86_64-w64-mingw32-clang", + "CFLAGS": "-fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CONFIGURE_ARGS": "--with-intree-gmp --enable-strict-ghc-toolchain-check --build=x86_64-unknown-mingw32 --host=x86_64-unknown-mingw32", + "CONF_CC_OPTS_STAGE0": "--target=x86_64-unknown-mingw32 -fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CONF_CC_OPTS_STAGE1": "-fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CONF_CC_OPTS_STAGE2": "-fuse-ld=C:/msys64/opt/llvm-mingw-windows/bin/bin/ld.lld --rtlib=compiler-rt -D_UCRT", + "CROSS_EMULATOR": "/opt/wine-arm64ec-msys2-deb12/bin/wine", + "CROSS_TARGET": "aarch64-unknown-mingw32", + "CXX": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-clang++", + "DLLTOOL": "C:/msys64/opt/llvm-mingw-windows/bin/dlltool.exe", + "HADRIAN_ARGS": "--docs=none", + "INSTALL_CONFIGURE_ARGS": "--enable-strict-ghc-toolchain-check", + "LD": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-ld", + "LLVMAS": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-clang", + "MergeObjsCmd": "", + "NM": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-nm.exe", + "OBJCOPY": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-objcopy", + "OBJDUMP": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-objdump", + "RANLIB": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-llvm-ranlib.exe", + "RUNTEST_ARGS": "", + "SIZE": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-size", + "STRINGS": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-strings", + "STRIP": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-strip", + "TEST_ENV": "aarch64-linux-deb12-wine-int_native-cross_aarch64-unknown-mingw32-validate-_wine_full_build", + "TOOLCHAIN_SOURCE": "env", + "WindresCmd": "C:/msys64/opt/llvm-mingw-windows/bin/aarch64-w64-mingw32-windres", + "XZ_OPT": "-9" + } + }, "nightly-i386-linux-alpine3_20-validate": { "after_script": [ ".gitlab/ci.sh save_cache", View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/d646cc9717c96a72d89adc8fe74cae6f... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/d646cc9717c96a72d89adc8fe74cae6f... You're receiving this email because of your account on gitlab.haskell.org.
participants (1)
-
Serge S. Gulin (@gulin.serge)