Not sure if it makes sense to guard it by ENABLE_TESTS. If I just want to build the benchmarks with ./configure --disable-tests, then my build fails:
$ make -j 9
Making all in src
make[1]: Entering directory '/home/marco/workspace/btc_bitcoin_core/src'
make[2]: Entering directory '/home/marco/workspace/btc_bitcoin_core/src'
make[3]: Entering directory '/home/marco/workspace/btc_bitcoin_core'
make[3]: Leaving directory '/home/marco/workspace/btc_bitcoin_core'
CXXLD bench/bench_bitcoin
/usr/bin/ld: bench/bench_bitcoin-bench.o: in function `benchmark::BenchRunner::RunAll(benchmark::Printer&, unsigned long, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool)':
/home/marco/workspace/btc_bitcoin_core/src/./test/util/setup_common.h:92: undefined reference to `TestingSetup::~TestingSetup()'
/usr/bin/ld: /home/marco/workspace/btc_bitcoin_core/src/./test/util/setup_common.h:94: undefined reference to `TestingSetup::TestingSetup(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
/usr/bin/ld: bench/bench_bitcoin-bench.o: in function `benchmark::BenchRunner::RunAll(benchmark::Printer&, unsigned long, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) [clone .cold]':
/home/marco/workspace/btc_bitcoin_core/src/./test/util/setup_common.h:92: undefined reference to `TestingSetup::~TestingSetup()'
/usr/bin/ld: bench/bench_bitcoin-verify_script.o: in function `VerifyScriptBench(benchmark::State&)':
/home/marco/workspace/btc_bitcoin_core/src/bench/verify_script.cpp:40: undefined reference to `BuildCreditingTransaction(CScript const&, int)'
/usr/bin/ld: /home/marco/workspace/btc_bitcoin_core/src/bench/verify_script.cpp:41: undefined reference to `BuildSpendingTransaction(CScript const&, CScriptWitness const&, CTransaction const&)'
/usr/bin/ld: libbitcoin_server.a(libbitcoin_server_a-timedata.o): in function `_(char const*)':
/home/marco/workspace/btc_bitcoin_core/src/./util/translation.h:38: undefined reference to `G_TRANSLATION_FUN[abi:cxx11]'
/usr/bin/ld: libbitcoin_server.a(libbitcoin_server_a-timedata.o): in function `AddTimeData(CNetAddr const&, long)':
/usr/include/c++/9/bits/std_function.h:690: undefined reference to `G_TRANSLATION_FUN[abi:cxx11]'
/usr/bin/ld: /usr/include/c++/9/bits/std_function.h:690: undefined reference to `G_TRANSLATION_FUN[abi:cxx11]'
/usr/bin/ld: libbitcoin_server.a(libbitcoin_server_a-txdb.o): in function `_(char const*)':
/home/marco/workspace/btc_bitcoin_core/src/./util/translation.h:38: undefined reference to `G_TRANSLATION_FUN[abi:cxx11]'
/usr/bin/ld: libbitcoin_server.a(libbitcoin_server_a-txdb.o): in function `CCoinsViewDB::Upgrade()':
/usr/include/c++/9/bits/std_function.h:690: undefined reference to `G_TRANSLATION_FUN[abi:cxx11]'
/usr/bin/ld: libbitcoin_server.a(libbitcoin_server_a-txdb.o):/usr/include/c++/9/bits/std_function.h:690: more undefined references to `G_TRANSLATION_FUN[abi:cxx11]' follow
collect2: error: ld returned 1 exit status