diff --git a/.github/workflows/cygwin.yml b/.github/workflows/cygwin.yml new file mode 100644 index 00000000000000..f25f950c3f2f1b --- /dev/null +++ b/.github/workflows/cygwin.yml @@ -0,0 +1,61 @@ +name: Cygwin +on: + push: + paths-ignore: + - 'doc/**' + - '**/man/*' + - '**.md' + - '**.rdoc' + - '**/.document' + - '.*.yml' + pull_request: + paths-ignore: + - 'doc/**' + - '**/man/*' + - '**.md' + - '**.rdoc' + - '**/.document' + - '.*.yml' + merge_group: + +concurrency: + group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} + cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} + +permissions: + contents: read + +jobs: + make: + runs-on: windows-2022 + + if: >- + ${{!(false + || contains(github.event.head_commit.message, '[DOC]') + || contains(github.event.head_commit.message, 'Document') + || contains(github.event.pull_request.title, '[DOC]') + || contains(github.event.pull_request.title, 'Document') + || contains(github.event.pull_request.labels.*.name, 'Documentation') + || (github.event_name == 'push' && github.event.pull_request.user.login == 'dependabot[bot]') + )}} + + steps: + - run: git config --global core.autocrlf input + + - name: Setup Cygwin + uses: cygwin/cygwin-install-action@master + with: + packages: gcc-core make autoconf libtool openssl-devel libffi-devel zlib-devel + + - uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0 + + - name: configure + run: | + ./autogen.sh + ./configure --disable-install-doc --prefix=/. + shell: C:\cygwin\bin\bash.EXE --noprofile --norc -e -o pipefail {0} + + - name: make all + timeout-minutes: 30 + run: make + shell: C:\cygwin\bin\bash.EXE --noprofile --norc -e -o pipefail {0}