From 0d49ea1fe08cf1eab41a00149393a291c65a59d7 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Thu, 25 Jan 2024 20:32:06 +0300 Subject: Turn odb-tests repository into package for muti-package repository --- odb-tests/common/threads/buildfile | 49 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 odb-tests/common/threads/buildfile (limited to 'odb-tests/common/threads/buildfile') diff --git a/odb-tests/common/threads/buildfile b/odb-tests/common/threads/buildfile new file mode 100644 index 0000000..53b98ec --- /dev/null +++ b/odb-tests/common/threads/buildfile @@ -0,0 +1,49 @@ +# file : common/threads/buildfile +# license : GNU GPL v2; see accompanying LICENSE file + +import libodb = libodb%lib{odb} + +libs = + +for db: $databases + import libs += libodb-$db%lib{odb-$db} + +import libs += lib{common} + +exe{driver}: {hxx cxx}{* -*-odb -*-odb-*} {hxx ixx cxx}{test-odb} testscript + +# Introduce the metadata library target to make sure the libodb library is +# resolved for the odb_compile ad hoc rule (see build/root.build for details). +# +libue{test-meta}: $libodb + +<{hxx ixx cxx}{test-odb}>: hxx{test} libue{test-meta} + +for db: $databases +{ + exe{driver}: {hxx ixx cxx}{test-odb-$db}: include = $multi + <{hxx ixx cxx}{test-odb-$db}>: hxx{test} libue{test-meta} +} + +exe{driver}: libue{test-meta} $libs + +# Specify the ODB custom options to be used by the odb_compile ad hoc rule +# (see build/root.build for details). +# +odb_options = --table-prefix threads_ \ + --generate-schema \ + --generate-query \ + --generate-prepared + +cxx.poptions =+ "-I$out_base" "-I$src_base" + +# While we don't call any pthread_*() functions, this appears to be needed for +# some std::thread implementations (like libstdc++). Note that +# odb::details::thread inlines some std::thread API calls. +# +if ($cxx.target.class != 'windows') + cxx.libs += -pthread + +# Testscript's run-time prerequisites. +# +exe{driver}: ../../alias{database-client}: include = adhoc -- cgit v1.1