mirror of
https://github.com/a-bad-dev/luanti-appimages-aarch64.git
synced 2026-06-09 00:31:31 +00:00
compile our own SDL2
This commit is contained in:
parent
cfbd156583
commit
935c614f07
1 changed files with 37 additions and 4 deletions
41
build.sh
41
build.sh
|
|
@ -4,6 +4,7 @@
|
||||||
# something similar, otherwise it's not going to work...
|
# something similar, otherwise it's not going to work...
|
||||||
|
|
||||||
VERSION="5.15.2"
|
VERSION="5.15.2"
|
||||||
|
SDL_VERSION="2.32.10"
|
||||||
|
|
||||||
BOLD="\x1b[1m"
|
BOLD="\x1b[1m"
|
||||||
RED="\x1b[31m"
|
RED="\x1b[31m"
|
||||||
|
|
@ -18,6 +19,7 @@ fi
|
||||||
|
|
||||||
# install deps
|
# install deps
|
||||||
echo -e "${BOLD}Downloading deps...${RESET}"
|
echo -e "${BOLD}Downloading deps...${RESET}"
|
||||||
|
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
git \
|
git \
|
||||||
g++ \
|
g++ \
|
||||||
|
|
@ -46,12 +48,19 @@ apt-get install -y --no-install-recommends \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
file
|
file
|
||||||
|
|
||||||
# download luajit and luanti source code
|
# download luajit, SDL2, and luanti source code
|
||||||
echo -e "${BOLD}Downloading LuaJIT and Luanti source code...${RESET}"
|
echo -e "${BOLD}Downloading LuaJIT, SDL2, and Luanti source code...${RESET}"
|
||||||
git clone --depth=1 https://github.com/LuaJIT/LuaJIT.git luajit
|
git clone --depth=1 https://github.com/LuaJIT/LuaJIT.git luajit
|
||||||
curl -Lo luanti.zip https://github.com/luanti-org/luanti/archive/refs/tags/${VERSION}.zip
|
curl -Lo luanti.zip https://github.com/luanti-org/luanti/archive/refs/tags/${VERSION}.zip
|
||||||
|
curl -Lo sdl2.zip https://github.com/libsdl-org/SDL/releases/download/release-${SDL_VERSION}/SDL2-${SDL_VERSION}.zip
|
||||||
|
|
||||||
unzip luanti.zip
|
unzip luanti.zip
|
||||||
mv luanti-${VERSION} luanti/
|
mv luanti-${VERSION} luanti/
|
||||||
|
rm luanti.zip
|
||||||
|
|
||||||
|
unzip sdl2.zip
|
||||||
|
mv SDL2-${SDL_VERSION} sdl2
|
||||||
|
rm sdl2.zip
|
||||||
|
|
||||||
# compile luajit
|
# compile luajit
|
||||||
echo -e "${BOLD}Compiling LuaJIT...${RESET}"
|
echo -e "${BOLD}Compiling LuaJIT...${RESET}"
|
||||||
|
|
@ -59,6 +68,26 @@ cd luajit
|
||||||
make amalg -j$(nproc)
|
make amalg -j$(nproc)
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
|
# compile sdl2
|
||||||
|
echo -e "${BOLD}Compiling SDL2...${RESET}"
|
||||||
|
cd sdl2
|
||||||
|
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
|
||||||
|
cmake .. -G Ninja \
|
||||||
|
-DSDL_INSTALL_CMAKEDIR=usr/lib/cmake/SDL2 \
|
||||||
|
-DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=/ \
|
||||||
|
-DCMAKE_C_FLAGS="-DSDL_LEAN_AND_MEAN=1" \
|
||||||
|
-DSDL_{AUDIO,RENDER,VULKAN,TEST,STATIC}=OFF
|
||||||
|
|
||||||
|
ninja -j$(nproc)
|
||||||
|
strip -s *.so
|
||||||
|
DESTDIR="../../" ninja install -j$(nproc)
|
||||||
|
|
||||||
|
cd ../..
|
||||||
|
|
||||||
# prepare to compile luanti
|
# prepare to compile luanti
|
||||||
cd luanti
|
cd luanti
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
|
|
@ -105,7 +134,6 @@ chmod +x AppRun
|
||||||
# bundle the libraries
|
# bundle the libraries
|
||||||
INCLUDE_LIBS=(
|
INCLUDE_LIBS=(
|
||||||
libopenal.so.1
|
libopenal.so.1
|
||||||
libSDL2-2.0.so.0
|
|
||||||
libsndio.so.7.0
|
libsndio.so.7.0
|
||||||
libbsd.so.0
|
libbsd.so.0
|
||||||
libmd.so.0
|
libmd.so.0
|
||||||
|
|
@ -125,6 +153,9 @@ for i in "${INCLUDE_LIBS[@]}"; do
|
||||||
cp /usr/lib/aarch64-linux-gnu/${i} usr/lib/
|
cp /usr/lib/aarch64-linux-gnu/${i} usr/lib/
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# copy our SDL2 into place
|
||||||
|
cp ../../../usr/lib/libSDL2-2.0.so.0 usr/lib/
|
||||||
|
|
||||||
# finally make the appimage
|
# finally make the appimage
|
||||||
cd ..
|
cd ..
|
||||||
ARCH=aarch64 ./appimagetool --appimage-extract-and-run AppDir/
|
ARCH=aarch64 ./appimagetool --appimage-extract-and-run AppDir/
|
||||||
|
|
@ -135,7 +166,9 @@ mv Luanti-aarch64.AppImage ../../luanti-${VERSION}-aarch64.AppImage
|
||||||
# clean up
|
# clean up
|
||||||
cd ../..
|
cd ../..
|
||||||
|
|
||||||
rm -rf luanti{,.zip}
|
rm -rf luanti/
|
||||||
|
rm -rf sdl2/
|
||||||
|
rm -rf usr/
|
||||||
rm -rf luajit/
|
rm -rf luajit/
|
||||||
|
|
||||||
# done :D
|
# done :D
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue