conanfile.py 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. from conan import ConanFile
  2. class SyncspiritRecipe(ConanFile):
  3. settings = "os", "compiler", "build_type", "arch"
  4. generators = "CMakeToolchain", "CMakeDeps"
  5. options = {
  6. "shared": [True, False],
  7. }
  8. default_options = {
  9. "shared": True,
  10. "*/*:shared": True,
  11. "fltk/*:with_xft": True,
  12. "fltk/*:with_gl": False,
  13. "boost/*:magic_autolink": False,
  14. "boost/*:visibility": "hidden",
  15. "boost/*:header_only": False,
  16. "boost/*:without_serialization": True,
  17. "boost/*:without_graph": True,
  18. "boost/*:without_fiber": True,
  19. "boost/*:without_log": True,
  20. "boost/*:without_math": True,
  21. "boost/*:without_process": True,
  22. "boost/*:without_stacktrace": True,
  23. "boost/*:without_test": True,
  24. "boost/*:without_wave": True,
  25. "pugixml/*:no_exceptions": True,
  26. "rotor/*:enable_asio": True,
  27. "rotor/*:enable_thread": True,
  28. "rotor/*:enable_fltk": True,
  29. }
  30. def requirements(self):
  31. self.requires("c-ares/1.28.1")
  32. self.requires("fltk/1.3.9")
  33. self.requires("libqrencode/4.1.1")
  34. self.requires("lz4/1.9.4")
  35. self.requires("nlohmann_json/3.11.2")
  36. self.requires("openssl/3.3.2")
  37. self.requires("protobuf/3.21.12")
  38. self.requires("pugixml/1.13")
  39. self.requires("rotor/0.32")
  40. self.requires("spdlog/1.14.1")
  41. self.requires("tomlplusplus/3.3.0")
  42. self.requires("zlib/1.2.13")
  43. self.requires("catch2/3.3.1")
  44. self.requires("boost/1.86.0", headers=True, libs=True, transitive_libs=True, force=True)
  45. def build_requirements(self):
  46. self.tool_requires("protobuf/3.21.12")
  47. self.tool_requires("cmake/3.31.5")