diff --git a/CMake/CPackSetup.cmake b/CMake/CPackSetup.cmake index 58c8b68d2c..bd9e29a657 100644 --- a/CMake/CPackSetup.cmake +++ b/CMake/CPackSetup.cmake @@ -70,7 +70,14 @@ elseif(MACOSX) endif() else() 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() set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_SYSTEM_NAME}") diff --git a/Utils/Dockerfile-linux-amd64 b/Utils/Dockerfile-linux similarity index 79% rename from Utils/Dockerfile-linux-amd64 rename to Utils/Dockerfile-linux index 0c64893fa3..fee6dd4187 100644 --- a/Utils/Dockerfile-linux-amd64 +++ b/Utils/Dockerfile-linux @@ -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 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 diff --git a/Utils/build-release-linux.sh b/Utils/build-release-linux.sh index 9c22cbc770..f163c12ea7 100755 --- a/Utils/build-release-linux.sh +++ b/Utils/build-release-linux.sh @@ -3,9 +3,15 @@ set -eux 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 cmake -S /data -B /tmp/Build -DCMAKE_BUILD_TYPE=Release -DWITH_FULL_RELEASE=On -DWITH_CLUB_FANTASTIC=On cmake --build /tmp/Build -j $(nproc)