diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8a62737..2e97860 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,9 +22,6 @@ jobs: fail-fast: false matrix: include: - - arch: lexra - tool: mips-linux - dir: rsdk-4.6.4-5281-EB-3.10-0.9.33-m32ub-20141001 - arch: arm64 tool: aarch64-unknown-linux-musl - arch: arm @@ -55,6 +52,12 @@ jobs: tool: i586-unknown-linux-musl - arch: x86_64 tool: x86_64-unknown-linux-musl + - arch: lexra + tool: mips-linux + dir: rsdk-4.6.4-5281-EB-3.10-0.9.33-m32ub-20141001 + env: + LDFLAGS: '-lgcc_eh' + repo: 'bol-van/build' steps: - name: Checkout uses: actions/checkout@v4 @@ -63,27 +66,30 @@ jobs: - name: Set up build tools env: - REPO: 'spvkgn/musl-cross' - REPO_LEXRA: 'bol-van/build' + REPO: ${{ matrix.arch == 'lexra' && matrix.repo || 'spvkgn/musl-cross' }} ARCH: ${{ matrix.arch }} TOOL: ${{ matrix.tool }} - DIR: ${{ matrix.dir }} + DIR: ${{ matrix.arch == 'lexra' && matrix.dir || matrix.tool }} run: | - DIR=${DIR:-$TOOL} - [ "$ARCH" = lexra ] && sudo dpkg --add-architecture i386 - sudo apt update -qq - sudo apt install -y libcap-dev - [ "$ARCH" = lexra ] && sudo apt install -y libc6:i386 zlib1g:i386 + if [[ "$ARCH" == lexra ]]; then + sudo dpkg --add-architecture i386 + sudo apt update -qq + sudo apt install -y libcap-dev libc6:i386 zlib1g:i386 + URL=https://github.com/$REPO/raw/refs/heads/master/$DIR.txz + else + sudo apt update -qq + sudo apt install -y libcap-dev + URL=https://github.com/$REPO/releases/download/latest/$TOOL.tar.xz + fi mkdir -p $HOME/tools - URL=https://github.com/$REPO/releases/download/latest/$DIR.tar.xz - [ "$ARCH" = lexra ] && URL=https://github.com/$REPO_LEXRA/raw/refs/heads/master/$DIR.txz wget -qO- $URL | tar -C $HOME/tools -xJ || exit 1 - [ -d "$HOME/tools/$DIR/bin" ] && echo "$HOME/tools/$DIR/bin" >> $GITHUB_PATH + [[ -d "$HOME/tools/$DIR/bin" ]] && echo "$HOME/tools/$DIR/bin" >> $GITHUB_PATH - name: Build env: ARCH: ${{ matrix.arch }} TARGET: ${{ matrix.tool }} + LDFLAGS: ${{ matrix.env.LDFLAGS != '' && matrix.env.LDFLAGS || null }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | DEPS_DIR=$GITHUB_WORKSPACE/deps @@ -93,10 +99,7 @@ jobs: export NM=$TARGET-nm export STRIP=$TARGET-strip export PKG_CONFIG_PATH=$DEPS_DIR/lib/pkgconfig - export STAGING_DIR=/tmp - LDFLAGS= - [ "$ARCH" = lexra ] && LDFLAGS=-lgcc_eh - export LDFLAGS + export STAGING_DIR=$RUNNER_TEMP # netfilter libs wget -qO- https://www.netfilter.org/pub/libnfnetlink/libnfnetlink-1.0.2.tar.bz2 | tar -xj