mirror of
https://github.com/moonlight-stream/moonlight-qt.git
synced 2026-02-16 02:30:52 +00:00
Switch AppImage to SDL3+SDL2-compat
This commit is contained in:
29
.github/workflows/build-appimage.yml
vendored
29
.github/workflows/build-appimage.yml
vendored
@@ -32,26 +32,39 @@ jobs:
|
||||
qml6-module-qtqml-workerscript qml6-module-qtquick-window qml6-module-qtquick python3-pip nasm libgbm-dev libdrm-dev libfreetype-dev libasound2-dev \
|
||||
libdbus-1-dev libegl1-mesa-dev libgl1-mesa-dev libgles2-mesa-dev libglu1-mesa-dev libibus-1.0-dev libpulse-dev libudev-dev libx11-dev libxcursor-dev \
|
||||
libxext-dev libxi-dev libxinerama-dev libxkbcommon-dev libxrandr-dev libxss-dev libxt-dev libxv-dev libxxf86vm-dev libxcb-dri3-dev libx11-xcb-dev \
|
||||
wayland-protocols libopus-dev libvdpau-dev libgl-dev libpipewire-0.3-dev vulkan-sdk
|
||||
libxfixes-dev libxtst-dev wayland-protocols libopus-dev libvdpau-dev libgl-dev libpipewire-0.3-dev liburing-dev vulkan-sdk cmake
|
||||
sudo pip3 install meson
|
||||
mkdir -p dep_root/{bin,include,lib}
|
||||
echo "DEP_ROOT=$PWD/dep_root" >> "${GITHUB_ENV}"
|
||||
echo "$PWD/dep_root/bin" >> "${GITHUB_PATH}"
|
||||
|
||||
- name: Checkout SDL
|
||||
- name: Checkout SDL3
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
repository: libsdl-org/SDL
|
||||
ref: 3eba0b6f8a21392f47b1b53a476e7633048de9b1
|
||||
ref: 3bde3e24069db59133bc1e8dbe3c693008821a93
|
||||
path: deps/SDL
|
||||
|
||||
- name: Build SDL
|
||||
- name: Build SDL3
|
||||
working-directory: deps/SDL
|
||||
run: |
|
||||
./autogen.sh
|
||||
./configure
|
||||
make -j$(nproc)
|
||||
sudo make install
|
||||
cmake -DSDL_KMSDRM=OFF -DSDL_TEST_LIBRARY=OFF -DSDL_INSTALL_DOCS=OFF -S . -B build
|
||||
cmake --build build -j
|
||||
sudo cmake --install build
|
||||
|
||||
- name: Checkout sdl2-compat
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
repository: libsdl-org/sdl2-compat
|
||||
ref: 1c8ece4de9db96d01f99296c26a87a4cabb72f54
|
||||
path: deps/sdl2-compat
|
||||
|
||||
- name: Build sdl2-compat
|
||||
working-directory: deps/sdl2-compat
|
||||
run: |
|
||||
cmake -DSDL2COMPAT_TESTS=OFF -S . -B build
|
||||
cmake --build build -j
|
||||
sudo cmake --install build
|
||||
|
||||
- name: Checkout SDL_ttf
|
||||
uses: actions/checkout@v5
|
||||
|
||||
@@ -52,9 +52,17 @@ pushd $BUILD_FOLDER
|
||||
make install || fail "Make install failed!"
|
||||
popd
|
||||
|
||||
# We need to manually place SDL3 in our AppImage, since linuxdeployqt
|
||||
# cannot see the dependency via ldd when it looks at SDL2-compat.
|
||||
echo Staging SDL3 library
|
||||
mkdir -p $DEPLOY_FOLDER/usr/lib
|
||||
cp /usr/local/lib/libSDL3.so.0 $DEPLOY_FOLDER/usr/lib/
|
||||
|
||||
echo Creating AppImage
|
||||
pushd $INSTALLER_FOLDER
|
||||
VERSION=$VERSION linuxdeployqt $DEPLOY_FOLDER/usr/share/applications/com.moonlight_stream.Moonlight.desktop -qmake=qmake6 -qmldir=$SOURCE_ROOT/app/gui -appimage -extra-plugins=tls || fail "linuxdeployqt failed!"
|
||||
VERSION=$VERSION linuxdeployqt $DEPLOY_FOLDER/usr/share/applications/com.moonlight_stream.Moonlight.desktop \
|
||||
-qmake=qmake6 -qmldir=$SOURCE_ROOT/app/gui -appimage -extra-plugins=tls \
|
||||
-executable=$DEPLOY_FOLDER/usr/lib/libSDL3.so.0 || fail "linuxdeployqt failed!"
|
||||
popd
|
||||
|
||||
echo Build successful
|
||||
Reference in New Issue
Block a user