#!/usr/bin/env bash

if [[ "$OSTYPE" == "darwin"* ]]; then
    export PATH="/usr/local/bin:/Applications/Docker.app/Contents/Resources/bin:~/.docker/bin:$PATH"
fi
if [[ "$OSTYPE" == "darwin"* ]]; then
    export PATH="/usr/local/bin:/Applications/Docker.app/Contents/Resources/bin:~/.docker/bin:$PATH"
fi
if [[  "$@" =~ "-E capabilities" || "$1" == "-version" || "$1" == "--version" ]]
then
      docker run -i --rm -h `hostname` $($(dirname "${BASH_SOURCE[0]}")/get-user-id-for-docker) --cap-add=SYS_ADMIN --security-opt apparmor:unconfined -v @home_dir@:@home_dir@ -w "$PWD" --user $(id -u):$(id -g) @docker_image_tag@ cmake "$@"
else
    while getopts ":S:B:" arg; do
            case ${arg} in
            B)
                    BUILD_DIR=${OPTARG}
                    ;;
            S)
                    SRC_DIR=${OPTARG}
                    ;;
            *)
                    break
                    ;;
            esac
    done

    shift "$((OPTIND-1))"
    
    whitespace="[[:space:]]"
    for i in "$@"
    do
        if [[ $i =~ $whitespace ]]; then
            i=\"$i\"
        fi
        OPT_ARGS+="$i "
    done

    BUILD_DIR=${BUILD_DIR//$WORKSPACE_DIR/\/workspace}
    SRC_DIR=${SRC_DIR//$WORKSPACE_DIR/\/workspace}
    if [ -n "$VAR_SPECFILE" ]; then
        VAR_SPECFILE=${VAR_SPECFILE/$WORKSPACE_DIR/\/workspace}
    fi

    SRC_OPT="--srcdir=${SRC_DIR}"
    DST_OPT="--dstdir=${BUILD_DIR}"
    
    touch .env.list
    docker run -i --rm -h `hostname` $($(dirname "${BASH_SOURCE[0]}")/get-user-id-for-docker) --env-file .env.list --cap-add=SYS_ADMIN --security-opt apparmor:unconfined -v "${WORKSPACE_DIR}":/workspace -w /workspace --user $(id -u):$(id -g) @docker_image_tag@ apptool build --arm32 "${SRC_OPT}" "${DST_OPT}" --configure ${VAR_SPECFILE:+--specfile "${VAR_SPECFILE}"} ${OPT_ARGS:+"--extra-options=${OPT_ARGS}"}
    @install_dir@/bin/Cmapper @install_dir@/sdk/@release@/targets/armv7hl-meego-linux-gnueabi "${WORKSPACE_DIR}"
fi

if [ -f QtCreatorDeployment.txt ]; then
    sed -i -- "s#/workspace#${WORKSPACE_DIR}#g" QtCreatorDeployment.txt
fi
