CI: add workflow to build debian 12 x64 #1
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: build | ||
on: | ||
workflow_dispatch: | ||
jobs: | ||
debian-12-x64: | ||
name: Debian Bookworm x64 | ||
runs-on: ubuntu-latest | ||
container: | ||
image: debian:bookworm | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: install deps | ||
run: | | ||
sed -i 's/^Types: deb$/Types: deb deb-src/' /etc/apt/sources.list.d/debian.sources | ||
apt-get update | ||
DEBIAN_FRONTEND="noninteractive" apt-get build-dep --install-recommends -y wine | ||
DEBIAN_FRONTEND="noninteractive" apt-get install -y zstd xz-utils curl | ||
- name: configure | ||
run: | | ||
mkdir build64 && cd build64 | ||
../configure --disable-tests --enable-win64 | ||
- name: make | ||
run: | | ||
cd build64 | ||
make -j $(nproc) | ||
- name: make install | ||
run: | | ||
cd build64 | ||
make DESTDIR="${GITHUB_WORKSPACE}/wineinst" install -j $(nproc) | ||
- name: compress | ||
run: | | ||
tar -C "${GITHUB_WORKSPACE}/wineinst" -Jcvf wine-debian-12-bookworm-x64.tar.xz . | ||
- name: upload | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: debian-12-bookworm-x64 | ||
path: wine-debian-12-bookworm-x64.tar.xz debian-12-x64: | ||
debian-12-arm64: | ||
name: Debian Bookworm arm64 | ||
runs-on: ubuntu-latest | ||
container: | ||
image: debian:bookworm | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: install deps | ||
run: | | ||
sed -i '/^Signed-By:/i Architectures: amd64 arm64' /etc/apt/sources.list.d/debian.sources | ||
apt-get update | ||
dpkg --add-architecture arm64 | ||
DEBIAN_FRONTEND="noninteractive" apt-get build-dep --install-recommends -y wine | ||
DEBIAN_FRONTEND="noninteractive" apt-get install --install-recommends -y libgl-dev:arm64 libxi-dev:arm64 libxt-dev:arm64 libxmu-dev:arm64 libx11-dev:arm64 libxext-dev:arm64 libxfixes-dev:arm64 libxrandr-dev:arm64 libxcursor-dev:arm64 libxrender-dev:arm64 libxkbfile-dev:arm64 libxxf86vm-dev:arm64 libxxf86dga-dev:arm64 libxinerama-dev:arm64 libglu1-mesa-dev:arm64 libxcomposite-dev:arm64 libssl-dev:arm64 libv4l-dev:arm64 libsdl2-dev:arm64 libkrb5-dev:arm64 libudev-dev:arm64 libpulse-dev:arm64 libldap2-dev:arm64 unixodbc-dev:arm64 libcups2-dev:arm64 libcapi20-dev:arm64 libvulkan-dev:arm64 libopenal-dev:arm64 libdbus-1-dev:arm64 freeglut3-dev:arm64 libunwind-dev:arm64 libpcap0.8-dev:arm64 libasound2-dev:arm64 libgphoto2-dev:arm64 libosmesa6-dev:arm64 libncurses-dev:arm64 libfreetype-dev:arm64 libgnutls28-dev:arm64 libusb-1.0-0-dev:arm64 libgettextpo-dev:arm64 libfontconfig-dev:arm64 ocl-icd-opencl-dev:arm64 libgstreamer-plugins-base1.0-dev:arm64 libstdc++6-arm64-cross libstdc++-12-dev-arm64-cross libc-dev-arm64-cross clang lld binutils-aarch64-linux-gnu gcc-aarch64-linux-gnu | ||
DEBIAN_FRONTEND="noninteractive" apt-get install --install-recommends -y zstd xz-utils curl | ||
- name: configure | ||
run: | | ||
mkdir build64 && cd build64 | ||
../configure --enable-win64 | ||
make __tooldeps__ -j $(nproc) | ||
make -C nls | ||
cd .. | ||
mkdir buildarm64 && cd buildarm64 | ||
../configure --disable-tests --enable-win64 \ | ||
--host=aarch64-linux-gnu \ | ||
host_alias=aarch64-linux-gnu \ | ||
build_alias=x86_64-linux-gnu \ | ||
--with-wine-tools=../build64 \ | ||
CC=aarch64-linux-gnu-gcc | ||
- name: make | ||
run: | | ||
cd buildarm64 | ||
make -j $(nproc) | ||
- name: make install | ||
run: | | ||
cd buildarm64 | ||
make DESTDIR="${GITHUB_WORKSPACE}/wineinst" install -j $(nproc) | ||
- name: compress | ||
run: | | ||
tar -C "${GITHUB_WORKSPACE}/wineinst" -Jcvf wine-debian-12-bookworm-arm64.tar.xz . | ||
- name: upload | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: debian-12-bookworm-arm64 | ||
path: wine-debian-12-bookworm-arm64.tar.xz |