File size: 2,374 Bytes
158b61b |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
cmake_minimum_required(VERSION 2.8.8) # # The KenLM cmake files make use of add_library(... OBJECTS ...) # # This syntax allows grouping of source files when compiling # (effectively creating "fake" libraries based on source subdirs). # # This syntax was only added in cmake version 2.8.8 # # see http://www.cmake.org/Wiki/CMake/Tutorials/Object_Library # This CMake file was created by Lane Schwartz <[email protected]> set(KENLM_MAX_ORDER 6 CACHE STRING "Maximum supported ngram order") add_definitions(-DKENLM_MAX_ORDER=${KENLM_MAX_ORDER}) # Explicitly list the source files for this subdirectory # # If you add any source files to this subdirectory # that should be included in the kenlm library, # (this excludes any unit test files) # you should add them to the following list: set(KENLM_SOURCE bhiksha.cc binary_format.cc config.cc lm_exception.cc model.cc quantize.cc read_arpa.cc search_hashed.cc search_trie.cc sizes.cc trie.cc trie_sort.cc value_build.cc virtual_interface.cc vocab.cc ) # Group these objects together for later use. # # Given add_library(foo OBJECT ${my_foo_sources}), # refer to these objects as $<TARGET_OBJECTS:foo> # add_library(kenlm OBJECT ${KENLM_SOURCE}) # This directory has children that need to be processed add_subdirectory(builder) add_subdirectory(common) add_subdirectory(filter) # Explicitly list the executable files to be compiled set(EXE_LIST query fragment build_binary ) AddExes(EXES ${EXE_LIST} DEPENDS $<TARGET_OBJECTS:kenlm> $<TARGET_OBJECTS:kenlm_util> LIBRARIES ${Boost_LIBRARIES} pthread) # Conditionally build the interpolation code if(BUILD_INTERPOLATE) add_subdirectory(interpolate) endif() if(BUILD_TESTING) set(KENLM_BOOST_TESTS_LIST left_test partial_test) AddTests(TESTS ${KENLM_BOOST_TESTS_LIST} DEPENDS $<TARGET_OBJECTS:kenlm> $<TARGET_OBJECTS:kenlm_util> LIBRARIES ${Boost_LIBRARIES} pthread TEST_ARGS ${CMAKE_CURRENT_SOURCE_DIR}/test.arpa) # model_test requires an extra command line parameter KenLMAddTest(TEST model_test DEPENDS $<TARGET_OBJECTS:kenlm> $<TARGET_OBJECTS:kenlm_util> LIBRARIES ${Boost_LIBRARIES} pthread TEST_ARGS ${CMAKE_CURRENT_SOURCE_DIR}/test.arpa ${CMAKE_CURRENT_SOURCE_DIR}/test_nounk.arpa) endif() |