| ## |
| ## Copyright (C) 2012 The Android Open Source Project |
| ## |
| ## Licensed under the Apache License, Version 2.0 (the "License"); |
| ## you may not use this file except in compliance with the License. |
| ## You may obtain a copy of the License at |
| ## |
| ## http://www.apache.org/licenses/LICENSE-2.0 |
| ## |
| ## Unless required by applicable law or agreed to in writing, software |
| ## distributed under the License is distributed on an "AS IS" BASIS, |
| ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ## See the License for the specific language governing permissions and |
| ## limitations under the License. |
| ## |
| |
| ############################################################# |
| # Note: |
| # |
| # This file is used to build HarfBuzz within the Android |
| # platform itself. If you need to compile HarfBuzz to |
| # ship with your Android NDK app, you can use the autotools |
| # build system to do so. To do that you need to install a |
| # "standalone" toolchain with the NDK, eg: |
| # |
| # ndk/build/tools/make-standalone-toolchain.sh \ |
| # --platform=android-18 \ |
| # --install-dir=/prefix |
| # |
| # Set PLATFORM_PREFIX eng var to that prefix and make sure |
| # the cross-compile tools from PLATFORM_PREFIX are in path. |
| # Configure and install HarfBuzz: |
| # |
| # ./configure --host=arm-linux-androideabi \ |
| # --prefix=$PLATFORM_PREFIX \ |
| # --enable-static \ |
| # --with-freetype \ |
| # PKG_CONFIG_LIBDIR=$PLATFORM_PREFIX/lib/pkgconfig |
| # make install |
| # |
| # You can first build FreeType the same way: |
| # |
| # ./configure --host=arm-linux-androideabi \ |
| # --prefix=$PLATFORM_PREFIX \ |
| # --enable-static \ |
| # --without-png \ |
| # PKG_CONFIG_LIBDIR=$PLATFORM_PREFIX/lib/pkgconfig |
| # make install |
| # |
| |
| LOCAL_PATH:= $(call my-dir) |
| |
| HARFBUZZ_SRC_FILES = \ |
| src/hb-blob.cc \ |
| src/hb-buffer-serialize.cc \ |
| src/hb-buffer.cc \ |
| src/hb-common.cc \ |
| src/hb-face.cc \ |
| src/hb-font.cc \ |
| src/hb-ot-tag.cc \ |
| src/hb-set.cc \ |
| src/hb-shape.cc \ |
| src/hb-shape-plan.cc \ |
| src/hb-shaper.cc \ |
| src/hb-unicode.cc \ |
| src/hb-warning.cc \ |
| src/hb-ot-font.cc \ |
| src/hb-ot-layout.cc \ |
| src/hb-ot-map.cc \ |
| src/hb-ot-shape.cc \ |
| src/hb-ot-shape-complex-arabic.cc \ |
| src/hb-ot-shape-complex-default.cc \ |
| src/hb-ot-shape-complex-hangul.cc \ |
| src/hb-ot-shape-complex-hebrew.cc \ |
| src/hb-ot-shape-complex-indic.cc \ |
| src/hb-ot-shape-complex-indic-table.cc \ |
| src/hb-ot-shape-complex-myanmar.cc \ |
| src/hb-ot-shape-complex-thai.cc \ |
| src/hb-ot-shape-complex-tibetan.cc \ |
| src/hb-ot-shape-complex-use.cc \ |
| src/hb-ot-shape-complex-use-table.cc \ |
| src/hb-ot-shape-normalize.cc \ |
| src/hb-ot-shape-fallback.cc \ |
| $(NULL) |
| |
| ############################################################# |
| # build the harfbuzz shared library |
| # |
| include $(CLEAR_VARS) |
| LOCAL_ARM_MODE := arm |
| LOCAL_MODULE_TAGS := optional |
| LOCAL_SRC_FILES:= \ |
| $(HARFBUZZ_SRC_FILES) \ |
| src/hb-icu.cc |
| LOCAL_CPP_EXTENSION := .cc |
| LOCAL_SHARED_LIBRARIES := \ |
| libcutils \ |
| libicuuc \ |
| libicui18n \ |
| libutils \ |
| liblog |
| LOCAL_C_INCLUDES += \ |
| $(LOCAL_PATH)/src |
| LOCAL_CFLAGS += -DHB_NO_MT -DHAVE_OT -DHAVE_ICU -DHAVE_ICU_BUILTIN -Werror -Wno-unused-parameter \ |
| -Wno-missing-field-initializers |
| LOCAL_MODULE:= libharfbuzz_ng |
| include $(BUILD_SHARED_LIBRARY) |