CMakeLists.txt 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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. #FuzzyLite uses MSVC pragmas in headers, so, we need to disable -Wunknown-pragmas
  10. if(MINGW)
  11. add_compile_options(-Wno-unknown-pragmas)
  12. endif()
  13. if(NOT FORCE_BUNDLED_FL)
  14. find_package(fuzzylite)
  15. else()
  16. set(fuzzylite_FOUND FALSE)
  17. endif()
  18. if(TARGET fuzzylite::fuzzylite AND MSVC)
  19. install_vcpkg_imported_tgt(fuzzylite::fuzzylite)
  20. endif()
  21. if(NOT fuzzylite_FOUND)
  22. set(FL_BUILD_BINARY OFF CACHE BOOL "")
  23. set(FL_BUILD_SHARED OFF CACHE BOOL "")
  24. set(FL_BUILD_TESTS OFF CACHE BOOL "")
  25. if(ANDROID)
  26. set(FL_BACKTRACE OFF CACHE BOOL "" FORCE)
  27. endif()
  28. add_subdirectory(FuzzyLite EXCLUDE_FROM_ALL)
  29. add_library(fuzzylite::fuzzylite ALIAS staticTarget)
  30. endif()
  31. #######################################
  32. # Add subdirectories #
  33. #######################################
  34. add_subdirectory(BattleAI)
  35. add_subdirectory(VCAI)
  36. add_subdirectory(StupidAI)
  37. add_subdirectory(EmptyAI)
  38. if(ENABLE_NULLKILLER_AI)
  39. add_subdirectory(Nullkiller)
  40. endif()