Files
Velix-MPV-Core/scripts/build-font-stack-ohos.sh

62 lines
2.2 KiB
Bash
Executable File

#!/bin/sh
set -eu
. "$(dirname -- "$0")/setup-ohos-env.sh"
SOURCE_ROOT=$OHOS_BUILD_ROOT/sources
BUILD_ROOT=$OHOS_BUILD_ROOT/build
LOG_DIR=$OHOS_BUILD_ROOT/logs
test -f "$SOURCE_ROOT/freetype/meson.build" || "$PROJECT_ROOT/scripts/fetch-phase1-sources.sh"
mkdir -p "$BUILD_ROOT" "$LOG_DIR"
setup_build()
{
name=$1
shift
source_dir=$SOURCE_ROOT/$name
build_dir=$BUILD_ROOT/$name
if test -f "$build_dir/meson-private/coredata.dat"; then
meson setup "$build_dir" "$source_dir" --wipe "$@"
else
meson setup "$build_dir" "$source_dir" "$@"
fi
meson compile -C "$build_dir"
meson install -C "$build_dir"
}
setup_build freetype \
--cross-file "$CROSS_FILE" --prefix "$PREFIX" --buildtype release \
-Dzlib=system -Dharfbuzz=disabled -Dpng=disabled -Dbrotli=disabled \
-Dbzip2=disabled -Dtests=disabled > "$LOG_DIR/freetype.log" 2>&1
setup_build fribidi \
--cross-file "$CROSS_FILE" --prefix "$PREFIX" --buildtype release \
-Ddocs=false -Dbin=false -Dtests=false > "$LOG_DIR/fribidi.log" 2>&1
setup_build harfbuzz \
--cross-file "$CROSS_FILE" --prefix "$PREFIX" --buildtype release \
-Dglib=disabled -Dgobject=disabled -Dcairo=disabled -Dchafa=disabled \
-Dpng=disabled -Dzlib=disabled -Dicu=disabled -Dfreetype=enabled \
-Draster=disabled -Dvector=disabled -Dgpu=disabled -Dgpu_demo=disabled \
-Dsubset=disabled -Dtests=disabled -Dintrospection=disabled -Ddocs=disabled \
-Dutilities=disabled > "$LOG_DIR/harfbuzz.log" 2>&1
setup_build libass \
--cross-file "$CROSS_FILE" --prefix "$PREFIX" --buildtype release \
-Dfontconfig=disabled -Ddirectwrite=disabled -Dcoretext=disabled \
-Dasm=disabled -Dlibunibreak=disabled -Drequire-system-font-provider=false \
-Dtest=disabled -Dcompare=disabled -Dprofile=disabled -Dfuzz=disabled \
-Dcheckasm=disabled > "$LOG_DIR/libass.log" 2>&1
"$PROJECT_ROOT/scripts/verify-static-archive.sh" \
"$PREFIX/lib/libfreetype.a" \
"$PREFIX/lib/libfribidi.a" \
"$PREFIX/lib/libharfbuzz.a" \
"$PREFIX/lib/libass.a"
for library in freetype2 fribidi harfbuzz libass; do
printf '%s=' "$library"
"$PKG_CONFIG" --modversion "$library"
done