1e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# Copyright (C) 2014 The Android Open Source Project
2e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi#
3e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# Licensed under the Apache License, Version 2.0 (the "License");
4e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# you may not use this file except in compliance with the License.
5e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# You may obtain a copy of the License at
6e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi#
7e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi#      http://www.apache.org/licenses/LICENSE-2.0
8e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi#
9e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# Unless required by applicable law or agreed to in writing, software
10e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# distributed under the License is distributed on an "AS IS" BASIS,
11e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# See the License for the specific language governing permissions and
13e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# limitations under the License.
14e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
15e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiifeq (,$(TARGET_BUILD_APPS))
16e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
17e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# Only build if it's explicitly requested, or running mm/mmm.
18e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiifneq ($(ONE_SHOT_MAKEFILE)$(filter $(MAKECMDGOALS),dicttoolkit),)
19e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
20e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# HACK: Temporarily disable host tool build on Mac until the build system is ready for C++11.
21e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLATINIME_HOST_OSNAME := $(shell uname -s)
22e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiifneq ($(LATINIME_HOST_OSNAME), Darwin) # TODO: Remove this
23e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
24e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_PATH := $(call my-dir)
25e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
26e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiinclude $(CLEAR_VARS)
27e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
28e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLATIN_IME_CORE_PATH := $(LOCAL_PATH)/../jni
29e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
30e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLATIN_IME_DICT_TOOLKIT_SRC_DIR := src
31e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLATIN_IME_CORE_SRC_DIR := ../jni/src
32e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
33e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_CFLAGS += -Werror -Wall -Wextra -Weffc++ -Wformat=2 -Wcast-qual -Wcast-align \
34e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi    -Wwrite-strings -Wfloat-equal -Wpointer-arith -Winit-self -Wredundant-decls \
35e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi    -Woverloaded-virtual -Wsign-promo -Wno-system-headers
36e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
37e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi# To suppress compiler warnings for unused variables/functions used for debug features etc.
38e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_CFLAGS += -Wno-unused-parameter -Wno-unused-function
398fd22fa4942496033c0a32db95aed724a1688634Elliott HughesLOCAL_CFLAGS += -Wno-unused-parameter -Wno-unused-function
40e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
41e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiinclude $(LOCAL_PATH)/NativeFileList.mk
42e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiinclude $(LATIN_IME_CORE_PATH)/NativeFileList.mk
43e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
44e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_C_INCLUDES += $(LOCAL_PATH)/$(LATIN_IME_DICT_TOOLKIT_SRC_DIR) \
45e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi    $(LATIN_IME_CORE_PATH)/$(LATIN_IME_CORE_SRC_DIR)
46e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
47e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_SRC_FILES := $(LATIN_IME_DICT_TOOLKIT_MAIN_SRC_FILES) \
48e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi    $(addprefix $(LATIN_IME_DICT_TOOLKIT_SRC_DIR)/, $(LATIN_IME_DICT_TOOLKIT_SRC_FILES)) \
49e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi    $(addprefix $(LATIN_IME_CORE_SRC_DIR)/, $(LATIN_IME_CORE_SRC_FILES))
50e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
51e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_MODULE := dicttoolkit
52e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_MODULE_TAGS := optional
53e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
54e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke KuroyanagiLOCAL_CXX_STL := libc++
55e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
56e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiinclude $(BUILD_HOST_EXECUTABLE)
57e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi#################### Clean up the tmp vars
58e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiinclude $(LOCAL_PATH)/CleanupNativeFileList.mk
59e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi#################### Unit test
60e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiinclude $(LOCAL_PATH)/UnitTests.mk
61e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
62e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiendif # Darwin - TODO: Remove this
63e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
64e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiendif
65e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagi
66e101a53ffc517a9249d0442bbf435ce214374e9bKeisuke Kuroyanagiendif # TARGET_BUILD_APPS
67