Files
clio/tools/rebuild_conan.py
2025-07-10 15:44:12 +01:00

37 lines
978 B
Python
Executable File

#!/usr/bin/env python3
import json
import plumbum
from pathlib import Path
THIS_DIR = Path(__file__).parent.resolve()
ROOT_DIR = THIS_DIR.parent.resolve()
CONAN = plumbum.local["conan"]
def get_profiles():
profiles = CONAN("profile", "list", "--format=json")
return json.loads(profiles)
def rebuild():
profiles = get_profiles()
for build_type in ["Release", "Debug"]:
for profile in profiles:
print(f"Rebuilding {profile} with build type {build_type}")
with plumbum.local.cwd(ROOT_DIR):
CONAN[
"install", ".",
"--build=missing",
f"--output-folder=build_{profile}_{build_type}",
"-s", f"build_type={build_type}",
"-o", "&:tests=True",
"-o", "&:integration_tests=True",
"--profile:all", profile
] & plumbum.FG
if __name__ == "__main__":
rebuild()