Enable ci build on arches: x86_64, x86, aarch64, s390x, powerpc64, alpha, sparc64, mips, riscv64 Signed-off-by: Lianbo Jiang <lijiang@xxxxxxxxxx> --- .github/workflows/ci-build.yml | 71 ++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 .github/workflows/ci-build.yml diff --git a/.github/workflows/ci-build.yml b/.github/workflows/ci-build.yml new file mode 100644 index 000000000000..9f1aeaf6160e --- /dev/null +++ b/.github/workflows/ci-build.yml @@ -0,0 +1,71 @@ +name: Build + +on: + push: + branches: [ "master" ] + +jobs: + build: + name: Build + runs-on: ubuntu-24.04 + strategy: + matrix: + arch: + - x86_64 + - aarch64 + - s390x + - powerpc64 + - x86 + - riscv64 + - mips + - alpha + - sparc64 + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Set Environment + env: + ARCH: ${{ matrix.arch }} + run: | + case $ARCH in + x86) GNU_ARCH="i686-linux-gnu" ;; + x86_64) CROSS_COMPILER_PKG="gcc-x86-64-linux-gnu" + CROSS_COMPILER_PKG+=" g++-x86-64-linux-gnu" + GNU_ARCH="$ARCH-linux-gnu" ;; + *) GNU_ARCH="$ARCH-linux-gnu" ;; + esac + + if [ -n "$GNU_ARCH" ]; then + if [ -z "$CROSS_COMPILER_PKG" ]; then + CROSS_COMPILER_PKG="gcc-$GNU_ARCH" + CROSS_COMPILER_PKG+=" g++-$GNU_ARCH" + fi + EXTRA_PKGS+=" $CROSS_COMPILER_PKG" + CROSS_COMPILE="$GNU_ARCH-" + fi + + echo "EXTRA_PKGS=$EXTRA_PKGS" >> $GITHUB_ENV + echo "CROSS_COMPILE=$CROSS_COMPILE" >> $GITHUB_ENV + + - name: Install deps for crash-utility building + run: | + sudo apt-get update + sudo apt-get install make gcc g++ bison flex texinfo wget patch tar build-essential libc-dev autoconf automake libncurses-dev + + - name: Install corss compile tool pkgs + if: env.EXTRA_PKGS != '' + run: | + sudo apt-get update + sudo apt-get -q=2 install ${{ env.EXTRA_PKGS }} + + - name: Build + run: | + make CROSS_COMPILE=${{ env.CROSS_COMPILE }} -j"$(nproc)" warn + - name: Checking and Clean up + run: | + echo "Run command: file crash ..." + file crash + echo "Clean up for compiling ..." + make CROSS_COMPILE=${{ env.CROSS_COMPILE }} -j"$(nproc)" clean -- 2.47.1 -- Crash-utility mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxxxxxx https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/ Contribution Guidelines: https://github.com/crash-utility/crash/wiki