Skip to content

CC - container Alpine mingw32-gcc i386 #70

CC - container Alpine mingw32-gcc i386

CC - container Alpine mingw32-gcc i386 #70

# Copyright (C) Markus Franz Xaver Johannes Oberhumer
# DO NOT EDIT, GENERATED AUTOMATICALLY
name: CC - container Alpine mingw32-gcc i386
"on":
schedule:
- cron: 20 2 * * 2
workflow_dispatch: null
env:
CMAKE_REQUIRED_QUIET: "OFF"
CMAKE_VERBOSE_MAKEFILE: "ON"
CTEST_OUTPUT_ON_FAILURE: "ON"
DEBIAN_FRONTEND: noninteractive
UPX_CMAKE_CONFIG_FLAGS: -Wdev --warn-uninitialized
UPX_DEBUG_TEST_FLOAT_DIVISION_BY_ZERO: 1
UPX_DEBUG_TEST_LIBC_QSORT: 1
VERBOSE: 1
REMOTE_REF_NAME: devel
REMOTE_REF_TYPE: branch
REMOTE_REPOSITORY: upx/upx
REMOTE_SERVER_URL: https://github.com
REMOTE_SHA: "0000000000000000000000000000000000000000"
jobs:
mingw32-gcc-i386:
if: github.repository_owner == 'upx'
runs-on: ubuntu-latest
container: ${{ matrix.container }}
strategy:
fail-fast: false
matrix:
include:
- container: i386/alpine:3.11
- container: i386/alpine:3.12
- container: i386/alpine:3.13
- container: i386/alpine:3.14
- container: i386/alpine:3.15
- container: i386/alpine:3.16
- container: i386/alpine:3.17
- container: i386/alpine:3.18
- container: i386/alpine:3.19
- container: i386/alpine:3.20
- container: i386/alpine:3.21
- container: i386/alpine:edge
env:
CC: i686-w64-mingw32-gcc -static
CXX: i686-w64-mingw32-g++ -static
CMAKE_AR: /usr/bin/i686-w64-mingw32-ar
CMAKE_SYSTEM_NAME: Windows
CMAKE_CROSSCOMPILING_EMULATOR: wine
steps:
- name: Display environment
run: |
uname -a; pwd; id; umask
env | LC_ALL=C sort
- name: ${{ format('Install packages {0}', matrix.container) }}
run: |
apk update && apk upgrade && apk add cmake git make mingw-w64-gcc
- run: set -x; $CC --version; $CXX --version
- run: $CC -E -x c -dM /dev/null
- run: $CXX -E -x c++ -dM /dev/null
- name: ${{ format('Check out {0}/{1} {2} {3} source code', env.REMOTE_SERVER_URL, env.REMOTE_REPOSITORY, env.REMOTE_REF_TYPE, env.REMOTE_REF_NAME) }}
run: |
# git config
git config --global core.autocrlf false
git config --global --add safe.directory '*'
# install Self, needed for config file below
##git clone --branch "$GITHUB_REF_NAME" --depth 1 "$GITHUB_SERVER_URL/$GITHUB_REPOSITORY" ../Self
git clone --branch "$REMOTE_REF_NAME" --depth 1 "$REMOTE_SERVER_URL/$REMOTE_REPOSITORY" .
test -f ./.gitmodules && git submodule update --init
# TODO: handle REMOTE_REF_TYPE == "tag"
# update environment
rev="$(git rev-parse HEAD)"
echo "REMOTE_SHA=$rev" >> $GITHUB_ENV
- name: ${{ format('Build Debug with {0} and {1}', env.CC, env.CXX) }}
run: make build/debug
- name: ${{ format('Build Release with {0} and {1}', env.CC, env.CXX) }}
run: make build/release
- run: apk add wine && mkdir -p ~/.wine && wineboot --init
- name: Run ctest tests Debug with Wine
run: make build/debug+test
- name: Run ctest tests Release with Wine
if: success() || failure()
run: make build/release+test
- name: Mimic ctest tests Debug with Wine
if: hashFiles('./misc/testsuite/mimic_ctest.sh') != ''
run: apk add bash && cd build/debug && upx_exe=./upx.exe bash ../../misc/testsuite/mimic_ctest.sh
- name: Mimic ctest tests Release with Wine
if: hashFiles('./misc/testsuite/mimic_ctest.sh') != ''
run: apk add bash && cd build/release && upx_exe=./upx.exe bash ../../misc/testsuite/mimic_ctest.sh