Files
jellyfin-ffmpeg/builder/scripts.d/45-harfbuzz.sh
T
2026-06-30 01:00:05 +08:00

60 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
SCRIPT_REPO="https://github.com/harfbuzz/harfbuzz.git"
SCRIPT_COMMIT="56feae4035bdd48f62ba2b8d8c16232d4d89b3a4"
ffbuild_enabled() {
return 0
}
ffbuild_dockerbuild() {
git-mini-clone "$SCRIPT_REPO" "$SCRIPT_COMMIT" harfbuzz
cd harfbuzz
mkdir build && cd build
local myconf=(
--prefix="$FFBUILD_PREFIX"
--buildtype=release
--default-library=static
-Dfreetype=enabled
-Dglib=disabled
-Dgobject=disabled
-Dcairo=disabled
-Dchafa=disabled
-Dicu=disabled
-Dtests=disabled
-Dintrospection=disabled
-Ddocs=disabled
-Dutilities=disabled
-Dgpu=disabled
)
if [[ $TARGET == win* || $TARGET == linux* ]]; then
myconf+=(
--cross-file=/cross.meson
)
elif [[ $TARGET == mac* ]]; then
if [ "$MACOS_BUILDER_CPU_ARCH" = "arm64" ] && [ "$TARGET" = "mac64" ]; then
myconf+=(
--cross-file="$BUILDER_ROOT"/images/macos/cross/cross-x86_64.txt
)
fi
else
echo "Unknown target"
return -1
fi
meson setup "${myconf[@]}" ..
ninja -j$(nproc)
ninja install
}
ffbuild_configure() {
echo --enable-libharfbuzz
}
ffbuild_unconfigure() {
echo --disable-libharfbuzz
}