Unverified Commit b3fd5c5d authored by bol-van's avatar bol-van Committed by GitHub
Browse files

Merge pull request #957 from spvkgn/fix-actions

github: minor for lexra
parents 63fbf285 202b7224
Loading
Loading
Loading
Loading
+26 −21
Original line number Diff line number Diff line
@@ -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,13 @@ 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:
              CFLAGS: '-march=5281'
              LDFLAGS: '-lgcc_eh'
            repo: 'bol-van/build'
    steps:
      - name: Checkout
        uses: actions/checkout@v4
@@ -63,27 +67,31 @@ jobs:

      - name: Set up build tools
        env:
          REPO: 'spvkgn/musl-cross'
          REPO_LEXRA: 'bol-van/build'
          ARCH: ${{ matrix.arch }}
          TOOL: ${{ matrix.tool }}
          DIR: ${{ matrix.dir }}
          REPO: ${{ matrix.arch == 'lexra' && matrix.repo || 'spvkgn/musl-cross' }}
          DIR: ${{ matrix.arch == 'lexra' && matrix.dir || matrix.tool }}
        run: |
          DIR=${DIR:-$TOOL}
          [ "$ARCH" = lexra ] && sudo dpkg --add-architecture 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
          [ "$ARCH" = lexra ] && sudo apt install -y libc6:i386 zlib1g:i386
            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 }}
          CFLAGS: ${{ matrix.env.CFLAGS != '' && matrix.env.CFLAGS || null }}
          LDFLAGS: ${{ matrix.env.LDFLAGS != '' && matrix.env.LDFLAGS || null }}
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
        run: |
          DEPS_DIR=$GITHUB_WORKSPACE/deps
@@ -93,10 +101,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
@@ -106,7 +111,7 @@ jobs:
          for i in libmnl libnfnetlink libnetfilter_queue ; do
            (
              cd $i-*
              CFLAGS="-Os -flto=auto" \
              CFLAGS="-Os -flto=auto $CFLAGS" \
              ./configure --prefix= --host=$TARGET --enable-static --disable-shared --disable-dependency-tracking
              make install -j$(nproc) DESTDIR=$DEPS_DIR
            )
@@ -118,7 +123,7 @@ jobs:
            xargs -I{} wget -qO- https://github.com/madler/zlib/archive/refs/tags/{}.tar.gz | tar -xz
          (
            cd zlib-*
            CFLAGS="-Os -flto=auto" \
            CFLAGS="-Os -flto=auto $CFLAGS" \
            ./configure --prefix= --static
            make install -j$(nproc) DESTDIR=$DEPS_DIR
          )
@@ -129,7 +134,7 @@ jobs:
          install -Dm644 -t $DEPS_DIR/include/sys /usr/include/x86_64-linux-gnu/sys/queue.h /usr/include/sys/capability.h

          # zapret
          CFLAGS="-DZAPRET_GH_VER=${{ github.ref_name }} -DZAPRET_GH_HASH=${{ github.sha }} -static-libgcc -static -I$DEPS_DIR/include" \
          CFLAGS="-DZAPRET_GH_VER=${{ github.ref_name }} -DZAPRET_GH_HASH=${{ github.sha }} -static-libgcc -static -I$DEPS_DIR/include $CFLAGS" \
          LDFLAGS="-L$DEPS_DIR/lib $LDFLAGS" \
          make -C zapret -j$(nproc)
          tar -C zapret/binaries/my -cJf zapret-linux-$ARCH.tar.xz .