Files
sunnypilot/tools/replay/SConscript
T
2026-03-09 20:36:57 -04:00

37 lines
1.4 KiB
Python

import os
import subprocess
Import('env', 'arch', 'common', 'messaging', 'visionipc', 'cereal')
replay_env = env.Clone()
replay_env['CCFLAGS'] += ['-Wno-deprecated-declarations']
if arch == "Darwin":
openssl_prefixes = []
for formula in ("openssl@3", "openssl"):
try:
prefix = subprocess.check_output(['brew', '--prefix', formula], encoding='utf8').strip()
if os.path.isdir(prefix):
openssl_prefixes.append(prefix)
except (FileNotFoundError, subprocess.CalledProcessError):
continue
for prefix in openssl_prefixes:
replay_env['CPPPATH'] += [f"{prefix}/include"]
replay_env['LIBPATH'] += [f"{prefix}/lib"]
base_frameworks = []
base_libs = [common, messaging, cereal, visionipc, 'm', 'ssl', 'crypto', 'pthread']
replay_lib_src = ["replay.cc", "consoleui.cc", "camera.cc", "filereader.cc", "logreader.cc", "framereader.cc",
"route.cc", "util.cc", "seg_mgr.cc", "timeline.cc", "py_downloader.cc"]
if arch != "Darwin":
replay_lib_src.append("qcom_decoder.cc")
replay_lib = replay_env.Library("replay", replay_lib_src, LIBS=base_libs, FRAMEWORKS=base_frameworks)
Export('replay_lib')
replay_libs = [replay_lib, 'avformat', 'avcodec', 'swresample', 'avutil', 'x264', 'z', 'bz2', 'zstd', 'yuv', 'ncurses'] + base_libs
replay_env.Program("replay", ["main.cc"], LIBS=replay_libs, FRAMEWORKS=base_frameworks)
if GetOption('extras'):
replay_env.Program('tests/test_replay', ['tests/test_replay.cc'], LIBS=replay_libs)