Skip to content

Check against INT_MIN instead (#140) #245

Check against INT_MIN instead (#140)

Check against INT_MIN instead (#140) #245

name: Build and Test
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
container:
image: docker://andredesigna/pdfgen:latest
steps:
- uses: actions/checkout@v1
- name: Build Win32
run: |
make clean
make CC=/usr/lib/mxe/usr/bin/i686-w64-mingw32.static-gcc CLANG_FORMAT=clang-format-10
cp testprog testprog.exe
- name: Infer
run: make clean && infer run --no-progress-bar -- make CFLAGS="-g -Wall -pipe" LFLAGS="-lm"
- name: Build
run: make clean && make
- name: Update coverage statistics
shell: bash
env:
COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
run: |
if [[ "${GITHUB_REF##*/}" == "master" ]] ; then
./testprog
coveralls -i pdfgen.c
fi
- name: Test
run: make clean && scan-build-10 --status-bugs make check CLANG_FORMAT=clang-format-10
- name: Fuzz Test
run: make fuzz-check CLANG=clang-10 CLANG_FORMAT=clang-format-10 -j8
- name: Docs
run: make docs
- name: Coverage
run: make clean && make coverage
- name: Upload artifacts
uses: actions/upload-artifact@v2
with:
name: artifacts
path: |
output.pdf
pdfgen.h
pdfgen.o
doc/html/
testprog
testprog.exe
coverage-html/
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v1
- name: make x64
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
make clean
make testprog.exe CC=cl
cp testprog.exe testprog-64.exe
testprog-64
cp output.pdf output-win64.pdf
- name: make x86
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars32.bat"
make clean
make testprog.exe CC=cl
cp testprog.exe testprog-32.exe
testprog-32
cp output.pdf output-win32.pdf
- name: Upload aritfacts
uses: actions/upload-artifact@v2
with:
name: artifacts
path: |
output-win32.pdf
output-win64.pdf
testprog-32.exe
testprog-64.exe
build-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v1
- name: make
run: make