aboutsummaryrefslogtreecommitdiff
path: root/common/bulk/buildfile
diff options
context:
space:
mode:
Diffstat (limited to 'common/bulk/buildfile')
-rw-r--r--common/bulk/buildfile49
1 files changed, 49 insertions, 0 deletions
diff --git a/common/bulk/buildfile b/common/bulk/buildfile
new file mode 100644
index 0000000..417eb22
--- /dev/null
+++ b/common/bulk/buildfile
@@ -0,0 +1,49 @@
+# file : common/bulk/buildfile
+# license : GNU GPL v2; see accompanying LICENSE file
+
+assert (!$pgsql || $pgsql_bulk || $size($databases) != 1) \
+"bulk operations are disabled for pgsql which is specified as single database"
+
+import libodb = libodb%lib{odb}
+
+libs =
+
+for db: $databases
+{
+ if ($db != 'pgsql' || $pgsql_bulk)
+ 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 && ($db != 'pgsql' || $pgsql_bulk))
+
+ <{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 bulk_ \
+ --generate-schema \
+ --generate-query
+
+cxx.poptions =+ "-I$out_base" "-I$src_base"
+
+# Testscript's run-time prerequisites.
+#
+exe{driver}: ../../alias{database-client}: include = adhoc