CMakeLists.txt 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #######################################
  2. # FuzzyLite support #
  3. #######################################
  4. if(NOT WIN32 AND NOT APPLE)
  5. option(FORCE_BUNDLED_FL "Force to use FuzzyLite included into VCMI's source tree" ON)
  6. else()
  7. option(FORCE_BUNDLED_FL "Force to use FuzzyLite included into VCMI's source tree" OFF)
  8. endif()
  9. if(NOT FORCE_BUNDLED_FL)
  10. find_package(fuzzylite)
  11. else()
  12. set(fuzzylite_FOUND FALSE)
  13. endif()
  14. if(TARGET fuzzylite::fuzzylite AND MSVC)
  15. install_vcpkg_imported_tgt(fuzzylite::fuzzylite)
  16. endif()
  17. if(NOT fuzzylite_FOUND)
  18. set(FL_BUILD_BINARY OFF CACHE BOOL "")
  19. set(FL_BUILD_SHARED OFF CACHE BOOL "")
  20. set(FL_BUILD_TESTS OFF CACHE BOOL "")
  21. add_subdirectory(FuzzyLite/fuzzylite EXCLUDE_FROM_ALL)
  22. add_library(fuzzylite::fuzzylite ALIAS fl-static)
  23. target_include_directories(fl-static PUBLIC ${CMAKE_HOME_DIRECTORY}/AI/FuzzyLite/fuzzylite)
  24. endif()
  25. #######################################
  26. # Add subdirectories #
  27. #######################################
  28. add_subdirectory(BattleAI)
  29. add_subdirectory(StupidAI)
  30. add_subdirectory(EmptyAI)
  31. add_subdirectory(VCAI)
  32. if(ENABLE_NULLKILLER_AI)
  33. add_subdirectory(Nullkiller)
  34. endif()