aboutsummaryrefslogtreecommitdiff
path: root/odb/details/thread.cxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2016-08-05 17:46:11 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2016-08-05 17:46:11 +0200
commit758b3799a8afca1bcfcc80f1863d99417a8de1eb (patch)
tree50fa1e01674183d812aa84e35837b48a4fd841b3 /odb/details/thread.cxx
parentbe85d32f0f645e47104ef1241acac1041cc58c16 (diff)
Initial take on build2-based build
Only C++11 is supported with GCC 4.8 and up and VC 14 and up. This change also introduces the ODB_THREADS_CXX11 threading model. It is the default for the build2 build but can be disabled with a global ODB_THREADS_NONE define (global means that it should be in effect both when building and using the library).
Diffstat (limited to 'odb/details/thread.cxx')
-rw-r--r--odb/details/thread.cxx23
1 files changed, 23 insertions, 0 deletions
diff --git a/odb/details/thread.cxx b/odb/details/thread.cxx
new file mode 100644
index 0000000..d00f498
--- /dev/null
+++ b/odb/details/thread.cxx
@@ -0,0 +1,23 @@
+// file : odb/details/thread.cxx
+// copyright : Copyright (c) 2009-2015 Code Synthesis Tools CC
+// license : GNU GPL v2; see accompanying LICENSE file
+
+#include <odb/details/thread.hxx>
+
+// We might be compiled with ODB_THREADS_NONE.
+//
+#ifdef ODB_THREADS_CXX11
+
+namespace odb
+{
+ namespace details
+ {
+ void thread::
+ thunk (void* (*f) (void*), void* a, std::promise<void*> p)
+ {
+ p.set_value (f (a));
+ }
+ }
+}
+
+#endif