Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 1 | # Copyright (C) 2011 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 | |
| 15 | LOCAL_PATH := $(call my-dir) |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 16 | |
| 17 | ############ some local flags |
Ken Wakasa | e3f26dd | 2012-07-27 18:06:06 +0900 | [diff] [blame] | 18 | # If you change any of those flags, you need to rebuild both libjni_latinime_common_static |
| 19 | # and the shared library that uses libjni_latinime_common_static. |
Satoshi Kataoka | 3ffaf39 | 2012-06-29 12:53:34 +0900 | [diff] [blame] | 20 | FLAG_DBG ?= false |
satok | 1035bc9 | 2012-06-13 16:07:54 -0700 | [diff] [blame] | 21 | FLAG_DO_PROFILE ?= false |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 22 | |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 23 | ###################################### |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 24 | include $(CLEAR_VARS) |
| 25 | |
Ken Wakasa | 3ef3e24 | 2012-03-30 09:53:51 +0900 | [diff] [blame] | 26 | LATIN_IME_SRC_DIR := src |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 27 | |
Ken Wakasa | 31f42ba | 2013-04-08 20:22:37 +0900 | [diff] [blame] | 28 | LOCAL_C_INCLUDES += $(LOCAL_PATH)/$(LATIN_IME_SRC_DIR) |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 29 | |
Ken Wakasa | 6e66349 | 2012-11-03 02:50:47 +0900 | [diff] [blame] | 30 | LOCAL_CFLAGS += -Werror -Wall -Wextra -Weffc++ -Wformat=2 -Wcast-qual -Wcast-align \ |
Ken Wakasa | f775bf3 | 2012-11-07 07:52:34 +0900 | [diff] [blame] | 31 | -Wwrite-strings -Wfloat-equal -Wpointer-arith -Winit-self -Wredundant-decls -Wno-system-headers |
| 32 | |
| 33 | ifeq ($(TARGET_ARCH), arm) |
Ben Cheng | c2fbd7c | 2013-04-03 16:59:29 -0700 | [diff] [blame] | 34 | ifeq ($(TARGET_GCC_VERSION), 4.6) |
Ken Wakasa | f775bf3 | 2012-11-07 07:52:34 +0900 | [diff] [blame] | 35 | LOCAL_CFLAGS += -Winline |
Ken Wakasa | 249a614 | 2012-11-20 10:24:32 +0900 | [diff] [blame] | 36 | endif # TARGET_GCC_VERSION |
| 37 | endif # TARGET_ARCH |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 38 | |
| 39 | # To suppress compiler warnings for unused variables/functions used for debug features etc. |
| 40 | LOCAL_CFLAGS += -Wno-unused-parameter -Wno-unused-function |
| 41 | |
| 42 | LATIN_IME_JNI_SRC_FILES := \ |
| 43 | com_android_inputmethod_keyboard_ProximityInfo.cpp \ |
| 44 | com_android_inputmethod_latin_BinaryDictionary.cpp \ |
Satoshi Kataoka | c4e4dfe | 2012-08-08 19:40:44 +0900 | [diff] [blame] | 45 | com_android_inputmethod_latin_DicTraverseSession.cpp \ |
Yuichiro Hanada | 112257e | 2013-08-20 15:48:16 +0900 | [diff] [blame] | 46 | com_android_inputmethod_latin_makedict_Ver3DictDecoder.cpp \ |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 47 | jni_common.cpp |
| 48 | |
| 49 | LATIN_IME_CORE_SRC_FILES := \ |
Ken Wakasa | 31f42ba | 2013-04-08 20:22:37 +0900 | [diff] [blame] | 50 | suggest/core/suggest.cpp \ |
Ken Wakasa | b68e734 | 2013-04-08 17:08:19 +0900 | [diff] [blame] | 51 | $(addprefix suggest/core/dicnode/, \ |
| 52 | dic_node.cpp \ |
| 53 | dic_node_utils.cpp \ |
| 54 | dic_nodes_cache.cpp) \ |
Ken Wakasa | a65c267 | 2013-05-31 00:02:57 +0900 | [diff] [blame] | 55 | $(addprefix suggest/core/dictionary/, \ |
Satoshi Kataoka | d181120 | 2013-06-03 13:06:32 +0900 | [diff] [blame] | 56 | bigram_dictionary.cpp \ |
Keisuke Kuroynagi | 1ff81e8 | 2013-06-14 20:35:41 +0900 | [diff] [blame] | 57 | bloom_filter.cpp \ |
Ken Wakasa | a65c267 | 2013-05-31 00:02:57 +0900 | [diff] [blame] | 58 | dictionary.cpp \ |
Keisuke Kuroynagi | 1ff81e8 | 2013-06-14 20:35:41 +0900 | [diff] [blame] | 59 | digraph_utils.cpp \ |
Ken Wakasa | 2fa3693 | 2013-12-13 17:09:16 +0900 | [diff] [blame] | 60 | error_type_utils.cpp \ |
| 61 | multi_bigram_map.cpp \ |
| 62 | unigram_property.cpp) \ |
Ken Wakasa | 29432f8 | 2013-05-30 19:45:53 +0900 | [diff] [blame] | 63 | $(addprefix suggest/core/layout/, \ |
Ken Wakasa | 94da44e | 2013-05-30 20:12:47 +0900 | [diff] [blame] | 64 | additional_proximity_chars.cpp \ |
Ken Wakasa | 29432f8 | 2013-05-30 19:45:53 +0900 | [diff] [blame] | 65 | proximity_info.cpp \ |
| 66 | proximity_info_params.cpp \ |
| 67 | proximity_info_state.cpp \ |
| 68 | proximity_info_state_utils.cpp) \ |
Satoshi Kataoka | 3107b46 | 2013-04-01 17:57:31 +0900 | [diff] [blame] | 69 | suggest/core/policy/weighting.cpp \ |
| 70 | suggest/core/session/dic_traverse_session.cpp \ |
Keisuke Kuroynagi | 26de707 | 2013-07-30 17:41:13 +0900 | [diff] [blame] | 71 | $(addprefix suggest/policyimpl/dictionary/, \ |
Keisuke Kuroyanagi | 23d3ed9 | 2013-08-13 20:35:16 +0900 | [diff] [blame] | 72 | header/header_policy.cpp \ |
Keisuke Kuroyanagi | e28927d | 2013-09-18 18:27:01 +0900 | [diff] [blame] | 73 | header/header_read_write_utils.cpp \ |
Keisuke Kuroyanagi | f1e383e | 2013-08-12 17:37:59 +0900 | [diff] [blame] | 74 | shortcut/shortcut_list_reading_utils.cpp \ |
Ken Wakasa | 2fa3693 | 2013-12-13 17:09:16 +0900 | [diff] [blame] | 75 | structure/dictionary_structure_with_buffer_policy_factory.cpp) \ |
| 76 | $(addprefix suggest/policyimpl/dictionary/bigram/, \ |
| 77 | bigram_list_read_write_utils.cpp \ |
| 78 | ver4_bigram_list_policy.cpp) \ |
| 79 | $(addprefix suggest/policyimpl/dictionary/structure/pt_common/, \ |
| 80 | dynamic_pt_gc_event_listeners.cpp \ |
| 81 | dynamic_pt_reading_helper.cpp \ |
| 82 | dynamic_pt_reading_utils.cpp \ |
| 83 | dynamic_pt_updating_helper.cpp \ |
| 84 | dynamic_pt_writing_utils.cpp) \ |
| 85 | $(addprefix suggest/policyimpl/dictionary/structure/v2/, \ |
Keisuke Kuroynagi | 647c000 | 2013-08-01 16:15:35 +0900 | [diff] [blame] | 86 | patricia_trie_policy.cpp \ |
| 87 | patricia_trie_reading_utils.cpp) \ |
Ken Wakasa | 2fa3693 | 2013-12-13 17:09:16 +0900 | [diff] [blame] | 88 | $(addprefix suggest/policyimpl/dictionary/structure/v4/, \ |
| 89 | ver4_dict_buffers.cpp \ |
| 90 | ver4_dict_constants.cpp \ |
| 91 | ver4_patricia_trie_node_reader.cpp \ |
| 92 | ver4_patricia_trie_node_writer.cpp \ |
| 93 | ver4_patricia_trie_policy.cpp \ |
| 94 | ver4_patricia_trie_reading_utils.cpp \ |
| 95 | ver4_patricia_trie_writing_helper.cpp) \ |
| 96 | $(addprefix suggest/policyimpl/dictionary/structure/v4/content/, \ |
| 97 | bigram_dict_content.cpp \ |
| 98 | probability_dict_content.cpp \ |
| 99 | shortcut_dict_content.cpp \ |
| 100 | sparse_table_dict_content.cpp \ |
| 101 | terminal_position_lookup_table.cpp) \ |
Keisuke Kuroyanagi | 941811c | 2013-08-22 18:05:15 +0900 | [diff] [blame] | 102 | $(addprefix suggest/policyimpl/dictionary/utils/, \ |
Keisuke Kuroyanagi | 2660f83 | 2013-09-02 17:17:54 +0900 | [diff] [blame] | 103 | buffer_with_extendable_buffer.cpp \ |
Keisuke Kuroyanagi | 941811c | 2013-08-22 18:05:15 +0900 | [diff] [blame] | 104 | byte_array_utils.cpp \ |
Keisuke Kuroyanagi | 1592eb8 | 2013-09-26 10:48:43 +0900 | [diff] [blame] | 105 | dict_file_writing_utils.cpp \ |
Ken Wakasa | 2fa3693 | 2013-12-13 17:09:16 +0900 | [diff] [blame] | 106 | file_utils.cpp \ |
Keisuke Kuroyanagi | 13d5dc9 | 2013-10-02 16:23:44 +0900 | [diff] [blame] | 107 | forgetting_curve_utils.cpp \ |
Ken Wakasa | 2fa3693 | 2013-12-13 17:09:16 +0900 | [diff] [blame] | 108 | format_utils.cpp \ |
| 109 | mmapped_buffer.cpp \ |
| 110 | sparse_table.cpp) \ |
Satoshi Kataoka | e67ede1 | 2013-04-04 17:58:10 +0900 | [diff] [blame] | 111 | suggest/policyimpl/gesture/gesture_suggest_policy_factory.cpp \ |
Ken Wakasa | b68e734 | 2013-04-08 17:08:19 +0900 | [diff] [blame] | 112 | $(addprefix suggest/policyimpl/typing/, \ |
| 113 | scoring_params.cpp \ |
| 114 | typing_scoring.cpp \ |
| 115 | typing_suggest_policy.cpp \ |
| 116 | typing_traversal.cpp \ |
Ken Wakasa | addea83 | 2013-06-03 12:25:57 +0900 | [diff] [blame] | 117 | typing_weighting.cpp) \ |
Keisuke Kuroynagi | 527c128 | 2013-06-11 17:04:40 +0900 | [diff] [blame] | 118 | $(addprefix utils/, \ |
Jean Chalard | b6f5d3e | 2013-07-02 12:51:16 +0900 | [diff] [blame] | 119 | autocorrection_threshold_utils.cpp \ |
Keisuke Kuroynagi | 527c128 | 2013-06-11 17:04:40 +0900 | [diff] [blame] | 120 | char_utils.cpp \ |
Ken Wakasa | 2fa3693 | 2013-12-13 17:09:16 +0900 | [diff] [blame] | 121 | log_utils.cpp \ |
| 122 | time_keeper.cpp) |
Ken Wakasa | 8658e55 | 2012-06-30 08:53:33 +0900 | [diff] [blame] | 123 | |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 124 | LOCAL_SRC_FILES := \ |
| 125 | $(LATIN_IME_JNI_SRC_FILES) \ |
Ken Wakasa | 0336ec4 | 2012-07-02 23:52:35 +0900 | [diff] [blame] | 126 | $(addprefix $(LATIN_IME_SRC_DIR)/, $(LATIN_IME_CORE_SRC_FILES)) |
Ken Wakasa | 8fcd769 | 2012-06-28 21:47:11 +0900 | [diff] [blame] | 127 | |
| 128 | ifeq ($(FLAG_DO_PROFILE), true) |
| 129 | $(warning Making profiling version of native library) |
Ken Wakasa | 6cee61d | 2013-01-15 16:15:48 +0900 | [diff] [blame] | 130 | LOCAL_CFLAGS += -DFLAG_DO_PROFILE -funwind-tables -fno-inline |
Ken Wakasa | 8fcd769 | 2012-06-28 21:47:11 +0900 | [diff] [blame] | 131 | else # FLAG_DO_PROFILE |
| 132 | ifeq ($(FLAG_DBG), true) |
| 133 | $(warning Making debug version of native library) |
Ken Wakasa | 6cee61d | 2013-01-15 16:15:48 +0900 | [diff] [blame] | 134 | LOCAL_CFLAGS += -DFLAG_DBG -funwind-tables -fno-inline |
Ken Wakasa | ccebd5c | 2013-01-09 15:21:44 +0900 | [diff] [blame] | 135 | ifeq ($(FLAG_FULL_DBG), true) |
| 136 | $(warning Making full debug version of native library) |
| 137 | LOCAL_CFLAGS += -DFLAG_FULL_DBG |
| 138 | endif # FLAG_FULL_DBG |
Ken Wakasa | 8fcd769 | 2012-06-28 21:47:11 +0900 | [diff] [blame] | 139 | endif # FLAG_DBG |
| 140 | endif # FLAG_DO_PROFILE |
| 141 | |
Ken Wakasa | 8658e55 | 2012-06-30 08:53:33 +0900 | [diff] [blame] | 142 | LOCAL_MODULE := libjni_latinime_common_static |
Ken Wakasa | 8fcd769 | 2012-06-28 21:47:11 +0900 | [diff] [blame] | 143 | LOCAL_MODULE_TAGS := optional |
| 144 | |
Ken Wakasa | f52c1c5 | 2012-07-06 15:53:51 +0900 | [diff] [blame] | 145 | LOCAL_SDK_VERSION := 14 |
| 146 | LOCAL_NDK_STL_VARIANT := stlport_static |
Ken Wakasa | 8fcd769 | 2012-06-28 21:47:11 +0900 | [diff] [blame] | 147 | |
| 148 | include $(BUILD_STATIC_LIBRARY) |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 149 | ###################################### |
| 150 | include $(CLEAR_VARS) |
| 151 | |
| 152 | # All code in LOCAL_WHOLE_STATIC_LIBRARIES will be built into this shared library. |
Satoshi Kataoka | deb0987 | 2012-07-03 17:45:50 +0900 | [diff] [blame] | 153 | LOCAL_WHOLE_STATIC_LIBRARIES := libjni_latinime_common_static |
Ken Wakasa | 0c1a3ec | 2012-03-31 05:07:32 +0900 | [diff] [blame] | 154 | |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 155 | ifeq ($(FLAG_DO_PROFILE), true) |
| 156 | $(warning Making profiling version of native library) |
Ken Wakasa | b543c9c | 2012-11-27 12:17:42 +0900 | [diff] [blame] | 157 | LOCAL_LDFLAGS += -llog |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 158 | else # FLAG_DO_PROFILE |
| 159 | ifeq ($(FLAG_DBG), true) |
| 160 | $(warning Making debug version of native library) |
Ken Wakasa | b543c9c | 2012-11-27 12:17:42 +0900 | [diff] [blame] | 161 | LOCAL_LDFLAGS += -llog |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 162 | endif # FLAG_DBG |
| 163 | endif # FLAG_DO_PROFILE |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 164 | |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 165 | LOCAL_MODULE := libjni_latinime |
Jean-Baptiste Queru | 11c4121 | 2012-01-23 09:06:00 -0800 | [diff] [blame] | 166 | LOCAL_MODULE_TAGS := optional |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 167 | |
Ken Wakasa | f52c1c5 | 2012-07-06 15:53:51 +0900 | [diff] [blame] | 168 | LOCAL_SDK_VERSION := 14 |
| 169 | LOCAL_NDK_STL_VARIANT := stlport_static |
Andrew Hsieh | 5fe05eb | 2012-12-21 09:25:56 +0800 | [diff] [blame] | 170 | LOCAL_LDFLAGS += -ldl |
Ken Wakasa | 0c1a3ec | 2012-03-31 05:07:32 +0900 | [diff] [blame] | 171 | |
Ken Wakasa | d5e35ac | 2011-12-13 19:46:15 +0900 | [diff] [blame] | 172 | include $(BUILD_SHARED_LIBRARY) |
Ying Wang | 32f0e24 | 2012-03-29 14:57:55 -0700 | [diff] [blame] | 173 | |
| 174 | #################### Clean up the tmp vars |
| 175 | LATIN_IME_CORE_SRC_FILES := |
| 176 | LATIN_IME_JNI_SRC_FILES := |
| 177 | LATIN_IME_SRC_DIR := |