Enable GitHub Actions
This commit is contained in:
parent
bac58b27ca
commit
d510af81d0
110
.github/workflows/ci.yml
vendored
Normal file
110
.github/workflows/ci.yml
vendored
Normal file
@ -0,0 +1,110 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master, stable, next]
|
||||
pull_request:
|
||||
branches: [master, stable, next]
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
tcc:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get install -y build-essential libtool autoconf automake tcc
|
||||
|
||||
- name: Autogen
|
||||
run: ./autogen.sh -s
|
||||
|
||||
- name: Compilation with tcc
|
||||
run: |
|
||||
env CC=tcc CFLAGS='-w' CPPFLAGS="-DDEV_MODE=1" ./configure --prefix=/tmp --disable-dependency-tracking --disable-shared || cat config.log
|
||||
make -j $(nproc) && make check && make install
|
||||
env CC=tcc CPPFLAGS='-I/tmp/include' LDFLAGS='-L/tmp/lib' LD_LIBRARY_PATH='/tmp/lib' ./test/constcheck.sh
|
||||
make uninstall
|
||||
make distclean
|
||||
|
||||
regular:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get install -y build-essential libtool autoconf automake
|
||||
|
||||
- name: Autogen
|
||||
run: ./autogen.sh -s
|
||||
|
||||
- name: C99 compat check
|
||||
run: |
|
||||
env CPPFLAGS="-DDEV_MODE=1" ./configure --disable-dependency-tracking
|
||||
make -j $(nproc) CFLAGS='-g0' > /dev/null && cp src/libsodium/.libs/libsodium.so lib.so && make clean > /dev/null && make CFLAGS='-g0' CPPFLAGS='-DDEV_MODE=1 -DSODIUM_C99\(X\)=' > /dev/null && cp src/libsodium/.libs/libsodium.so lib-oldc.so && cmp lib.so lib-oldc.so && echo No binary changes && make clean > /dev/null
|
||||
make distcheck
|
||||
make distclean > /dev/null
|
||||
|
||||
- name: Regular compilation
|
||||
run: |
|
||||
env CPPFLAGS="-DDEV_MODE=1" ./configure --disable-dependency-tracking --enable-minimal
|
||||
make -j $(nproc)
|
||||
make check
|
||||
( echo '#include <sodium.h>' ; echo 'int main(void) { return sodium_init(); }' ) > /tmp/main.c && gcc -DDEV_MODE=1 -Isrc/libsodium/include -Isrc/libsodium/include/sodium $(find src -name '*.c' -o -name '*.S') /tmp/main.c
|
||||
make distclean > /dev/null
|
||||
|
||||
check-globals:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get install -y build-essential libtool autoconf automake
|
||||
|
||||
- name: Autogen
|
||||
run: ./autogen.sh -s
|
||||
|
||||
- name: Check globals
|
||||
run: |
|
||||
test/rename-globals.sh
|
||||
|
||||
other-comp:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get install -y build-essential libtool autoconf automake clang
|
||||
|
||||
- name: Autogen
|
||||
run: ./autogen.sh -s
|
||||
|
||||
- name: Compilation with g++
|
||||
run: |
|
||||
env CC=g++ CPPFLAGS="-DDEV_MODE=1" ./configure --disable-dependency-tracking
|
||||
make -j $(nproc) check
|
||||
make clean > /dev/null
|
||||
|
||||
- name: Compilation with clang
|
||||
run: |
|
||||
env CC=clang CPPFLAGS="-DDEV_MODE=1" ./configure --disable-dependency-tracking
|
||||
make -j $(nproc) check
|
||||
make clean > /dev/null
|
||||
|
||||
other-arch:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get install -y build-essential libtool autoconf automake qemu-user-static gcc-powerpc-linux-gnu
|
||||
|
||||
- name: Autogen
|
||||
run: ./autogen.sh -s
|
||||
|
||||
- name: Big-Endian PowerPC compilation
|
||||
run: |
|
||||
env CPPFLAGS="-DDEV_MODE=1" ./configure --disable-dependency-tracking --host=powerpc-linux-gnu
|
||||
make -j $(nproc)
|
||||
make clean > /dev/null
|
@ -1,7 +1,8 @@
|
||||
[![GitHub CI](https://github.com/jedisct1/libsodium/workflows/CI/badge.svg)](https://github.com/jedisct1/libsodium/actions)
|
||||
[![Windows build status](https://ci.appveyor.com/api/projects/status/fu8s2elx25il98hj?svg=true)](https://ci.appveyor.com/project/jedisct1/libsodium)
|
||||
[![Coverity Scan Build Status](https://scan.coverity.com/projects/2397/badge.svg)](https://scan.coverity.com/projects/2397)
|
||||
[![Azure build status](https://jedisct1.visualstudio.com/Libsodium/_apis/build/status/jedisct1.libsodium?branchName=stable)](https://jedisct1.visualstudio.com/Libsodium/_build/latest?definitionId=3&branchName=stable)
|
||||
![CodeQL scan](https://github.com/jedisct1/libsodium/workflows/CodeQL%20scan/badge.svg)
|
||||
[![CodeQL scan](https://github.com/jedisct1/libsodium/workflows/CodeQL%20scan/badge.svg)](https://github.com/jedisct1/libsodium/actions)
|
||||
|
||||
![libsodium](https://raw.github.com/jedisct1/libsodium/master/logo.png)
|
||||
============
|
||||
|
Loading…
Reference in New Issue
Block a user