#!/bin/bash

# https://git-aws.internal.justin.tv/twitch-apps/twitch-iphone/blob/master/Twitch.tv/Code/TwitchKit/install-twitchsdk.sh

export PATH=/usr/local/bin:$PATH

set -euo pipefail

cd $(dirname $0)
git submodule update --init --remote || exit 1
git submodule update || exit 1
D=$(pwd)
cd sdk/build

# regenerate twitchsdk

OUTPUT_DIR=$D/external
if [ ! -d $D/external/twitchsdk ]; then
	python -B generate_twitchsdk.py \
	--static \
	--module=broadcast \
	--module=chat \
	--platform=darwin \
	--compiler=xcode \
	--target=ios \
	--arch=x64 \
	--output-dir="${OUTPUT_DIR}" \
	--project-name=twitchsdk \
	--use-relative-paths true \
	-settings \
	TTV_USEALL_DARWIN_IMPLEMENTATIONS \
	TTV_USE_STD_WEBSOCKET \
	TTV_USE_STD_THREAD_API \
	TTV_USE_STD_MUTEX \
	TTV_USE_STD_SYSTEM_CLOCK \
	TTV_USE_STD_THREAD \
	TTV_USE_STD_THREAD_SYNC \
	TTV_USE_STD_TRACER \
	TTV_USE_STD_BACKGROUND_EVENT_SCHEDULER \
	TTV_IOS_DEPLOYMENT_TARGET=9.0
	[ $? -eq 0 ] || exit 1
fi

cd $OUTPUT_DIR
cmake .
