Update .gitea/workflows/build.yaml
Some checks failed
Build Wownero LWS (Scorched Earth Fix) / macos (arm64, macos-arm64, aarch64-apple-darwin11) (push) Failing after 2s
Build Wownero LWS (Scorched Earth Fix) / macos (x86_64, macos-x64, x86_64-apple-darwin11) (push) Failing after 0s
Build Wownero LWS (Scorched Earth Fix) / linux-native (push) Failing after 55s
Build Wownero LWS (Scorched Earth Fix) / linux-cross (aarch64, /usr/aarch64-linux-gnu, aarch64-linux-gnu) (push) Failing after 50s
Build Wownero LWS (Scorched Earth Fix) / linux-cross (riscv64, /usr/riscv64-linux-gnu, riscv64-linux-gnu) (push) Failing after 50s
Build Wownero LWS (Scorched Earth Fix) / windows (push) Failing after 1m45s

This commit is contained in:
2026-02-10 09:04:03 -05:00
parent 41eb591cbb
commit f89c366032

View File

@@ -1,4 +1,4 @@
name: Build Wownero LWS (Linux Static Fix)
name: Build Wownero LWS (Scorched Earth Fix)
on:
push:
branches: [ master, main ]
@@ -11,7 +11,7 @@ env:
jobs:
# ==================================================================
# JOB 1: LINUX NATIVE (x86_64) - Fixed librt linking
# JOB 1: LINUX NATIVE (x86_64) - librt.so Nuke Fix
# ==================================================================
linux-native:
runs-on: ubuntu-latest
@@ -23,6 +23,19 @@ jobs:
run: echo "192.168.88.230 git.such.software" >> /etc/hosts
- name: Install Static System Libs
run: apt-get update && apt-get install -y libc6-dev
- name: Force Static RT (Scorched Earth)
run: |
# 1. Find where the static lib actually lives
STATIC_RT=$(find /usr -name "librt.a" | head -n 1)
echo "Found librt.a at: $STATIC_RT"
echo "RT_PATH=$STATIC_RT" >> $GITHUB_ENV
# 2. DELETE the dynamic .so versions so the linker HAS to choose static
# (Safe to do inside a disposable container build)
find /usr -name "librt.so*" -delete
echo "Deleted shared librt objects to force static linking."
- name: Checkout
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -66,7 +79,7 @@ jobs:
mkdir build && cd build
SDK_DIR="/opt/wownero-sdk"
# FIX: Explicitly point RT_LIBRARY to the static archive to prevent .so linking error
# Using the detected RT_PATH variable from the earlier step
cmake .. -DCMAKE_BUILD_TYPE=Release \
-DBUILD_STATIC=ON \
-DCMAKE_PREFIX_PATH="$SDK_DIR" \
@@ -92,7 +105,7 @@ jobs:
-DZLIB_INCLUDE_DIR="$SDK_DIR/include" \
-DLIBEVENT_LIBRARY=$SDK_DIR/lib/libevent.a \
-DLIBEVENT_INCLUDE_DIR=$SDK_DIR/include \
-DRT_LIBRARY=/usr/lib/x86_64-linux-gnu/librt.a \
-DRT_LIBRARY=${{ env.RT_PATH }} \
-DUSE_READLINE=OFF \
-DCMAKE_EXE_LINKER_FLAGS="-static"
@@ -174,6 +187,7 @@ jobs:
set(CMAKE_SYSTEM_PROCESSOR ${{ matrix.proc }})
set(CMAKE_C_COMPILER ${{ matrix.target }}-gcc)
set(CMAKE_CXX_COMPILER ${{ matrix.target }}-g++)
# Explicit CFLAGS
set(CMAKE_C_FLAGS "-D_GNU_SOURCE -D_XOPEN_SOURCE=700" CACHE STRING "" FORCE)
set(CMAKE_CXX_FLAGS "-D_GNU_SOURCE -D_XOPEN_SOURCE=700" CACHE STRING "" FORCE)
@@ -282,6 +296,7 @@ jobs:
find . -name "libhidapi*.a" -exec cp -n {} libhidapi.a \; || true
find . -name "libiconv*.a" -exec cp -n {} libiconv.a \; || true
# FIX: Build dummy librt DIRECTLY inside the SDK folder so CMake finds it easily
echo "" > dummy.c
x86_64-w64-mingw32-gcc -c dummy.c -o dummy.o
x86_64-w64-mingw32-ar rcs librt.a dummy.o
@@ -358,7 +373,7 @@ jobs:
path: release/*.zip
# ==================================================================
# JOB 4: MACOS - Hardened paths
# JOB 4: MACOS
# ==================================================================
macos:
runs-on: macos-latest
@@ -406,7 +421,7 @@ jobs:
mkdir build && cd build
SDK_DIR="$(pwd)/../wownero-sdk"
# Added explicit library paths to avoid dynamic link errors
# Explicitly set ZSTD and ZLIB to ensure we don't accidentally link system dylibs
cmake .. -DCMAKE_BUILD_TYPE=Release \
-DBUILD_STATIC=ON \
-DBoost_USE_STATIC_RUNTIME=OFF \