[Crash-utility] [PATCH 4/4] Add ci-build.yml

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Fedora Development]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]

 

Powered by Linux