From b4f0ee1b59d617468a77926dd4666c5f9a3a620a Mon Sep 17 00:00:00 2001 From: b-aaz <85005689+b-aaz@users.noreply.github.com> Date: Sun, 7 Dec 2025 08:07:36 +0000 Subject: [PATCH] Added Cygwin builds to CI. Bringing back Cygwin support! This will add Cygwin builds on windows-latest in our CI. Signed-off-by: b-aaz --- .github/scripts/Cygwin/build.sh | 9 ++++++ .github/workflows/build-xserver.yml | 46 +++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100755 .github/scripts/Cygwin/build.sh diff --git a/.github/scripts/Cygwin/build.sh b/.github/scripts/Cygwin/build.sh new file mode 100755 index 0000000000..a0bffff357 --- /dev/null +++ b/.github/scripts/Cygwin/build.sh @@ -0,0 +1,9 @@ +#!/bin/sh +set -x +ccache -s +meson setup --prefix=/usr -Dxv=false -Dxf86bigfont=true -Dxephyr=true -Dxnest=true -Dxvfb=true -Dxwin=true -Dxorg=true -Dpciaccess=false -Dint10=false -Dglamor=false build +meson configure build +ninja -C build +ccache -s +ninja -C build test +ninja -C build install diff --git a/.github/workflows/build-xserver.yml b/.github/workflows/build-xserver.yml index 554c227261..2f46e6da62 100644 --- a/.github/workflows/build-xserver.yml +++ b/.github/workflows/build-xserver.yml @@ -273,6 +273,51 @@ jobs: usesh: true release: '10.1' run: ./.github/scripts/netbsd/run-xserver-build.sh + xserver-build-cygwin: + runs-on: windows-latest + steps: + - name: Cygwin packages cache + uses: actions/cache@v4 + with: + path: D:\cygwin-packages + key: ${{ runner.os }}-packages + restore-keys: ${{ runner.os }}-packages + - uses: cygwin/cygwin-install-action@master + with: + platform: x86_64 + packages: >- + binutils, bison, ccache, flex, gcc-core, meson, ninja, + pkg-config, python39, windowsdriproto, xorgproto, + libepoxy-devel, libfontenc-devel, libfreetype-devel, + libGL-devel, libnettle-devel, libpixman1-devel, + libtirpc-devel, libXRes-devel, libXaw-devel, libXdmcp-devel, + libXext-devel, libXfont2-devel, libXi-devel, + libXinerama-devel, libXmu-devel, libXpm-devel, + libXrender-devel, libXtst-devel, libxcb-composite-devel, + libxcb-ewmh-devel, libxcb-icccm-devel, libxcb-image-devel, + libxcb-keysyms-devel, libxcb-randr-devel, + libxcb-render-devel, libxcb-render-util-devel, + libxcb-shape-devel, libxcb-util-devel, libxcb-xkb-devel, + libxcvt-devel, libxkbfile-devel, font-util, + khronos-opengl-registry, python39-lxml, xkbcomp-devel, + xkeyboard-config, git + + - name: Cygwin ccache cache + uses: actions/cache@v4 + with: + path: D:\cygwin\home\runneradmin\.ccache + key: ${{ runner.os }}-ccache + restore-keys: ${{ runner.os }}-ccache + - run: git config --global --add safe.directory /cygdrive/d/a/xserver/xserver + - uses: actions/checkout@v4 + with: + # Done above as the builtin would use a path for Windows git. + set-safe-directory: false + - run: | + PATH="/usr/bin:$(cygpath "$SYSTEMROOT")/system32" + shell: bash --noprofile --norc -e -o igncr '{0}' + - run: | + bash ./.github/scripts/Cygwin/build.sh release: name: Release pushed tag @@ -286,6 +331,7 @@ jobs: - xserver-build-freebsd - xserver-build-dragonflybsd - xserver-build-netbsd + - xserver-build-cygwin steps: - name: Checkout uses: actions/checkout@v4