From 63c7b312d2d02584752394dc36eb93ea3dc6b580 Mon Sep 17 00:00:00 2001 From: Thomas Nixon Date: Thu, 1 Jun 2023 11:27:06 +0100 Subject: [PATCH 1/2] add CI option to nix flake --- flake.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/flake.nix b/flake.nix index 7903a76..6980f78 100644 --- a/flake.nix +++ b/flake.nix @@ -29,6 +29,9 @@ packages.libear_clang = packages.libear.override { stdenv = pkgs.clangStdenv; }; + packages.libear_ci = packages.libear.overrideAttrs { cmakeBuildType = "CI"; }; + packages.libear_clang_ci = packages.libear_clang.overrideAttrs { cmakeBuildType = "CI"; }; + devShells.libear = packages.libear.overrideAttrs (attrs: { nativeBuildInputs = attrs.nativeBuildInputs ++ devtools; }); From 1795ddaf49147e1e23300f3a5b08e62640c17f06 Mon Sep 17 00:00:00 2001 From: Thomas Nixon Date: Thu, 25 Jan 2024 18:50:11 +0000 Subject: [PATCH 2/2] enable warnings and run sanitizers in CI --- .github/workflows/build.yml | 2 +- CMakeLists.txt | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 15dd401..1a17fa6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -15,7 +15,7 @@ jobs: matrix: os: [windows-latest, macos-latest, ubuntu-latest] shared: [true, false] - build_type: [Release] + build_type: [CI] include: - os: windows-latest triplet: x64-windows diff --git a/CMakeLists.txt b/CMakeLists.txt index 2b3d765..81f18dc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,6 +27,12 @@ SET(CMAKE_CXX_FLAGS_COVERAGE "${CMAKE_CXX_FLAGS_DEBUG} --coverage") SET(CMAKE_EXE_LINKER_FLAGS_COVERAGE "${CMAKE_EXE_LINKER_FLAGS_DEBUG} --coverage") SET(CMAKE_SHARED_LINKER_FLAGS_COVERAGE "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} --coverage") +############################################################ +# add new CMAKE_BUILD_TYPE CI +############################################################ +set(SANITIZE_OPTIONS "-fsanitize=address -fsanitize=undefined") +SET(CMAKE_CXX_FLAGS_CI "${CMAKE_CXX_FLAGS_RELEASE} -Wall -Wextra -fno-omit-frame-pointer ${SANITIZE_OPTIONS}") + ############################################################ # user config options ############################################################