From 7f13f8d135eb5bff19a13bb80420e4ad8e042386 Mon Sep 17 00:00:00 2001 From: such-gitea Date: Mon, 5 Jan 2026 10:27:16 -0800 Subject: [PATCH] windows fix 234567 --- .gitea/workflows/build.yaml | 47 ++++++++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/.gitea/workflows/build.yaml b/.gitea/workflows/build.yaml index f09779c..4578f85 100644 --- a/.gitea/workflows/build.yaml +++ b/.gitea/workflows/build.yaml @@ -114,32 +114,51 @@ jobs: git config --global url."https://github.com/".insteadOf "git@github.com:" git submodule update --init --recursive - # --- 1. PATCH DEPENDENCIES (Boost) --- - - name: Patch Boost Dependency Options + # --- 1. NUKE CACHE (Force Rebuild) --- + - name: Nuke Old Boost Cache run: | - echo "Patching boost.mk to include context and coroutine..." - sed -i 's/chrono,/chrono,context,coroutine,/g' external/monero/contrib/depends/packages/boost.mk + echo "Deleting cached Boost build..." + rm -rf external/monero/contrib/depends/work/build/x86_64-w64-mingw32/boost + rm -rf external/monero/contrib/depends/built/x86_64-w64-mingw32/boost - # --- 2. BUILD DEPENDENCIES --- + # --- 2. UPGRADE BOOST (The "Hail Mary" Patch) --- + - name: Upgrade Boost Version to 1.80.0 + run: | + echo "Forcing depends to use Boost 1.80.0 instead of 1.69.0..." + BOOST_MK="external/monero/contrib/depends/packages/boost.mk" + + # 1. Update Version + sed -i 's/1_69_0/1_80_0/g' $BOOST_MK + + # 2. Update SHA256 Hash (Official Hash for boost_1_80_0.tar.bz2) + sed -i 's/sha256_hash=.*$/sha256_hash=1e19565d82e43bc59209a168f5ac899d3ba471d55c7610c677d4ccf2c9c500c0/g' $BOOST_MK + + # 3. Disable Old Patches (They will fail on new Boost) + sed -i 's/$(package)_patches=.*//g' $BOOST_MK + + # 4. Add Context/Coroutine libraries (Still needed!) + sed -i 's/chrono,/chrono,context,coroutine,/g' $BOOST_MK + + # Debug: Show us the new file + cat $BOOST_MK + + # --- 3. BUILD DEPENDENCIES --- - name: Build Windows Dependencies run: | cd external/monero/contrib/depends + # This will download and build Boost 1.80.0 (Takes ~15-20 mins) make HOST=x86_64-w64-mingw32 -j$(nproc) - # --- 3. PATCH APP CODE (Boost Ver + Missing Headers + Downgrades) --- + # --- 4. PATCH APP CODE (Minimal Fixes Only) --- - name: Patch App Source Code run: | - echo "Downgrading Boost requirement from 1.70 to 1.69..." - sed -i 's/find_package(Boost 1.70/find_package(Boost 1.69/g' CMakeLists.txt - echo "Fixing missing include for GCC 13..." sed -i 's/#include /#include \n#include /' external/monero/contrib/epee/include/net/http_base.h + + # NOTE: We REMOVED the downgrades for 'buffer.clear' and 'get_executor' + # because Boost 1.80 supports the code natively! - echo "Downgrading C++ code to match Boost 1.69 API..." - sed -i 's/self.buffer.clear()/self.buffer.consume(self.buffer.size())/g' src/net/http/client.cpp - sed -i 's/self.timer.get_executor()/self.timer.get_io_service()/g' src/net/http/client.cpp - - # --- 4. COMPILE APP --- + # --- 5. COMPILE APP --- - name: Build Windows (Cross-Compile) run: | mkdir build && cd build