blob: 28fc25f9dc8d6293db71e88e23878c8dab30d53a [file] [log] [blame]
DESTDIR = /usr
LIBDIR = $(DESTDIR)/lib
SHAREDIR = $(DESTDIR)/share/libsuggest
AOSP_SOURCE_FILES=src/aosp/compability/log_utils_mock.cpp\
src/aosp/suggest/policyimpl/gesture/gesture_suggest_policy_factory.cpp\
src/aosp/suggest/policyimpl/typing/scoring_params.cpp\
src/aosp/suggest/policyimpl/typing/typing_weighting.cpp\
src/aosp/suggest/policyimpl/typing/typing_suggest_policy.cpp\
src/aosp/suggest/policyimpl/typing/typing_traversal.cpp\
src/aosp/suggest/policyimpl/typing/typing_scoring.cpp\
src/aosp/suggest/policyimpl/dictionary/header/header_read_write_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/header/header_policy.cpp\
src/aosp/suggest/policyimpl/dictionary/bigram/bigram_list_read_write_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/bigram/dynamic_bigram_list_policy.cpp\
src/aosp/suggest/policyimpl/dictionary/dynamic_patricia_trie_policy.cpp\
src/aosp/suggest/policyimpl/dictionary/patricia_trie_reading_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/patricia_trie_policy.cpp\
src/aosp/suggest/policyimpl/dictionary/dynamic_patricia_trie_reading_helper.cpp\
src/aosp/suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_helper.cpp\
src/aosp/suggest/policyimpl/dictionary/dynamic_patricia_trie_writing_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/dynamic_patricia_trie_node_reader.cpp\
src/aosp/suggest/policyimpl/dictionary/dictionary_structure_with_buffer_policy_factory.cpp\
src/aosp/suggest/policyimpl/dictionary/dynamic_patricia_trie_gc_event_listeners.cpp\
src/aosp/suggest/policyimpl/dictionary/utils/buffer_with_extendable_buffer.cpp\
src/aosp/suggest/policyimpl/dictionary/utils/format_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/utils/dict_file_writing_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/utils/forgetting_curve_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/utils/byte_array_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/shortcut/shortcut_list_reading_utils.cpp\
src/aosp/suggest/policyimpl/dictionary/dynamic_patricia_trie_reading_utils.cpp\
src/aosp/suggest/core/session/dic_traverse_session.cpp\
src/aosp/suggest/core/dicnode/dic_node_utils.cpp\
src/aosp/suggest/core/dicnode/dic_nodes_cache.cpp\
src/aosp/suggest/core/dicnode/dic_node.cpp\
src/aosp/suggest/core/suggest.cpp\
src/aosp/suggest/core/policy/weighting.cpp\
src/aosp/suggest/core/layout/proximity_info_state.cpp\
src/aosp/suggest/core/layout/proximity_info.cpp\
src/aosp/suggest/core/layout/proximity_info_state_utils.cpp\
src/aosp/suggest/core/layout/additional_proximity_chars.cpp\
src/aosp/suggest/core/layout/proximity_info_params.cpp\
src/aosp/suggest/core/dictionary/bigram_dictionary.cpp\
src/aosp/suggest/core/dictionary/multi_bigram_map.cpp\
src/aosp/suggest/core/dictionary/digraph_utils.cpp\
src/aosp/suggest/core/dictionary/bloom_filter.cpp\
src/aosp/suggest/core/dictionary/dictionary.cpp\
src/aosp/utils/char_utils.cpp\
src/aosp/utils/autocorrection_threshold_utils.cpp
SUGGEST_SOURCE_FILES=src/suggest.cpp
SUGGEST_DEMO_FILES=src/demo.cpp
CXXFLAGS=-Iinclude -Isrc/aosp -Isrc/aosp/compability -Isrc -std=c++11
# libsuggest.so library
LIB_SOURCES=$(SUGGEST_SOURCE_FILES) $(AOSP_SOURCE_FILES)
LIB_OBJECTS=$(LIB_SOURCES:%.cpp=%.pic.o)
libsuggest.so: $(LIB_OBJECTS)
g++ -shared -o libsuggest.so $(CXXFLAGS) $(LIB_OBJECTS)
%.pic.o: %.cpp
g++ $(CXXFLAGS) -fPIC -MD -g -c -o $@ $<
# suggest_demo executable
DEMO_SOURCES=$(SUGGEST_DEMO_FILES) $(LIB_SOURCES)
DEMO_OBJECTS=$(DEMO_SOURCES:%.cpp=%.pie.o)
suggest_demo: libsuggest.so $(DEMO_OBJECTS)
g++ -o suggest_demo -lsuggest -lncurses -L. $(CXXFLAGS) $(DEMO_OBJECTS)
%.pie.o: %.cpp
g++ $(CXXFLAGS) -MD -g -c -o $@ $<
# common rules
ALL_OBJECTS=$(DEMO_OBJECTS) $(LIB_OBJECTS)
clean:
rm libsuggest.so | true
rm suggest_demo | true
rm $(ALL_OBJECTS) | true
install: libsuggest.so
install -D -m 0755 libsuggest.so $(LIBDIR)/libsuggest.so
install -D -m 0755 dicts/en_US.dict $(SHAREDIR)/en_US.dict
all: libsuggest.so suggest_demo
-include $(ALL_OBJECTS:%.o=%.d)