Files
scylladb/test
Kefu Chai 7c6ecb1c54 build: cmake: link tests against necessary libraries
* link alternator_unit_test against alternator
* link schema_loader_test against tools

since alternator_unit_test referecens the symbols defined by alternator.  let's
link the test against the library. otherwise, we'd have following
link failure:

```
FAILED: test/boost/alternator_unit_test
: && /usr/bin/clang++ -Wall -Werror -Wextra -Wno-error=deprecated-declarations -Wno-c++11-narrowing -Wno-mismatched-tags -Wno-overloaded-virtual -Wno-unsupported-friend -Wno-unused-parameter -Wno-missing-field-initializers -Wno-deprecated-copy -Wno-ignored-qualifiers -march=westmere -fprofile-instr-generate="/home/kefu/dev/scylladb/build/cmake/profiles/%m.profraw"  -O0 -g -gz -Wl,--build-id=sha1 -fuse-ld=lld -fprofile-instr-generate="/home/kefu/dev/scylladb/build/cmake/profiles/%m.profraw" test/boost/CMakeFiles/alternator_unit_test.dir/alternator_unit_test.cc.o -o test/boost/alternator_unit_test  test/lib/libtest-lib.a  seastar/libseastar.a  /usr/lib64/libxxhash.so  /usr/lib64/libboost_unit_test_framework.so.1.78.0  libscylla-main.a  /usr/lib64/libabsl_hash.so.2206.0.0  /usr/lib64/libabsl_city.so.2206.0.0  /usr/lib64/libabsl_bad_variant_access.so.2206.0.0  /usr/lib64/libabsl_low_level_hash.so.2206.0.0  -Xlinker --push-state -Xlinker --whole-archive  auth/libscylla_auth.a  -Xlinker --pop-state  /usr/lib64/libcrypt.so  cdc/libcdc.a  compaction/libcompaction.a  mutation_writer/libmutation_writer.a  -Xlinker --push-state -Xlinker --whole-archive  dht/libscylla_dht.a  -Xlinker --pop-state  gms/libgms.a  types/libtypes.a  index/libindex.a  -Xlinker --push-state -Xlinker --whole-archive  locator/libscylla_locator.a  -Xlinker --pop-state  sstables/libsstables.a  /usr/lib64/libz.so  readers/libreaders.a  schema/libschema.a  -Xlinker --push-state -Xlinker --whole-archive  tracing/libscylla_tracing.a  -Xlinker --pop-state  service/libservice.a  -lsystemd  raft/libraft.a  repair/librepair.a  streaming/libstreaming.a  replica/libreplica.a  db/libdb.a  mutation/libmutation.a  data_dictionary/libdata_dictionary.a  cql3/libcql3.a  transport/libtransport.a  cql3/libcql3.a  transport/libtransport.a  lang/liblang.a  /usr/lib64/liblua-5.4.so  -lm  /usr/lib64/libsnappy.so.1.1.9  /usr/lib64/libabsl_raw_hash_set.so.2206.0.0  /usr/lib64/libabsl_bad_optional_access.so.2206.0.0  /usr/lib64/libabsl_hashtablez_sampler.so.2206.0.0  /usr/lib64/libabsl_exponential_biased.so.2206.0.0  /usr/lib64/libabsl_synchronization.so.2206.0.0  /usr/lib64/libabsl_graphcycles_internal.so.2206.0.0  /usr/lib64/libabsl_stacktrace.so.2206.0.0  /usr/lib64/libabsl_symbolize.so.2206.0.0  /usr/lib64/libabsl_malloc_internal.so.2206.0.0  /usr/lib64/libabsl_debugging_internal.so.2206.0.0  /usr/lib64/libabsl_demangle_internal.so.2206.0.0  /usr/lib64/libabsl_time.so.2206.0.0  /usr/lib64/libabsl_strings.so.2206.0.0  /usr/lib64/libabsl_int128.so.2206.0.0  /usr/lib64/libabsl_throw_delegate.so.2206.0.0  /usr/lib64/libabsl_strings_internal.so.2206.0.0  /usr/lib64/libabsl_base.so.2206.0.0  /usr/lib64/libabsl_spinlock_wait.so.2206.0.0  /usr/lib64/libabsl_raw_logging_internal.so.2206.0.0  /usr/lib64/libabsl_log_severity.so.2206.0.0  /usr/lib64/libabsl_civil_time.so.2206.0.0  /usr/lib64/libabsl_time_zone.so.2206.0.0  rust/libwasmtime_bindings.a  rust/rust-debug/librust_combined.a  /usr/lib64/libdeflate.so  utils/libutils.a  seastar/libseastar.a  /usr/lib64/libboost_program_options.so  /usr/lib64/libboost_thread.so  /usr/lib64/libboost_chrono.so  /usr/lib64/libboost_atomic.so  /usr/lib64/libcares.so  /usr/lib64/libcryptopp.so  /usr/lib64/libfmt.so.9.1.0  /usr/lib64/liblz4.so  /usr/lib64/libgnutls.so  -latomic  /usr/lib64/libsctp.so  /usr/lib64/libyaml-cpp.so  -fsanitize=address  -fsanitize=undefined  -fno-sanitize=vptr  /usr/lib64/libhwloc.so  //usr/lib64/liburing.so  /usr/lib64/libnuma.so  /usr/lib64/libxxhash.so  -lcryptopp  /usr/lib64/libboost_regex.so.1.78.0  /usr/lib64/libicui18n.so  /usr/lib64/libicuuc.so  -ldl && :
ld.lld: error: undefined symbol: alternator::internal::get_magnitude_and_precision(std::basic_string_view<char, std::char_traits<char>>)
>>> referenced by alternator_unit_test.cc:148 (/home/kefu/dev/scylladb/test/boost/alternator_unit_test.cc:148)
>>>               test/boost/CMakeFiles/alternator_unit_test.dir/alternator_unit_test.cc.o:(test_magnitude_and_precision::test_method())
>>> referenced by alternator_unit_test.cc:158 (/home/kefu/dev/scylladb/test/boost/alternator_unit_test.cc:158)
>>>               test/boost/CMakeFiles/alternator_unit_test.dir/alternator_unit_test.cc.o:(test_magnitude_and_precision::test_method())
>>> referenced by alternator_unit_test.cc:160 (/home/kefu/dev/scylladb/test/boost/alternator_unit_test.cc:160)
>>>               test/boost/CMakeFiles/alternator_unit_test.dir/alternator_unit_test.cc.o:(test_magnitude_and_precision::test_method())
>>> referenced 2 more times
```

also, schema_loader_test references tools::load_schemas(). let's
link the test against the library. otherwise, we'd have following
link failure:

```
FAILED: test/boost/schema_loader_test
: && /usr/bin/clang++ -Wall -Werror -Wextra -Wno-error=deprecated-declarations -Wno-c++11-narrowing -Wno-mismatched-tags -Wno-overloaded-virtual -Wno-unsupported-friend -Wno-unused-parameter -Wno-missing-field-initializers -Wno-deprecated-copy -Wno-ignored-qualifiers -march=westmere -fprofile-instr-generate="/home/kefu/dev/scylladb/build/cmake/profiles/%m.profraw"  -O0 -g -gz -Wl,--build-id=sha1 -fuse-ld=lld -fprofile-instr-generate="/home/kefu/dev/scylladb/build/cmake/profiles/%m.profraw" test/boost/CMakeFiles/schema_loader_test.dir/schema_loader_test.cc.o -o test/boost/schema_loader_test  test/lib/libtest-lib.a  seastar/libseastar.a  /usr/lib64/libxxhash.so  seastar/libseastar_testing.a  libscylla-main.a  /usr/lib64/libabsl_hash.so.2206.0.0  /usr/lib64/libabsl_city.so.2206.0.0  /usr/lib64/libabsl_bad_variant_access.so.2206.0.0  /usr/lib64/libabsl_low_level_hash.so.2206.0.0  -Xlinker --push-state -Xlinker --whole-archive  auth/libscylla_auth.a  -Xlinker --pop-state  /usr/lib64/libcrypt.so  cdc/libcdc.a  compaction/libcompaction.a  mutation_writer/libmutation_writer.a  -Xlinker --push-state -Xlinker --whole-archive  dht/libscylla_dht.a  -Xlinker --pop-state  gms/libgms.a  types/libtypes.a  index/libindex.a  -Xlinker --push-state -Xlinker --whole-archive  locator/libscylla_locator.a  -Xlinker --pop-state  sstables/libsstables.a  /usr/lib64/libz.so  readers/libreaders.a  schema/libschema.a  -Xlinker --push-state -Xlinker --whole-archive  tracing/libscylla_tracing.a  -Xlinker --pop-state  service/libservice.a  -lsystemd  raft/libraft.a  repair/librepair.a  streaming/libstreaming.a  replica/libreplica.a  db/libdb.a  mutation/libmutation.a  data_dictionary/libdata_dictionary.a  cql3/libcql3.a  transport/libtransport.a  cql3/libcql3.a  transport/libtransport.a  lang/liblang.a  /usr/lib64/liblua-5.4.so  -lm  /usr/lib64/libsnappy.so.1.1.9  /usr/lib64/libabsl_raw_hash_set.so.2206.0.0  /usr/lib64/libabsl_bad_optional_access.so.2206.0.0  /usr/lib64/libabsl_hashtablez_sampler.so.2206.0.0  /usr/lib64/libabsl_exponential_biased.so.2206.0.0  /usr/lib64/libabsl_synchronization.so.2206.0.0  /usr/lib64/libabsl_graphcycles_internal.so.2206.0.0  /usr/lib64/libabsl_stacktrace.so.2206.0.0  /usr/lib64/libabsl_symbolize.so.2206.0.0  /usr/lib64/libabsl_malloc_internal.so.2206.0.0  /usr/lib64/libabsl_debugging_internal.so.2206.0.0  /usr/lib64/libabsl_demangle_internal.so.2206.0.0  /usr/lib64/libabsl_time.so.2206.0.0  /usr/lib64/libabsl_strings.so.2206.0.0  /usr/lib64/libabsl_int128.so.2206.0.0  /usr/lib64/libabsl_throw_delegate.so.2206.0.0  /usr/lib64/libabsl_strings_internal.so.2206.0.0  /usr/lib64/libabsl_base.so.2206.0.0  /usr/lib64/libabsl_spinlock_wait.so.2206.0.0  /usr/lib64/libabsl_raw_logging_internal.so.2206.0.0  /usr/lib64/libabsl_log_severity.so.2206.0.0  /usr/lib64/libabsl_civil_time.so.2206.0.0  /usr/lib64/libabsl_time_zone.so.2206.0.0  rust/libwasmtime_bindings.a  rust/rust-debug/librust_combined.a  /usr/lib64/libdeflate.so  utils/libutils.a  /usr/lib64/libxxhash.so  -lcryptopp  /usr/lib64/libboost_regex.so.1.78.0  /usr/lib64/libicui18n.so  /usr/lib64/libicuuc.so  /usr/lib64/libboost_unit_test_framework.so.1.78.0  seastar/libseastar.a  /usr/lib64/libboost_program_options.so  /usr/lib64/libboost_thread.so  /usr/lib64/libboost_chrono.so  /usr/lib64/libboost_atomic.so  /usr/lib64/libcares.so  /usr/lib64/libcryptopp.so  /usr/lib64/libfmt.so.9.1.0  /usr/lib64/liblz4.so  -ldl  /usr/lib64/libgnutls.so  -latomic  /usr/lib64/libsctp.so  /usr/lib64/libyaml-cpp.so  -fsanitize=address  -fsanitize=undefined  -fno-sanitize=vptr  /usr/lib64/libhwloc.so  //usr/lib64/liburing.so  /usr/lib64/libnuma.so  /usr/lib64/libboost_unit_test_framework.so && :
ld.lld: error: undefined symbol: tools::load_schemas(std::basic_string_view<char, std::char_traits<char>>)
>>> referenced by schema_loader_test.cc:14 (/home/kefu/dev/scylladb/test/boost/schema_loader_test.cc:14)
>>>               test/boost/CMakeFiles/schema_loader_test.dir/schema_loader_test.cc.o:(test_empty::do_run_test_case() const)
>>> referenced by schema_loader_test.cc:15 (/home/kefu/dev/scylladb/test/boost/schema_loader_test.cc:15)
>>>               test/boost/CMakeFiles/schema_loader_test.dir/schema_loader_test.cc.o:(test_empty::do_run_test_case() const)
>>> referenced by schema_loader_test.cc:19 (/home/kefu/dev/scylladb/test/boost/schema_loader_test.cc:19)
>>>               test/boost/CMakeFiles/schema_loader_test.dir/schema_loader_test.cc.o:(test_keyspace_only::do_run_test_case() const)
>>> referenced 21 more times
```

Signed-off-by: Kefu Chai <kefu.chai@scylladb.com>
2023-07-12 12:21:14 +08:00
..
2023-07-11 09:30:46 +03:00
2023-06-06 13:29:16 +03:00