133 lines
3.9 KiB
Makefile
133 lines
3.9 KiB
Makefile
##
|
|
## 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-sea.cc \
|
|
src/hb-ot-shape-complex-thai.cc \
|
|
src/hb-ot-shape-complex-tibetan.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 \
|
|
external/icu/icu4c/source/common
|
|
LOCAL_CFLAGS += -DHB_NO_MT -DHAVE_OT -DHAVE_ICU -DHAVE_ICU_BUILTIN
|
|
LOCAL_MODULE:= libharfbuzz_ng
|
|
include $(BUILD_SHARED_LIBRARY)
|
|
|
|
#############################################################
|
|
# build the harfbuzz static library
|
|
#
|
|
# If you need to compile HarfBuzz for your NDK app, you
|
|
# might want to include UCDN instead of ICU for Unicode
|
|
# data, and you probably need hb-ft also.
|
|
#
|
|
# ./configure --host=arm-linux-androideabi --prefix=$PLATFORM_PREFIX
|
|
#
|
|
include $(CLEAR_VARS)
|
|
LOCAL_ARM_MODE := arm
|
|
LOCAL_MODULE_TAGS := optional
|
|
LOCAL_SRC_FILES:= \
|
|
$(HARFBUZZ_SRC_FILES) \
|
|
src/hb-ucdn.cc \
|
|
src/hb-ucdn/ucdn.c
|
|
LOCAL_CPP_EXTENSION := .cc
|
|
LOCAL_STATIC_LIBRARIES := libft2
|
|
LOCAL_C_INCLUDES += \
|
|
$(LOCAL_PATH)/src \
|
|
external/freetype/include
|
|
LOCAL_CFLAGS += -DHB_NO_MT -DHAVE_OT -DHAVE_UCDN -DHAVE_FREETYPE
|
|
LOCAL_MODULE:= libharfbuzz_ng
|
|
|
|
include $(BUILD_STATIC_LIBRARY)
|