mirror of
https://github.com/XRPLF/clio.git
synced 2026-09-28 07:58:10 +00:00
Note: some files are taken exactly as they are in rippled, so changing something here wouldn't be great (because they will drift)
43 lines
1.3 KiB
Python
Executable File
43 lines
1.3 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
import itertools
|
|
import json
|
|
|
|
LINUX_OS = ["heavy", "heavy-arm64"]
|
|
LINUX_CONTAINERS = ['{ "image": "ghcr.io/xrplf/xrpld/nix-ubuntu:sha-060957e" }']
|
|
LINUX_COMPILERS = ["gcc", "clang"]
|
|
|
|
MACOS_OS = ["macos-26-apple-clang-21"]
|
|
MACOS_CONTAINERS = [""]
|
|
MACOS_COMPILERS = ["apple-clang"]
|
|
|
|
BUILD_TYPES = ["Release", "Debug"]
|
|
|
|
# Values of the `SANITIZERS` environment variable read by the `sanitizers` conan
|
|
# profile. An empty string builds without any sanitizers.
|
|
SANITIZERS = ["address", "thread", "undefinedbehavior", ""]
|
|
|
|
|
|
def generate_matrix():
|
|
configurations = []
|
|
|
|
for os, container, compiler in itertools.chain(
|
|
itertools.product(LINUX_OS, LINUX_CONTAINERS, LINUX_COMPILERS),
|
|
itertools.product(MACOS_OS, MACOS_CONTAINERS, MACOS_COMPILERS),
|
|
):
|
|
for sanitizers, build_type in itertools.product(SANITIZERS, BUILD_TYPES):
|
|
configurations.append(
|
|
{
|
|
"os": os,
|
|
"container": container,
|
|
"compiler": compiler,
|
|
"sanitizers": sanitizers,
|
|
"build_type": build_type,
|
|
}
|
|
)
|
|
|
|
return {"include": configurations}
|
|
|
|
|
|
if __name__ == "__main__":
|
|
print(f"matrix={json.dumps(generate_matrix())}")
|