forked from EasyRPG/buildscripts
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path2_build_toolchain.sh
More file actions
executable file
·75 lines (61 loc) · 2.14 KB
/
Copy path2_build_toolchain.sh
File metadata and controls
executable file
·75 lines (61 loc) · 2.14 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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
#!/bin/bash
# abort on error
set -e
export WORKSPACE=$PWD
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
source $SCRIPT_DIR/../shared/import.sh
# Number of CPU
nproc=$(nproc)
# Use ccache?
test_ccache
if [ ! -f .patches-applied ]; then
echo "Patching libraries"
patches_common
touch .patches-applied
fi
cd $WORKSPACE
echo "Preparing toolchain"
export PLATFORM_PREFIX=$WORKSPACE
if test_tool clang && test_tool clang++; then
export CC=clang
export CXX=clang++
elif test_tool gcc && test_tool g++; then
export CC=gcc
export CXX=g++
fi
export CFLAGS="-Os -g0 -fPIC -ffunction-sections -fdata-sections"
export CXXFLAGS=$CFLAGS
export CPPFLAGS="-I$PLATFORM_PREFIX/include"
export LDFLAGS="-fPIC -L$PLATFORM_PREFIX/lib"
export MAKEFLAGS="-j${nproc:-2}"
export PKG_CONFIG_PATH=$WORKSPACE/lib/pkgconfig
export PKG_CONFIG_LIBDIR=$PKG_CONFIG_PATH
install_lib_cmake $ZLIB_DIR $ZLIB_ARGS
install_lib_cmake $LIBPNG_DIR $LIBPNG_ARGS
install_lib_cmake $FREETYPE_DIR $FREETYPE_ARGS -DFT_DISABLE_HARFBUZZ=ON
install_lib_meson $HARFBUZZ_DIR $HARFBUZZ_ARGS
install_lib_cmake $FREETYPE_DIR $FREETYPE_ARGS -DFT_DISABLE_HARFBUZZ=OFF
install_lib_meson $PIXMAN_DIR $PIXMAN_ARGS
install_lib_cmake $EXPAT_DIR $EXPAT_ARGS
install_lib $LIBOGG_DIR $LIBOGG_ARGS
install_lib $LIBVORBIS_DIR $LIBVORBIS_ARGS
install_lib $MPG123_DIR $MPG123_ARGS
install_lib $LIBSNDFILE_DIR $LIBSNDFILE_ARGS
install_lib_cmake $LIBXMP_LITE_DIR $LIBXMP_LITE_ARGS
install_lib $SPEEXDSP_DIR $SPEEXDSP_ARGS
install_lib_cmake $WILDMIDI_DIR $WILDMIDI_ARGS
install_lib_cmake $OPUS_DIR $OPUS_ARGS
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS
install_lib_cmake $FLUIDSYNTH_DIR $FLUIDSYNTH_ARGS -Dosal=cpp11
install_lib_cmake $NLOHMANNJSON_DIR $NLOHMANNJSON_ARGS
install_lib_meson $INIH_DIR $INIH_ARGS
install_lib $LHASA_DIR $LHASA_ARGS
install_lib_cmake $FMT_DIR $FMT_ARGS
install_lib $ICU_DIR/source $ICU_ARGS
install_lib_liblcf
install_lib_cmake $FREEIMAGE_DIR $FREEIMAGE_ARGS
# Ensure that SDL3 finds the system libraries
# They are loaded dynamically and don't add hard dependencies
unset PKG_CONFIG_PATH
unset PKG_CONFIG_LIBDIR
install_lib_cmake $SDL3_DIR $SDL3_ARGS -DSDL_X11_XSCRNSAVER=OFF -DSDL_X11_XTEST=OFF