Skip to content

linux/kernel_notes: decode XEN_ELFNOTE_L1_MFN_VALID #205

linux/kernel_notes: decode XEN_ELFNOTE_L1_MFN_VALID

linux/kernel_notes: decode XEN_ELFNOTE_L1_MFN_VALID #205

Workflow file for this run

name: Run tests with MinGW on Linux
on: [push, pull_request]
jobs:
mingw-linux-test:
runs-on: ubuntu-24.04
strategy:
matrix:
compiler:
- x86_64-w64-mingw32-gcc
- i686-w64-mingw32-gcc
unicode: [y, n]
container:
image: docker://docker.io/library/ubuntu:22.04
steps:
- name: Install dependencies
run: |
# 32-bit wine is needed to run many installers (even the 64-bit Python installer!)
dpkg --add-architecture i386
apt-get update
apt-get install -y \
build-essential \
coq \
gcc-mingw-w64 \
git \
openjdk-11-jdk \
pkgconf \
wget \
wine32:i386 \
wine64 \
winetricks \
xvfb
# Restore the HOME directory to the root user, as Github overrode it to /home/github and this caused issues with Wine
export HOME=/root
# Python3 requires Windows>=8.1 compatibility
winetricks win10
if ${{ matrix.compiler == 'i686-w64-mingw32-gcc' }} ; then
# Download 32-bit Python from https://www.python.org/downloads/windows/
wget https://www.python.org/ftp/python/3.10.1/python-3.10.1.exe
# Use Xvfb to create a virtual X11 server for the installer
xvfb-run wine python-3.10.1.exe /quiet InstallAllUsers=1 PrependPath=1
else
# Download 64-bit Python from https://www.python.org/downloads/windows/
wget https://www.python.org/ftp/python/3.10.1/python-3.10.1-amd64.exe
xvfb-run wine64 python-3.10.1-amd64.exe /quiet InstallAllUsers=1 PrependPath=1
fi
# Add a helper to launch "wine python" without spaces
printf '#!/bin/sh\nexec wine python.exe "$@"' > /usr/local/bin/wine-python
chmod +x /usr/local/bin/wine-python
env:
DEBIAN_FRONTEND: noninteractive
# "checkout" requires git to be installed, which is why it is used after installing software
- uses: actions/checkout@v4
- name: Configure the environment
run: |
echo "OS=Windows_NT" >> "$GITHUB_ENV"
echo "CC=${{ matrix.compiler }}" >> "$GITHUB_ENV"
echo "WINCC=${{ matrix.compiler }}" >> "$GITHUB_ENV"
echo "HAVE_UNICODE=${{ matrix.unicode }}" >> "$GITHUB_ENV"
echo "PYTHON=wine-python" >> "$GITHUB_ENV"
echo "CARGO=false" >> "$GITHUB_ENV"
echo "HOME=/root" >> "$GITHUB_ENV"
# Display the final environment file, for debugging purpose
cat "$GITHUB_ENV"
- name: Run tests
run: make test
- name: List targets which are not built
run: make list-nobuild