fortify-headers

standalone fortify-source implementation
git clone git://git.2f30.org/fortify-headers
Log | Files | Refs | README | LICENSE

testsuite.yaml (3766B)


      1 name: Test suite
      2 on:
      3   pull_request:
      4   push:
      5   schedule:
      6     - cron: '0 16 * * 5'
      7 
      8 jobs:
      9   gcc:
     10     runs-on: ubuntu-latest
     11     strategy:
     12       matrix:
     13         version: [9, 10, 11, 12, 13, 14]
     14     steps:
     15       - name: Checking out the code
     16         uses: actions/checkout@v3
     17       - name: Cache musl toolchain
     18         uses: actions/cache@v3
     19         id: cache-musl
     20         with:
     21           path: x86_64-linux-musl-native
     22           key: musl
     23       - name: Downloading musl-based toolchain
     24         if: steps.cache-musl.outputs.cache-hit != 'true'
     25         run: wget --quiet https://dustri.org/x86_64-linux-musl-native.tgz
     26       - name: Extracting musl-based toolchain
     27         if: steps.cache-musl.outputs.cache-hit != 'true'
     28         run: tar xzf ./x86_64-linux-musl-native.tgz
     29       - name: Setting up gcc version
     30         run: |
     31           sudo add-apt-repository ppa:ubuntu-toolchain-r/test
     32           sudo apt update
     33           sudo apt install -y --no-install-recommends gcc-${{ matrix.version }} g++-${{ matrix.version }}
     34           sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-${{ matrix.version }} 100
     35           sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${{ matrix.version }} 100
     36       - name: Build and run the testsuite
     37         run : make --silent -C tests clean gcc run | tee ./results.txt
     38       - name: Check the testsuite's output
     39         shell: bash
     40         run: grep -zvq 'FAIL' ./results.txt
     41       - name: Show logs in case of failure
     42         if: ${{ failure() }}
     43         run: cat ./results.txt
     44 
     45 
     46   clang:
     47     runs-on: ubuntu-latest
     48     strategy:
     49       matrix:
     50         version: [16, 17, 18]
     51     steps:
     52       - name: Checking out the code
     53         uses: actions/checkout@v3
     54       - name: Cache musl toolchain
     55         uses: actions/cache@v3
     56         id: cache-musl
     57         with:
     58           path: x86_64-linux-musl-native
     59           key: musl
     60       - name: Downloading musl-based toolchain
     61         if: steps.cache-musl.outputs.cache-hit != 'true'
     62         run: wget --quiet https://dustri.org/x86_64-linux-musl-native.tgz
     63       - name: Extracting musl-based toolchain
     64         if: steps.cache-musl.outputs.cache-hit != 'true'
     65         run: tar xzf ./x86_64-linux-musl-native.tgz
     66       - name: Setting up clang version
     67         run: |
     68           sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-${{ matrix.version }} 100
     69           sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-${{ matrix.version }} 100
     70       - name: Build and run the testsuite
     71         run : make --silent -C tests clean clang run | tee ./results.txt
     72       - name: Check the testsuite's output
     73         shell: bash
     74         run: grep -zvq 'FAIL' ./results.txt
     75       - name: Show logs in case of failure
     76         if: ${{ failure() }}
     77         run: cat ./results.txt
     78 
     79   c_versions:
     80     runs-on: ubuntu-latest
     81     strategy:
     82       matrix:
     83         version: ["c89", "c99", "c11", "c17"]
     84     steps:
     85       - name: Checking out the code
     86         uses: actions/checkout@v3
     87       - name: Cache musl toolchain
     88         uses: actions/cache@v3
     89         id: cache-musl
     90         with:
     91           path: x86_64-linux-musl-native
     92           key: musl
     93       - name: Downloading musl-based toolchain
     94         if: steps.cache-musl.outputs.cache-hit != 'true'
     95         run: wget --quiet https://dustri.org/x86_64-linux-musl-native.tgz
     96       - name: Extracting musl-based toolchain
     97         if: steps.cache-musl.outputs.cache-hit != 'true'
     98         run: tar xzf ./x86_64-linux-musl-native.tgz
     99       - name: Building with clang
    100         shell: bash
    101         run: CFLAGS=-std=${{ matrix.version }} make -C tests clean clang run
    102       - name: Building with gcc
    103         shell: bash
    104         run: CFLAGS=-std=${{ matrix.version }} make -C tests clean gcc run