|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r85616 - trunk/libs/thread/build
From: vicente.botet_at_[hidden]
Date: 2013-09-08 18:20:48
Author: viboes
Date: 2013-09-08 18:20:48 EDT (Sun, 08 Sep 2013)
New Revision: 85616
URL: http://svn.boost.org/trac/boost/changeset/85616
Log:
Thread: link with boost_atomic conditionaly.
Added:
trunk/libs/thread/build/has_atomic_flag_lockfree_test.cpp (contents, props changed)
Text files modified:
trunk/libs/thread/build/Jamfile.v2 | 12 +++++++-----
trunk/libs/thread/build/has_atomic_flag_lockfree_test.cpp | 13 +++++++++++++
2 files changed, 20 insertions(+), 5 deletions(-)
Modified: trunk/libs/thread/build/Jamfile.v2
==============================================================================
--- trunk/libs/thread/build/Jamfile.v2 Sun Sep 8 16:07:03 2013 (r85615)
+++ trunk/libs/thread/build/Jamfile.v2 2013-09-08 18:20:48 EDT (Sun, 08 Sep 2013) (r85616)
@@ -36,6 +36,7 @@
import feature ;
import indirect ;
import path ;
+import configure ;
project boost/thread
: source-location ../src
@@ -140,6 +141,8 @@
feature.feature threadapi : pthread win32 : propagated ;
feature.set-default threadapi : [ default_threadapi ] ;
+exe has_atomic_flag_lockfree : ../build/has_atomic_flag_lockfree_test.cpp ;
+
rule tag ( name : type ? : property-set )
{
local result = $(name) ;
@@ -264,16 +267,15 @@
}
}
result += <define>BOOST_THREAD_DONT_USE_CHRONO ;
+ if ! [ configure.builds has_atomic_flag_lockfree
+ : $(properties) : "lockfree boost::atomic_flag" ] {
+ result += <library>/boost/atomic//boost_atomic ;
+ }
} else {
result += <define>BOOST_THREAD_USES_CHRONO ;
result += <library>/boost/chrono//boost_chrono ;
}
- #if <toolset>pgi in $(properties) || <toolset>vacpp in $(properties)
- #{
- result += <library>/boost/atomic//boost_atomic ;
- #}
-
return $(result) ;
}
Added: trunk/libs/thread/build/has_atomic_flag_lockfree_test.cpp
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ trunk/libs/thread/build/has_atomic_flag_lockfree_test.cpp 2013-09-08 18:20:48 EDT (Sun, 08 Sep 2013) (r85616)
@@ -0,0 +1,13 @@
+// Copyright (c) 2013, Petr Machata, Red Hat Inc.
+//
+// Use modification and distribution are subject to the boost Software
+// License, Version 1.0. (See http://www.boost.org/LICENSE_1_0.txt).
+
+#include "../../../boost/atomic.hpp"
+#include "../../../boost/static_assert.hpp"
+
+int main(int argc, char *argv[])
+{
+ BOOST_STATIC_ASSERT(BOOST_ATOMIC_FLAG_LOCK_FREE);
+ return 0;
+}
\ No newline at end of file
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk