GiteaCI (#1)
Some checks failed
Bigfoot / Build & Test Debug (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test RelWithDebInfo (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test RelWithDebInfo (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test Release (Unity Build: OFF) (push) Has been cancelled
Bigfoot / Build & Test Release (Unity Build: ON) (push) Has been cancelled
Bigfoot / Build & Test Debug (Unity Build: OFF) (push) Has been cancelled

Reviewed-on: #1
Co-authored-by: Romain BOULLARD <romain.boullard@protonmail.com>
Co-committed-by: Romain BOULLARD <romain.boullard@protonmail.com>
This commit was merged in pull request #1.
This commit is contained in:
2026-01-28 14:29:12 +00:00
committed by Romain BOULLARD
parent a82ec43e74
commit 6cd9801ef7
71 changed files with 1639 additions and 745 deletions

View File

@@ -7,7 +7,7 @@ required_conan_version = ">=1.33.0"
class Bigfoot(ConanFile):
name = "bigfoot"
homepage = "https://gitlab.com/bigfootdev/bigfoot"
homepage = "https://git.romainboullard.com/BigfootDev/Bigfoot"
description = "Bigfoot is a 3D game engine written in C++"
topics = ("game engine", "3d")
license = "MIT"
@@ -18,28 +18,20 @@ class Bigfoot(ConanFile):
options = {
"shared": [True, False],
"fPIC": [True, False],
"unity_build": [True, False],
"build_tests": [True, False],
"sample_app": [True, False],
"tracy": [True, False],
"build_tools": [True, False],
"vulkan": [True, False],
"build_benchmarks": [True, False],
"build_benchmarks_lto": [True, False],
"render_doc": [True, False]
}
default_options = {
"shared": False,
"fPIC": True,
"unity_build": True,
"build_tests": False,
"sample_app": False,
"tracy": False,
"build_tools": True,
"vulkan": True,
"build_benchmarks": False,
"build_benchmarks_lto": True,
"render_doc": False
}
generators = "CMakeDeps"
@@ -67,52 +59,49 @@ class Bigfoot(ConanFile):
if(self.options.build_benchmarks):
self.options["benchmark"].enable_exceptions = False
if(self.options.build_benchmarks_lto):
self.options["benchmark"].enable_lto = True
self.options["benchmark"].enable_lto = True
def requirements(self):
self.requires("eastl/3.27.00", transitive_headers=True)
self.requires("unordered_dense/4.7.0", transitive_headers=True)
self.requires("mimalloc/2.2.4", transitive_headers=True)
self.requires("magic_enum/0.9.7", transitive_headers=True)
self.requires("eastl/3.27.01@bigfootdev/main", transitive_headers=True)
self.requires("unordered_dense/4.8.1@bigfootdev/main", transitive_headers=True)
self.requires("mimalloc/3.1.5@bigfootdev/main", transitive_headers=True)
self.requires("stduuid/1.2.3", transitive_headers=True)
self.requires("sqlite3/3.50.4", transitive_headers=True)
self.requires("cli11/2.5.0")
self.requires("xxhash/0.8.3", transitive_headers=True)
self.requires("sqlite3/3.51.0@bigfootdev/main", transitive_headers=True)
self.requires("cli11/2.6.0")
self.requires("rapidhash/3.0@bigfootdev/main", transitive_headers=True)
self.requires("effolkronium-random/1.5.0", transitive_headers=True)
self.requires("zeus_expected/1.3.0", transitive_headers=True)
self.requires("flatbuffers/25.9.23", transitive_headers=True)
self.requires("flatbuffers/25.12.19@bigfootdev/main", transitive_headers=True)
if(self.settings.build_type == "RelWithDebInfo" or self.settings.build_type == "Debug"):
self.requires("quill/10.0.1", transitive_headers=True)
self.requires("quill/11.0.2", transitive_headers=True)
self.requires("cpptrace/1.0.4", transitive_headers=True)
if(self.options.tracy):
self.requires("tracy/0.12.2", transitive_headers=True)
self.requires("glm/1.0.1", transitive_headers=True)
self.requires("lodepng/cci.20250727", transitive_headers=True)
self.requires("imgui/1.92.4-docking", transitive_headers=True)
self.requires("lodepng/cci.20250727@bigfootdev/main", transitive_headers=True)
self.requires("imgui/1.92.5-docking", transitive_headers=True)
if(self.options.vulkan):
self.requires("vulkan-headers/1.4.313.0")
if(self.settings.build_type == "RelWithDebInfo" or self.settings.build_type == "Debug"):
self.requires("vulkan-validationlayers/1.4.313.0")
self.requires("vulkan-memory-allocator/3.3.0")
self.requires("vulkan-validationlayers/1.4.313.0@bigfootdev/main")
self.requires("vulkan-memory-allocator/3.3.0@bigfootdev/main")
if(self.options.sample_app or self.options.build_tests or self.options.build_benchmarks):
if(self.options.build_tests or self.options.build_benchmarks):
self.requires("glfw/3.4")
if(self.options.build_tests):
self.test_requires("gtest/1.17.0")
self.test_requires("pixelmatch-cpp17/1.0.3")
self.test_requires("pixelmatch-cpp17/1.0.3@bigfootdev/main")
if(self.options.build_tools):
self.requires("spirv-cross/1.4.313.0")
self.requires("shaderc/2025.3")
self.requires("shaderc/2025.3@bigfootdev/main")
self.requires("stb/cci.20240531", override=True)
self.requires("assimp/5.4.3")
self.requires("meshoptimizer/0.25")
self.requires("assimp/6.0.2")
self.requires("meshoptimizer/1.0@bigfootdev/main")
self.requires("libsquish/1.15")
if(self.options.build_benchmarks):
@@ -121,14 +110,11 @@ class Bigfoot(ConanFile):
def generate(self):
tc = CMakeToolchain(self)
tc.variables["UNITY_BUILD"] = self.options.unity_build
tc.variables["BUILD_TESTS"] = self.options.build_tests
tc.variables["TRACY"] = self.options.tracy
tc.variables["BUILD_TOOLS"] = self.options.build_tools
tc.variables["VULKAN"] = self.options.vulkan
tc.variables["BUILD_BENCHMARKS"] = self.options.build_benchmarks
tc.variables["RENDER_DOC"] = self.options.render_doc
tc.variables["SAMPLE_APP"] = self.options.sample_app
tc.generate()