| 1 | #!/bin/sh |
| 2 | |
| 3 | . ./config.sh |
| 4 | |
| 5 | MONERO_URL="https://github.com/cake-tech/monero.git" |
| 6 | MONERO_DIR_PATH="${EXTERNAL_IOS_SOURCE_DIR}/monero" |
| 7 | MONERO_VERSION=release-v0.18.3.2 |
| 8 | BUILD_TYPE=release |
| 9 | PREFIX=${EXTERNAL_IOS_DIR} |
| 10 | DEST_LIB_DIR=${EXTERNAL_IOS_LIB_DIR}/monero |
| 11 | DEST_INCLUDE_DIR=${EXTERNAL_IOS_INCLUDE_DIR}/monero |
| 12 | |
| 13 | echo "Cloning monero from - $MONERO_URL to - $MONERO_DIR_PATH" |
| 14 | git clone $MONERO_URL $MONERO_DIR_PATH |
| 15 | cd $MONERO_DIR_PATH |
| 16 | git checkout $MONERO_VERSION |
| 17 | git submodule update --init --force |
| 18 | mkdir -p build |
| 19 | cd .. |
| 20 | |
| 21 | mkdir -p $DEST_LIB_DIR |
| 22 | mkdir -p $DEST_INCLUDE_DIR |
| 23 | |
| 24 | ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" |
| 25 | if [ -z $INSTALL_PREFIX ]; then |
| 26 | INSTALL_PREFIX=${ROOT_DIR}/monero |
| 27 | fi |
| 28 | |
| 29 | for arch in "arm64" #"armv7" "arm64" |
| 30 | do |
| 31 | |
| 32 | echo "Building IOS ${arch}" |
| 33 | export CMAKE_INCLUDE_PATH="${PREFIX}/include" |
| 34 | export CMAKE_LIBRARY_PATH="${PREFIX}/lib" |
| 35 | |
| 36 | case $arch in |
| 37 | "armv7" ) |
| 38 | DEST_LIB=../../lib-armv7;; |
| 39 | "arm64" ) |
| 40 | DEST_LIB=../../lib-armv8-a;; |
| 41 | esac |
| 42 | |
| 43 | rm -r monero/build > /dev/null |
| 44 | |
| 45 | mkdir -p monero/build/${BUILD_TYPE} |
| 46 | pushd monero/build/${BUILD_TYPE} |
| 47 | cmake -D IOS=ON \ |
| 48 | -DARCH=${arch} \ |
| 49 | -DCMAKE_BUILD_TYPE=${BUILD_TYPE} \ |
| 50 | -DSTATIC=ON \ |
| 51 | -DBUILD_GUI_DEPS=ON \ |
| 52 | -DUNBOUND_INCLUDE_DIR=${EXTERNAL_IOS_INCLUDE_DIR} \ |
| 53 | -DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \ |
| 54 | -DUSE_DEVICE_TREZOR=OFF \ |
| 55 | -DMANUAL_SUBMODULES=1 \ |
| 56 | ../.. |
| 57 | make wallet_api -j4 |
| 58 | find . -path ./lib -prune -o -name '*.a' -exec cp '{}' lib \; |
| 59 | cp -r ./lib/* $DEST_LIB_DIR |
| 60 | cp ../../src/wallet/api/wallet2_api.h $DEST_INCLUDE_DIR |
| 61 | popd |
| 62 | |
| 63 | done |