Allow Utils/build-release-linux.sh to build releases for other targets as arm64

This commit is contained in:
Sergio Perez Fernandez
2025-04-28 03:02:57 +02:00
committed by teejusb
parent 6409c7ec82
commit 45ba1873df
3 changed files with 17 additions and 4 deletions
+8 -1
View File
@@ -70,7 +70,14 @@ elseif(MACOSX)
endif() endif()
else() else()
set(CPACK_GENERATOR TGZ) set(CPACK_GENERATOR TGZ)
set(CPACK_SYSTEM_NAME "Linux") if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
set(CPACK_SYSTEM_NAME "Linux-x86-64")
elseif(CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64")
set(CPACK_SYSTEM_NAME "Linux-arm64")
else()
message("Unknown architecture: ${CMAKE_SYSTEM_PROCESSOR}")
set(CPACK_SYSTEM_NAME "Linux-unknown")
endif()
endif() endif()
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}") set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}")
@@ -5,6 +5,6 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get install -y curl g++ gcc git make nasm
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y libgtk-3-dev RUN DEBIAN_FRONTEND=noninteractive apt-get install -y libgtk-3-dev
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y libasound2-dev libgl1-mesa-dev libglu1-mesa-dev libjack-dev libpulse-dev libssl-dev libudev-dev libva-dev libxinerama-dev libxrandr-dev libxtst-dev RUN DEBIAN_FRONTEND=noninteractive apt-get install -y libasound2-dev libgl1-mesa-dev libglu1-mesa-dev libjack-dev libpulse-dev libssl-dev libudev-dev libva-dev libxinerama-dev libxrandr-dev libxtst-dev
RUN cd ~ && curl -L -o cmake.sh https://github.com/Kitware/CMake/releases/download/v3.23.2/cmake-3.23.2-linux-x86_64.sh && sh cmake.sh --skip-license --prefix=/usr/local && rm cmake.sh RUN cd ~ && curl -L -o cmake.sh https://github.com/Kitware/CMake/releases/download/v3.23.2/cmake-3.23.2-linux-$(arch).sh && sh cmake.sh --skip-license --prefix=/usr/local && rm cmake.sh
CMD /bin/bash CMD /bin/bash
+8 -2
View File
@@ -3,9 +3,15 @@ set -eux
cd "$(dirname $0)" cd "$(dirname $0)"
docker build -f Dockerfile-linux-amd64 . -t itgmania-linux-build:amd64 ARCH="${ARCH:-$(arch)}"
docker run -i -v $(pwd)/..:/data itgmania-linux-build:amd64 sh -eux <<'EOF' podman build --arch=${ARCH} -f Dockerfile-linux . -t itgmania-linux-build:${ARCH}
podman run --name build-itgmania-${ARCH} --replace \
-i -v $(pwd)/..:/data:rw,Z,U --arch=${ARCH} \
itgmania-linux-build:${ARCH} sh -eux <<'EOF'
WITH_MINIMAID=On ; [ "$(arch)" != "x86_64" ] && WITH_MINIMAID=Off
export WITH_MINIMAID
git config --global --add safe.directory /data git config --global --add safe.directory /data
cmake -S /data -B /tmp/Build -DCMAKE_BUILD_TYPE=Release -DWITH_FULL_RELEASE=On -DWITH_CLUB_FANTASTIC=On cmake -S /data -B /tmp/Build -DCMAKE_BUILD_TYPE=Release -DWITH_FULL_RELEASE=On -DWITH_CLUB_FANTASTIC=On
cmake --build /tmp/Build -j $(nproc) cmake --build /tmp/Build -j $(nproc)