dev
sh 106 lines 3.04 KB
Raw
1 #!/bin/sh
2
3 . ./config.sh
4
5 ZANO_URL="https://github.com/hyle-team/zano.git"
6 ZANO_DIR_PATH="${EXTERNAL_IOS_SOURCE_DIR}/zano"
7 ZANO_VERSION=fde28efdc5d7efe8741dcb0e62ea0aebc805a373
8
9
10 IOS_TOOLCHAIN_DIR_PATH="${EXTERNAL_IOS_SOURCE_DIR}/ios_toolchain"
11 IOS_TOOLCHAIN_URL="https://github.com/leetal/ios-cmake.git"
12 IOS_TOOLCHAIN_VERSION=06465b27698424cf4a04a5ca4904d50a3c966c45
13
14 export NO_DEFAULT_PATH
15
16 BUILD_TYPE=release
17 PREFIX=${EXTERNAL_IOS_DIR}
18 DEST_LIB_DIR=${EXTERNAL_IOS_LIB_DIR}/zano
19 DEST_INCLUDE_DIR=${EXTERNAL_IOS_INCLUDE_DIR}/zano
20
21 ZANO_MOBILE_IOS_BUILD_FOLDER_ARM64="${ZANO_DIR_PATH}/build"
22 ZANO_MOBILE_IOS_INSTALL_FOLDER_ARM64="${ZANO_DIR_PATH}/install"
23
24 echo "ZANO_URL: $ZANO_URL"
25 echo "IOS_TOOLCHAIN_DIR_PATH: $IOS_TOOLCHAIN_DIR_PATH"
26 echo "ZANO_MOBILE_IOS_BUILD_FOLDER_ARM64: $ZANO_MOBILE_IOS_BUILD_FOLDER_ARM64"
27 echo "ZANO_MOBILE_IOS_INSTALL_FOLDER_ARM64: $ZANO_MOBILE_IOS_INSTALL_FOLDER_ARM64"
28 echo "PREFIX: $PREFIX"
29 echo "DEST_LIB_DIR: $DEST_LIB_DIR"
30 echo "DEST_INCLUDE_DIR: $DEST_INCLUDE_DIR"
31 echo "ZANO_DIR_PATH: $ZANO_DIR_PATH"
32
33 echo "Cloning ios_toolchain from - $IOS_TOOLCHAIN_URL to - $IOS_TOOLCHAIN_DIR_PATH"
34 git clone $IOS_TOOLCHAIN_URL $IOS_TOOLCHAIN_DIR_PATH
35 cd $IOS_TOOLCHAIN_DIR_PATH
36 git checkout $IOS_TOOLCHAIN_VERSION
37 git submodule update --init --force
38 cd ..
39
40 echo "Cloning zano from - $ZANO_URL to - $ZANO_DIR_PATH"
41 git clone $ZANO_URL $ZANO_DIR_PATH
42 cd $ZANO_DIR_PATH
43 git fetch origin
44 if [ $? -ne 0 ]; then
45 echo "Failed to perform command"
46 exit 1
47 fi
48 git checkout $ZANO_VERSION
49 if [ $? -ne 0 ]; then
50 echo "Failed to perform command"
51 exit 1
52 fi
53 git submodule update --init --force
54 if [ $? -ne 0 ]; then
55 echo "Failed to perform command"
56 exit 1
57 fi
58 mkdir -p build
59 cd ..
60
61
62 export CMAKE_INCLUDE_PATH="${PREFIX}/include"
63 export CMAKE_LIBRARY_PATH="${PREFIX}/lib"
64
65
66 rm -rf ${ZANO_MOBILE_IOS_BUILD_FOLDER_ARM64} > /dev/null
67 rm -rf ${ZANO_MOBILE_IOS_INSTALL_FOLDER_ARM64} > /dev/null
68
69 echo "CMAKE_INCLUDE_PATH: $CMAKE_INCLUDE_PATH"
70 echo "CMAKE_LIBRARY_PATH: $CMAKE_LIBRARY_PATH"
71 echo "ROOT_DIR: $ROOT_DIR"
72
73
74 cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE \
75 -DCMAKE_TOOLCHAIN_FILE="${IOS_TOOLCHAIN_DIR_PATH}/ios.toolchain.cmake" \
76 -DPLATFORM=OS64 \
77 -S"${ZANO_DIR_PATH}" \
78 -B"${ZANO_MOBILE_IOS_BUILD_FOLDER_ARM64}" \
79 -GXcode \
80 -DCAKEWALLET=TRUE \
81 -DSKIP_BOOST_FATLIB_LIB=TRUE \
82 -DCMAKE_SYSTEM_NAME=iOS \
83 -DCMAKE_INSTALL_PREFIX="${ZANO_MOBILE_IOS_INSTALL_FOLDER_ARM64}" \
84 -DCMAKE_XCODE_ATTRIBUTE_ONLY_ACTIVE_ARCH=NO \
85 -DCMAKE_CXX_FLAGS="-Wno-enum-constexpr-conversion" \
86 -DDISABLE_TOR=TRUE
87
88 # -DCMAKE_OSX_ARCHITECTURES="arm64"
89 # -DCMAKE_IOS_INSTALL_COMBINED=YES
90
91 if [ $? -ne 0 ]; then
92 echo "Failed to perform command"
93 exit 1
94 fi
95
96 cmake --build "${ZANO_MOBILE_IOS_BUILD_FOLDER_ARM64}" --config $BUILD_TYPE --target install -- -j 4
97 if [ $? -ne 0 ]; then
98 echo "Failed to perform command"
99 exit 1
100 fi
101
102 mkdir -p $DEST_LIB_DIR
103 mkdir -p $DEST_INCLUDE_DIR
104
105 cp ${ZANO_MOBILE_IOS_INSTALL_FOLDER_ARM64}/lib/* $DEST_LIB_DIR
106 cp ${ZANO_DIR_PATH}/src/wallet/plain_wallet_api.h $DEST_INCLUDE_DIR