aboutsummaryrefslogtreecommitdiff
path: root/tests/sendmail
diff options
context:
space:
mode:
Diffstat (limited to 'tests/sendmail')
-rw-r--r--tests/sendmail/buildfile6
-rw-r--r--tests/sendmail/driver.cxx28
2 files changed, 31 insertions, 3 deletions
diff --git a/tests/sendmail/buildfile b/tests/sendmail/buildfile
index a83cf40..a854e89 100644
--- a/tests/sendmail/buildfile
+++ b/tests/sendmail/buildfile
@@ -4,4 +4,10 @@
import libs = libbutl%lib{butl}
+if ($cxx.features.modules && ($force_std_modules == true || $cxx.id != 'msvc'))
+{
+ import libs += libstd-modules%liba{std-modules}
+ cxx.poptions += -D__cpp_lib_modules
+}
+
exe{driver}: {hxx cxx}{*} $libs test{testscript}
diff --git a/tests/sendmail/driver.cxx b/tests/sendmail/driver.cxx
index e48c6b4..f5c9227 100644
--- a/tests/sendmail/driver.cxx
+++ b/tests/sendmail/driver.cxx
@@ -2,12 +2,34 @@
// copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
// license : MIT; see accompanying LICENSE file
+#include <cassert>
+
+#ifndef __cpp_lib_modules
#include <iostream>
#include <system_error>
+#endif
+
+// Other includes.
+
+#ifdef __cpp_modules
+#ifdef __cpp_lib_modules
+import std.core;
+import std.io;
+#endif
+import butl.path;
+import butl.process;
+import butl.utility; // operator<<(ostream, exception)
+import butl.sendmail;
+import butl.fdstream;
-#include <libbutl/path.hxx>
-#include <libbutl/utility.hxx> // operator<<(ostream, exception)
-#include <libbutl/sendmail.hxx>
+import butl.optional; // @@ MOD Clang should not be necessary.
+import butl.small_vector; // @@ MOD Clang should not be necessary.
+#else
+#include <libbutl/path.mxx>
+#include <libbutl/process.mxx>
+#include <libbutl/utility.mxx>
+#include <libbutl/sendmail.mxx>
+#endif
using namespace std;
using namespace butl;