[all]
# Universal defines and compiler flags for compile-commands generation
defines = [
  "STUB_PLATFORM",
  "__EMSCRIPTEN__"
]
compiler_flags = [
  "-std=gnu++17",
  "-Wall",
  "-Wextra"
]
# Include flags are passed verbatim; use -I and -isystem as needed
include_flags = [
  "-Isrc",
  "-isystemsrc/platforms/stub"
]

[tools]
# Tool configuration required by BuildFlags.parse
cpp_compiler = ["uv", "run", "python", "-m", "ziglang", "c++"]
linker = ["uv", "run", "python", "-m", "ziglang", "c++"]
archiver = ["uv", "run", "python", "-m", "ziglang", "ar"]
c_compiler = ["uv", "run", "python", "-m", "ziglang", "cc"]
objcopy = ["uv", "run", "python", "-m", "ziglang", "objcopy"]
nm = ["uv", "run", "python", "-m", "ziglang", "nm"]
strip = ["uv", "run", "python", "-m", "ziglang", "strip"]
ranlib = ["uv", "run", "python", "-m", "ziglang", "ranlib"]

[archive]
# Required by BuildFlags.parse; not used for compile-commands generation
# NOTE: Thin archives are ENABLED BY DEFAULT for deterministic builds
# To disable, set: FASTLED_DISABLE_THIN_ARCHIVES=1
flags = "rcsD"
