# FIRST:  See Building_Qt5_From_Source_with_QtWebkit_Added_Back_on_MacOSX.txt
#
# SECOND: See Building_A_Relocatable_Python_3.7_Framework_on_MacOSX.txt
#

#         Also make sure you have the latest XCode and ** Command Line tools** Installed
#         via: xcode-select --install
#
#         You will need to have CMake 3.0 or later installed and in your path


# XCode 7 and later users may want to install the openssl headers into /usr/local/include from 
# the MacOSX 10.10sdk from XCode 6.3 as XCode 7 and later have removed the openssl headers.
# libSSL is still installed for backwards compatibility

# standard deployment target
export MACOSX_DEPLOYMENT_TARGET=10.9

# Set the location of where the relocatable Python framework was installed
# See "Building_A_Relocatable_Python_3.7_Framework_on_MacOSX.txt

# Remember to stay away from /tmp locations as Mac OSX has a daemon that will delete 
# files in tmp older than 3 days right out from underneath the user
export MYDEST=/Users/$USER/devtools/Frameworks

# Set the location of where Qt is installed
export MYQTHOME=~/Qt511

# Set the location of where you want your Sigil repo to be stored
export MYSIGILREPO=~/repo

# clone the Sigil git repo
cd ${MYSIGILREPO}
git clone https://github.com/Sigil-Ebook/Sigil.git

# Add Qt to the path
export PATH=${PATH}:${MYQTHOME}/bin

# Make sure the newly created relocatable python framework is found first
# **before** any system version of Python3

export PATH=${MYDEST}/Python.framework/Versions/3.7/bin:${PATH}

mkdir build
cd build

# Mac OSX Yosemite users with XCode 6.3 should use the following cmake command:

cmake -DPKG_SYSTEM_PYTHON=1 \
      -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 \
      -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_PREFIX_PATH=${MYQTHOME}/lib/cmake \
      -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/ \
      ../Sigil

# Mac OSX El Capitan with XCode 7 should use the following cmake command:
cmake -DPKG_SYSTEM_PYTHON=1 \
      -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 \
      -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_CXX_FLAGS=-Wno-inconsistent-missing-override \
      -DCMAKE_PREFIX_PATH=${MYQTHOME}/lib/cmake \
      -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/ \
      ../Sigil

# Mac OS Sierra (OSX 10.12) shoud use the following with XCode 8 
cmake -DPKG_SYSTEM_PYTHON=1 \
      -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 \
      -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_CXX_FLAGS=-Wno-inconsistent-missing-override \
      -DCMAKE_PREFIX_PATH=${MYQTHOME}/lib/cmake \
      -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/ \
      ../Sigil

# Mac OS High Sierra (OSX 10.13) shoud use the following with XCode 9 
cmake -DPKG_SYSTEM_PYTHON=1 \
      -DCMAKE_OSX_DEPLOYMENT_TARGET=10.9 \
      -DCMAKE_BUILD_TYPE=Release \
      -DCMAKE_CXX_FLAGS=-Wno-inconsistent-missing-override \
      -DCMAKE_PREFIX_PATH=${MYQTHOME}/lib/cmake \
      -DCMAKE_OSX_SYSROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/ \
      ../Sigil

# After cmake completes
make
make addframeworks

# In ${MYSIGILREPO}/build/bin you will find the newly built Sigil.app

# To test if the newly bundled python 3 version of Sigil is working properly ypou can do the following:

1. download testplugin_v014.zip from https://github.com/Sigil-Ebook/Sigil/tree/master/docs
2. open Sigil.app to the normal nearly blank template epub it generates when opened
3. use Plugins->Manage Plugins menu and make sure the "Use Bundled Python" checkbox is checked
4. use the "Add Plugin" button to navigate to and add testplugin.zip and then hit "Okay" to exit the Manage Plugins Dialog
5. use Plugins->Edit->testplugins to launch the plugin and hit the "Start" button to run it
6. check the plugin output window for your missing or broken plugin test results
