Try using cygport.cygport to compile cygport #369
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push, pull_request] | |
jobs: | |
build-test: | |
runs-on: windows-latest | |
permissions: | |
contents: write | |
defaults: | |
run: | |
shell: bash --noprofile --norc -e -o pipefail -o igncr {0} | |
env: | |
PATH: C:\cygwin\bin | |
strategy: | |
matrix: | |
cygport-ref: | |
- 0.36.1 | |
- 19ad61efd6214e9430e31d5770d251aea4e2d815 | |
- 9b231ea1cdacfa9324d66ce6af7f07332e865551 | |
- 8b33f707c37f2673337b2509b96529896137cd51 | |
- d31026b6ab1e7c0d4c2ae07ebe401d02806f8b4b | |
- 30e796755b065d2c3dbeac9418dace745b99cbfd | |
- c72a663e3c22783e5fba3d0f677a88782c7de917 | |
- 78e5db7ec667d5c25d11370666c4a0fe63f715fe | |
- 0.36.2 | |
fail-fast: false | |
steps: | |
- name: Install Git, cygport, and packages for building cygport | |
uses: cygwin/cygwin-install-action@v2 | |
with: | |
packages: > | |
git cygport R aspell automake bison cmake cvs diffstat dos2unix | |
extra-cmake-modules flex flexdll fontforge gcc-g++ git | |
git-archive-all gnome-common gobject-introspection help2man | |
httpd-devel kf5-kdoctools libGL-devel libGeoIP-devel | |
libKF5XmlGui-devel libQt5Core-devel libQt5Svg-devel | |
libQtCore4-devel libQtGui4-devel libQtNetwork4-devel | |
libQtTest4-devel libQtXml4-devel libRmath libbz2-devel | |
libcairomm1.0-devel libcrypt-devel libgdk_pixbuf2.0-devel | |
libgirepository1.0-devel libglibmm2.4-devel libicu-devel | |
liblua-devel liblzma-devel libnotify-devel libpango1.0-devel | |
libpcre2-devel libqca-devel libqca-qt5-devel libtirpc-devel | |
libxfce4ui1-devel libxfconf0-devel lndir lua make mate-common | |
mercurial meson mingw64-i686-gcc-core mingw64-i686-qt5-base | |
mingw64-i686-qt5-tools mm-common monotone ninja ocaml ocaml-dune | |
ocaml-findlib patch perl perl-Module-Build php-PEAR python38-devel | |
python27-wheel python37-pip python37-setuptools python37-wheel | |
python38-pip python38-setuptools python38-wheel python38-pygments | |
python39-pip python39-setuptools python39-wheel robodoc ruby | |
ruby-rack subversion unzip xfce4-dev-tools xfce4-panel-devel | |
timeout-minutes: 30 | |
- name: Manually configure safe.directory | |
run: git config --global --add safe.directory '*' | |
timeout-minutes: 1 | |
- name: Cygport cygport download | |
env: | |
GIT_REV: ${{ matrix.cygport-ref }} | |
run: cygport cygport.cygport download | |
timeout-minutes: 5 | |
- name: Cygport cygport prep | |
env: | |
GIT_REV: ${{ matrix.cygport-ref }} | |
run: cygport cygport.cygport prep | |
timeout-minutes: 1 | |
- name: Cygport cygport compile | |
env: | |
GIT_REV: ${{ matrix.cygport-ref }} | |
run: cygport cygport.cygport compile | |
timeout-minutes: 10 | |
- name: Cygport cygport install | |
env: | |
GIT_REV: ${{ matrix.cygport-ref }} | |
run: cygport cygport.cygport install | |
timeout-minutes: 5 | |
- name: Install cygport from the install directory | |
run: | | |
cd cygport-*-*.noarch/inst | |
cp -vr usr etc / | |
- name: Tar up cygport build results | |
if: always() | |
run: tar -caf cygport-build-results-${{ matrix.cygport-ref }}.txz --exclude-vcs cygport | |
timeout-minutes: 10 | |
- name: Store cygport build results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: cygport-${{ matrix.cygport-ref }} | |
path: cygport-build-results-${{ matrix.cygport-ref }}.txz | |
if-no-files-found: error | |
timeout-minutes: 10 | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
set-safe-directory: false # actions/checkout otherwise tries to use the wrong config file, per actions/checkout#767 | |
timeout-minutes: 1 | |
- name: Load variables from the cygport file | |
run: | | |
eval "$(cygport git.cygport vars BUILD_REQUIRES PVR)" | |
printf 'BUILD_REQUIRES=%s\n' "$BUILD_REQUIRES" >>"$GITHUB_ENV" | |
printf 'PVR=%s\n' "$PVR" >>"$GITHUB_ENV" | |
timeout-minutes: 1 | |
- name: Install Cygwin build requirements | |
uses: cygwin/cygwin-install-action@v2 | |
with: | |
packages: ${{ env.BUILD_REQUIRES }} | |
timeout-minutes: 30 | |
- name: Generate cygcheck output | |
if: always() | |
run: cygcheck -srv >/var/log/cygcheck.out | |
timeout-minutes: 5 | |
- name: Store Cygwin logs | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: cygwin-logs-${{ matrix.cygport-ref }} | |
path: 'C:\cygwin\var\log\' | |
timeout-minutes: 5 | |
- name: Cygport download | |
run: cygport git.cygport download | |
timeout-minutes: 5 | |
- name: Cygport prep | |
run: cygport git.cygport prep | |
timeout-minutes: 1 | |
- name: Cygport compile | |
run: cygport git.cygport compile | |
timeout-minutes: 30 | |
- name: Cygport test | |
run: cygport git.cygport test | |
timeout-minutes: 300 | |
- name: Tar up build results | |
if: always() | |
run: tar -caf git-build-results.txz git-*-*.*/ | |
timeout-minutes: 10 | |
- name: Store build results | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: build-results-${{ matrix.cygport-ref }} | |
path: git-build-results.txz | |
if-no-files-found: error | |
timeout-minutes: 5 |