summaryrefslogtreecommitdiff
path: root/patches/zano/0004-fix-build-issues.patch
blob: fde38f460b79c106869766222e20538099511c3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
From d06b49d9a45750b97eee974f2e7453fb24246165 Mon Sep 17 00:00:00 2001
From: cyan <cyjan@mrcyjanek.net>
Date: Sat, 2 Nov 2024 20:50:26 +0000
Subject: [PATCH] fix build issues

---
 contrib/db/libmdbx/CMakeLists.txt             |  2 +-
 .../db/libmdbx/packages/rpm/CMakeLists.txt    |  2 +-
 contrib/depends/hosts/android.mk              | 19 ++++++++++---
 contrib/depends/hosts/darwin.mk               |  2 +-
 contrib/depends/packages/android_ndk.mk       | 27 ++++++++++++++-----
 contrib/depends/packages/boost.mk             | 17 +++++++-----
 contrib/depends/packages/openssl.mk           |  2 +-
 contrib/depends/toolchain.cmake.in            | 17 ++++++------
 contrib/epee/include/file_io_utils.h          |  8 +++---
 9 files changed, 62 insertions(+), 34 deletions(-)

diff --git a/contrib/db/libmdbx/CMakeLists.txt b/contrib/db/libmdbx/CMakeLists.txt
index 75e9b3b0..01a5915c 100644
--- a/contrib/db/libmdbx/CMakeLists.txt
+++ b/contrib/db/libmdbx/CMakeLists.txt
@@ -80,7 +80,7 @@ macro(add_mdbx_option NAME DESCRIPTION DEFAULT)
 endmacro()
 
 # only for compatibility testing
-# set(CMAKE_CXX_STANDARD 14)
+set(CMAKE_CXX_STANDARD 17)
 
 if(NOT "$ENV{TEAMCITY_PROCESS_FLOW_ID}" STREQUAL "")
   set(CI TEAMCITY)
diff --git a/contrib/db/libmdbx/packages/rpm/CMakeLists.txt b/contrib/db/libmdbx/packages/rpm/CMakeLists.txt
index 5949e9f0..e7b677bd 100644
--- a/contrib/db/libmdbx/packages/rpm/CMakeLists.txt
+++ b/contrib/db/libmdbx/packages/rpm/CMakeLists.txt
@@ -12,7 +12,7 @@ set(MDBX_VERSION_STRING ${MDBX_VERSION_MAJOR}.${MDBX_VERSION_MINOR}.${MDBX_VERSI
 enable_language(C)
 enable_language(CXX)
 
-set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_CXX_STANDARD 17)
 set(CMAKE_CXX_STANDARD_REQUIRED on)
 
 add_definitions(-DNDEBUG=1 -DMDBX_DEBUG=0 -DLIBMDBX_EXPORTS=1 -D_GNU_SOURCE=1)
diff --git a/contrib/depends/hosts/android.mk b/contrib/depends/hosts/android.mk
index bbc8bd3b..827103c3 100644
--- a/contrib/depends/hosts/android.mk
+++ b/contrib/depends/hosts/android.mk
@@ -1,12 +1,22 @@
 ANDROID_API=21
-
-ifeq ($(host_arch),arm)
-host_toolchain=arm-linux-androideabi-
+host_toolchain=nonexistent
+ifeq ($(host_arch),armv7a)
+host_toolchain=armv7a-linux-androideabi${ANDROID_API}-
+endif
+ifeq ($(host_arch),x86_64)
+host_toolchain=x86_64-linux-android${ANDROID_API}-
+endif
+ifeq ($(host_arch),i686)
+host_toolchain=i686-linux-android${ANDROID_API}-
+endif
+ifeq ($(host_arch),aarch64)
+host_toolchain=aarch64-linux-android${ANDROID_API}-
 endif
 
 android_CC=$(host_toolchain)clang
 android_CXX=$(host_toolchain)clang++
-android_RANLIB=:
+android_RANLIB=llvm-ranlib
+android_AR=llvm-ar
 
 android_CFLAGS=-pipe
 android_CXXFLAGS=$(android_CFLAGS)
@@ -19,3 +29,4 @@ android_debug_CFLAGS=-g -O0
 android_debug_CXXFLAGS=$(android_debug_CFLAGS)
 
 android_native_toolchain=android_ndk
+
diff --git a/contrib/depends/hosts/darwin.mk b/contrib/depends/hosts/darwin.mk
index cbe79508..b14ee5c5 100644
--- a/contrib/depends/hosts/darwin.mk
+++ b/contrib/depends/hosts/darwin.mk
@@ -1,4 +1,4 @@
-OSX_MIN_VERSION=10.8
+OSX_MIN_VERSION=10.14
 LD64_VERSION=609
 ifeq (aarch64, $(host_arch))
 CC_target=arm64-apple-$(host_os)
diff --git a/contrib/depends/packages/android_ndk.mk b/contrib/depends/packages/android_ndk.mk
index b7fbb373..2c2914ec 100644
--- a/contrib/depends/packages/android_ndk.mk
+++ b/contrib/depends/packages/android_ndk.mk
@@ -1,11 +1,13 @@
 package=android_ndk
-$(package)_version=17b
+$(package)_version=26d
 $(package)_download_path=https://dl.google.com/android/repository/
-$(package)_file_name=android-ndk-r$($(package)_version)-linux-x86_64.zip
-$(package)_sha256_hash=5dfbbdc2d3ba859fed90d0e978af87c71a91a5be1f6e1c40ba697503d48ccecd
+$(package)_file_name=android-ndk-r$($(package)_version)-linux.zip
+$(package)_sha256_hash=eefeafe7ccf177de7cc57158da585e7af119bb7504a63604ad719e4b2a328b54
+
+$(package)_version_apiversion=21
 
 define $(package)_set_vars
-$(package)_config_opts_arm=--arch arm
+$(package)_config_opts_armv7a=--arch arm
 $(package)_config_opts_aarch64=--arch arm64
 $(package)_config_opts_x86_64=--arch x86_64
 $(package)_config_opts_i686=--arch x86
@@ -16,8 +18,19 @@ define $(package)_extract_cmds
   unzip -q $($(1)_source_dir)/$($(package)_file_name)
 endef
 
+# arm-linux-androideabi-ar - openssl workaround
+
 define $(package)_stage_cmds
-  android-ndk-r$($(package)_version)/build/tools/make_standalone_toolchain.py --api 21 \
-    --install-dir $(build_prefix) --stl=libc++ $($(package)_config_opts) &&\
-  mv $(build_prefix) $($(package)_staging_dir)/$(host_prefix)
+  mkdir -p $(build_prefix) &&\
+  echo $(build_prefix)/toolchain && \
+  android-ndk-r$($(package)_version)/build/tools/make_standalone_toolchain.py --api $($(package)_version_apiversion) \
+    --install-dir $(build_prefix)/toolchain --stl=libc++ $($(package)_config_opts) &&\
+  mv $(build_prefix)/toolchain $($(package)_staging_dir)/$(host_prefix)/native && \
+  cp $($(package)_staging_dir)/$(host_prefix)/native/bin/llvm-ar $($(package)_staging_dir)/$(host_prefix)/native/bin/$(host)$($(package)_version_apiversion)-ar &&\
+  cp $($(package)_staging_dir)/$(host_prefix)/native/bin/llvm-ar $($(package)_staging_dir)/$(host_prefix)/native/bin/arm-linux-androideabi-ar &&\
+  cp $($(package)_staging_dir)/$(host_prefix)/native/bin/llvm-ranlib $($(package)_staging_dir)/$(host_prefix)/native/bin/$(host)$($(package)_version_apiversion)-ranlib &&\
+  cp $($(package)_staging_dir)/$(host_prefix)/native/bin/llvm-ranlib $($(package)_staging_dir)/$(host_prefix)/native/bin/arm-linux-androideabi-ranlib &&\
+  cp $($(package)_staging_dir)/$(host_prefix)/native/bin/llvm-ar $($(package)_staging_dir)/$(host_prefix)/native/bin/$(host)-ar &&\
+  cp $($(package)_staging_dir)/$(host_prefix)/native/bin/llvm-ranlib $($(package)_staging_dir)/$(host_prefix)/native/bin/$(host)-ranlib
 endef
+
diff --git a/contrib/depends/packages/boost.mk b/contrib/depends/packages/boost.mk
index be382d3a..d60bfa74 100644
--- a/contrib/depends/packages/boost.mk
+++ b/contrib/depends/packages/boost.mk
@@ -1,8 +1,8 @@
 package=boost
-$(package)_version=1_70_0
-$(package)_download_path=https://downloads.sourceforge.net/project/boost/boost/1.70.0/
+$(package)_version=1_84_0
+$(package)_download_path=https://downloads.sourceforge.net/project/boost/boost/1.84.0/
 $(package)_file_name=$(package)_$($(package)_version).tar.bz2
-$(package)_sha256_hash=430ae8354789de4fd19ee52f3b1f739e1fba576f0aded0897c3c2bc00fb38778
+$(package)_sha256_hash=cc4b893acf645c9d4b698e9a0f08ca8846aa5d6c68275c14c3e7949c24109454
 $(package)_dependencies=libiconv
 $(package)_patches=fix_aroptions.patch fix_arm_arch.patch fix_pthread_win.patch fix_pthread.patch
 
@@ -26,13 +26,16 @@ $(package)_config_libraries=system,filesystem,thread,timer,date_time,chrono,rege
 $(package)_cxxflags=-std=c++11
 $(package)_cxxflags_linux=-fPIC
 $(package)_cxxflags_freebsd=-fPIC
+$(package)_cxxflags_android=-fPIC
 endef
+#   patch -p1 < $($(package)_patch_dir)/fix_aroptions.patch &&\
+#   patch -p1 < $($(package)_patch_dir)/fix_arm_arch.patch &&\
+#   patch -p1 < $($(package)_patch_dir)/fix_pthread_win.patch &&\
+#   patch -p1 < $($(package)_patch_dir)/fix_pthread.patch &&\
+#
+#
 
 define $(package)_preprocess_cmds
-  patch -p1 < $($(package)_patch_dir)/fix_aroptions.patch &&\
-  patch -p1 < $($(package)_patch_dir)/fix_arm_arch.patch &&\
-  patch -p1 < $($(package)_patch_dir)/fix_pthread_win.patch &&\
-  patch -p1 < $($(package)_patch_dir)/fix_pthread.patch &&\
   echo "using $(boost_toolset_$(host_os)) : : $($(package)_cxx) : <cxxflags>\"$($(package)_cxxflags) $($(package)_cppflags)\" <linkflags>\"$($(package)_ldflags)\" <archiver>\"$(boost_archiver_$(host_os))\" <arflags>\"$($(package)_arflags)\" <striper>\"$(host_STRIP)\"  <ranlib>\"$(host_RANLIB)\" <rc>\"$(host_WINDRES)\" : ;" > user-config.jam
 endef
 
diff --git a/contrib/depends/packages/openssl.mk b/contrib/depends/packages/openssl.mk
index a157762c..2430f649 100644
--- a/contrib/depends/packages/openssl.mk
+++ b/contrib/depends/packages/openssl.mk
@@ -34,7 +34,7 @@ $(package)_config_opts_x86_64_linux=linux-x86_64
 $(package)_config_opts_i686_linux=linux-generic32
 $(package)_config_opts_arm_linux=linux-generic32
 $(package)_config_opts_aarch64_linux=linux-generic64
-$(package)_config_opts_arm_android=--static android-arm
+$(package)_config_opts_armv7a_android=--static android-arm
 $(package)_config_opts_aarch64_android=--static android-arm64
 $(package)_config_opts_aarch64_darwin=darwin64-arm64-cc
 $(package)_config_opts_riscv64_linux=linux-generic64
diff --git a/contrib/depends/toolchain.cmake.in b/contrib/depends/toolchain.cmake.in
index 48279eda..48a6f947 100644
--- a/contrib/depends/toolchain.cmake.in
+++ b/contrib/depends/toolchain.cmake.in
@@ -14,7 +14,7 @@ SET(ARCH "default")
 SET(BUILD_TESTS @build_tests@)
 SET(TREZOR_DEBUG @build_tests@)
 
-# where is the target environment
+# where is the target environment 
 SET(CMAKE_FIND_ROOT_PATH @prefix@ /usr)
 
 SET(ENV{PKG_CONFIG_PATH} @prefix@/lib/pkgconfig)
@@ -94,26 +94,27 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Darwin")
   SET(BREW OFF)
   SET(PORT OFF)
   SET(CMAKE_OSX_SYSROOT "@prefix@/native/SDK/")
-  SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.08")
+  SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.14")
   SET(CMAKE_CXX_STANDARD 14)
   SET(LLVM_ENABLE_PIC OFF)
   SET(LLVM_ENABLE_PIE OFF)
 elseif(CMAKE_SYSTEM_NAME STREQUAL "Android")
   SET(ANDROID TRUE)
-  if(ARCHITECTURE STREQUAL "arm")
+  if(ARCHITECTURE STREQUAL "armv7a")
     SET(CMAKE_ANDROID_ARCH_ABI "armeabi-v7a")
     SET(CMAKE_SYSTEM_PROCESSOR "armv7-a")
     SET(CMAKE_ANDROID_ARM_MODE ON)
-    SET(CMAKE_C_COMPILER_TARGET arm-linux-androideabi)
-    SET(CMAKE_CXX_COMPILER_TARGET arm-linux-androideabi)
-    SET(_CMAKE_TOOLCHAIN_PREFIX arm-linux-androideabi-)
+    SET(CMAKE_C_COMPILER_TARGET armv7a-linux-androideabi21)
+    SET(CMAKE_CXX_COMPILER_TARGET armv7a-linux-androideabi21)
+    SET(_CMAKE_TOOLCHAIN_PREFIX armv7a-linux-androideabi21-)
   elseif(ARCHITECTURE STREQUAL "aarch64")
     SET(CMAKE_ANDROID_ARCH_ABI "arm64-v8a")
     SET(CMAKE_SYSTEM_PROCESSOR "aarch64")
   endif()
   SET(CMAKE_ANDROID_STANDALONE_TOOLCHAIN @prefix@/native)
-  SET(CMAKE_C_COMPILER "${_CMAKE_TOOLCHAIN_PREFIX}clang")
-  SET(CMAKE_CXX_COMPILER "${_CMAKE_TOOLCHAIN_PREFIX}clang++")
+  SET(_ANDROID_STANDALONE_TOOLCHAIN_API 21)
+  SET(CMAKE_C_COMPILER @CC@)
+  SET(CMAKE_CXX_COMPILER @CXX@)
 else()
   SET(CMAKE_C_COMPILER @CC@)
   SET(CMAKE_CXX_COMPILER @CXX@)
diff --git a/contrib/epee/include/file_io_utils.h b/contrib/epee/include/file_io_utils.h
index 9d5118cb..622d40e6 100644
--- a/contrib/epee/include/file_io_utils.h
+++ b/contrib/epee/include/file_io_utils.h
@@ -35,7 +35,7 @@
 #include <iostream>
 #include <boost/filesystem.hpp>
 #include <boost/filesystem/fstream.hpp>
-#include <filesystem>
+// #include <filesystem>
 
 #ifndef MAKE64
 	#define MAKE64(low,high)	((__int64)(((DWORD)(low)) | ((__int64)((DWORD)(high))) << 32))
@@ -562,10 +562,10 @@ namespace file_io_utils
 		try
 		{
 
-			std::filesystem::directory_iterator end_itr; // default construction yields past-the-end
-			for ( std::filesystem::directory_iterator itr( epee::string_encoding::utf8_to_wstring(path) ); itr != end_itr; ++itr )
+			boost::filesystem::directory_iterator end_itr; // default construction yields past-the-end
+			for ( boost::filesystem::directory_iterator itr( epee::string_encoding::utf8_to_wstring(path) ); itr != end_itr; ++itr )
 			{
-				if ( only_files && std::filesystem::is_directory(itr->status()) )
+				if ( only_files && boost::filesystem::is_directory(itr->status()) )
 				{
 					continue;
 				}
-- 
2.43.0