performance-aware-programming/haversine_02/compile

34 lines
741 B
Bash

#!/bin/bash
CC=clang
CXX=clang++
CFLAGS="-Wall -Wextra -Iinclude "
if [[ "$1" == "release" ]]; then
CFLAGS+="-O3"
else
CFLAGS+="-g"
fi
# profiler
PROFSRC="./src/profiler/timer.c"
PROFFLAGS="-c"
# generator
GENSRC="./src/generator/gen_argparser.cpp ./src/generator/generator.cpp ./src/haversine.cpp ./src/point_types.cpp ./src/generator/main.cpp"
GENOUT=genhavr
(set -x ; $CXX $CFLAGS $GENSRC -o $GENOUT)
# processor
JSONSRC="./src/json/*.c"
JSONFLAGS="-c"
PROCSRC="./*.o ./src/haversine.cpp ./src/point_types.cpp ./src/processor/proc_argparser.cpp ./src/processor/main.cpp"
PROCOUT=prochavr
(set -x ; $CC $CFLAGS $PROFFLAGS $PROFSRC)
(set -x ; $CC $CFLAGS $JSONFLAGS $JSONSRC)
(set -x ; $CXX $CFLAGS $PROCSRC -o $PROCOUT)
rm ./*.o