#!/bin/bash
SAPPHIRE_SRC=../../src

rm -f elastika tubeunit

if [[ "$1" == "debug" ]]; then
    OPTS="-ggdb3 -g3 -O0"
else
    OPTS="-O3"
fi

g++ -std=c++17 -Wall -Werror ${OPTS} -I${SAPPHIRE_SRC} -o bin/lohifilter -D NO_RACK_DEPENDENCY \
    lohifilter.cpp || exit 1

g++ -std=c++17 -Wall -Werror ${OPTS} -I${SAPPHIRE_SRC} -I../include -o bin/elastika -D NO_RACK_DEPENDENCY \
    elastika_standalone.cpp \
    ${SAPPHIRE_SRC}/elastika_mesh.cpp \
    ${SAPPHIRE_SRC}/mesh_physics.cpp || exit 1

g++ -std=c++17 -Wall -Werror ${OPTS} -I${SAPPHIRE_SRC} -I../include -o bin/tubeunit -D NO_RACK_DEPENDENCY \
    tubeunit_standalone.cpp || exit 1

g++ -std=c++17 -Wall -Werror ${OPTS} -I${SAPPHIRE_SRC} -I../include -o bin/envpitch -D NO_RACK_DEPENDENCY \
    envpitch_standalone.cpp || exit 1

g++ -std=c++17 -Wall -Werror ${OPTS} -I${SAPPHIRE_SRC} -I../include -o bin/nucleus -D NO_RACK_DEPENDENCY \
    nucleus_standalone.cpp || exit 1

exit 0
