Rebuild acado and add scons command to regenerate mpc (#19685)

* rebuild acado and add scons command to regenerate mpc

* update scons help
old-commit-hash: 7c43a60bda
commatwo_master
Willem Melching 4 years ago committed by GitHub
parent bc9074254e
commit e0f2111061
  1. 10
      .gitattributes
  2. 4
      SConstruct
  3. 3
      phonelibs/acado/aarch64/lib/libacado_casadi.a
  4. 3
      phonelibs/acado/aarch64/lib/libacado_csparse.a
  5. 3
      phonelibs/acado/aarch64/lib/libacado_qpoases.a
  6. 3
      phonelibs/acado/aarch64/lib/libacado_toolkit.a
  7. 1
      phonelibs/acado/aarch64/lib/libacado_toolkit_s.so
  8. 3
      phonelibs/acado/aarch64/lib/libacado_toolkit_s.so.1.2.2beta
  9. 3
      phonelibs/acado/build.sh
  10. 3
      phonelibs/acado/build.txt
  11. 4
      phonelibs/acado/include/acado/code_generation/templates/acado_forces_generator.m.in
  12. 4
      phonelibs/acado/include/acado/code_generation/templates/qpdunes_interface.in
  13. 4
      phonelibs/acado/include/acado/code_generation/templates/qpdunes_split_interface.in
  14. 4
      phonelibs/acado/include/acado/code_generation/templates/qpoases3_interface.c.in
  15. 4
      phonelibs/acado/include/acado/code_generation/templates/templates.hpp
  16. 4
      phonelibs/acado/include/acado/external_packages/eigen3/COPYING.MINPACK
  17. 3
      phonelibs/acado/x64/lib/libacado_casadi.a
  18. 3
      phonelibs/acado/x64/lib/libacado_csparse.a
  19. 3
      phonelibs/acado/x64/lib/libacado_qpoases.a
  20. 3
      phonelibs/acado/x64/lib/libacado_toolkit.a
  21. 1
      phonelibs/acado/x64/lib/libacado_toolkit_s.so
  22. 1
      phonelibs/acado/x64/lib/libacado_toolkit_s.so.1
  23. 3
      phonelibs/acado/x64/lib/libacado_toolkit_s.so.1.2.2beta
  24. 0
      phonelibs/acado/x86_64/lib/libacado_toolkit_s.so.1
  25. 3
      phonelibs/acado/x86_64/lib/libacado_toolkit_s.so.1.2.2beta
  26. 37
      selfdrive/controls/lib/lateral_mpc/SConscript
  27. 38
      selfdrive/controls/lib/longitudinal_mpc/SConscript

10
.gitattributes vendored

@ -7,11 +7,11 @@
*.ipynb filter=nbstripout -diff
external/ffmpeg/bin/ffmpeg_cuda filter=lfs diff=lfs merge=lfs -text
models/segnet.keras filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x64/lib/libacado_toolkit.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x64/lib/libacado_toolkit_s.so.1.2.2beta filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x64/lib/libacado_casadi.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x64/lib/libacado_csparse.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x64/lib/libacado_qpoases.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x86_64/lib/libacado_toolkit.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x86_64/lib/libacado_toolkit_s.so.1.2.2beta filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x86_64/lib/libacado_casadi.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x86_64/lib/libacado_csparse.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/x86_64/lib/libacado_qpoases.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/aarch64/lib/libacado_toolkit.a filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/aarch64/lib/libacado_toolkit_s.so.1.2.2beta filter=lfs diff=lfs merge=lfs -text
phonelibs/acado/aarch64/lib/libacado_casadi.a filter=lfs diff=lfs merge=lfs -text

@ -25,6 +25,10 @@ AddOption('--compile_db',
action='store_true',
help='build clang compilation database')
AddOption('--mpc-generate',
action='store_true',
help='regenerates the mpc sources')
real_arch = arch = subprocess.check_output(["uname", "-m"], encoding='utf8').rstrip()
if platform.system() == "Darwin":
arch = "Darwin"

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:02c9bdd43a4c5692c16cb437ab000e74efc908d4dcefb39144f7a0eb0e5b67ab
size 33782

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9a6bd05cc21d157f8705575df0ef69d02974375bc800edd353d504635ca090bd
size 92090

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:be4f11bcff1de30751fbf8fb014d0e14d7334c17fac3dfd4cb2f445391a08946
size 634068

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:80a5b92a8162edd22507d2d9e9abf794ebd4aa4b5affa398443a01f6ab71fde3
size 23341704

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b21d9a8c8b68715062830ed91420bad10622ae157f8daecca98adb7082c7de43
size 8813880

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6c22ce7271de55f940175f761347dfd3a791ba72f11eb44be99af2943bb2b4ae
size 558

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c199f546c90ac3a08a8afdc56d6839d045563e01ab6994dd5ea24ffb688bf604
size 394

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4fdc25caeea307698f552958d182555db0e9a95a128baafe8e88ec4f4d3d2b4a
size 6592
oid sha256:32da23f60e04e1ee677fd8b23f05c4b71af17b42c35a57d180b6ffddfe24734c
size 6813

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9748d1371c3238d1f559456e4cf4809341c7941ea9428cbd0bdcfc093b45701d
size 2609
oid sha256:8bfa8fe9ce654dae93674811657dfba4e89d07caa69855a1e27e9249e96d5f60
size 2686

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a707d626ee797981ddb27af1f1dd4f8e988209741f4285fa29ff97408f4cb2f5
size 3053
oid sha256:35f2be66539f74ea6b2ba18c4afe5e3026c6a19af1d6c55e1662b51f08361c54
size 3149

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:063bfa2531b5c031bf80fd6870713076da9758055750b1b340134b6e60697086
size 1550
oid sha256:a6fbf7cad50b34c070d45ca8dfc881eadc3544967cbfb662f610e030506b2d29
size 1610

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:97d5cb9224ef7af2ee39a97800aacc3be00eaa74b6e310ab0ee9cd44d3ed65ba
size 2859
oid sha256:5218981faa25368edffdb1c8b352cf49665ab6f9db08f34f951573db01bc1002
size 2791

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8887036b1039e299ebcc8b95a73ea1538df548393fb8462361c80bea605a4fbe
size 2194
oid sha256:f5b330efdad110cdd84d585ec61220b0650461fa599e36b13e1726c9346dcfb9
size 2246

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9b4709c7fd3a4e6bdddfaee0d4482087ba1ea1a90c71d4a16652f1b363e010e8
size 49744

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ebe06e3c6876190aae26d48b1dfbfb5a50d1887e5d6e6482669e48caabc1a80e
size 141978

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4cf01f68ba2dca1054334af49c77b443267b33551efe188f3176ac176b93fd7e
size 754948

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:469251cfd2abb76655132f3de1da86f91fe1f581701fe1780cb1c77074d7fa3b
size 26405540

@ -1 +0,0 @@
libacado_toolkit_s.so.1.2.2beta

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:72239a2333dadef2e351e0a627c68e43fef7d8d6c9ea674f07b6c81d91f4db5e
size 10249488

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:178937c40ec3326eab01c62f3239a885cbfb1308af65436d831dd4fa6a7d619e
size 10304768

@ -7,23 +7,40 @@ cpp_path = [
"#phonelibs/qpoases/INCLUDE/EXTRAS",
"#phonelibs/qpoases/SRC/",
"#phonelibs/qpoases",
"lib_mpc_export"
"lib_mpc_export",
]
generated_c = [
'lib_mpc_export/acado_auxiliary_functions.c',
'lib_mpc_export/acado_qpoases_interface.cpp',
'lib_mpc_export/acado_integrator.c',
'lib_mpc_export/acado_solver.c',
]
mpc_files = [
"lateral_mpc.c",
Glob("lib_mpc_export/*.c"),
Glob("lib_mpc_export/*.cpp"),
generated_h = [
'lib_mpc_export/acado_common.h',
'lib_mpc_export/acado_auxiliary_functions.h',
'lib_mpc_export/acado_qpoases_interface.hpp',
]
interface_dir = Dir('lib_mpc_export')
SConscript(['#phonelibs/qpoases/SConscript'], variant_dir='lib_qp', exports=['interface_dir'])
if GetOption('mpc_generate'):
generator_cpp = File('generator.cpp')
acado_libs = [File(f"#phonelibs/acado/{arch}/lib/libacado_toolkit.a"),
File(f"#phonelibs/acado/{arch}/lib/libacado_casadi.a"),
File(f"#phonelibs/acado/{arch}/lib/libacado_csparse.a")]
generator = env.Program('generator', generator_cpp, LIBS=acado_libs, CPPPATH=cpp_path,
CCFLAGS=env['CCFLAGS'] + ["-Wno-deprecated", "-Wno-overloaded-shift-op-parentheses"])
cmd = f"cd {Dir('.').get_abspath()} && {generator[0].get_abspath()}"
env.Command(generated_c + generated_h, generator, cmd)
mpc_files = ["lateral_mpc.c"] + generated_c
env.SharedLibrary('mpc', mpc_files, LIBS=['m', 'qpoases'], LIBPATH=['lib_qp'], CPPPATH=cpp_path)
# if arch != "aarch64":
# acado_libs = [File("#phonelibs/acado/x64/lib/libacado_toolkit.a"),
# File("#phonelibs/acado/x64/lib/libacado_casadi.a"),
# File("#phonelibs/acado/x64/lib/libacado_csparse.a")]
# env.Program('generator', 'generator.cpp', LIBS=acado_libs, CPPPATH=cpp_path)

@ -8,25 +8,41 @@ cpp_path = [
"#phonelibs/qpoases/INCLUDE/EXTRAS",
"#phonelibs/qpoases/SRC/",
"#phonelibs/qpoases",
"lib_mpc_export"
"lib_mpc_export",
]
generated_c = [
'lib_mpc_export/acado_auxiliary_functions.c',
'lib_mpc_export/acado_qpoases_interface.cpp',
'lib_mpc_export/acado_integrator.c',
'lib_mpc_export/acado_solver.c',
]
mpc_files = [
"longitudinal_mpc.c",
Glob("lib_mpc_export/*.c"),
Glob("lib_mpc_export/*.cpp"),
generated_h = [
'lib_mpc_export/acado_common.h',
'lib_mpc_export/acado_auxiliary_functions.h',
'lib_mpc_export/acado_qpoases_interface.hpp',
]
interface_dir = Dir('lib_mpc_export')
SConscript(['#phonelibs/qpoases/SConscript'], variant_dir='lib_qp', exports=['interface_dir'])
if GetOption('mpc_generate'):
generator_cpp = File('generator.cpp')
acado_libs = [File(f"#phonelibs/acado/{arch}/lib/libacado_toolkit.a"),
File(f"#phonelibs/acado/{arch}/lib/libacado_casadi.a"),
File(f"#phonelibs/acado/{arch}/lib/libacado_csparse.a")]
generator = env.Program('generator', generator_cpp, LIBS=acado_libs, CPPPATH=cpp_path,
CCFLAGS=env['CCFLAGS'] + ["-Wno-deprecated", "-Wno-overloaded-shift-op-parentheses"])
cmd = f"cd {Dir('.').get_abspath()} && {generator[0].get_abspath()}"
env.Command(generated_c + generated_h, generator, cmd)
mpc_files = ["longitudinal_mpc.c"] + generated_c
env.SharedLibrary('mpc1', mpc_files, LIBS=['m', 'qpoases'], LIBPATH=['lib_qp'], CPPPATH=cpp_path)
env.SharedLibrary('mpc2', mpc_files, LIBS=['m', 'qpoases'], LIBPATH=['lib_qp'], CPPPATH=cpp_path)
# if arch != "aarch64":
# acado_libs = [File("#phonelibs/acado/x64/lib/libacado_toolkit.a"),
# File("#phonelibs/acado/x64/lib/libacado_casadi.a"),
# File("#phonelibs/acado/x64/lib/libacado_csparse.a")]
# env.Program('generator', 'generator.cpp', LIBS=acado_libs, CPPPATH=cpp_path)

Loading…
Cancel
Save