Files
ESP32_Serial_Swiss_Army_Knife/tests/ssh_auth_policy/run.py
T

23 lines
816 B
Python

#!/usr/bin/env python3
"""Compile and run the actual allocation-free firmware policy on the host."""
import os
from pathlib import Path
import shlex
import subprocess
import tempfile
ROOT = Path(__file__).resolve().parents[2]
env = dict(os.environ, CCACHE_DISABLE="1")
with tempfile.TemporaryDirectory(prefix="ssh-auth-policy-") as temporary:
binary = Path(temporary) / "test"
command = shlex.split(env.get("CC", "cc")) + [
"-std=c11", "-Wall", "-Wextra", "-Werror", "-pedantic",
*shlex.split(env.get("CFLAGS", """-O2""")),
"-I", str(ROOT / "src"),
str(ROOT / "src/ssh_auth_policy.c"),
str(ROOT / "tests/ssh_auth_policy/test.c"),
"-o", str(binary),
]
subprocess.run(command, env=env, check=True)
subprocess.run([str(binary)], env=env, check=True)