#!/bin/bash

SOURCE_DIR="$(realpath "$(dirname "$0")/../../demo")"

DATASET_URL="https://download.geofabrik.de/europe/monaco-latest.osm.pbf"
DATASET_FILE="monaco-latest.osm.pbf"

TEMPDIR="$(mktemp -d)"

cd "${TEMPDIR}" || exit 1

CMD=("wget" "-q" "${DATASET_URL}" "-O" "${DATASET_FILE}")

echo "Downloading dataset: ${CMD[@]}"
${CMD[@]}
RC=$?

if [ "${RC}" -ne 0 ]; then
    cd "${OLDPWD}" || exit 1
    rm -rf "${TEMPDIR}"

    exit "${RC}"
fi

echo

CMD=("cp" "-rv" "${SOURCE_DIR}"/*.cpp .)

echo "Copying C++ sources: ${CMD[@]}"
${CMD[@]}
RC=$?

if [ "${RC}" -ne 0 ]; then
    cd "${OLDPWD}" || exit 1
    rm -rf "${TEMPDIR}"

    exit "${RC}"
fi

echo

CMD=("g++" "-Wall" "-o" "osmpbf-outline" "osmpbf-outline.cpp" "-losmpbf" "-lprotobuf" "-lz")

echo "Compiling C++ sources: ${CMD[@]}"
${CMD[@]}
RC=$?

if [ "${RC}" -ne 0 ]; then
    cd "${OLDPWD}" || exit 1
    rm -rf "${TEMPDIR}"

    exit "${RC}"
fi

CMD=("./osmpbf-outline" "--color" "${DATASET_FILE}")

echo "Executing: ${CMD[@]}"
${CMD[@]}
RC=$?

cd "${OLDPWD}" || exit 1
rm -rf "${TEMPDIR}"

exit "${RC}"
