Kouhei Sutou
null+****@clear*****
Sat Oct 25 21:53:14 JST 2014
Kouhei Sutou 2014-10-25 21:53:14 +0900 (Sat, 25 Oct 2014) New Revision: 0f22ec77a487f2b92fa70d4589e4ff98c73b1561 https://github.com/groonga/groonga/commit/0f22ec77a487f2b92fa70d4589e4ff98c73b1561 Message: cmake: support building stem token filter Modified files: CMakeLists.txt plugins/token_filters/CMakeLists.txt Modified: CMakeLists.txt (+32 -0) =================================================================== --- CMakeLists.txt 2014-10-25 21:24:02 +0900 (3db95ae) +++ CMakeLists.txt 2014-10-25 21:53:14 +0900 (be86940) @@ -357,6 +357,38 @@ else() set(GRN_WITH_KYTEA FALSE) endif() +set(GRN_WITH_LIBSTEMMER "auto" + CACHE STRING "use libstemmer for stemming token filter") +if(NOT ${GRN_WITH_LIBSTEMMER} STREQUAL "no") + if(NOT ("${GRN_WITH_LIBSTEMMER}" STREQUAL "yes" OR + "${GRN_WITH_LIBSTEMMER}" STREQUAL "auto")) + if("${LIBSTEMMER_INCLUDE_DIRS}" STREQUAL "") + set(LIBSTEMMER_INCLUDE_DIRS "${GRN_WITH_LIBSTEMMER}/include") + endif() + if("${LIBSTEMMER_LIBRARY_DIRS}" STREQUAL "") + set(LIBSTEMMER_LIBRARY_DIRS "${GRN_WITH_LIBSTEMMER}/lib") + endif() + endif() + set(CMAKE_REQUIRED_INCLUDES_SAVE ${CMAKE_REQUIRED_INCLUDES}) + set(CMAKE_REQUIRED_INCLUDES + ${CMAKE_REQUIRED_INCLUDES} + ${LIBSTEMMER_INCLUDE_DIRS}) + ac_check_headers(libstemmer.h) + ac_check_lib(stemmer sb_stemmer_list "${LIBSTEMMER_LIBRARY_DIRS}") + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES_SAVE}) + if(HAVE_LIBSTEMMER_H AND HAVE_LIBSTEMMER) + set(LIBSTEMMER_LIBRARIES "stemmer") + set(GRN_WITH_LIBSTEMMER TRUE) + else() + if(${GRN_WITH_LIBSTEMMER} STREQUAL "yes") + message(FATAL_ERROR "No libstemmer found") + endif() + set(GRN_WITH_LIBSTEMMER FALSE) + endif() +else() + set(GRN_WITH_LIBSTEMMER FALSE) +endif() + set(GRN_WITH_ZEROMQ "auto" CACHE STRING "use ZeroMQ for suggestion") if(NOT ${GRN_WITH_ZEROMQ} STREQUAL "no") Modified: plugins/token_filters/CMakeLists.txt (+15 -0) =================================================================== --- plugins/token_filters/CMakeLists.txt 2014-10-25 21:24:02 +0900 (e03fbb4) +++ plugins/token_filters/CMakeLists.txt 2014-10-25 21:53:14 +0900 (a0b964f) @@ -30,3 +30,18 @@ set_target_properties(stop_word_token_filter PROPERTIES OUTPUT_NAME "stop_word") target_link_libraries(stop_word_token_filter libgroonga) install(TARGETS stop_word_token_filter DESTINATION "${TOKEN_FILTERS_DIR}") + +if(GRN_WITH_LIBSTEMMER) + read_file_list(${CMAKE_CURRENT_SOURCE_DIR}/stem_sources.am STEM_SOURCES) + include_directories(${LIBSTEMMER_INCLUDE_DIRS}) + link_directories(${LIBSTEMMER_LIBRARY_DIRS}) + add_library(stem_token_filter MODULE ${STEM_SOURCES}) + set_source_files_properties(${STEM_SOURCES} + PROPERTIES + COMPILE_FLAGS "${GRN_C_COMPILE_FLAGS}") + set_target_properties(stem_token_filter PROPERTIES + PREFIX "" + OUTPUT_NAME "stem") + target_link_libraries(stem_token_filter libgroonga ${LIBSTEMMER_LIBRARIES}) + install(TARGETS stem_token_filter DESTINATION "${TOKEN_FILTERS_DIR}") +endif() -------------- next part -------------- HTML����������������������������...Download