summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
AgeCommit message (Collapse)AuthorFilesLines
2021-06-05ci: save logs from builds and testsVictor Toso1-0/+24
Stored as Gitlab's artifacts for one week Signed-off-by: Victor Toso <victortoso@redhat.com>
2021-06-05ci: run tests unit tests tooVictor Toso1-3/+6
I'm using the --wrap option in meson command to include a simple memleak check with valgrind. I've changed the commands of same job to keep it uniform/easy to verify what's going on. Signed-off-by: Victor Toso <victortoso@redhat.com>
2021-05-03build-sys: drop autotoolsVictor Toso1-30/+2
Meson build was added for 0.9.0 release where we deprecated autotools. Now that release is done, let's maintain only meson. Signed-off-by: Victor Toso <victortoso@redhat.com>
2021-04-27Make fuzzing with meson build workMichael Hanselmann1-3/+20
TL;DR: Update build system and utility script such invoking `build-aux/oss-fuzz.sh` is all that's needed to build fuzzers in an OSS-Fuzz compatible environment. `.gitlab-ci.yml`: Build three variants of fuzzers: using autoconf as before, libFuzzer via Clang and using the standalone driver. `build-aux/oss-fuzz.sh`: Remove compiler-specific code. The fuzzing environment should control the compiler via `$CC`/`$CXX` along with flags in `$CFLAGS`/`$CXXFLAGS`. Make code actually build by overriding `b_lundef` default value, otherwise fuzzing-related symbols would cause linker errors during compilation. Pass fuzzing engine via option; the default would be to use the built-in standalone engine. `meson.build`: Remove all fuzzing-related logic except to detect whether fuzzing should be enabled at all. `fuzzing/meson.build`: If fuzzing engine `standalone` is selected the build behaves as any other C program build. When another fuzzing engine is to be used, e.g. from `$LIB_FUZZING_ENGINE` in `build-aux/oss-fuzz.sh`, a test program is compiled and linked to ensure that linking suceeds (in particular whether a `main` function is provided). Prepare for the addition of more fuzzing binaries by using a loop. Add OSS-Fuzz configuration file for binaries. Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2021-03-24gitlab-ci: add extra build with mesonVictor Toso1-5/+12
It does also simplify the job names: stable, fuzzing and windows are clear enough Signed-off-by: Victor Toso <victortoso@redhat.com>
2021-03-24build-sys: add meson option for fuzzingVictor Toso1-0/+2
Compiler's LLVMFuzzerTestOneInput is provided (llvm >= 11.0.0), it'll use that; otherwise, we build the standalone static library for our usbredirparserfuzz binary. There is no `fuzzer/FuzzedDataProvider.h` for windows, so we have it disabled by default for that host system. As the overall settings around libFuzzer relies on environment variables, we add build-aux/oss-fuzz.sh script which is based on systemd's script [0], hence, I'm keeping the name here. [0] https://github.com/systemd/systemd/blob/main/tools/oss-fuzz.sh Signed-off-by: Victor Toso <victortoso@redhat.com>
2021-03-04ci: add check for toolsVictor Toso1-2/+9
Signed-off-by: Victor Toso <victortoso@redhat.com>
2021-03-04ci: add windows buildVictor Toso1-1/+11
Signed-off-by: Victor Toso <victortoso@redhat.com>
2021-02-17Add fuzzing-enabled CI buildMichael Hanselmann1-2/+20
Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2018-08-07ci: Add basic build-stable checkVictor Toso1-0/+15
Signed-off-by: Victor Toso <victortoso@redhat.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>