diff --git a/.gitlab-ci/build/gitlab-ci.yml b/.gitlab-ci/build/gitlab-ci.yml index 541f2dd4ec4..95911d8c677 100644 --- a/.gitlab-ci/build/gitlab-ci.yml +++ b/.gitlab-ci/build/gitlab-ci.yml @@ -54,6 +54,15 @@ script: - .gitlab-ci/meson/build.sh +.meson-build_mingw: + extends: + - .build-linux + - .use-debian/x86_build_mingw + - .use-wine + stage: build-x86_64 + script: + - .gitlab-ci/meson/build.sh + debian-testing: extends: - .meson-build @@ -513,7 +522,7 @@ debian-ppc64el: VULKAN_DRIVERS: "amd,swrast" debian-mingw32-x86_64: - extends: .meson-build + extends: .meson-build_mingw stage: build-misc variables: UNWIND: "disabled" diff --git a/.gitlab-ci/container/gitlab-ci.yml b/.gitlab-ci/container/gitlab-ci.yml index 38e317d884d..aba81335deb 100644 --- a/.gitlab-ci/container/gitlab-ci.yml +++ b/.gitlab-ci/container/gitlab-ci.yml @@ -23,6 +23,9 @@ variables: MESA_IMAGE: "$CI_REGISTRY_IMAGE/${MESA_IMAGE_PATH}:${FDO_DISTRIBUTION_TAG}" +.use-wine: + variables: + WINEPATH: "/usr/x86_64-w64-mingw32/bin;/usr/x86_64-w64-mingw32/lib;/usr/lib/gcc/x86_64-w64-mingw32/10-posix;c:/windows;c:/windows/system32" # Build the CI docker images. # @@ -46,10 +49,11 @@ extends: - .container-rules - .incorporate-templates-commit + - .use-wine variables: FDO_DISTRIBUTION_VERSION: bullseye-slim FDO_REPO_SUFFIX: $CI_JOB_NAME - FDO_DISTRIBUTION_EXEC: 'env FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash .gitlab-ci/container/${CI_JOB_NAME}.sh' + FDO_DISTRIBUTION_EXEC: 'env "WINEPATH=${WINEPATH}" FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash .gitlab-ci/container/${CI_JOB_NAME}.sh' # no need to pull the whole repo to build the container image GIT_STRATEGY: none @@ -113,6 +117,23 @@ debian/i386_build: needs: - debian/i386_build +# Debian 11 based x86-mingw cross main build image +debian/x86_build-mingw: + extends: + - .use-debian/x86_build-base + variables: + MESA_IMAGE_TAG: &debian-x86_build_mingw ${DEBIAN_BUILD_MINGW_TAG} + +.use-debian/x86_build_mingw: + extends: + - .set-image-base-tag + variables: + MESA_BASE_TAG: *debian-x86_build-base + MESA_IMAGE_PATH: ${DEBIAN_X86_BUILD_MINGW_IMAGE_PATH} + MESA_IMAGE_TAG: *debian-x86_build_mingw + needs: + - debian/x86_build-mingw + # Debian 11 based ppc64el cross-build image debian/ppc64el_build: extends: diff --git a/.gitlab-ci/image-tags.yml b/.gitlab-ci/image-tags.yml index 1f0b6e70227..f93768ec924 100644 --- a/.gitlab-ci/image-tags.yml +++ b/.gitlab-ci/image-tags.yml @@ -1,9 +1,12 @@ variables: DEBIAN_X86_BUILD_BASE_IMAGE: "debian/x86_build-base" - DEBIAN_BASE_TAG: "2022-04-24-libdrm" + DEBIAN_BASE_TAG: "2022-06-16-Debian-MinGW" DEBIAN_X86_BUILD_IMAGE_PATH: "debian/x86_build" - DEBIAN_BUILD_TAG: "2022-05-12-DirectX-Headers" + DEBIAN_BUILD_TAG: "2022-06-16-Debian-MinGW" + + DEBIAN_X86_BUILD_MINGW_IMAGE_PATH: "debian/x86_build-mingw" + DEBIAN_BUILD_MINGW_TAG: "2022-06-16-Debian-MinGW" DEBIAN_X86_TEST_BASE_IMAGE: "debian/x86_test-base"