diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 493bdd248c..68deb501c6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -576,6 +576,8 @@ gimp-win: matrix: - RUNNER: win32-ps MSYSTEM_PREFIX: mingw32 + variables: + MINGW_PACKAGE_PREFIX: mingw-w64-i686 deps-win-x86: extends: .win-x86 @@ -588,7 +590,8 @@ gimp-win-x86: extends: .win-x86 needs: ["deps-win-x86"] stage: !reference [gimp-win, stage] - variables: !reference [gimp-win, variables] + variables: + GIT_SUBMODULE_STRATEGY: recursive script: - !reference [gimp-win, script] # We split 32-bit DWARF symbols here because LLVM-objcopy do NOT support them diff --git a/build/windows/1_build-deps-msys2.ps1 b/build/windows/1_build-deps-msys2.ps1 index c6083a3d7b..fcbd71c31c 100644 --- a/build/windows/1_build-deps-msys2.ps1 +++ b/build/windows/1_build-deps-msys2.ps1 @@ -30,14 +30,23 @@ if (-not $MSYS_ROOT) exit 1 } } -if ((Get-WmiObject -Class Win32_ComputerSystem).SystemType -like 'ARM64*') +if (-not $MSYSTEM_PREFIX) + { + if ((Get-WmiObject Win32_ComputerSystem).SystemType -like 'ARM64*') + { + $MSYSTEM_PREFIX = 'clangarm64' + } + elseif ((Get-WmiObject Win32_ComputerSystem).SystemType -like 'x64*') + { + $MSYSTEM_PREFIX = 'clang64' + } + } +if ($MSYSTEM_PREFIX -eq 'clangarm64') { - $MSYSTEM_PREFIX = 'clangarm64' $MINGW_PACKAGE_PREFIX = 'mingw-w64-clang-aarch64' } -elseif ((Get-WmiObject -Class Win32_ComputerSystem).SystemType -like 'x64*') +elseif ($MSYSTEM_PREFIX -eq 'clang64') { - $MSYSTEM_PREFIX = 'clang64' $MINGW_PACKAGE_PREFIX = 'mingw-w64-clang-x86_64' } $env:Path = "$MSYS_ROOT/$MSYSTEM_PREFIX/bin;$MSYS_ROOT/usr/bin;" + $env:Path diff --git a/build/windows/2_build-gimp-msys2.ps1 b/build/windows/2_build-gimp-msys2.ps1 index 9adc9d9889..b3e8176aed 100644 --- a/build/windows/2_build-gimp-msys2.ps1 +++ b/build/windows/2_build-gimp-msys2.ps1 @@ -23,7 +23,7 @@ if (-not $GITLAB_CI) # Install the required (pre-built) packages for babl, GEGL and GIMP (again) -Invoke-Expression ((Get-Content build\windows\1_build-deps-msys2.ps1 | Select-String 'MSYS_ROOT\)' -Context 0,19) -replace '> ','') +Invoke-Expression ((Get-Content build\windows\1_build-deps-msys2.ps1 | Select-String 'MSYS_ROOT\)' -Context 0,28) -replace '> ','') if ($GITLAB_CI) { diff --git a/build/windows/installer/3_dist-gimp-inno.ps1 b/build/windows/installer/3_dist-gimp-inno.ps1 index 2c6f25fc68..31cc570401 100644 --- a/build/windows/installer/3_dist-gimp-inno.ps1 +++ b/build/windows/installer/3_dist-gimp-inno.ps1 @@ -13,7 +13,7 @@ $PSNativeCommandUseErrorActionPreference = $true # This script needs a bit of MSYS2 to work -Invoke-Expression ((Get-Content build\windows\1_build-deps-msys2.ps1 | Select-String 'MSYS_ROOT\)' -Context 0,19) -replace '> ','') +Invoke-Expression ((Get-Content build\windows\1_build-deps-msys2.ps1 | Select-String 'MSYS_ROOT\)' -Context 0,28) -replace '> ','') # 1. GET INNO