DIR="./import"
LIBJSON="./libjson"
rm -rf ./import
if [ ! -d "$DIR" ]
then
    mkdir $DIR
fi

cd $DIR
rm twsapi.zip
curl -o twsapi.zip https://interactivebrokers.github.io/downloads/twsapi_macunix.972.18.zip
unzip twsapi.zip
mkdir client
mkdir ssl
cp ./IBJts/source/CppClient/client/* ./client
cp ./IBJts/source/CppClient/ssl/* ./ssl

git clone https://github.com/dchem/libjson.git


if [ "$(uname)" = "Darwin" ]; then
  sed -ie 's@#include "StdAfx.h"@#include "StdAfx.h"\'$'\n''#include <algorithm>\'$'\n''using namespace std;\'$'\n''@g' ./client/EReader.cpp
  sed -ie 's@#pragma once@#pragma once\'$'\n''#include "StdAfx.h"\'$'\n''#include <string>@g' ./client/SoftDollarTier.h
  sed -ie 's@#define JSON_LIBRARY@//#define JSON_LIBRARY@g' ./libjson/JSONOptions.h
elif [ "$(expr substr $(uname -s) 1 5)" = "Linux" ]; then
  sed -i 's@#include "StdAfx.h"@#include "StdAfx.h"\n#include <algorithm>\nusing namespace std;\n@g' ./client/EReader.cpp
  sed -i 's@#pragma once@#pragma once\n#include "StdAfx.h"\n#include <string>@g' ./client/SoftDollarTier.h
  sed -i 's@#define JSON_LIBRARY@//#define JSON_LIBRARY@g' ./libjson/JSONOptions.h
elif [ "$(expr substr $(uname -s) 1 5)" = "MINGW" ]; then
  sed -i 's@#include "StdAfx.h"@#include "StdAfx.h"\n#include <algorithm>\nusing namespace std;\n@g' ./client/EReader.cpp
  sed -i 's@#pragma once@#pragma once\n#include "StdAfx.h"\n#include <string>@g' ./client/SoftDollarTier.h
  sed -i 's/#warning, Release build of libjson, but NDEBUG is not on//g' ./libjson/_internal/Source/JSONDefs.h
  sed -i 's/#error, Release build of libjson, but NDEBUG is not on//g' ./libjson/_internal/Source/JSONDefs.h
  sed -i 's@#define JSON_LIBRARY@//#define JSON_LIBRARY@g' ./libjson/JSONOptions.h
  sed -i 's@#define assert ASSERT@#if _MSC_VER < 1900\n#define assert ASSERT@g' ./client/StdAfx.h
  sed -i 's@#define assert ASSERT@#if _MSC_VER < 1900\n#define assert ASSERT@g' ./ssl/StdAfx.h
  sed -i 's@#define snprintf _snprintf@#define snprintf _snprintf\n#endif\n@g' ./client/StdAfx.h
  sed -i 's@#define snprintf _snprintf@#define snprintf _snprintf\n#endif\n@g' ./ssl/StdAfx.h
fi


