From bd70bcef1b7e515062deb7b62d9053d3ab682b63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Lesimple?= Date: Sun, 30 Aug 2020 17:58:31 +0200 Subject: [PATCH] chore: add auto Windows CLI tests --- .github/workflows/tests.yml | 56 +++++++++++++++++++++++++++++++++++-- GNUmakefile.template | 9 ++++++ README.md | 4 +-- 3 files changed, 65 insertions(+), 4 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index cd64e0f..dd90d06 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -40,7 +40,7 @@ jobs: - name: regression tests run: mkdir /var/tmp/regtest && ./regtest/runtests.sh - win64: + win64-gui: runs-on: windows-2016 defaults: @@ -66,7 +66,7 @@ jobs: - name: regression tests run: mkdir /var/tmp/regtest && ./regtest/runtests.sh - win32: + win32-gui: runs-on: windows-2016 defaults: @@ -91,3 +91,55 @@ jobs: run: file dvdisaster.exe && file dvdisaster.exe | grep -q '386, for MS Windows' - name: regression tests run: mkdir /var/tmp/regtest && ./regtest/runtests.sh + + win64-cli: + runs-on: windows-2016 + + defaults: + run: + shell: msys2 {0} + steps: + - uses: msys2/setup-msys2@v2 + with: + msystem: MINGW64 + update: false + install: git diffutils make pkg-config mingw-w64-x86_64-glib2 mingw-w64-x86_64-gcc + - run: git config --global core.autocrlf input + shell: bash + - uses: actions/checkout@v2 + - name: configure + run: env CLI_ONLY=1 ./configure + - name: make + run: nproc && make -j$(nproc) + - name: check executability + run: ./dvdisaster.exe --version + - name: check executable + run: file dvdisaster.exe && file dvdisaster.exe | grep -q 'x86-64, for MS Windows' + - name: regression tests + run: mkdir /var/tmp/regtest && ./regtest/runtests.sh + + win32-cli: + runs-on: windows-2016 + + defaults: + run: + shell: msys2 {0} + steps: + - uses: msys2/setup-msys2@v2 + with: + msystem: MINGW32 + update: false + install: git diffutils make pkg-config mingw-w64-i686-glib2 mingw-w64-i686-gcc + - run: git config --global core.autocrlf input + shell: bash + - uses: actions/checkout@v2 + - name: configure + run: env CLI_ONLY=1 ./configure + - name: make + run: nproc && make -j$(nproc) + - name: check executability + run: ./dvdisaster.exe --version + - name: check executable + run: file dvdisaster.exe && file dvdisaster.exe | grep -q '386, for MS Windows' + - name: regression tests + run: mkdir /var/tmp/regtest && ./regtest/runtests.sh diff --git a/GNUmakefile.template b/GNUmakefile.template index 0e0aae8..cb65bf3 100644 --- a/GNUmakefile.template +++ b/GNUmakefile.template @@ -348,5 +348,14 @@ windist: cp -vr $(MINGWROOT)/lib/gtk-2.0 dist/lib/ find dist -type f -name "*.a" -delete +windistcli: + rm -rf dist + mkdir -p dist/locale + for i in libglib-2.0-*.dll libiconv-*.dll libintl-*.dll libpcre-*.dll libwinpthread-*.dll; \ + do cp -v $(MINGWROOT)/bin/$$i dist/ ; done + cp -v dvdisaster.exe dist/ + cp -vr locale/*/ dist/locale/ + find dist -type f -name "*.a" -delete + static: dvdisaster $(CC) $(LOPTS) $(OFILES) $(LIBS) -pthread -static -o dvdisaster-static diff --git a/README.md b/README.md index b652b85..3baf267 100644 --- a/README.md +++ b/README.md @@ -45,8 +45,8 @@ This version is built on top of the latest upstream version, with the following - Most Debian patches have been applied, those specific to Debian have been omitted - Windows build supported again, it was dropped upstream a few versions back -- A Linux CLI-only version is now supported, without depending on gtk (`CLI_ONLY=1 ./configure && make clean && make -j4`) -- Regression tests confirmed working on Linux64 (normal and CLI-only), Windows32 and Windows64 +- A CLI-only version is now supported, without depending on gtk (`CLI_ONLY=1 ./configure && make clean && make -j4`) +- Regression tests confirmed working on Linux64, Windows32 and Windows64, for normal and CLI-only builds - Added pre-defined sizes for BD-R Triple Layer (100GB), BD-R Quadruple Layer (128GB) # Rationale