Files
DockerImages/Linux/BigfootBuilder/conanfile.py
2026-01-29 20:45:32 +00:00

83 lines
2.3 KiB
Python

from conan import ConanFile
from conan.errors import ConanException
class RequirementsConan(ConanFile):
name = "Requirements"
options = {
"packages_channel": ["ANY"]
}
default_options = {
"packages_channel": "main"
}
def configure(self):
self.options['mimalloc'].override = True
self.options['mimalloc'].shared = True
self.options['stduuid'].with_cxx20_span = True
self.options['flatbuffers'].header_only = True
self.options["tracy"].on_demand = True
self.options["spirv-cross"].exceptions = False
self.options["benchmark"].enable_exceptions = False
self.options["benchmark"].enable_lto = True
def _require_with_fallback(self, pkg_name):
ref = f"{pkg_name}@bigfootdev/{self.options.packages_channel}"
fallback_ref = f"{pkg_name}@bigfootdev/main"
try:
self.output.info(f"Trying {ref}")
self.requires(ref)
except ConanException:
self.output.warn(f"{ref} not found, falling back to {fallback_ref}")
self.requires(fallback_ref)
def requirements(self):
bigfoot_packages = [
"eastl/3.27.01",
"unordered_dense/4.8.1",
"mimalloc/3.1.5",
"stduuid/1.2.3",
"sqlite3/3.51.0",
"rapidhash/3.0",
"flatbuffers/25.12.19",
"lodepng/cci.20250727",
"vulkan-validationlayers/1.4.313.0",
"vulkan-memory-allocator/3.3.0",
"pixelmatch-cpp17/1.0.3",
"shaderc/2025.3",
"meshoptimizer/1.0",
]
for pkg in bigfoot_packages:
self._require_with_fallback(pkg)
self.requires("cli11/2.6.0")
self.requires("effolkronium-random/1.5.0")
self.requires("quill/11.0.2")
self.requires("tracy/0.12.2")
self.requires("cpptrace/1.0.4")
self.requires("glm/1.0.1")
self.requires("imgui/1.92.5-docking")
self.requires("glfw/3.4")
self.requires("vulkan-headers/1.4.313.0")
self.requires("spirv-cross/1.4.313.0")
self.requires("gtest/1.17.0")
self.requires("stb/cci.20240531", override=True)
self.requires("assimp/6.0.2")
self.requires("libsquish/1.15")
self.requires("benchmark/1.9.4")