Android.mk revision a6f5c46836090d1197e453c15c7f04c3c796a7ab
1# Copyright (C) 2013 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#      http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15LOCAL_PATH := $(call my-dir)
16
17include $(CLEAR_VARS)
18
19minikin_src_files := \
20    AnalyzeStyle.cpp \
21    CmapCoverage.cpp \
22    FontCollection.cpp \
23    FontFamily.cpp \
24    FontLanguageListCache.cpp \
25    GraphemeBreak.cpp \
26    HbFaceCache.cpp \
27    Hyphenator.cpp \
28    Layout.cpp \
29    LayoutUtils.cpp \
30    LineBreaker.cpp \
31    Measurement.cpp \
32    MinikinInternal.cpp \
33    MinikinRefCounted.cpp \
34    MinikinFontFreeType.cpp \
35    SparseBitSet.cpp
36
37minikin_c_includes := \
38    external/harfbuzz_ng/src \
39    external/freetype/include \
40    frameworks/minikin/include
41
42minikin_shared_libraries := \
43    libharfbuzz_ng \
44    libft2 \
45    liblog \
46    libz \
47    libicuuc \
48    libutils
49
50ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
51# Enable race detection on eng and userdebug build.
52enable_race_detection := -DENABLE_RACE_DETECTION
53else
54enable_race_detection :=
55endif
56
57LOCAL_MODULE := libminikin
58LOCAL_EXPORT_C_INCLUDE_DIRS := frameworks/minikin/include
59LOCAL_SRC_FILES := $(minikin_src_files)
60LOCAL_C_INCLUDES := $(minikin_c_includes)
61LOCAL_CPPFLAGS += -Werror -Wall -Wextra $(enable_race_detection)
62LOCAL_SHARED_LIBRARIES := $(minikin_shared_libraries)
63
64include $(BUILD_SHARED_LIBRARY)
65
66include $(CLEAR_VARS)
67
68LOCAL_MODULE := libminikin
69LOCAL_MODULE_TAGS := optional
70LOCAL_EXPORT_C_INCLUDE_DIRS := frameworks/minikin/include
71LOCAL_SRC_FILES := $(minikin_src_files)
72LOCAL_C_INCLUDES := $(minikin_c_includes)
73LOCAL_CPPFLAGS += -Werror -Wall -Wextra $(enable_race_detection)
74LOCAL_SHARED_LIBRARIES := $(minikin_shared_libraries)
75
76include $(BUILD_STATIC_LIBRARY)
77
78include $(CLEAR_VARS)
79
80# Reduced library (currently just hyphenation) for host
81
82LOCAL_MODULE := libminikin_host
83LOCAL_MODULE_TAGS := optional
84LOCAL_EXPORT_C_INCLUDE_DIRS := frameworks/minikin/include
85LOCAL_C_INCLUDES := $(minikin_c_includes)
86LOCAL_CPPFLAGS += -Werror -Wall -Wextra $(enable_race_detection)
87LOCAL_SHARED_LIBRARIES := liblog libicuuc-host
88
89LOCAL_SRC_FILES := Hyphenator.cpp
90
91include $(BUILD_HOST_STATIC_LIBRARY)
92