[PATCH] Cygwin: CI configuration update

Jon Turney jon.turney@dronecode.org.uk
Thu Apr 29 18:53:24 GMT 2021


Install autoconf and automake, and run winsup/autogen.sh, and don't have
it silently ignore failures.

On AppVeyor:
- use latest VM image, to reduce time spent installing updates.
- run the testsuite, but ignore the result, as some tests don't work
correctly.
- hardcode the python-lxml and python-ply packages to install, so we get
ones for the right python.
- install texlive collections now needed to build documentation.

On github:
- Use a copr for cocom, since RPMSphere's package updates don't track
fedora:latest very efficently.
---
 .appveyor.yml                | 13 +++++++++++--
 .github/workflows/cygwin.yml | 11 +++++++----
 winsup/autogen.sh            |  1 +
 3 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/.appveyor.yml b/.appveyor.yml
index 602c189cd..66ac35701 100644
--- a/.appveyor.yml
+++ b/.appveyor.yml
@@ -1,4 +1,5 @@
 version: '{build}'
+image: Visual Studio 2019
 
 branches:
   only:
@@ -30,6 +31,8 @@ install:
 - "%CACHE%\\%SETUP% -qnNdO -R %CYGWIN_ROOT% -s %CYGWIN_MIRROR% -l %CACHE% -g -P \
 gcc-core,\
 gcc-g++,\
+autoconf,\
+automake,\
 make,\
 perl,\
 patch,\
@@ -40,21 +43,27 @@ zlib-devel,\
 %PKGARCH%-gcc-core,\
 %PKGARCH%-gcc-g++,\
 %PKGARCH%-zlib,\
+dejagnu,\
 dblatex,\
 docbook2X,\
 docbook-xml45,\
 docbook-xsl,\
+texlive-collection-latexrecommended,\
+texlive-collection-fontsrecommended,\
+texlive-collection-pictures,\
 xmlto,\
-python3-lxml,\
-python3-ply"
+python38-lxml,\
+python38-ply"
 
 build_script:
 - '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER; mkdir build install"'
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER; cd winsup; ./autogen.sh"'
 - '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; ../configure --prefix=$(realpath $(pwd)/../install) -v"'
 - '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; make"'
 - '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; make install"'
 - '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; cd */newlib; make info man"'
 - '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; cd */newlib; make install-info install-man"'
+- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER/build; cd */winsup; make check || true"'
 
 test: off
 deploy: off
diff --git a/.github/workflows/cygwin.yml b/.github/workflows/cygwin.yml
index cdad8e67b..f9a9a7ae5 100644
--- a/.github/workflows/cygwin.yml
+++ b/.github/workflows/cygwin.yml
@@ -20,15 +20,17 @@ jobs:
     - uses: actions/checkout@v2
 
     # install build tools
-    - run: dnf install -y make patch perl
+    - run: dnf install -y autoconf automake make patch perl
     - run: dnf install -y mingw${{ matrix.pkgarch }}-gcc-c++ mingw${{ matrix.pkgarch }}-winpthreads-static mingw${{ matrix.pkgarch }}-zlib-static
 
-    # cocom isn't packaged in Fedora, so we install from a 3rd party repo
-    - run: dnf install -y https://github.com/rpmsphere/noarch/raw/master/r/rpmsphere-release-$(rpm -E %fedora)-1.noarch.rpm
+    # enable 'dnf copr'
+    - run: dnf install -y dnf-plugins-core
+
+    # cocom isn't packaged in Fedora, so we install from a copr
+    - run: dnf copr enable -y jturney/cocom
     - run: dnf install -y cocom
 
     # install cross-cygwin toolchain and libs from copr
-    - run: dnf install -y dnf-plugins-core
     - run: dnf copr enable -y yselkowitz/cygwin
     - run: dnf install -y cygwin${{ matrix.pkgarch }}-gcc-c++ cygwin${{ matrix.pkgarch }}-gettext cygwin${{ matrix.pkgarch }}-libbfd cygwin${{ matrix.pkgarch }}-libiconv cygwin${{ matrix.pkgarch }}-zlib
 
@@ -38,6 +40,7 @@ jobs:
 
     # build
     - run: mkdir build install
+    - run: cd winsup && ./autogen.sh
     - run: cd build && ../configure --target=${{ matrix.target }} --prefix=$(realpath $(pwd)/../install)
     - run: make -C build
     - run: make -C build/*/newlib info man
diff --git a/winsup/autogen.sh b/winsup/autogen.sh
index 1db91add9..2dae1ae37 100755
--- a/winsup/autogen.sh
+++ b/winsup/autogen.sh
@@ -1,3 +1,4 @@
+set -e
 /usr/bin/aclocal --force
 /usr/bin/autoconf -f
 /usr/bin/automake -ac
-- 
2.31.1



More information about the Cygwin-patches mailing list