summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/full_check.yaml6
-rwxr-xr-xbuild_single.sh2
-rw-r--r--monero_libwallet2_api_c/CMakeLists.txt26
-rw-r--r--patches/zano/0005-wip-fixes-for-macos.patch77
-rw-r--r--patches/zano/0006-fix-mingw-build-issues.patch37
-rw-r--r--patches/zano/0007-fix-mingw-build-issues.patch61
6 files changed, 198 insertions, 11 deletions
diff --git a/.github/workflows/full_check.yaml b/.github/workflows/full_check.yaml
index b43e94e..e0c173c 100644
--- a/.github/workflows/full_check.yaml
+++ b/.github/workflows/full_check.yaml
@@ -294,7 +294,7 @@ jobs:
lib_darwin:
strategy:
matrix:
- coin: [monero, wownero, zano]
+ coin: [monero, wownero]
runs-on: ubuntu-latest
container:
image: debian:bookworm
@@ -357,7 +357,7 @@ jobs:
lib_macos:
strategy:
matrix:
- coin: [monero, wownero, zano]
+ coin: [monero, wownero]
name: macos build
runs-on: macos-14
steps:
@@ -589,7 +589,7 @@ jobs:
regression_check:
strategy:
matrix:
- coin: [monero, wownero, zano]
+ coin: [monero, wownero]
needs: [
lib_linux
]
diff --git a/build_single.sh b/build_single.sh
index ee25b39..31e16f9 100755
--- a/build_single.sh
+++ b/build_single.sh
@@ -370,7 +370,7 @@ pushd $repo/build/${HOST_ABI}
then
CC=gcc CXX=g++ make $NPROC
else
- CC=gcc CXX=g++ make version common crypto currency_core ethash lmdb mdbx rpc stratum tor-connect wallet zlibstatic $NPROC
+ CC=gcc CXX=g++ make libminiupnpc-static version common crypto currency_core ethash lmdb mdbx rpc stratum tor-connect wallet zlibstatic $NPROC
fi
else
CC=gcc CXX=g++ make wallet_api $NPROC
diff --git a/monero_libwallet2_api_c/CMakeLists.txt b/monero_libwallet2_api_c/CMakeLists.txt
index dc99fa4..df3cb73 100644
--- a/monero_libwallet2_api_c/CMakeLists.txt
+++ b/monero_libwallet2_api_c/CMakeLists.txt
@@ -2,8 +2,10 @@ cmake_minimum_required(VERSION 3.4.1)
project(wallet2_api_c)
message(STATUS ABI_INFO = ${HOST_ABI})
-set (CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_STANDARD 11)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
+# set(CMAKE_INTERPROCEDURAL_OPTIMIZATION FALSE)
+# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-lto")
if(${HOST_ABI} STREQUAL "x86_64-w64-mingw32")
set(CMAKE_SYSTEM_NAME Windows)
@@ -83,7 +85,7 @@ elseif(${HOST_ABI} STREQUAL "aarch64-linux-gnu")
elseif(${HOST_ABI} STREQUAL "x86_64-w64-mingw32" OR ${HOST_ABI} STREQUAL "i686-w64-mingw32")
set(BOOST_WTF "")
set(BOOST_WTF_DATE_TIME "${BOOST_WTF}")
- set(BOOST_WTF_PART "_win32")
+ set(BOOST_WTF_PART "")
elseif(${HOST_ABI} STREQUAL "host-apple-ios")
set(BOOST_WTF "")
set(BOOST_WTF_DATE_TIME "${BOOST_WTF}")
@@ -343,8 +345,14 @@ set_target_properties(hidapi PROPERTIES IMPORTED_LOCATION
#############
add_library(z STATIC IMPORTED)
-set_target_properties(z PROPERTIES IMPORTED_LOCATION
- ${MONERO_DIR}/build/${HOST_ABI}/contrib/zlib/libz.a)
+
+if(${HOST_ABI} STREQUAL "x86_64-w64-mingw32" OR ${HOST_ABI} STREQUAL "i686-w64-mingw32")
+ set_target_properties(z PROPERTIES IMPORTED_LOCATION
+ ${MONERO_DIR}/build/${HOST_ABI}/contrib/zlib/libzlibstatic.a)
+else()
+ set_target_properties(z PROPERTIES IMPORTED_LOCATION
+ ${MONERO_DIR}/build/${HOST_ABI}/contrib/zlib/libz.a)
+endif()
add_library(miniupnpc STATIC IMPORTED)
set_target_properties(miniupnpc PROPERTIES IMPORTED_LOCATION
@@ -455,10 +463,12 @@ if(${HOST_ABI} STREQUAL "x86_64-apple-darwin11" OR ${HOST_ABI} STREQUAL "aarch64
endif()
if (${MONERO_FLAVOR} STREQUAL "zano")
- if(${HOST_ABI} STREQUAL "" OR
+ if(${HOST_ABI} STREQUAL "x86_64-linux-android" OR
${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)
+ else()
set(EXTRA_LIBS_ANDROID_ZANO lmdb mdbx stratum miniupnpc rpc)
endif()
set(API_IMPORTS
@@ -517,11 +527,14 @@ else()
polyseed-wrapper
utf8proc
+ ${EXTRA_LIBS_POLYSEED}
+
)
endif()
target_link_libraries( wallet2_api_c
-
+
+
${API_IMPORTS}
boost_chrono
@@ -536,7 +549,6 @@ target_link_libraries( wallet2_api_c
boost_wserialization
- ${EXTRA_LIBS_POLYSEED}
${EXTRA_LIBS_WOWNEROSEED}
diff --git a/patches/zano/0005-wip-fixes-for-macos.patch b/patches/zano/0005-wip-fixes-for-macos.patch
new file mode 100644
index 0000000..e678307
--- /dev/null
+++ b/patches/zano/0005-wip-fixes-for-macos.patch
@@ -0,0 +1,77 @@
+From 05db95f4427f9adb1f40b23dd8e10b6c19d6fb4a Mon Sep 17 00:00:00 2001
+From: cyan <cyjan@mrcyjanek.net>
+Date: Sun, 3 Nov 2024 08:15:28 +0000
+Subject: [PATCH 1/2] wip fixes for macos
+
+---
+ contrib/depends/packages/boost.mk | 2 +-
+ contrib/depends/packages/darwin_sdk.mk | 7 +++++++
+ .../patches/darwin_sdk/fix_definitions.patch | 21 +++++++++++++++++++
+ 3 files changed, 29 insertions(+), 1 deletion(-)
+ create mode 100644 contrib/depends/patches/darwin_sdk/fix_definitions.patch
+
+diff --git a/contrib/depends/packages/boost.mk b/contrib/depends/packages/boost.mk
+index d60bfa74..2fae4c94 100644
+--- a/contrib/depends/packages/boost.mk
++++ b/contrib/depends/packages/boost.mk
+@@ -8,7 +8,7 @@ $(package)_patches=fix_aroptions.patch fix_arm_arch.patch fix_pthread_win.patch
+
+ define $(package)_set_vars
+ $(package)_config_opts_release=variant=release
+-$(package)_config_opts_debug=variant=debug
++$(package)_config_opts_debug=variant=release
+ $(package)_config_opts=--layout=system --user-config=user-config.jam
+ $(package)_config_opts+=threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1
+ $(package)_config_opts_linux=threadapi=pthread runtime-link=static
+diff --git a/contrib/depends/packages/darwin_sdk.mk b/contrib/depends/packages/darwin_sdk.mk
+index d639c422..da510e08 100644
+--- a/contrib/depends/packages/darwin_sdk.mk
++++ b/contrib/depends/packages/darwin_sdk.mk
+@@ -3,8 +3,15 @@ $(package)_version=11.1
+ $(package)_download_path=https://github.com/phracker/MacOSX-SDKs/releases/download/11.3/
+ $(package)_file_name=MacOSX$($(package)_version).sdk.tar.xz
+ $(package)_sha256_hash=68797baaacb52f56f713400de306a58a7ca00b05c3dc6d58f0a8283bcac721f8
++$(package)_patches=fix_definitions.patch
+
+ define $(package)_stage_cmds
+ mkdir -p $($(package)_staging_dir)/$(host_prefix)/native/SDK &&\
+ mv * $($(package)_staging_dir)/$(host_prefix)/native/SDK
+ endef
++
++
++define $(package)_preprocess_cmds
++ pwd &&\
++ patch -p1 < $($(package)_patch_dir)/fix_definitions.patch
++endef
+\ No newline at end of file
+diff --git a/contrib/depends/patches/darwin_sdk/fix_definitions.patch b/contrib/depends/patches/darwin_sdk/fix_definitions.patch
+new file mode 100644
+index 00000000..5409ee15
+--- /dev/null
++++ b/contrib/depends/patches/darwin_sdk/fix_definitions.patch
+@@ -0,0 +1,21 @@
++--- ./usr/include/sys/sysctl.h.0 2024-11-03 07:59:31.870270093 +0000
+++++ ./usr/include/sys/sysctl.h 2024-11-03 08:00:38.698271564 +0000
++@@ -70,6 +70,18 @@
++ * Version 2.0.
++ */
++
+++#ifndef u_int
+++typedef unsigned int u_int;
+++#endif
+++
+++#ifndef u_char
+++typedef unsigned char u_char;
+++#endif
+++
+++#ifndef u_short
+++typedef unsigned short u_short;
+++#endif
+++
++ #ifndef _SYS_SYSCTL_H_
++ #define _SYS_SYSCTL_H_
++
+\ No newline at end of file
+--
+2.43.0
+
diff --git a/patches/zano/0006-fix-mingw-build-issues.patch b/patches/zano/0006-fix-mingw-build-issues.patch
new file mode 100644
index 0000000..048c98a
--- /dev/null
+++ b/patches/zano/0006-fix-mingw-build-issues.patch
@@ -0,0 +1,37 @@
+From d42690b9c26dba8f0c522c82e2fb96c99fe1c3e6 Mon Sep 17 00:00:00 2001
+From: cyan <cyjan@mrcyjanek.net>
+Date: Sun, 3 Nov 2024 08:38:45 +0000
+Subject: [PATCH 2/2] fix mingw build issues
+
+---
+ contrib/depends/packages/boost.mk | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/contrib/depends/packages/boost.mk b/contrib/depends/packages/boost.mk
+index 2fae4c94..97c9b102 100644
+--- a/contrib/depends/packages/boost.mk
++++ b/contrib/depends/packages/boost.mk
+@@ -8,7 +8,7 @@ $(package)_patches=fix_aroptions.patch fix_arm_arch.patch fix_pthread_win.patch
+
+ define $(package)_set_vars
+ $(package)_config_opts_release=variant=release
+-$(package)_config_opts_debug=variant=release
++$(package)_config_opts_debug=variant=debug --build-dir=stage/debug
+ $(package)_config_opts=--layout=system --user-config=user-config.jam
+ $(package)_config_opts+=threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1
+ $(package)_config_opts_linux=threadapi=pthread runtime-link=static
+@@ -44,9 +44,9 @@ define $(package)_config_cmds
+ endef
+
+ define $(package)_build_cmds
+- ./b2 -d2 -j2 -d1 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) stage
++ ./b2 -d2 -j2 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) $($(package)_config_opts_release) stage
+ endef
+
+ define $(package)_stage_cmds
+- ./b2 -d0 -j4 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) install
++ ./b2 -d0 -j4 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) $($(package)_config_opts_release) install
+ endef
+--
+2.43.0
+
diff --git a/patches/zano/0007-fix-mingw-build-issues.patch b/patches/zano/0007-fix-mingw-build-issues.patch
new file mode 100644
index 0000000..060fb4b
--- /dev/null
+++ b/patches/zano/0007-fix-mingw-build-issues.patch
@@ -0,0 +1,61 @@
+From a26111b04ef8057787287f724408dc41a56dea2a Mon Sep 17 00:00:00 2001
+From: cyan <cyjan@mrcyjanek.net>
+Date: Sun, 3 Nov 2024 08:59:22 +0000
+Subject: [PATCH] fix mingw build issues
+
+---
+ contrib/epee/include/misc_os_dependent.h | 4 ++--
+ src/common/callstack_helper.cpp | 2 +-
+ src/crypto/ecrypt-config.h | 2 +-
+ 3 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/contrib/epee/include/misc_os_dependent.h b/contrib/epee/include/misc_os_dependent.h
+index c06e5d94..a2a979b9 100644
+--- a/contrib/epee/include/misc_os_dependent.h
++++ b/contrib/epee/include/misc_os_dependent.h
+@@ -110,14 +110,14 @@ namespace misc_utils
+ }
+
+
+-#if defined(__GNUC__) && !defined(__ANDROID__)
++#if defined(__GNUC__) && !defined(__ANDROID__) && !defined(_WIN32)
+ #include <execinfo.h>
+ #include <boost/core/demangle.hpp>
+ #endif
+ inline std::string print_trace_default()
+ {
+ std::stringstream ss;
+-#if defined(__GNUC__) && !defined(__ANDROID__)
++#if defined(__GNUC__) && !defined(__ANDROID__) && !defined(_WIN32)
+ ss << std::endl << "STACK" << std::endl;
+ const size_t max_depth = 100;
+ size_t stack_depth;
+diff --git a/src/common/callstack_helper.cpp b/src/common/callstack_helper.cpp
+index b84fe5a8..c9eae839 100644
+--- a/src/common/callstack_helper.cpp
++++ b/src/common/callstack_helper.cpp
+@@ -9,7 +9,7 @@
+ #define NOMINMAX
+ #endif
+ #include <windows.h>
+-#include <Psapi.h>
++#include <psapi.h>
+ #pragma comment(lib, "psapi.lib")
+ #pragma comment(lib, "dbghelp.lib")
+
+diff --git a/src/crypto/ecrypt-config.h b/src/crypto/ecrypt-config.h
+index 9176de17..8b488135 100644
+--- a/src/crypto/ecrypt-config.h
++++ b/src/crypto/ecrypt-config.h
+@@ -257,7 +257,7 @@
+
+ #ifdef _UI64_MAX
+
+-#if (_UI64_MAX / 0xFFFFFFFFui64 > 0xFFFFFFFFui64)
++#if (_UI64_MAX / 0xFFFFFFFF > 0xFFFFFFFF)
+ #ifndef I64T
+ #define I64T __int64
+ #define U64C(v) (v##ui64)
+--
+2.43.0
+