mirror of
https://github.com/ZDoom/fluidsynth.git
synced 2024-12-11 05:11:33 +00:00
e4ef966630
Changes are from https://github.com/FluidSynth/fluidsynth/issues/897#issuecomment-854896563
51 lines
1.7 KiB
Bash
Executable file
51 lines
1.7 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
source ./build-env.sh
|
|
|
|
if [ -z "$parameters_installCommand" ] ; then
|
|
parameters_installCommand="make install"
|
|
fi
|
|
|
|
if [ -z "$parameters_workDir" ] ; then
|
|
parameters_workDir=$DEV
|
|
fi
|
|
|
|
source ./build-env.sh
|
|
|
|
#set -ex
|
|
pushd $parameters_sourceDir
|
|
mkdir -p build_$ANDROID_ABI_CMAKE
|
|
pushd build_$ANDROID_ABI_CMAKE
|
|
|
|
# Invoke cmake in the most correctest way I've could find while try and erroring:
|
|
#
|
|
# The biggest pain point is that CMake does not seem to respect our existing cross compilation CFLAGS and LDFLAGS.
|
|
# Hence we are passing them manually, once via Android flags and once for "Required" flags. The latter is necessary
|
|
# to let cmake correctly probe for any existing header, function, library, etc.
|
|
# Watch out: Sometimes the flags are passed as ;-limited list!
|
|
|
|
|
|
cmake -G "Unix Makefiles" \
|
|
-DCMAKE_MAKE_PROGRAM=make \
|
|
-DCMAKE_TOOLCHAIN_FILE=$NDK/build/cmake/android.toolchain.cmake \
|
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
|
-DANDROID_NATIVE_API_LEVEL=$ANDROID_API \
|
|
-DANDROID_ABI=$ANDROID_ABI_CMAKE \
|
|
-DANDROID_TOOLCHAIN=$CC \
|
|
-DANDROID_NDK=$NDK \
|
|
-DANDROID_COMPILER_FLAGS="${CFLAGS// /;}" \
|
|
-DANDROID_LINKER_FLAGS="${LDFLAGS// /;}" \
|
|
-DANDROID_STL="c++_shared" \
|
|
-DCMAKE_REQUIRED_FLAGS="${CFLAGS}" \
|
|
-DCMAKE_REQUIRED_LINK_OPTIONS="${LDFLAGS// /;}" \
|
|
-DCMAKE_INSTALL_PREFIX=${PREFIX} \
|
|
-DCMAKE_STAGING_PREFIX=${PREFIX} \
|
|
-DBUILD_SHARED_LIBS=1 \
|
|
-DLIB_SUFFIX="" \
|
|
$parameters_cmakeArgs ..
|
|
#-DCMAKE_VERBOSE_MAKEFILE=1 \
|
|
make -j$((`nproc`+1)) || (popd && popd && exit 1)
|
|
$parameters_installCommand
|
|
popd
|
|
popd
|
|
|