You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
23 lines
857 B
23 lines
857 B
Import('env', 'envCython', 'common', 'arch')
|
|
|
|
envDBC = env.Clone()
|
|
dbc_file_path = '-DDBC_FILE_PATH=\'"%s"\'' % (envDBC.Dir("../dbc").abspath)
|
|
envDBC['CXXFLAGS'] += [dbc_file_path]
|
|
src = ["dbc.cc", "parser.cc", "packer.cc", "common.cc"]
|
|
|
|
# shared library for openpilot
|
|
LINKFLAGS = envDBC["LINKFLAGS"]
|
|
if arch == "Darwin":
|
|
LINKFLAGS += ["-Wl,-install_name,@loader_path/libdbc.dylib"]
|
|
libdbc = envDBC.SharedLibrary('libdbc', src, LIBS=[common, ], LINKFLAGS=LINKFLAGS)
|
|
|
|
# Build packer and parser
|
|
lenv = envCython.Clone()
|
|
lenv["LIBPATH"].append(Dir("."))
|
|
lenv["RPATH"] = [libdbc[0].dir.abspath, ]
|
|
parser = lenv.Program('parser_pyx.so', 'parser_pyx.pyx', LIBS=[common, libdbc[0].name])
|
|
packer = lenv.Program('packer_pyx.so', 'packer_pyx.pyx', LIBS=[common, libdbc[0].name])
|
|
|
|
opendbc_python = Alias("opendbc_python", [parser, packer])
|
|
|
|
Export('opendbc_python')
|
|
|