From 5e947546f919684f4ffdc24b85d06960df8d9c12 Mon Sep 17 00:00:00 2001 From: Splendide Imaginarius <119545140+Splendide-Imaginarius@users.noreply.github.com> Date: Mon, 26 May 2025 10:36:12 +0000 Subject: [PATCH 1/6] s390x is no longer experimental --- .github/workflows/autobuild.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index d72ab6fd..f041e2e1 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -162,8 +162,7 @@ jobs: - arch_mkxpz: s390x arch_debian: s390x arch_gcc: s390x-linux-gnu - # src/util/serial-util.h errors on big-endian targets. - experimental: true + experimental: false - arch_mkxpz: riscv64 arch_debian: riscv64 arch_gcc: riscv64-linux-gnu From d0a1485055a22df8aa665ea321cf9e383153b45e Mon Sep 17 00:00:00 2001 From: Splendide Imaginarius <119545140+Splendide-Imaginarius@users.noreply.github.com> Date: Mon, 26 May 2025 10:47:48 +0000 Subject: [PATCH 2/6] Actions: add Debian Trixie native build --- .github/workflows/autobuild.yml | 52 +++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index f041e2e1..5346ff5c 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -232,6 +232,58 @@ jobs: name: mkxp-z.linux.${{matrix.arch_mkxpz}}.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} path: build/local + build-linux-native-container: + name: Debian Trixie x86_64 + runs-on: ubuntu-22.04 + container: debian:trixie + steps: + - uses: benjlevesque/short-sha@v2.2 + id: short-sha + with: + length: 7 + + - name: Checkout repository + uses: actions/checkout@v4 + + - uses: actions/cache@v4 + with: + path: | + linux/build-x86_64 + linux/downloads + key: lin-debian-trixie-x86_64-${{ hashFiles('linux/Makefile') }} + + - name: Install apt dependencies + run: | + apt update + apt install git build-essential cmake meson autoconf automake libtool pkg-config ruby bison zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y + + - name: Build everything else + run: | + cd linux + make + + - name: Build executable + run: | + source linux/vars.sh + meson setup build --bindir=. --prefix=$GITHUB_WORKSPACE/build/local + cd build + ninja + ninja install + + - name: Prepare archive + run: | + cd build/local + cp -r ../../linux/build-x86_64/lib/ruby/3.1.0 . + mv ./3.1.0 ./stdlib + cp ../../mkxp.json . + cp -r ../../scripts . + cp ../../assets/LICENSE.mkxp-z-with-https.txt . + + - uses: actions/upload-artifact@v4 + with: + name: mkxp-z.linux.x86_64.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} + path: build/local + build-macos: name: macOS runs-on: macos-latest From 32df80611c2620fc8a5da8e69f3dc76e0c526334 Mon Sep 17 00:00:00 2001 From: Splendide Imaginarius <119545140+Splendide-Imaginarius@users.noreply.github.com> Date: Mon, 26 May 2025 11:01:28 +0000 Subject: [PATCH 3/6] Actions: add explicit wget dependency It was installed by default on Ubuntu but not Debian. --- .github/workflows/autobuild.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 5346ff5c..9e797c5c 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -98,7 +98,7 @@ jobs: - name: Install apt dependencies run: | sudo apt update - sudo apt install git build-essential cmake meson autoconf automake libtool pkg-config ruby bison zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y + sudo apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y - name: Build everything else run: | @@ -197,7 +197,7 @@ jobs: echo "deb [arch=${{matrix.arch_debian}}] http://ports.ubuntu.com/ jammy-updates multiverse" | sudo tee -a /etc/apt/sources.list echo "deb [arch=${{matrix.arch_debian}}] http://ports.ubuntu.com/ jammy-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list sudo apt update - sudo apt install git build-essential cmake meson autoconf automake libtool pkg-config ruby bison -y + sudo apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison -y sudo apt install libdmx-dev:${{matrix.arch_debian}} libfontenc-dev:${{matrix.arch_debian}} libfs-dev:${{matrix.arch_debian}} libice-dev:${{matrix.arch_debian}} libsm-dev:${{matrix.arch_debian}} libx11-dev:${{matrix.arch_debian}} libxau-dev:${{matrix.arch_debian}} libxaw7-dev:${{matrix.arch_debian}} libxcomposite-dev:${{matrix.arch_debian}} libxcursor-dev:${{matrix.arch_debian}} libxdamage-dev:${{matrix.arch_debian}} libxdmcp-dev:${{matrix.arch_debian}} libxext-dev:${{matrix.arch_debian}} libxfixes-dev:${{matrix.arch_debian}} libxfont-dev:${{matrix.arch_debian}} libxft-dev:${{matrix.arch_debian}} libxi-dev:${{matrix.arch_debian}} libxinerama-dev:${{matrix.arch_debian}} libxkbfile-dev:${{matrix.arch_debian}} libxmu-dev:${{matrix.arch_debian}} libxmuu-dev:${{matrix.arch_debian}} libxpm-dev:${{matrix.arch_debian}} libxrandr-dev:${{matrix.arch_debian}} libxrender-dev:${{matrix.arch_debian}} libxres-dev:${{matrix.arch_debian}} libxss-dev:${{matrix.arch_debian}} libxt-dev:${{matrix.arch_debian}} libxtst-dev:${{matrix.arch_debian}} libxv-dev:${{matrix.arch_debian}} libxvmc-dev:${{matrix.arch_debian}} libxxf86dga-dev:${{matrix.arch_debian}} libxxf86vm-dev:${{matrix.arch_debian}} x11proto-dev:${{matrix.arch_debian}} xserver-xorg-dev:${{matrix.arch_debian}} xtrans-dev:${{matrix.arch_debian}} -y sudo apt install gcc-${{matrix.arch_gcc}} g++-${{matrix.arch_gcc}} zlib1g-dev:${{matrix.arch_debian}} libbz2-dev:${{matrix.arch_debian}} libgl1-mesa-dev:${{matrix.arch_debian}} libasound2-dev:${{matrix.arch_debian}} libpulse-dev:${{matrix.arch_debian}} -y @@ -255,7 +255,7 @@ jobs: - name: Install apt dependencies run: | apt update - apt install git build-essential cmake meson autoconf automake libtool pkg-config ruby bison zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y + apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y - name: Build everything else run: | From 5d12f43f9764d43e576ea5d26fd8724a2cf38ec2 Mon Sep 17 00:00:00 2001 From: Splendide Imaginarius <119545140+Splendide-Imaginarius@users.noreply.github.com> Date: Mon, 26 May 2025 11:40:22 +0000 Subject: [PATCH 4/6] Actions: use Bash for container builds --- .github/workflows/autobuild.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 9e797c5c..b92d722b 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -236,6 +236,9 @@ jobs: name: Debian Trixie x86_64 runs-on: ubuntu-22.04 container: debian:trixie + defaults: + run: + shell: bash steps: - uses: benjlevesque/short-sha@v2.2 id: short-sha From 5177acada9540538fce0dba5d058f37b08894774 Mon Sep 17 00:00:00 2001 From: Splendide Imaginarius <119545140+Splendide-Imaginarius@users.noreply.github.com> Date: Mon, 26 May 2025 12:05:40 +0000 Subject: [PATCH 5/6] Actions: add explicit xxd dependency It was installed by default on Ubuntu but not Debian. --- .github/workflows/autobuild.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index b92d722b..9fead8a7 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -98,7 +98,7 @@ jobs: - name: Install apt dependencies run: | sudo apt update - sudo apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y + sudo apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison xxd zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y - name: Build everything else run: | @@ -197,7 +197,7 @@ jobs: echo "deb [arch=${{matrix.arch_debian}}] http://ports.ubuntu.com/ jammy-updates multiverse" | sudo tee -a /etc/apt/sources.list echo "deb [arch=${{matrix.arch_debian}}] http://ports.ubuntu.com/ jammy-backports main restricted universe multiverse" | sudo tee -a /etc/apt/sources.list sudo apt update - sudo apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison -y + sudo apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison xxd -y sudo apt install libdmx-dev:${{matrix.arch_debian}} libfontenc-dev:${{matrix.arch_debian}} libfs-dev:${{matrix.arch_debian}} libice-dev:${{matrix.arch_debian}} libsm-dev:${{matrix.arch_debian}} libx11-dev:${{matrix.arch_debian}} libxau-dev:${{matrix.arch_debian}} libxaw7-dev:${{matrix.arch_debian}} libxcomposite-dev:${{matrix.arch_debian}} libxcursor-dev:${{matrix.arch_debian}} libxdamage-dev:${{matrix.arch_debian}} libxdmcp-dev:${{matrix.arch_debian}} libxext-dev:${{matrix.arch_debian}} libxfixes-dev:${{matrix.arch_debian}} libxfont-dev:${{matrix.arch_debian}} libxft-dev:${{matrix.arch_debian}} libxi-dev:${{matrix.arch_debian}} libxinerama-dev:${{matrix.arch_debian}} libxkbfile-dev:${{matrix.arch_debian}} libxmu-dev:${{matrix.arch_debian}} libxmuu-dev:${{matrix.arch_debian}} libxpm-dev:${{matrix.arch_debian}} libxrandr-dev:${{matrix.arch_debian}} libxrender-dev:${{matrix.arch_debian}} libxres-dev:${{matrix.arch_debian}} libxss-dev:${{matrix.arch_debian}} libxt-dev:${{matrix.arch_debian}} libxtst-dev:${{matrix.arch_debian}} libxv-dev:${{matrix.arch_debian}} libxvmc-dev:${{matrix.arch_debian}} libxxf86dga-dev:${{matrix.arch_debian}} libxxf86vm-dev:${{matrix.arch_debian}} x11proto-dev:${{matrix.arch_debian}} xserver-xorg-dev:${{matrix.arch_debian}} xtrans-dev:${{matrix.arch_debian}} -y sudo apt install gcc-${{matrix.arch_gcc}} g++-${{matrix.arch_gcc}} zlib1g-dev:${{matrix.arch_debian}} libbz2-dev:${{matrix.arch_debian}} libgl1-mesa-dev:${{matrix.arch_debian}} libasound2-dev:${{matrix.arch_debian}} libpulse-dev:${{matrix.arch_debian}} -y @@ -258,7 +258,7 @@ jobs: - name: Install apt dependencies run: | apt update - apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y + apt install git wget build-essential cmake meson autoconf automake libtool pkg-config ruby bison xxd zlib1g-dev libbz2-dev xorg-dev libgl1-mesa-dev libasound2-dev libpulse-dev -y - name: Build everything else run: | From a40d55baa7b1f2cf0dc0535396e99ca9387ffbdf Mon Sep 17 00:00:00 2001 From: Splendide Imaginarius <119545140+Splendide-Imaginarius@users.noreply.github.com> Date: Mon, 26 May 2025 12:33:04 +0000 Subject: [PATCH 6/6] Actions: add distro to artifact filename --- .github/workflows/autobuild.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 9fead8a7..988d0e9c 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -124,7 +124,7 @@ jobs: - uses: actions/upload-artifact@v4 with: - name: mkxp-z.linux.x86_64.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} + name: mkxp-z.linux.ubuntu.22.04.x86_64.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} path: build/local build-linux-cross: @@ -229,7 +229,7 @@ jobs: - uses: actions/upload-artifact@v4 with: - name: mkxp-z.linux.${{matrix.arch_mkxpz}}.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} + name: mkxp-z.linux.ubuntu.22.04.${{matrix.arch_mkxpz}}.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} path: build/local build-linux-native-container: @@ -284,7 +284,7 @@ jobs: - uses: actions/upload-artifact@v4 with: - name: mkxp-z.linux.x86_64.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} + name: mkxp-z.linux.debian.trixie.x86_64.${{github.event_name == 'pull_request' && format('PR{0}', github.event.number) || github.ref_name}}-${{steps.short-sha.outputs.sha}} path: build/local build-macos: