blob: 7ad7577554769d8ad6891b62a684b78cbdff769a [file] [log] [blame]
#!/bin/bash
set -ex
source ./get_skia2.sh
source ./cache_helper.sh
build_skia_ios(){
cd $SKIA_DIR_NAME
case $1 in
arm64)
ARCH=arm64
FOLDER=arm64
;;
arm)
ARCH=arm
FOLDER=arm
;;
x86)
ARCH=x86
FOLDER=x86
;;
x64)
ARCH=x64
FOLDER=x64
;;
iossim_arm64)
ARCH=arm64
FOLDER=iossim_arm64
EXTRA_CFLAGS=", \"--target=arm64-apple-ios12.0.0-simulator\""
EXTRA_LDLAGS="\"--target=arm64-apple-ios12.0.0-simulator\""
;;
*)
echo "Do not know build configuration for $1"
exit 1
esac
# use Rive optimized/stripped Skia for iOS static libs.
bin/gn gen out/$FOLDER --type=static_library --args=" \
target_os=\"ios\" \
target_cpu=\"$ARCH\" \
extra_cflags=[ \
\"-fno-rtti\", \
\"-fembed-bitcode\", \
\"-mios-version-min=10.0\", \
\"-flto=full\", \
\"-DSK_DISABLE_SKPICTURE\", \
\"-DSK_DISABLE_TEXT\", \
\"-DRIVE_OPTIMIZED\", \
\"-DSK_DISABLE_LEGACY_SHADERCONTEXT\", \
\"-DSK_DISABLE_LOWP_RASTER_PIPELINE\", \
\"-DSK_FORCE_RASTER_PIPELINE_BLITTER\", \
\"-DSK_DISABLE_AAA\", \
\"-DSK_DISABLE_EFFECT_DESERIALIZATION\" \
${EXTRA_CFLAGS}
] \
extra_ldflags=[ \
${EXTRA_LDLAGS} \
] \
is_official_build=true \
skia_use_freetype=true \
skia_use_metal=true \
skia_use_zlib=true \
skia_enable_gpu=true \
skia_use_libpng_encode=true \
skia_use_libpng_decode=true \
skia_skip_codesign=true \
skia_use_angle=false \
skia_use_dng_sdk=false \
skia_use_egl=false \
skia_use_expat=false \
skia_use_fontconfig=false \
skia_use_system_freetype2=false \
skia_use_icu=false \
skia_use_libheif=false \
skia_use_system_libpng=false \
skia_use_system_libjpeg_turbo=false \
skia_use_libjpeg_turbo_encode=false \
skia_use_libjpeg_turbo_decode=true \
skia_use_libwebp_encode=false \
skia_use_libwebp_decode=true \
skia_use_system_libwebp=false \
skia_use_lua=false \
skia_use_piex=false \
skia_use_vulkan=false \
skia_use_gl=false \
skia_use_system_zlib=false \
skia_enable_fontmgr_empty=false \
skia_enable_spirv_validation=false \
skia_enable_pdf=false \
skia_enable_skottie=false \
$OVERRIDES
"
ninja -C out/$FOLDER
cd ..
}
if is_build_cached_locally; then
echo "Build is cached, nothing to do."
else
if is_build_cached_remotely; then
pull_cache
else
getSkia
build_skia_ios $1
# hmm not the appiest with this guy
OUTPUT_CACHE=out/$FOLDER upload_cache
fi
fi
cd ..