[gcc(refs/users/egallager/heads/CI)] Add linux ci

Eric Gallager egallager@gcc.gnu.org
Sat Oct 28 17:48:45 GMT 2023


https://gcc.gnu.org/g:59d859a85e3d9573085ac9390d4e6464fa4bae69

commit 59d859a85e3d9573085ac9390d4e6464fa4bae69
Author: Tal Regev <tal.regev@gmail.com>
Date:   Sat Jul 8 00:57:05 2023 +0300

    Add linux ci

Diff:
---
 .github/workflows/linux.yaml | 113 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 113 insertions(+)

diff --git a/.github/workflows/linux.yaml b/.github/workflows/linux.yaml
new file mode 100644
index 000000000000..f90ea0bd3115
--- /dev/null
+++ b/.github/workflows/linux.yaml
@@ -0,0 +1,113 @@
+name: Linux
+on:
+  push:
+    branches: 
+      - master
+      - releases/gcc-*
+    tags:
+      - releases/gcc-*
+  pull_request:
+    branches: 
+      - master
+      - releases/gcc-*
+    tags:
+      - releases/gcc-*
+
+concurrency:
+  group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
+  cancel-in-progress: true
+
+jobs:
+  build:
+    name: ${{ matrix.name }}-build
+    runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        include:
+          - name: ubuntu-x64
+            target: x86_64
+        
+      fail-fast: false
+    steps:
+      - uses: actions/checkout@v3
+        with:
+          fetch-depth: 2
+
+      - name: Install dependencies
+        run: |
+          sudo apt-get -qq update
+          sudo apt install -y gcc-multilib build-essential flex zlib1g-dev gnat gdc
+
+      - name: Install dependencies for aarch64
+        if: success() && contains(matrix.target, 'aarch64')
+        run: |
+          sudo apt-get -y install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu binutils-aarch64-linux-gnu
+
+      - name: Download prerequisites
+        if: success()
+        run: |
+          ./contrib/download_prerequisites    
+
+      - name: Configure x86_64
+        if: success() && matrix.target == 'x86_64'
+        run: |
+          unset ADA_INCLUDE_PATH
+          unset ADA_OBJECT_PATH
+          cd ../
+          mkdir build
+          cd build
+          ../gcc/configure \
+                --enable-languages=c,c++,go,d,fortran,objc,obj-c++,m2 \
+                --prefix=/usr \
+                --with-gcc-major-version-only \
+                --program-prefix=x86_64-linux-gnu- \
+                --enable-shared \
+                --enable-linker-build-id \
+                --libexecdir=/usr/lib \
+                --without-included-gettext \
+                --enable-threads=posix \
+                --libdir=/usr/lib \
+                --enable-nls \
+                --enable-clocale=gnu \
+                --enable-libstdcxx-debug \
+                --enable-libstdcxx-time=yes \
+                --with-default-libstdcxx-abi=new \
+                --enable-gnu-unique-object \
+                --disable-vtable-verify \
+                --enable-plugin \
+                --enable-default-pie \
+                --with-system-zlib \
+                --with-target-system-zlib=auto \
+                --enable-objc-gc=auto \
+                --enable-multiarch \
+                --disable-werror \
+                --with-arch-32=i686 \
+                --with-abi=m64 \
+                --with-multilib-list=m32,m64,mx32 \
+                --enable-multilib \
+                --with-tune=generic \
+                --without-cuda-driver \
+                --enable-checking=release \
+                --build=x86_64-linux-gnu \
+                --host=x86_64-linux-gnu \
+                --target=x86_64-linux-gnu
+
+      - name: Make bootstrap
+        if: success()
+        run: |
+          cd ../build
+          make bootstrap -j$(nproc)
+
+      - name: Make install
+        if: success()
+        run: |
+          cd ../build
+          sudo make install
+
+      - name: Tests
+        if: success()
+        run: |
+          /usr/bin/x86_64-linux-gnu-gcc --version
+          /usr/bin/x86_64-linux-gnu-gcc -v
+          cd ../build
+          make -k check


More information about the Gcc-cvs mailing list