* hv
* Change build version
This commit is contained in:
mkyq 2022-03-30 17:57:04 +02:00 committed by GitHub
parent e7e419bc83
commit 01150ef2a7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
213 changed files with 23972 additions and 672 deletions

View file

@ -8,8 +8,9 @@ APP_ANDROID_PACKAGE=""
MONERO_COM="monero.com"
CAKEWALLET="cakewallet"
HAVEN="haven"
TYPES=($MONERO_COM $CAKEWALLET)
TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
APP_ANDROID_TYPE=$1
MONERO_COM_NAME="Monero.com"
@ -19,11 +20,17 @@ MONERO_COM_BUNDLE_ID="com.monero.app"
MONERO_COM_PACKAGE="com.monero.app"
CAKEWALLET_NAME="Cake Wallet"
CAKEWALLET_VERSION="4.3.8"
CAKEWALLET_BUILD_NUMBER=89
CAKEWALLET_VERSION="4.3.9"
CAKEWALLET_BUILD_NUMBER=94
CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
HAVEN_NAME="Haven"
HAVEN_VERSION="1.0.0"
HAVEN_BUILD_NUMBER=1
HAVEN_BUNDLE_ID="com.cakewallet.haven"
HAVEN_PACKAGE="com.cakewallet.haven"
if ! [[ " ${TYPES[*]} " =~ " ${APP_ANDROID_TYPE} " ]]; then
echo "Wrong app type."
exit 1
@ -44,6 +51,13 @@ case $APP_ANDROID_TYPE in
APP_ANDROID_BUNDLE_ID=$CAKEWALLET_BUNDLE_ID
APP_ANDROID_PACKAGE=$CAKEWALLET_PACKAGE
;;
$HAVEN)
APP_ANDROID_NAME=$HAVEN_NAME
APP_ANDROID_VERSION=$HAVEN_VERSION
APP_ANDROID_BUILD_NUMBER=$HAVEN_BUILD_NUMBER
APP_ANDROID_BUNDLE_ID=$HAVEN_BUNDLE_ID
APP_ANDROID_PACKAGE=$HAVEN_PACKAGE
;;
esac
export APP_ANDROID_TYPE

View file

@ -14,15 +14,20 @@ ANDROID_ICON_SET_DEST_PATH=`pwd`/../../android/app/src/main/res
case $APP_ANDROID_TYPE in
"monero.com")
APP_LOGO=$ASSETS_DIR/images/monero.com_logo.png
ANDROID_ICON=$MONERO_COM_PATH
ANDROID_ICON_SET=$MONEROCOM_ICON_SET_PATH
APP_LOGO=$ASSETS_DIR/images/monero.com_logo.png
ANDROID_ICON=$MONERO_COM_PATH
ANDROID_ICON_SET=$MONEROCOM_ICON_SET_PATH
;;
"cakewallet")
APP_LOGO=$ASSETS_DIR/images/cakewallet_logo.png
ANDROID_ICON=$CAKEWALLET_PATH
ANDROID_ICON_SET=$CAKEWALLET_ICON_SET_PATH
;;
"haven")
APP_LOGO=$ASSETS_DIR/images/cakewallet_logo.png
ANDROID_ICON=$CAKEWALLET_PATH
ANDROID_ICON_SET=$CAKEWALLET_ICON_SET_PATH
;;
esac
rm $APP_LOGO_DEST_PATH

View file

@ -1,8 +1,14 @@
# /bin/bash
#!/bin/sh
./build_iconv.sh
./build_boost.sh
./build_openssl.sh
./build_sodium.sh
./build_zmq.sh
./build_monero.sh
if [ -z "$APP_ANDROID_TYPE" ]; then
echo "Please set APP_ANDROID_TYPE"
exit 1
fi
DIR=$(dirname "$0")
case $APP_ANDROID_TYPE in
"monero.com") $DIR/build_monero_all.sh ;;
"cakewallet") $DIR/build_monero_all.sh ;;
"haven") $DIR/build_haven_all.sh ;;
esac

70
scripts/android/build_haven.sh Executable file
View file

@ -0,0 +1,70 @@
#!/bin/sh
. ./config.sh
HAVEN_VERSION=tags/v2.2.2
HAVEN_SRC_DIR=${WORKDIR}/haven
git clone https://github.com/haven-protocol-org/haven-main.git ${HAVEN_SRC_DIR}
git checkout ${HAVEN_VERSION}
cd $HAVEN_SRC_DIR
git submodule init
git submodule update
for arch in "aarch" "aarch64" "i686" "x86_64"
do
FLAGS=""
PREFIX=${WORKDIR}/prefix_${arch}
DEST_LIB_DIR=${PREFIX}/lib/haven
DEST_INCLUDE_DIR=${PREFIX}/include
export CMAKE_INCLUDE_PATH="${PREFIX}/include"
export CMAKE_LIBRARY_PATH="${PREFIX}/lib"
ANDROID_STANDALONE_TOOLCHAIN_PATH="${TOOLCHAIN_BASE_DIR}_${arch}"
PATH="${ANDROID_STANDALONE_TOOLCHAIN_PATH}/bin:${ORIGINAL_PATH}"
mkdir -p $DEST_LIB_DIR
mkdir -p $DEST_INCLUDE_DIR
case $arch in
"aarch" )
CLANG=arm-linux-androideabi-clang
CXXLANG=arm-linux-androideabi-clang++
BUILD_64=OFF
TAG="android-armv7"
ARCH="armv7-a"
ARCH_ABI="armeabi-v7a"
FLAGS="-D CMAKE_ANDROID_ARM_MODE=ON -D NO_AES=true";;
"aarch64" )
CLANG=aarch64-linux-androideabi-clang
CXXLANG=aarch64-linux-androideabi-clang++
BUILD_64=ON
TAG="android-armv8"
ARCH="armv8-a"
ARCH_ABI="arm64-v8a";;
"i686" )
CLANG=i686-linux-androideabi-clang
CXXLANG=i686-linux-androideabi-clang++
BUILD_64=OFF
TAG="android-x86"
ARCH="i686"
ARCH_ABI="x86";;
"x86_64" )
CLANG=x86_64-linux-androideabi-clang
CXXLANG=x86_64-linux-androideabi-clang++
BUILD_64=ON
TAG="android-x86_64"
ARCH="x86-64"
ARCH_ABI="x86_64";;
esac
cd $HAVEN_SRC_DIR
rm -rf ./build/release
mkdir -p ./build/release
cd ./build/release
CC=${CLANG} CXX=${CXXLANG} cmake -D USE_DEVICE_TREZOR=OFF -D BUILD_GUI_DEPS=1 -D BUILD_TESTS=OFF -D ARCH=${ARCH} -D STATIC=ON -D BUILD_64=${BUILD_64} -D CMAKE_BUILD_TYPE=release -D ANDROID=true -D INSTALL_VENDORED_LIBUNBOUND=ON -D BUILD_TAG=${TAG} -D CMAKE_SYSTEM_NAME="Android" -D CMAKE_ANDROID_STANDALONE_TOOLCHAIN="${ANDROID_STANDALONE_TOOLCHAIN_PATH}" -D CMAKE_ANDROID_ARCH_ABI=${ARCH_ABI} $FLAGS ../..
make wallet_api -j4
find . -path ./lib -prune -o -name '*.a' -exec cp '{}' lib \;
cp -r ./lib/* $DEST_LIB_DIR
cp ../../src/wallet/api/wallet2_api.h $DEST_INCLUDE_DIR
done

View file

@ -0,0 +1,8 @@
# /bin/bash
./build_iconv.sh
./build_boost.sh
./build_openssl.sh
./build_sodium.sh
./build_zmq.sh
./build_haven.sh

View file

@ -0,0 +1,8 @@
# /bin/bash
./build_iconv.sh
./build_boost.sh
./build_openssl.sh
./build_sodium.sh
./build_zmq.sh
./build_monero.sh

View file

@ -2,7 +2,7 @@
WORKDIR=/opt/android
CW_DIR=${WORKDIR}/cake_wallet
CW_EXRTERNAL_DIR=${CW_DIR}/cw_monero/ios/External/android
CW_EXRTERNAL_DIR=${CW_DIR}/cw_shared_external/ios/External/android
for arch in "aarch" "aarch64" "i686" "x86_64"
do

View file

@ -2,6 +2,7 @@
MONERO_COM=monero.com
CAKEWALLET=cakewallet
HAVEN=haven
CONFIG_ARGS=""
case $APP_ANDROID_TYPE in
@ -9,7 +10,10 @@ case $APP_ANDROID_TYPE in
CONFIG_ARGS="--monero"
;;
$CAKEWALLET)
CONFIG_ARGS="--monero --bitcoin"
CONFIG_ARGS="--monero --bitcoin --haven"
;;
$HAVEN)
CONFIG_ARGS="--haven"
;;
esac

View file

@ -2,6 +2,7 @@
MONERO_COM="monero.com"
CAKEWALLET="cakewallet"
HAVEN="haven"
DIR=`pwd`
if [ -z "$APP_IOS_TYPE" ]; then
@ -22,7 +23,10 @@ case $APP_IOS_TYPE in
CONFIG_ARGS="--monero"
;;
$CAKEWALLET)
CONFIG_ARGS="--monero --bitcoin"
CONFIG_ARGS="--monero --bitcoin --haven"
;;
$HAVEN)
CONFIG_ARGS="--haven"
;;
esac

View file

@ -7,8 +7,9 @@ APP_IOS_BUNDLE_ID=""
MONERO_COM="monero.com"
CAKEWALLET="cakewallet"
HAVEN="haven"
TYPES=($MONERO_COM $CAKEWALLET)
TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
APP_IOS_TYPE=$1
MONERO_COM_NAME="Monero.com"
@ -17,10 +18,15 @@ MONERO_COM_BUILD_NUMBER=14
MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
CAKEWALLET_NAME="Cake Wallet"
CAKEWALLET_VERSION="4.3.8"
CAKEWALLET_BUILD_NUMBER=84
CAKEWALLET_VERSION="4.3.9"
CAKEWALLET_BUILD_NUMBER=89
CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
HAVEN_NAME="Haven"
HAVEN_VERSION="1.0.0"
HAVEN_BUILD_NUMBER=3
HAVEN_BUNDLE_ID="com.cakewallet.haven"
if ! [[ " ${TYPES[*]} " =~ " ${APP_IOS_TYPE} " ]]; then
echo "Wrong app type."
exit 1
@ -39,6 +45,12 @@ case $APP_IOS_TYPE in
APP_IOS_BUILD_NUMBER=$CAKEWALLET_BUILD_NUMBER
APP_IOS_BUNDLE_ID=$CAKEWALLET_BUNDLE_ID
;;
$HAVEN)
APP_IOS_NAME=$HAVEN_NAME
APP_IOS_VERSION=$HAVEN_VERSION
APP_IOS_BUILD_NUMBER=$HAVEN_BUILD_NUMBER
APP_IOS_BUNDLE_ID=$HAVEN_BUNDLE_ID
;;
esac
export APP_IOS_TYPE

View file

@ -14,6 +14,10 @@ case $APP_IOS_TYPE in
ICON_120_PATH=`pwd`/../../assets/images/cakewallet_icon_120.png
ICON_180_PATH=`pwd`/../../assets/images/cakewallet_icon_180.png
ICON_1024_PATH=`pwd`/../../assets/images/cakewallet_icon_1024.png;;
"haven")
ICON_120_PATH=`pwd`/../../assets/images/cakewallet_icon_120.png
ICON_180_PATH=`pwd`/../../assets/images/cakewallet_icon_180.png
ICON_1024_PATH=`pwd`/../../assets/images/cakewallet_icon_1024.png;;
esac
rm $DEST_DIR_PATH/app_icon_120.png

View file

@ -10,4 +10,5 @@ DIR=$(dirname "$0")
case $APP_IOS_TYPE in
"monero.com") $DIR/build_monero_all.sh ;;
"cakewallet") $DIR/build_monero_all.sh ;;
"haven") $DIR/build_haven_all.sh ;;
esac

62
scripts/ios/build_haven.sh Executable file
View file

@ -0,0 +1,62 @@
#!/bin/sh
. ./config.sh
HAVEN_URL="https://github.com/haven-protocol-org/haven-main.git"
HAVEN_DIR_PATH="${EXTERNAL_IOS_SOURCE_DIR}/haven"
HAVEN_VERSION=tags/v2.2.2
BUILD_TYPE=release
PREFIX=${EXTERNAL_IOS_DIR}
echo "Cloning haven from - $HAVEN_URL to - $HAVEN_DIR_PATH"
git clone $HAVEN_URL $HAVEN_DIR_PATH
cd $HAVEN_DIR_PATH
git checkout $HAVEN_VERSION
git submodule update --init --force
mkdir -p build
cd ..
ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [ -z $INSTALL_PREFIX ]; then
INSTALL_PREFIX=${ROOT_DIR}/haven
fi
for arch in "arm64" #"armv7" "arm64"
do
echo "Building IOS ${arch}"
export CMAKE_INCLUDE_PATH="${PREFIX}/include"
export CMAKE_LIBRARY_PATH="${PREFIX}/lib"
case $arch in
"armv7" )
DEST_LIB=../../lib-armv7;;
"arm64" )
DEST_LIB=../../lib-armv8-a;;
esac
rm -rf haven/build > /dev/null
mkdir -p haven/build/${BUILD_TYPE}
pushd haven/build/${BUILD_TYPE}
cmake -D IOS=ON \
-DARCH=${arch} \
-DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
-DSTATIC=ON \
-DBUILD_GUI_DEPS=ON \
-DINSTALL_VENDORED_LIBUNBOUND=ON \
-DCMAKE_INSTALL_PREFIX=${INSTALL_PREFIX} \
-DUSE_DEVICE_TREZOR=OFF \
../..
make -j4 && make install
cp src/cryptonote_basic/libcryptonote_basic.a ${DEST_LIB}
cp src/offshore/liboffshore.a ${DEST_LIB}
popd
done
mkdir -p $EXTERNAL_IOS_LIB_DIR/haven
mkdir -p $EXTERNAL_IOS_INCLUDE_DIR/haven
#only for arm64
cp ${HAVEN_DIR_PATH}/lib-armv8-a/* $EXTERNAL_IOS_LIB_DIR/haven
cp ${HAVEN_DIR_PATH}/include/wallet/api/* $EXTERNAL_IOS_INCLUDE_DIR/haven

9
scripts/ios/build_haven_all.sh Executable file
View file

@ -0,0 +1,9 @@
#!/bin/sh
. ./config.sh
./install_missing_headers.sh
./build_openssl.sh
./build_boost.sh
./build_sodium.sh
./build_zmq.sh
./build_haven.sh

View file

@ -2,7 +2,7 @@
export IOS_SCRIPTS_DIR=`pwd`
export CW_ROOT=${IOS_SCRIPTS_DIR}/../..
export EXTERNAL_DIR=${CW_ROOT}/cw_monero/ios/External
export EXTERNAL_DIR=${CW_ROOT}/cw_shared_external/ios/External
export EXTERNAL_IOS_DIR=${EXTERNAL_DIR}/ios
export EXTERNAL_IOS_SOURCE_DIR=${EXTERNAL_IOS_DIR}/sources
export EXTERNAL_IOS_LIB_DIR=${EXTERNAL_IOS_DIR}/lib

29
scripts/ios/setup.sh Executable file
View file

@ -0,0 +1,29 @@
#!/bin/sh
. ./config.sh
cd $EXTERNAL_IOS_LIB_DIR
libtool -static -o libboost.a ./boost/*.a
libtool -static -o libhaven.a ./haven/*.a
libtool -static -o libmonero.a ./monero/*.a
CW_HAVEN_EXTERNAL_LIB=../../../cw_haven/ios/External/ios/lib
CW_HAVEN_EXTERNAL_INCLUDE=../../../cw_haven/ios/External/ios/include
CW_MONERO_EXTERNAL=../../../cw_haven/ios/External/ios/lib
mkdir -p $CW_HAVEN_EXTERNAL_INCLUDE
mkdir -p $CW_HAVEN_EXTERNAL_LIB
mkdir -p $CW_MONERO_EXTERNAL
ln -s ./libboost.a $CW_HAVEN_EXTERNAL_LIB
ln -s ./libcrypto.a $CW_HAVEN_EXTERNAL_LIB
ln -s ./libssl.a $CW_HAVEN_EXTERNAL_LIB
ln -s ./libsodium.a $CW_HAVEN_EXTERNAL_LIB
cp ./libhaven.a $CW_HAVEN_EXTERNAL_LIB
cp ../include/haven/* $CW_HAVEN_EXTERNAL_INCLUDE
#ln -s ./libboost.a $CW_HAVEN_EXTERNAL_LIB
#ln -s ./libcrypto.a $CW_HAVEN_EXTERNAL_LIB
#ln -s ./libssl.a $CW_HAVEN_EXTERNAL_LIB
#ln -s ./libsodium.a $CW_HAVEN_EXTERNAL_LIB
#cp ./libhaven.a $CW_HAVEN_EXTERNAL_LIB