From 8be1cc6e96a95a634c73caf2bf545373c992b128 Mon Sep 17 00:00:00 2001 From: Sergei Zimmerman Date: Sun, 17 Aug 2025 01:08:31 +0300 Subject: [PATCH] libstore-tests: Improve compile times with PCH (Before) **** Time summary: Compilation (25 times): Parsing (frontend): 145.5 s Codegen & opts (backend): 65.9 s (After) **** Time summary: Compilation (26 times): Parsing (frontend): 39.9 s Codegen & opts (backend): 55.1 s --- src/libstore-tests/meson.build | 2 ++ src/libstore-tests/pch/precompiled-headers.hh | 9 +++++++++ 2 files changed, 11 insertions(+) create mode 100644 src/libstore-tests/pch/precompiled-headers.hh diff --git a/src/libstore-tests/meson.build b/src/libstore-tests/meson.build index e5995bcb1..87f6a234a 100644 --- a/src/libstore-tests/meson.build +++ b/src/libstore-tests/meson.build @@ -94,6 +94,7 @@ this_exe = executable( link_args : linker_export_flags + [ '-lrapidcheck' ], # get main from gtest install : true, + cpp_pch : do_pch ? [ 'pch/precompiled-headers.hh' ] : [], ) test( @@ -127,6 +128,7 @@ if get_option('benchmarks') include_directories : include_dirs, link_args : linker_export_flags, install : true, + cpp_pch : do_pch ? [ 'pch/precompiled-headers.hh' ] : [], cpp_args : [ '-DNIX_UNIT_TEST_DATA="' + meson.current_source_dir() + '/data"', ], diff --git a/src/libstore-tests/pch/precompiled-headers.hh b/src/libstore-tests/pch/precompiled-headers.hh new file mode 100644 index 000000000..3eaa45261 --- /dev/null +++ b/src/libstore-tests/pch/precompiled-headers.hh @@ -0,0 +1,9 @@ +#include "nix/store/store-api.hh" +#include "nix/store/tests/libstore.hh" +#include "nix/util/util.hh" + +#include +#include +#include + +#include