You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
2.4 KiB

  1. # We can't build glog with gflags, unless gflags is pre-installed.
  2. # If build glog with pre-installed gflags, there will be conflict.
  3. #message(STATUS "${BoldGreen}glog: ${glog_SOURCE_DIR}${ColourReset}")
  4. set(openfst_BUILD "${LIB_BASE_DIR}/openfst-build")
  5. if(NOT EXISTS ${openfst_BUILD})
  6. # install openfst
  7. #./configure --prefix=${openfst_SOURCE_DIR}/build --enable-static --disable-shared --with-pic
  8. execute_process(
  9. COMMAND ./configure --prefix=${openfst_BUILD}
  10. WORKING_DIRECTORY ${LIB_BASE_DIR}/openfst-src)
  11. execute_process(
  12. COMMAND cmake --build . --target install
  13. WORKING_DIRECTORY ${openfst_BUILD})
  14. execute_process(
  15. COMMAND cmake --install .
  16. WORKING_DIRECTORY ${openfst_BUILD})
  17. endif()
  18. # We can't build glog with gflags, unless gflags is pre-installed.
  19. # If build glog with pre-installed gflags, there will be conflict.
  20. # gflags和glog现在被我安装到了系统盘下/usr/lib/x86_64-linux-gnu
  21. find_package(gflags)
  22. if(TARGET gflags)
  23. message(STATUS "${BoldGreen}TARGET: ${gflags_FOUND}${ColourReset}")
  24. set_target_properties(gflags PROPERTIES INTERFACE_COMPILE_OPTIONS "-fPIC")
  25. endif()
  26. set(WITH_GFLAGS OFF CACHE BOOL "whether build glog with gflags" FORCE)
  27. find_package(glog)
  28. # 下面这堆关键字是防止cmake出一堆无关的提示
  29. if(NOT GRAPH_TOOLS)
  30. set(HAVE_BIN OFF CACHE BOOL "Build the fst binaries" FORCE)
  31. set(HAVE_SCRIPT OFF CACHE BOOL "Build the fstscript" FORCE)
  32. endif()
  33. set(HAVE_COMPACT OFF CACHE BOOL "Build compact" FORCE)
  34. set(HAVE_CONST OFF CACHE BOOL "Build const" FORCE)
  35. set(HAVE_GRM OFF CACHE BOOL "Build grm" FORCE)
  36. set(HAVE_FAR OFF CACHE BOOL "Build far" FORCE)
  37. set(HAVE_PDT OFF CACHE BOOL "Build pdt" FORCE)
  38. set(HAVE_MPDT OFF CACHE BOOL "Build mpdt" FORCE)
  39. set(HAVE_LINEAR OFF CACHE BOOL "Build linear" FORCE)
  40. set(HAVE_LOOKAHEAD OFF CACHE BOOL "Build lookahead" FORCE)
  41. set(HAVE_NGRAM OFF CACHE BOOL "Build ngram" FORCE)
  42. set(HAVE_SPECIAL OFF CACHE BOOL "Build special" FORCE)
  43. FetchContent_Declare(openfst
  44. SOURCE_DIR ${LIB_BASE_DIR}/openfst-src)
  45. FetchContent_MakeAvailable(openfst)
  46. include_directories(${LIB_BASE_DIR}/openfst-src/src/include)
  47. message(STATUS "${BoldGreen}openfst_BINARY_DIR: ${openfst_BINARY_DIR}${ColourReset}")
  48. add_dependencies(fst gflags_nothreads_static glog::glog)
  49. #set_target_properties(fst PROPERTIES COMPILE_FLAGS "-fPIC")
  50. target_link_libraries(fst PUBLIC gflags_nothreads_static glog)
  51. list(APPEND third_party_libraries fst)