#!/bin/sh

#
# Copyright (C) 2019 Signal Messenger, LLC.
# All rights reserved.
#
# SPDX-License-Identifier: GPL-3.0-only
#

set -e

BIN_DIR="$(realpath -e $(dirname $0))"
. "${BIN_DIR}/env.sh"

case "$1" in
    android|unix)
        WEBRTC_PLATFORM="android"
        ;;
    ios|mac)
        WEBRTC_PLATFORM="ios"
        ;;
    windows)
        WEBRTC_PLATFORM="windows"
        ;;
    *)
        echo "ERROR: Unknown platform type: $1"
        echo "Supported platforms: 'android', 'ios', 'unix', 'mac'"
        exit 1
esac

BIN_DIR="$(realpath -e $(dirname $0))"
. "${BIN_DIR}/env.sh"

if [ -d "$OUTPUT_DIR" ] ; then
    echo "ERROR: Project output directory exists: $OUTPUT_DIR"
    echo "To proceed first remove this directory"
    exit 1
fi
mkdir -p $OUTPUT_DIR
echo "WEBRTC_PLATFORM=$WEBRTC_PLATFORM" > "${OUTPUT_DIR}/platform.env"

# WebRTC checkout
$BIN_DIR/gsync-webrtc "$WEBRTC_REVISION"

# Apply patches to WebRTC
$BIN_DIR/apply-patches

# Platform specific setup
prepare_workspace_platform

echo "WEBRTC_PLATFORM=$WEBRTC_PLATFORM" > "${OUTPUT_DIR}/${WEBRTC_PLATFORM}.env"
