-
-
Notifications
You must be signed in to change notification settings - Fork 459
Expand file tree
/
Copy pathbuild-linux-arm64.sh
More file actions
executable file
·38 lines (35 loc) · 1.68 KB
/
build-linux-arm64.sh
File metadata and controls
executable file
·38 lines (35 loc) · 1.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/env -S bash -eu
# Dependencies
if [[ ! -z ${GITHUB_ACTIONS+x} ]]; then
if [[ -z ${SILKDOTNET_DockerBuild+x} ]]; then
# Enter Debian container for multiarch packages
docker="docker"
if command -v podman >/dev/null 2>&1; then
docker="podman"
fi
$docker run --platform linux/amd64 -e SILKDOTNET_DockerBuild=1 -e GITHUB_ACTIONS=1 -v $(readlink -f ../../../):/data debian bash -c "cd /data/sources/OpenAL/Soft.Native && ./build-linux-arm64.sh"
exit
else
dpkg --add-architecture arm64
apt-get update
apt-get install -y \
git cmake python3 \
libasound2-dev:arm64 libpulse-dev:arm64 libsoundio-dev:arm64 libsndfile1-dev:arm64 \
libmysofa-dev:arm64 qtbase5-dev:arm64 libdbus-1-dev:arm64 libjack-dev:arm64 portaudio19-dev:arm64 \
libpipewire-0.3-dev:arm64 qt6-base-dev:arm64 pulseaudio:arm64 \
gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
fi
fi
# Submodule
if [ ! -e ../../../eng/submodules/openal-soft/CMakeLists.txt ]; then
git submodule update --init --recursive --depth 1 ../../../eng/submodules/openal-soft
fi
# Build
rm -rf build
mkdir build
cd build
cmake ../../../../eng/submodules/openal-soft -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=../../../../eng/native/cmake/aarch64-linux-gnu.cmake -DALSOFT_UTILS=OFF -DALSOFT_EXAMPLES=OFF -DALSOFT_REQUIRE_RTKIT=ON -DALSOFT_REQUIRE_ALSA=ON -DALSOFT_REQUIRE_OSS=ON -DALSOFT_REQUIRE_PORTAUDIO=ON -DALSOFT_REQUIRE_PULSEAUDIO=ON -DALSOFT_REQUIRE_JACK=ON -DALSOFT_REQUIRE_PIPEWIRE=ON
cmake --build . --parallel
cd ..
mkdir -p runtimes/linux-arm64/native
cp build/libopenal.so runtimes/linux-arm64/native