summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbuild_single.sh33
-rwxr-xr-xexternal/ios/build_boost.sh4
-rw-r--r--monero_libwallet2_api_c/CMakeLists.txt11
-rw-r--r--patches/zano/0009-fix-ios-builds.patch53
4 files changed, 83 insertions, 18 deletions
diff --git a/build_single.sh b/build_single.sh
index 31e16f9..53814c0 100755
--- a/build_single.sh
+++ b/build_single.sh
@@ -233,18 +233,18 @@ pushd $repo/contrib/depends
echo "= ="
echo "===================================="
pwd
- pushd ../../../external/ios
- ./install_missing_headers.sh
- ./build_openssl.sh
- ./build_boost.sh
- ./build_sodium.sh
- ./build_zmq.sh
- ./build_unbound.sh
- if [[ "$repo" == "wownero" ]];
- then
- ./build_wownero_seed.sh
- fi
- popd
+ #pushd ../../../external/ios
+ # ./install_missing_headers.sh
+ # ./build_openssl.sh
+ # ./build_boost.sh
+ # ./build_sodium.sh
+ # ./build_zmq.sh
+ # ./build_unbound.sh
+ # if [[ "$repo" == "wownero" ]];
+ # then
+ # ./build_wownero_seed.sh
+ # fi
+ #popd
POLYSEED_DIR=../../../external/polyseed/build/${HOST_ABI}
rm -rf ${POLYSEED_DIR}
mkdir -p ${POLYSEED_DIR}
@@ -354,10 +354,14 @@ pushd $repo/build/${HOST_ABI}
PREFIX="$(realpath "${PWD}/../../../external/ios/build/ios")"
# echo $PREFIX
# exit 1
+ if [[ "$repo" == "zano" ]];
+ then
+ BUILD_EXTRA_CONFIG="-DCMAKE_SYSTEM_NAME=iOS -DOPENSSL_INCLUDE_DIR=${PREFIX}/include -DOPENSSL_CRYPTO_LIBRARY=${PREFIX}/lib/libcrypto.a -DOPENSSL_SSL_LIBRARY=${PREFIX}/lib/libssl.a -DBoost_INCLUDE_DIRS=${PREFIX}/include -DBoost_LIBRARY_DIRS=${PREFIX}/lib"
+ fi
env \
CMAKE_INCLUDE_PATH="${PREFIX}/include" \
CMAKE_LIBRARY_PATH="${PREFIX}/lib" \
- CC="${IOS_CC}" CXX="${IOS_CXX}" cmake -DHIDAPI_DUMMY=ON -D IOS=ON -D ARCH=arm64 -D CMAKE_BUILD_DYPE=$buildType -D STATIC=ON -D BUILD_GUI_DEPS=1 -D UNBOUND_INCLUDE_DIR="${PREFIX}/lib" ../..
+ CC="${IOS_CC}" CXX="${IOS_CXX}" cmake -DHIDAPI_DUMMY=ON -D IOS=ON -D ARCH=arm64 -D CMAKE_BUILD_TYPE=$buildType -D STATIC=ON -D BUILD_GUI_DEPS=1 -D UNBOUND_INCLUDE_DIR="${PREFIX}/lib" $BUILD_EXTRA_CONFIG ../..
;;
*)
echo "we don't know how to compile monero for '$HOST_ABI'"
@@ -369,6 +373,9 @@ pushd $repo/build/${HOST_ABI}
if [[ $HOST_ABI == *android* ]];
then
CC=gcc CXX=g++ make $NPROC
+ elif [[ $HOST_ABI == *ios* ]];
+ then
+ make version common crypto currency_core ethash tor-connect wallet zlibstatic $NPROC
else
CC=gcc CXX=g++ make libminiupnpc-static version common crypto currency_core ethash lmdb mdbx rpc stratum tor-connect wallet zlibstatic $NPROC
fi
diff --git a/external/ios/build_boost.sh b/external/ios/build_boost.sh
index 4bfbfeb..bd78e35 100755
--- a/external/ios/build_boost.sh
+++ b/external/ios/build_boost.sh
@@ -7,7 +7,7 @@ set -e
MIN_IOS_VERSION=10.0
BOOST_DIR_PATH="${EXTERNAL_IOS_SOURCE_DIR}/Apple-Boost-BuildScript"
BOOST_VERSION=1.84.0
-BOOST_LIBS="random regex graph random chrono thread filesystem system date_time locale serialization program_options"
+BOOST_LIBS="random regex graph random chrono thread filesystem system date_time locale serialization program_options timer atomic log"
echo "============================ Boost ============================"
@@ -29,4 +29,4 @@ cd $BOOST_DIR_PATH
--no-framework
mv -f ${BOOST_DIR_PATH}/build/boost/${BOOST_VERSION}/ios/release/prefix/include/* $EXTERNAL_IOS_INCLUDE_DIR
-mv -f ${BOOST_DIR_PATH}/build/boost/${BOOST_VERSION}/ios/release/prefix/lib/* $EXTERNAL_IOS_LIB_DIR \ No newline at end of file
+mv -f ${BOOST_DIR_PATH}/build/boost/${BOOST_VERSION}/ios/release/prefix/lib/* $EXTERNAL_IOS_LIB_DIR
diff --git a/monero_libwallet2_api_c/CMakeLists.txt b/monero_libwallet2_api_c/CMakeLists.txt
index df3cb73..c7e0f31 100644
--- a/monero_libwallet2_api_c/CMakeLists.txt
+++ b/monero_libwallet2_api_c/CMakeLists.txt
@@ -445,6 +445,8 @@ if (${MONERO_FLAVOR} STREQUAL "monero")
set(BCUR_ENABLED bc-ur)
elseif(${MONERO_FLAVOR} STREQUAL "wownero")
target_compile_definitions(wallet2_api_c PRIVATE FLAVOR_WOWNERO)
+elseif(${MONERO_FLAVOR} STREQUAL "zano")
+ target_compile_definitions(wallet2_api_c PRIVATE FLAVOR_ZANO)
endif()
if(NOT ${HOST_ABI} STREQUAL "x86_64-apple-darwin11" AND NOT ${HOST_ABI} STREQUAL "aarch64-apple-darwin11" AND NOT ${HOST_ABI} STREQUAL "host-apple-darwin" AND NOT ${HOST_ABI} STREQUAL "x86_64-host-apple-darwin" AND NOT ${HOST_ABI} STREQUAL "aarch64-host-apple-darwin" AND NOT ${HOST_ABI} STREQUAL "host-apple-ios")
@@ -456,6 +458,8 @@ if(${HOST_ABI} STREQUAL "x86_64-apple-darwin11" OR ${HOST_ABI} STREQUAL "aarch64
set(EXPORTED_SYMBOLS_FILE ${CMAKE_CURRENT_SOURCE_DIR}/monero_libwallet2_api_c.exp)
elseif(${MONERO_FLAVOR} STREQUAL "wownero")
set(EXPORTED_SYMBOLS_FILE ${CMAKE_CURRENT_SOURCE_DIR}/wownero_libwallet2_api_c.exp)
+ elseif(${MONERO_FLAVOR} STREQUAL "zano")
+ set(EXPORTED_SYMBOLS_FILE ${CMAKE_CURRENT_SOURCE_DIR}/zano_libwallet2_api_c.exp)
endif()
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -exported_symbols_list ${EXPORTED_SYMBOLS_FILE}")
@@ -467,9 +471,11 @@ if (${MONERO_FLAVOR} STREQUAL "zano")
${HOST_ABI} STREQUAL "i686-linux-android" OR
${HOST_ABI} STREQUAL "aarch64-linux-android" OR
${HOST_ABI} STREQUAL "armv7a-linux-androideabi")
+ set(EXTRA_LIBS_ANDROID_ZANO charset iconv-win)
+ elseif(${HOST_ABI} STREQUAL "host-apple-ios")
set(EXTRA_LIBS_ANDROID_ZANO)
else()
- set(EXTRA_LIBS_ANDROID_ZANO lmdb mdbx stratum miniupnpc rpc)
+ set(EXTRA_LIBS_ANDROID_ZANO charset iconv-win lmdb mdbx stratum miniupnpc rpc)
endif()
set(API_IMPORTS
wallet
@@ -485,9 +491,7 @@ if (${MONERO_FLAVOR} STREQUAL "zano")
currency_core
crypto-zano
- iconv-win
ssl
- charset
)
else()
set(API_IMPORTS
@@ -560,3 +564,4 @@ target_link_libraries( wallet2_api_c
${EXTRA_LIBS_APPLE}
${EXTRA_LIBS_ANDROID}
)
+
diff --git a/patches/zano/0009-fix-ios-builds.patch b/patches/zano/0009-fix-ios-builds.patch
new file mode 100644
index 0000000..73f0cb6
--- /dev/null
+++ b/patches/zano/0009-fix-ios-builds.patch
@@ -0,0 +1,53 @@
+From 38fa77b0b86891d3b5e6128746f36a2b9f069bef Mon Sep 17 00:00:00 2001
+From: Czarek Nakamoto <cyjan@mrcyjanek.net>
+Date: Tue, 5 Nov 2024 16:52:23 +0100
+Subject: [PATCH] fix ios builds
+
+---
+ CMakeLists.txt | 6 +++---
+ contrib/depends/.gitignore | 1 +
+ 2 files changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 04790815..5e6a9ae7 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -130,6 +130,8 @@ else()
+ set(ARCH default CACHE STRING "CPU to build for: -march value or default")
+ if("${ARCH}" STREQUAL "default")
+ set(ARCH_FLAG "")
++ elseif(CMAKE_SYSTEM_NAME STREQUAL "iOS")
++ set(ARCH_FLAG "")
+ else()
+ set(ARCH_FLAG "-march=${ARCH}")
+ endif()
+@@ -201,7 +203,7 @@ else()
+ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} ${RELEASE_FLAGS}")
+ if(STATIC)
+ if(APPLE)
+- message(SEND_ERROR "Static build is not supported on MacOS X")
++ message("Static build is not supported on MacOS X")
+ else()
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -static-libgcc -static-libstdc++")
+ endif()
+@@ -245,8 +247,6 @@ else()
+ find_package(Boost 1.70 REQUIRED COMPONENTS system filesystem thread timer date_time chrono regex serialization atomic program_options locale log)
+ endif()
+
+-
+-
+ message(STATUS "Boost: ${Boost_VERSION} from ${Boost_LIBRARY_DIRS}")
+
+
+diff --git a/contrib/depends/.gitignore b/contrib/depends/.gitignore
+index 3cb4b9ac..85d2e249 100644
+--- a/contrib/depends/.gitignore
++++ b/contrib/depends/.gitignore
+@@ -8,3 +8,4 @@ i686*
+ mips*
+ arm*
+ aarch64*
++host-*
+--
+2.39.3 (Apple Git-146)
+