Mimalloc Asan (#7)
All checks were successful
Conan Packaging / Package cli11/2.6.1 (push) Successful in 19s
Conan Packaging / Package eabase/01082025 (push) Successful in 14s
Conan Packaging / Package eastl/3.27.01 (push) Successful in 20s
Conan Packaging / Package flatbuffers/25.12.19 (push) Successful in 1m10s
Conan Packaging / Package lodepng/cci.20260210 (push) Successful in 19s
Conan Packaging / Package meshoptimizer/1.0 (push) Successful in 18s
Conan Packaging / Package assimp/6.0.4 (push) Successful in 2m52s
Conan Packaging / Package mimalloc/3.2.8 (push) Successful in 24s
Conan Packaging / Package rapidhash/3.0 (push) Successful in 13s
Conan Packaging / Package unordered_dense/4.8.1 (push) Successful in 19s
Conan Packaging / Package vulkan-memory-allocator/3.3.0 (push) Successful in 19s
Conan Packaging / Package pixelmatch-cpp17/1.0.3 (push) Successful in 18s
Conan Packaging / Package sqlite3/3.51.2 (push) Successful in 41s
Conan Packaging / Package stduuid/1.2.3 (push) Successful in 18s
Conan Packaging / Package vulkan-utility-libraries/1.4.313.0 (push) Successful in 19s
Conan Packaging / Package shaderc/2025.3 (push) Successful in 3m50s
Conan Packaging / Package vulkan-validationlayers/1.4.313.0 (push) Successful in 7m30s
All checks were successful
Conan Packaging / Package cli11/2.6.1 (push) Successful in 19s
Conan Packaging / Package eabase/01082025 (push) Successful in 14s
Conan Packaging / Package eastl/3.27.01 (push) Successful in 20s
Conan Packaging / Package flatbuffers/25.12.19 (push) Successful in 1m10s
Conan Packaging / Package lodepng/cci.20260210 (push) Successful in 19s
Conan Packaging / Package meshoptimizer/1.0 (push) Successful in 18s
Conan Packaging / Package assimp/6.0.4 (push) Successful in 2m52s
Conan Packaging / Package mimalloc/3.2.8 (push) Successful in 24s
Conan Packaging / Package rapidhash/3.0 (push) Successful in 13s
Conan Packaging / Package unordered_dense/4.8.1 (push) Successful in 19s
Conan Packaging / Package vulkan-memory-allocator/3.3.0 (push) Successful in 19s
Conan Packaging / Package pixelmatch-cpp17/1.0.3 (push) Successful in 18s
Conan Packaging / Package sqlite3/3.51.2 (push) Successful in 41s
Conan Packaging / Package stduuid/1.2.3 (push) Successful in 18s
Conan Packaging / Package vulkan-utility-libraries/1.4.313.0 (push) Successful in 19s
Conan Packaging / Package shaderc/2025.3 (push) Successful in 3m50s
Conan Packaging / Package vulkan-validationlayers/1.4.313.0 (push) Successful in 7m30s
Reviewed-on: #7 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 #7.
This commit is contained in:
@@ -29,6 +29,7 @@ class MimallocConan(ConanFile):
|
||||
"single_object": [True, False],
|
||||
"guarded": [True, False],
|
||||
"win_redirect": [True, False],
|
||||
"asan": [True, False],
|
||||
}
|
||||
default_options = {
|
||||
"shared": False,
|
||||
@@ -39,6 +40,7 @@ class MimallocConan(ConanFile):
|
||||
"single_object": False,
|
||||
"guarded": False,
|
||||
"win_redirect": False,
|
||||
"asan": False,
|
||||
}
|
||||
|
||||
def export_sources(self):
|
||||
@@ -91,6 +93,11 @@ class MimallocConan(ConanFile):
|
||||
raise ConanInvalidConfiguration(
|
||||
f"Currently, {self.ref} doesn't work properly with shared MD builds in CCI. Contributions welcomed")
|
||||
|
||||
if self.options.override and \
|
||||
self.options.asan:
|
||||
raise ConanInvalidConfiguration(
|
||||
"Asan requires Mimalloc to be compiled without override")
|
||||
|
||||
# Shared overriding requires dynamic runtime for MSVC:
|
||||
if self.options.override and \
|
||||
self.options.shared and \
|
||||
@@ -129,6 +136,7 @@ class MimallocConan(ConanFile):
|
||||
tc.variables["MI_WIN_REDIRECT"] = "ON" if self.options.get_safe("win_redirect") else "OFF"
|
||||
tc.variables["MI_INSTALL_TOPLEVEL"] = "ON"
|
||||
tc.variables["MI_GUARDED"] = self.options.get_safe("guarded", False)
|
||||
tc.variables["MI_TRACK_ASAN"] = "ON" if self.options.get_safe("asan") else "OFF"
|
||||
if Version(self.version) <= "1.7.6":
|
||||
tc.cache_variables["CMAKE_POLICY_VERSION_MINIMUM"] = "3.5" # CMake 4 support
|
||||
tc.generate()
|
||||
@@ -211,9 +219,13 @@ class MimallocConan(ConanFile):
|
||||
return os.path.join(self.package_folder, "lib", "cmake")
|
||||
|
||||
def package_info(self):
|
||||
self.cpp_info.set_property("cmake_file_name", "mimalloc")
|
||||
self.cpp_info.set_property("cmake_target_name", "mimalloc" if self.options.shared else "mimalloc-static")
|
||||
|
||||
if(self.options.asan):
|
||||
self.cpp_info.set_property("cmake_file_name", "mimalloc-asan")
|
||||
self.cpp_info.set_property("cmake_target_name", "mimalloc-asan")
|
||||
else:
|
||||
self.cpp_info.set_property("cmake_file_name", "mimalloc")
|
||||
self.cpp_info.set_property("cmake_target_name", "mimalloc" if self.options.shared else "mimalloc-static")
|
||||
|
||||
if self.options.get_safe("inject"):
|
||||
self.cpp_info.includedirs = []
|
||||
self.cpp_info.libdirs = []
|
||||
|
||||
Reference in New Issue
Block a user