Files
behavior-tree/tools/build_portable.sh
T

17 lines
730 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
project_root="$(cd "$(dirname "$0")/.." && pwd)"
cd "$project_root"
mkdir -p build
cxx="${CXX:-g++}"
flags=(-std=c++17 -O2 -Wall -Wextra -Werror -pthread -Icore/include)
"$cxx" "${flags[@]}" -c core/src/core.cpp -o build/core.o
"$cxx" "${flags[@]}" -c core/src/workflow.cpp -o build/workflow.o
"$cxx" "${flags[@]}" -c core/src/sim_driver.cpp -o build/sim_driver.o
"$cxx" "${flags[@]}" core/examples/demo.cpp build/core.o build/workflow.o build/sim_driver.o -o build/bt_demo
for test_source in core/tests/*_test.cpp; do
test_name="$(basename "$test_source" .cpp)"
"$cxx" "${flags[@]}" -UNDEBUG "$test_source" build/core.o build/workflow.o -o "build/$test_name"
"./build/$test_name"
done