e07555f6aa
In addition to reducing the dependency footprint of HarfBuzz as a library, removing the slow conversion from ICU script to HarfBuzz script representation should speed things up a bit. Additional clean up to remove the no longer used SkUnicodeScript parameter will be put off until later as a separate API change. Bug: skia:12095 Change-Id: Ib7982a59670cc9c25cb1489b9622a98968ae1a38 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/419196 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Ben Wagner <bungeman@google.com> |
||
---|---|---|
.. | ||
BUILD.gn | ||
README |
#!/bin/sh # Some of HarfBuzz's headers are created at build time using the Ragel # State Machine Compiler. To reduce complex dependencies, I pre-built # these files: # hb-buffer-deserialize-json.hh # hb-buffer-deserialize-text.hh # hb-ot-shape-complex-indic-machine.hh # hb-ot-shape-complex-myanmar-machine.hh # hb-ot-shape-complex-use-machine.hh # from these sources: # ../externals/harfbuzz/src/hb-buffer-deserialize-json.rl # ../externals/harfbuzz/src/hb-buffer-deserialize-text.rl # ../externals/harfbuzz/src/hb-ot-shape-complex-indic-machine.rl # ../externals/harfbuzz/src/hb-ot-shape-complex-myanmar-machine.rl # ../externals/harfbuzz/src/hb-ot-shape-complex-use-machine.rl # # The files in this directory are created by installing the # prerequiste packages, checking out a new version of HarfBuzz, doing # `./autogen.sh && ./configure && make`, then copying the # autogenerated .h and .hh files to this directory. # # These files are now checked into the git repository and the HarfBuzz # maintainers keep them up to date by using the build rules in the HarfBuzz # build. As a result this step is no longer necessary, but if we need to # regenerate these files ourselves, this is how to do it. set -e set -x for package in automake libtool pkg-config ragel gtk-doc-tools; do if ! ( dpkg-query -W -f'${Status}' "$package" 2>/dev/null | \ grep -q "ok installed" ); then sudo apt-get install "$package" fi done cd "$(dirname "$0")/../externals/harfbuzz" ./autogen.sh ./configure make -j4 cp src/hb-version.h ../../harfbuzz/ for RAGEL_FILE in src/*.rl; do BUILT_HEADER="src/$(basename "$RAGEL_FILE" '.rl').hh" if [ -f "$BUILT_HEADER" ]; then cp -v "$BUILT_HEADER" ../../harfbuzz/ fi done git clean -fxd