[mu bug] Build script fails if configured with tests disabled
progfolio opened this issue · comments
Describe the bug
I'm not familiar with meson, so please forgive my ignorance if this is not a bug.
When upgrading to the latest mu version with tests disabled I get the following build error:
mu 1.12.2
User defined options
tests: disabled
Found ninja-1.11.1 at /usr/bin/ninja
Cleaning... 0 files.
*** Now run either 'ninja -C build' or 'make' to build mu
*** Check the Makefile for other useful targets
(ins)n@laptop:mu [master]$ ninja -C build
ninja: Entering directory `build'
[2/99] Compiling C++ object lib/utils/libmu-utils.a.p/mu-test-utils.cc.o
FAILED: lib/utils/libmu-utils.a.p/mu-test-utils.cc.o
c++ -Ilib/utils/libmu-utils.a.p -Ilib/utils -I../lib/utils -Ilib -I../lib -I../thirdparty -I. -I.. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/sysprof-6 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 -fdiagnostics-color=always -D_GLIBCXX_ASSERTIONS=1 -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wextra -Wpedantic -std=c++17 -O2 -g -Wno-unused-parameter -Wno-cast-function-type -Wformat-security -Wformat=2 -Wstack-protector -fstack-protector-strong -Wno-switch-enum -Wno-array-bounds -Wno-stringop-overflow -Wno-volatile -DHAVE_CONFIG_H -fPIC -pthread -MD -MQ lib/utils/libmu-utils.a.p/mu-test-utils.cc.o -MF lib/utils/libmu-utils.a.p/mu-test-utils.cc.o.d -o lib/utils/libmu-utils.a.p/mu-test-utils.cc.o -c ../lib/utils/mu-test-utils.cc
../lib/utils/mu-test-utils.cc: In destructor ‘Mu::TempDir::~TempDir()’:
../lib/utils/mu-test-utils.cc:134:38: error: ‘RM_PROGRAM’ was not declared in this scope; did you mean ‘MU_PROGRAM’?
134 | if (auto&& res{run_command0({RM_PROGRAM, "-fr", path_})}; !res) {
| ^~~~~~~~~~
| MU_PROGRAM
../lib/utils/mu-test-utils.cc:134:36: error: could not convert ‘{<expression error>, "-fr", ((Mu::TempDir*)this)->Mu::TempDir::path_}’ from ‘<brace-enclosed initializer list>’ to ‘std::initializer_list<std::__cxx11::basic_string<char> >’
134 | if (auto&& res{run_command0({RM_PROGRAM, "-fr", path_})}; !res) {
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| <brace-enclosed initializer list>
[11/99] Compiling C++ object lib/libmu.a.p/mu-query-processor.cc.o
ninja: build stopped: subcommand failed.
Recompiling with tests enabled builds successfully.
Won't have time to bisect for a couple days, but my gut is pointing to:
To Reproduce
$ ./autogen.sh -Dtests=disabled
$ ninja -C build
Environment
-
Linux laptop 6.8.1-arch1-1 #1 SMP PREEMPT_DYNAMIC Sat, 16 Mar 2024 17:15:35 +0000 x86_64 GNU/Linux
-
GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.41, cairo version 1.18.0) of 2024-04-05
-
mu version: 1.12.2 9557ba4
Checklist
- you are running either the latest 1.8.x/1.10.x release or
master
(otherwise, please upgrade).
Tested and everything is building cleanly again. Thank you.