Update .gitea/workflows/build.yaml
Some checks failed
Build Wownero LWS (Symlink + Manual Git) / macos (arm64, macos-arm64, aarch64-apple-darwin11) (push) Failing after 1s
Build Wownero LWS (Symlink + Manual Git) / macos (x86_64, macos-x64, x86_64-apple-darwin11) (push) Failing after 0s
Build Wownero LWS (Symlink + Manual Git) / linux-native (push) Failing after 2m7s
Build Wownero LWS (Symlink + Manual Git) / linux-cross (aarch64, /usr/aarch64-linux-gnu, aarch64-linux-gnu) (push) Failing after 49s
Build Wownero LWS (Symlink + Manual Git) / linux-cross (riscv64, /usr/riscv64-linux-gnu, riscv64-linux-gnu) (push) Failing after 51s
Build Wownero LWS (Symlink + Manual Git) / windows (push) Failing after 1m42s

This commit is contained in:
2026-02-10 09:15:25 -05:00
parent f89c366032
commit a3788d9612

View File

@@ -1,4 +1,4 @@
name: Build Wownero LWS (Scorched Earth Fix) name: Build Wownero LWS (Symlink + Manual Git)
on: on:
push: push:
branches: [ master, main ] branches: [ master, main ]
@@ -11,7 +11,7 @@ env:
jobs: jobs:
# ================================================================== # ==================================================================
# JOB 1: LINUX NATIVE (x86_64) - librt.so Nuke Fix # JOB 1: LINUX NATIVE (x86_64) - Symlink Fix
# ================================================================== # ==================================================================
linux-native: linux-native:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -24,27 +24,18 @@ jobs:
- name: Install Static System Libs - name: Install Static System Libs
run: apt-get update && apt-get install -y libc6-dev run: apt-get update && apt-get install -y libc6-dev
- name: Force Static RT (Scorched Earth) - name: Manual Checkout
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: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
rm -rf * rm -rf *
git init
git config --global --add safe.directory '*' git config --global --add safe.directory '*'
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW"
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git"
git clone http://oauth2:$GITHUB_TOKEN@git.such.software:3000/${{ github.repository }}.git . git remote add origin http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/${{ github.repository }}.git
git fetch origin ${{ github.sha }}
git checkout ${{ github.sha }}
git submodule update --init --recursive git submodule update --init --recursive
- name: Patch Source - name: Patch Source
@@ -60,12 +51,24 @@ jobs:
mkdir -p /opt/wownero-sdk mkdir -p /opt/wownero-sdk
tar -xf sdk.tar.gz -C /opt/wownero-sdk tar -xf sdk.tar.gz -C /opt/wownero-sdk
- name: Normalize SDK - name: Normalize SDK & Create Symlink
run: | run: |
cd /opt/wownero-sdk/lib cd /opt/wownero-sdk/lib
find . -name "libzstd*.a" -exec cp -n {} libzstd.a \; || true find . -name "libzstd*.a" -exec cp -n {} libzstd.a \; || true
find . -name "libz*.a" ! -name "*zmq*" -exec cp -n {} libz.a \; || true find . -name "libz*.a" ! -name "*zmq*" -exec cp -n {} libz.a \; || true
find . -name "libhidapi*.a" -exec cp -n {} libhidapi.a \; || true find . -name "libhidapi*.a" -exec cp -n {} libhidapi.a \; || true
# SYMLINK FIX: Find system librt.a and link it HERE.
# This tricks CMake into finding it "inside" our SDK without nuking the system.
SYSTEM_RT=$(find /usr -name "librt.a" | head -n 1)
if [ -n "$SYSTEM_RT" ]; then
echo "Creating symlink for $SYSTEM_RT"
ln -s "$SYSTEM_RT" librt.a
else
echo "FATAL: System librt.a not found!"
exit 1
fi
ls -lh *.a ls -lh *.a
- name: Install Modern CMake - name: Install Modern CMake
@@ -79,7 +82,7 @@ jobs:
mkdir build && cd build mkdir build && cd build
SDK_DIR="/opt/wownero-sdk" SDK_DIR="/opt/wownero-sdk"
# Using the detected RT_PATH variable from the earlier step # Note: We do NOT need to specify -DRT_LIBRARY because the symlink handles it.
cmake .. -DCMAKE_BUILD_TYPE=Release \ cmake .. -DCMAKE_BUILD_TYPE=Release \
-DBUILD_STATIC=ON \ -DBUILD_STATIC=ON \
-DCMAKE_PREFIX_PATH="$SDK_DIR" \ -DCMAKE_PREFIX_PATH="$SDK_DIR" \
@@ -105,7 +108,6 @@ jobs:
-DZLIB_INCLUDE_DIR="$SDK_DIR/include" \ -DZLIB_INCLUDE_DIR="$SDK_DIR/include" \
-DLIBEVENT_LIBRARY=$SDK_DIR/lib/libevent.a \ -DLIBEVENT_LIBRARY=$SDK_DIR/lib/libevent.a \
-DLIBEVENT_INCLUDE_DIR=$SDK_DIR/include \ -DLIBEVENT_INCLUDE_DIR=$SDK_DIR/include \
-DRT_LIBRARY=${{ env.RT_PATH }} \
-DUSE_READLINE=OFF \ -DUSE_READLINE=OFF \
-DCMAKE_EXE_LINKER_FLAGS="-static" -DCMAKE_EXE_LINKER_FLAGS="-static"
@@ -143,15 +145,18 @@ jobs:
steps: steps:
- name: Fix DNS - name: Fix DNS
run: echo "192.168.88.230 git.such.software" >> /etc/hosts run: echo "192.168.88.230 git.such.software" >> /etc/hosts
- name: Checkout - name: Manual Checkout
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
rm -rf * rm -rf *
git init
git config --global --add safe.directory '*' git config --global --add safe.directory '*'
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW"
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git"
git clone http://oauth2:$GITHUB_TOKEN@git.such.software:3000/${{ github.repository }}.git . git remote add origin http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/${{ github.repository }}.git
git fetch origin ${{ github.sha }}
git checkout ${{ github.sha }}
git submodule update --init --recursive git submodule update --init --recursive
- name: Patch Source - name: Patch Source
@@ -187,10 +192,8 @@ jobs:
set(CMAKE_SYSTEM_PROCESSOR ${{ matrix.proc }}) set(CMAKE_SYSTEM_PROCESSOR ${{ matrix.proc }})
set(CMAKE_C_COMPILER ${{ matrix.target }}-gcc) set(CMAKE_C_COMPILER ${{ matrix.target }}-gcc)
set(CMAKE_CXX_COMPILER ${{ matrix.target }}-g++) 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_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) set(CMAKE_CXX_FLAGS "-D_GNU_SOURCE -D_XOPEN_SOURCE=700" CACHE STRING "" FORCE)
set(CMAKE_FIND_ROOT_PATH /opt/wownero-sdk) set(CMAKE_FIND_ROOT_PATH /opt/wownero-sdk)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH) set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)
@@ -255,15 +258,18 @@ jobs:
steps: steps:
- name: Fix DNS - name: Fix DNS
run: echo "192.168.88.230 git.such.software" >> /etc/hosts run: echo "192.168.88.230 git.such.software" >> /etc/hosts
- name: Checkout - name: Manual Checkout
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
rm -rf * rm -rf *
git init
git config --global --add safe.directory '*' git config --global --add safe.directory '*'
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW"
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git"
git clone http://oauth2:$GITHUB_TOKEN@git.such.software:3000/${{ github.repository }}.git . git remote add origin http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/${{ github.repository }}.git
git fetch origin ${{ github.sha }}
git checkout ${{ github.sha }}
git submodule update --init --recursive git submodule update --init --recursive
- name: Patch Source - name: Patch Source
@@ -296,7 +302,7 @@ jobs:
find . -name "libhidapi*.a" -exec cp -n {} libhidapi.a \; || true find . -name "libhidapi*.a" -exec cp -n {} libhidapi.a \; || true
find . -name "libiconv*.a" -exec cp -n {} libiconv.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 # Create dummy librt.a directly in lib
echo "" > dummy.c echo "" > dummy.c
x86_64-w64-mingw32-gcc -c dummy.c -o dummy.o x86_64-w64-mingw32-gcc -c dummy.c -o dummy.o
x86_64-w64-mingw32-ar rcs librt.a dummy.o x86_64-w64-mingw32-ar rcs librt.a dummy.o
@@ -390,14 +396,17 @@ jobs:
arch: arm64 arch: arm64
platform: macos-arm64 platform: macos-arm64
steps: steps:
- name: Checkout - name: Manual Checkout
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: | run: |
rm -rf * rm -rf *
git init
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/RandomWOW.git".insteadOf "https://codeberg.org/wownero/RandomWOW"
git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git" git config --global url."http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/Builds/wownero.git".insteadOf "https://codeberg.org/wownero/wownero.git"
git clone http://oauth2:$GITHUB_TOKEN@git.such.software:3000/${{ github.repository }}.git . git remote add origin http://oauth2:${GITHUB_TOKEN}@git.such.software:3000/${{ github.repository }}.git
git fetch origin ${{ github.sha }}
git checkout ${{ github.sha }}
git submodule update --init --recursive git submodule update --init --recursive
- name: Patch Source - name: Patch Source
@@ -421,7 +430,6 @@ jobs:
mkdir build && cd build mkdir build && cd build
SDK_DIR="$(pwd)/../wownero-sdk" SDK_DIR="$(pwd)/../wownero-sdk"
# Explicitly set ZSTD and ZLIB to ensure we don't accidentally link system dylibs
cmake .. -DCMAKE_BUILD_TYPE=Release \ cmake .. -DCMAKE_BUILD_TYPE=Release \
-DBUILD_STATIC=ON \ -DBUILD_STATIC=ON \
-DBoost_USE_STATIC_RUNTIME=OFF \ -DBoost_USE_STATIC_RUNTIME=OFF \