libcryfs/conanfile.py
2023-07-08 12:35:53 -07:00

50 lines
2.0 KiB
Python

from conan import ConanFile
class CryFSConan(ConanFile):
settings = "os", "compiler", "build_type", "arch"
requires = [
"range-v3/0.12.0",
"spdlog/1.8.5",
"boost/1.79.0",
]
generators = "cmake"
default_options = {
"boost/*:system_no_deprecated": True,
"boost/*:asio_no_deprecated": True,
"boost/*:filesystem_no_deprecated": True,
"boost/*:without_atomic": False, # needed by boost thread
"boost/*:without_chrono": False, # needed by CryFS
"boost/*:without_container": False, # needed by boost thread
"boost/*:without_context": True,
"boost/*:without_contract": True,
"boost/*:without_coroutine": True,
"boost/*:without_date_time": False, # needed by boost thread
"boost/*:without_exception": False, # needed by boost thread
"boost/*:without_fiber": True,
"boost/*:without_filesystem": False, # needed by CryFS
"boost/*:without_graph": True,
"boost/*:without_graph_parallel": True,
"boost/*:without_iostreams": True,
"boost/*:without_json": True,
"boost/*:without_locale": True,
"boost/*:without_log": True,
"boost/*:without_math": True,
"boost/*:without_mpi": True,
"boost/*:without_nowide": True,
"boost/*:without_program_options": False, # needed by CryFS
"boost/*:without_python": True,
"boost/*:without_random": True,
"boost/*:without_regex": True,
"boost/*:without_serialization": False, # needed by boost date_time
# Stacktrace is needed by CryFS. Stacktrace is a header-only library and linking against its static version actually **disables** stacktraces,
# see https://www.boost.org/doc/libs/1_65_0/doc/html/stacktrace/getting_started.html#stacktrace.getting_started.enabling_and_disabling_stacktrac
# This is why we need to **not** link against the static version of stacktrace.
"boost/*:without_stacktrace": True,
"boost/*:without_system": False, # needed by CryFS
"boost/*:without_test": True,
"boost/*:without_thread": False, # needed by CryFS
"boost/*:without_timer": True,
"boost/*:without_type_erasure": True,
"boost/*:without_wave": True,
}