diff options
| author | Czarek Nakamoto <cyjan@mrcyjanek.net> | 2026-03-04 15:01:26 +0100 |
|---|---|---|
| committer | Czarek Nakamoto <cyjan@mrcyjanek.net> | 2026-03-04 15:01:57 +0100 |
| commit | da4ec54f5296135ab1614b6ae91b0897456de952 (patch) | |
| tree | 6f9be2e495ad4804d92424b288687e127e8a54e5 | |
| parent | 7822a22d63d78ab737aad98b5e44fc78d03d15e3 (diff) | |
fix: x86_64-w64-mingw32
| -rwxr-xr-x | build_single.sh | 1 | ||||
| -rw-r--r-- | contrib/depends/.gitignore | 1 | ||||
| -rw-r--r-- | contrib/depends/Makefile | 10 | ||||
| -rwxr-xr-x | contrib/depends/gen_toolchain.cmake.sh | 4 | ||||
| -rw-r--r-- | patches/monero/0020-depends-remove-icu4c-monero-project-monero-8880.patch | 41 | ||||
| -rw-r--r-- | patches/monero/0021-fix-mingw-build-issues.patch | 46 |
6 files changed, 98 insertions, 5 deletions
diff --git a/build_single.sh b/build_single.sh index a9431bd..a10c89a 100755 --- a/build_single.sh +++ b/build_single.sh @@ -57,6 +57,7 @@ WDIR=$PWD pushd contrib/depends env PATH="$PATH" make "$NPROC" HOST="$HOST_ABI" popd +# source contrib/depends/_native/_source_me source contrib/depends/$HOST_ABI/_source_me export PATH="$(PWD)/contrib/depends/$HOST_ABI/native/bin:$PATH" exit 13 diff --git a/contrib/depends/.gitignore b/contrib/depends/.gitignore index 8f4b1d2..e17c25c 100644 --- a/contrib/depends/.gitignore +++ b/contrib/depends/.gitignore @@ -1,2 +1,3 @@ _ *-*-* +_native
\ No newline at end of file diff --git a/contrib/depends/Makefile b/contrib/depends/Makefile index c88eba5..32cca84 100644 --- a/contrib/depends/Makefile +++ b/contrib/depends/Makefile @@ -2,8 +2,8 @@ HOST ?= -PACKAGES = native/cmake,native/python@3.14,native/git,native/_,native/make,native/cmake-toolchain,boost,zeromq,unbound,sodium,openssl,zlib -SIMPLYBS_HASH = d1f3c85a5b2dd2e612a4d3e431d8d0bc2cb399fe +PACKAGES = native/cmake,native/python@3.14,native/git,native/_,native/make,native/cmake-toolchain,icu4c,boost@1_90_0,zeromq,unbound,sodium,openssl,libiconv,zlib +SIMPLYBS_HASH = 0414efe7204404aa50911eaaeab885910c1ef313 all: simplybs $(if $(HOST),sbs-build-$(HOST),) @if [ -z "$(HOST)" ]; then \ @@ -28,8 +28,8 @@ simplybs: cd simplybs && git reset --hard sbs-build-%: - # cd simplybs && env SIMPLYBS_ENV_DIR=$(PWD)/$* go run . -cleanup - cd simplybs && env SIMPLYBS_ENV_DIR=$(PWD)/$* go run . -host $* -package $(PACKAGES) -build + # cd simplybs && env SIMPLYBS_ENV_NATIVE_DIR=$(PWD)/_native SIMPLYBS_ENV_DIR=$(PWD)/$* go run . -cleanup + cd simplybs && env SIMPLYBS_NATIVE_ENV_DIR=$(PWD)/_native SIMPLYBS_ENV_DIR=$(PWD)/$* go run . -host $* -package $(PACKAGES) -build cd simplybs && rm -rf $(PWD)/$* - cd simplybs && env SIMPLYBS_ENV_DIR=$(PWD)/$* go run . -host $* -package $(PACKAGES) -extract + cd simplybs && env SIMPLYBS_NATIVE_ENV_DIR=$(PWD)/_native SIMPLYBS_ENV_DIR=$(PWD)/$* go run . -host $* -package $(PACKAGES) -extract env HOST=$* ./gen_toolchain.cmake.sh $*/share/toolchain.cmake diff --git a/contrib/depends/gen_toolchain.cmake.sh b/contrib/depends/gen_toolchain.cmake.sh index 0810cf4..df0dd73 100755 --- a/contrib/depends/gen_toolchain.cmake.sh +++ b/contrib/depends/gen_toolchain.cmake.sh @@ -56,6 +56,7 @@ cmake_policy(SET CMP0077 NEW) # Ensure 'option' honors normal variables SET(CMAKE_SYSTEM_NAME @cmake_system_name@) SET(CMAKE_SYSTEM_PROCESSOR @arch@) SET(CMAKE_BUILD_TYPE @release_type@) +SET(CMAKE_CXX_STANDARD 14) OPTION(STATIC "Link libraries statically" ON) OPTION(TREZOR_DEBUG "Main trezor debugging switch" OFF) @@ -246,6 +247,9 @@ endif() link_directories(@prefix@/lib) include_directories(@prefix@/include) +if(EXISTS "@prefix@/include/c++/15.2.0") + include_directories("@prefix@/include/c++/15.2.0") +endif() include_directories(@prefix@/include/wownero_seed) add_definitions(-DPOLYSEED_STATIC=ON) diff --git a/patches/monero/0020-depends-remove-icu4c-monero-project-monero-8880.patch b/patches/monero/0020-depends-remove-icu4c-monero-project-monero-8880.patch new file mode 100644 index 0000000..34172b6 --- /dev/null +++ b/patches/monero/0020-depends-remove-icu4c-monero-project-monero-8880.patch @@ -0,0 +1,41 @@ +From c1d4ec80ec32232d2e70074afd8830754a752d70 Mon Sep 17 00:00:00 2001 +From: Czarek Nakamoto <cyjan@mrcyjanek.net> +Date: Tue, 3 Mar 2026 13:55:59 +0100 +Subject: [PATCH] depends: remove icu4c monero-project/monero#8880 + +--- + CMakeLists.txt | 4 ++-- + src/common/perf_timer.h | 1 + + 2 files changed, 3 insertions(+), 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 10c80dbad..2525cf8ba 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1123,9 +1123,9 @@ if(MINGW) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wa,-mbig-obj") + set(EXTRA_LIBRARIES mswsock;ws2_32;iphlpapi;crypt32;bcrypt) + if(DEPENDS) +- set(ICU_LIBRARIES icuio icui18n icuuc icudata icutu iconv) ++ set(ICU_LIBRARIES iconv) + else() +- set(ICU_LIBRARIES icuio icuin icuuc icudt icutu iconv) ++ set(ICU_LIBRARIES iconv) + endif() + elseif(APPLE OR OPENBSD OR ANDROID) + set(EXTRA_LIBRARIES "") +diff --git a/src/common/perf_timer.h b/src/common/perf_timer.h +index c6120b06d..a96da6e56 100644 +--- a/src/common/perf_timer.h ++++ b/src/common/perf_timer.h +@@ -28,6 +28,7 @@ + + #pragma once + ++#include <cstdint> + #include <string> + #include <stdio.h> + #include <memory> +-- +2.51.0 + diff --git a/patches/monero/0021-fix-mingw-build-issues.patch b/patches/monero/0021-fix-mingw-build-issues.patch new file mode 100644 index 0000000..50d6a43 --- /dev/null +++ b/patches/monero/0021-fix-mingw-build-issues.patch @@ -0,0 +1,46 @@ +From ff7287c028327294a28f4521bf6c05721403016d Mon Sep 17 00:00:00 2001 +From: Czarek Nakamoto <cyjan@mrcyjanek.net> +Date: Wed, 4 Mar 2026 14:52:14 +0100 +Subject: [PATCH] fix: mingw build issues + +--- + contrib/epee/include/serialization/keyvalue_serialization.h | 1 + + contrib/epee/src/abstract_http_client.cpp | 3 ++- + 2 files changed, 3 insertions(+), 1 deletion(-) + +diff --git a/contrib/epee/include/serialization/keyvalue_serialization.h b/contrib/epee/include/serialization/keyvalue_serialization.h +index fbbddc7d2..5104f284d 100644 +--- a/contrib/epee/include/serialization/keyvalue_serialization.h ++++ b/contrib/epee/include/serialization/keyvalue_serialization.h +@@ -26,6 +26,7 @@ + + #pragma once + ++#include <cstdint> + #include <type_traits> + #include <boost/utility/value_init.hpp> + #include <boost/foreach.hpp> +diff --git a/contrib/epee/src/abstract_http_client.cpp b/contrib/epee/src/abstract_http_client.cpp +index 03f73cbbc..70c18cfca 100644 +--- a/contrib/epee/src/abstract_http_client.cpp ++++ b/contrib/epee/src/abstract_http_client.cpp +@@ -2,6 +2,7 @@ + #include "net/http_base.h" + #include "net/net_parse_helpers.h" + #include "misc_log_ex.h" ++#include <cmath> + + #undef MONERO_DEFAULT_LOG_CATEGORY + #define MONERO_DEFAULT_LOG_CATEGORY "net.http" +@@ -38,7 +39,7 @@ namespace net_utils + while (num_char >= radix) + { + temp = num_char % radix; +- num_char = (int)floor((float)num_char / (float)radix); ++ num_char = (int)std::floor((float)num_char / (float)radix); + csTmp = get_hex_vals()[temp]; + } + +-- +2.51.0 + |
