#!/bin/bash

set -euo pipefail

BUILDSYSTEM_ARG=${1:?}
OS_ARG=${2:?}

case "${OS_ARG}" in
    ubuntu*)
        packages=(locales)

        case "${BUILDSYSTEM_ARG}" in
            cmake)
                packages+=(python-pip python-wheel)
                ;;
        esac

        curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -
        source /etc/lsb-release
        echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
        packages+=(telegraf)

        sudo apt-get remove -y --purge man-db # avoid time-consuming trigger
        sudo apt-get update
        sudo apt-get install -y "${packages[@]}"
        sudo locale-gen de_DE.UTF-8 # used by SerializerTest
        ;;

    macOS*)
        packages=(prometheus telegraf)
        brew install "${packages[@]}"
        ;;
esac

case "${BUILDSYSTEM_ARG}" in
    cmake)
        "${VCPKG_INSTALLATION_ROOT}/vcpkg" install benchmark civetweb cppcodec curl gtest zlib
        ;;
esac
