# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
include common.mk

AOSP_OBJ_FILES=\
	$(src_aosp_compability_CXX_OBJECTS)\
	$(src_aosp_suggest_policyimpl_gesture_CXX_OBJECTS)\
	$(src_aosp_suggest_policyimpl_typing_CXX_OBJECTS)\
	$(src_aosp_suggest_policyimpl_dictionary_CXX_OBJECTS)\
	$(src_aosp_suggest_policyimpl_dictionary_bigram_CXX_OBJECTS)\
	$(src_aosp_suggest_policyimpl_dictionary_header_CXX_OBJECTS)\
	$(src_aosp_suggest_policyimpl_dictionary_utils_CXX_OBJECTS)\
	$(src_aosp_suggest_policyimpl_dictionary_shortcut_CXX_OBJECTS)\
	$(src_aosp_suggest_core_session_CXX_OBJECTS)\
	$(src_aosp_suggest_core_dicnode_CXX_OBJECTS)\
	$(src_aosp_suggest_core_CXX_OBJECTS)\
	$(src_aosp_suggest_core_dictionary_CXX_OBJECTS)\
	$(src_aosp_suggest_core_policy_CXX_OBJECTS)\
	$(src_aosp_suggest_core_layout_CXX_OBJECTS)\
	src/aosp/utils/char_utils.o\
	src/aosp/utils/autocorrection_threshold_utils.o

CXX_LIBRARY(src/libsuggest.so): $(AOSP_OBJ_FILES)