Jenkins: Add FluidSynth compilation to remove JACK and fix SDL compilation
This commit is contained in:
@@ -45,7 +45,6 @@ AppDir:
|
|||||||
include:
|
include:
|
||||||
- libedit2 # if (CLI:BOOL=ON|QT:BOOL=OFF)
|
- libedit2 # if (CLI:BOOL=ON|QT:BOOL=OFF)
|
||||||
- libevdev2 # if QT:BOOL=ON
|
- libevdev2 # if QT:BOOL=ON
|
||||||
- libfluidsynth2
|
|
||||||
- libfreetype6
|
- libfreetype6
|
||||||
- libgbm1 # if QT:BOOL=ON
|
- libgbm1 # if QT:BOOL=ON
|
||||||
- libgl1 # if QT:BOOL=ON
|
- libgl1 # if QT:BOOL=ON
|
||||||
|
20
.ci/build.sh
20
.ci/build.sh
@@ -986,7 +986,8 @@ else
|
|||||||
sdl_ui=OFF
|
sdl_ui=OFF
|
||||||
grep -qiE "^QT:BOOL=ON" build/CMakeCache.txt || sdl_ui=ON
|
grep -qiE "^QT:BOOL=ON" build/CMakeCache.txt || sdl_ui=ON
|
||||||
|
|
||||||
# Build rtmidi without JACK support to remove the dependency on libjack.
|
# Build rtmidi without JACK support to remove the dependency on libjack, as
|
||||||
|
# the Debian libjack is very likely to be incompatible with the system jackd.
|
||||||
prefix="$cache_dir/rtmidi-4.0.0"
|
prefix="$cache_dir/rtmidi-4.0.0"
|
||||||
if [ ! -d "$prefix" ]
|
if [ ! -d "$prefix" ]
|
||||||
then
|
then
|
||||||
@@ -998,6 +999,21 @@ else
|
|||||||
cmake --build "$prefix_build" -j$(nproc) || exit 99
|
cmake --build "$prefix_build" -j$(nproc) || exit 99
|
||||||
cmake --install "$prefix_build" || exit 99
|
cmake --install "$prefix_build" || exit 99
|
||||||
|
|
||||||
|
# Build FluidSynth without JACK support to remove the dependency on libjack once again.
|
||||||
|
prefix="$cache_dir/fluidsynth-2.3.0"
|
||||||
|
if [ ! -d "$prefix" ]
|
||||||
|
then
|
||||||
|
rm -rf "$cache_dir/fluidsynth-"* # remove old versions
|
||||||
|
wget -qO - https://github.com/FluidSynth/fluidsynth/archive/refs/tags/v2.3.0.tar.gz | tar zxf - -C "$cache_dir" || rm -rf "$prefix"
|
||||||
|
fi
|
||||||
|
cp cmake/flags-gcc.cmake cmake/flags-gcc.cmake.old
|
||||||
|
sed -i -e 's/ -Werror=.*\([" ]\)/\1/g' cmake/flags-gcc.cmake # temporary hack for -Werror=old-style-definition non-compliance on FluidSynth and SDL2
|
||||||
|
prefix_build="$prefix/build-$arch_deb"
|
||||||
|
cmake -G Ninja -D enable-jack=OFF -D enable-sdl2=$sdl_ss -D "CMAKE_TOOLCHAIN_FILE=$toolchain_file" -D "CMAKE_INSTALL_PREFIX=$cwd_root/archive_tmp/usr" -S "$prefix" -B "$prefix_build" || exit 99
|
||||||
|
cmake --build "$prefix_build" -j$(nproc) || exit 99
|
||||||
|
cmake --install "$prefix_build" || exit 99
|
||||||
|
cp -p "$cwd_root/archive_tmp/usr/bin/fluidsynth" fluidsynth
|
||||||
|
|
||||||
# Build SDL2 for joystick and FAudio support, with most components
|
# Build SDL2 for joystick and FAudio support, with most components
|
||||||
# disabled to remove the dependencies on PulseAudio and libdrm.
|
# disabled to remove the dependencies on PulseAudio and libdrm.
|
||||||
prefix="$cache_dir/SDL2-2.0.20"
|
prefix="$cache_dir/SDL2-2.0.20"
|
||||||
@@ -1006,8 +1022,6 @@ else
|
|||||||
rm -rf "$cache_dir/SDL2-"* # remove old versions
|
rm -rf "$cache_dir/SDL2-"* # remove old versions
|
||||||
wget -qO - https://www.libsdl.org/release/SDL2-2.0.20.tar.gz | tar zxf - -C "$cache_dir" || rm -rf "$prefix"
|
wget -qO - https://www.libsdl.org/release/SDL2-2.0.20.tar.gz | tar zxf - -C "$cache_dir" || rm -rf "$prefix"
|
||||||
fi
|
fi
|
||||||
cp cmake/flags-gcc.cmake cmake/flags-gcc.cmake.old
|
|
||||||
sed -i -e 's/ -Werror=.*\([" ]\)/\1/g' cmake/flags-gcc.cmake # temporary hack for -Werror=old-style-definition non-compliance
|
|
||||||
prefix_build="$cache_dir/SDL2-2.0.20-build-$arch_deb"
|
prefix_build="$cache_dir/SDL2-2.0.20-build-$arch_deb"
|
||||||
cmake -G Ninja -D SDL_SHARED=ON -D SDL_STATIC=OFF \
|
cmake -G Ninja -D SDL_SHARED=ON -D SDL_STATIC=OFF \
|
||||||
\
|
\
|
||||||
|
Reference in New Issue
Block a user