#!/bin/bash
set -e
ROOT="$(dirname "$(realpath "$0")")"
SRC_FILES="src/*.cpp"
# =====================
# ==== Parse flags ====
# =====================
for arg in "$@"; do
if [[ "$arg" == "-r" ]]; then
BUILD="Release"
fi
done
# ===================
# === Directories ===
# ===================
mkdir -p build
# mkdir -p external
# ====================
# === Dependencies ===
# ====================
# sudo apt install libsdl2-dev
# sudo dnf install SDL2-devel
SDL_CFLAGS=$(sdl2-config --cflags)
SDL_LDFLAGS=$(sdl2-config --libs)
# =========================
# === Compilation Flags ===
# =========================
if [ "$BUILD" == "Release" ]; then
CFLAGS="-std=c++20 -O2"
LFLAGS=""
else
CFLAGS="-std=c++20 -g -O0"
LFLAGS=""
fi
# ===================
# === Compilation ===
# ===================
pushd build > /dev/null
g++ \
$CFLAGS \
$SDL_CFLAGS \
$ROOT/$SRC_FILES \
$LFLAGS \
$SDL_LDFLAGS \
-o renderer
popd > /dev/null