#!/bin/bash DATE=$(date +"%d/%m/%Y") # Output variables. OUT_DIR="build" OUT_EXE="OpenBooks" # Source and library files. LIB_SOURCES=$(find libs -type f \( -name "*.cpp" -o -name "*.c" \)) SOURCES=$(find src -type f \( -name "*.cpp" \) ! -path "src/countries/*") # Compiler flags. LIBS="-lstdc++ -lglfw -lGL -lm -lssl -lcrypto" FLAGS="-Wall -Wno-changes-meaning -Wno-write-strings -Wno-attributes -Wno-unused-variable -fpermissive -Wno-format-zero-length -ggdb" DEFINITIONS="-D_DATE_=\"$DATE\"" INCLUDE_DIRS="-Ilibs/openssl-3.6.0-beta1/x64/include -Ilibs/ -Iinclude" # Check for test flag if [ "$1" == "-t" ]; then SOURCES="tests/main.cpp src/administration.cpp src/administration_writer.cpp src/administration_reader.cpp src/strops.cpp src/logger.cpp src/locales.cpp src/locales/*.cpp src/providers/*.cpp src/importer.cpp src/memops.cpp src/countries.cpp" OUT_EXE="accounting_tests" DEFINITIONS="-D_TESTING_MODE_ -D_DATE_=$DATE" fi # Compilation command gcc $FLAGS $INCLUDE_DIRS $DEFINITIONS $SOURCES $LIB_SOURCES -o $OUT_DIR/$OUT_EXE $LIBS # Run commands based on input arguments if [ "$1" == "-r" ]; then "$OUT_DIR/$OUT_EXE" "/home/aldrik/Downloads/example.openbook" elif [ "$1" == "-t" ]; then "$OUT_DIR/$OUT_EXE" -v elif [ "$1" == "-d" ]; then gdb "$OUT_DIR/$OUT_EXE" fi