]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | // (C) Copyright Eric Jourdanneau, Joel Falcou 2010 |
2 | // Use, modification and distribution are subject to the | |
3 | // Boost Software License, Version 1.0. (See accompanying file | |
4 | // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
5 | ||
6 | // See http://www.boost.org for most recent version. | |
7 | ||
8 | // NVIDIA CUDA C++ compiler setup | |
9 | ||
10 | #ifndef BOOST_COMPILER | |
11 | # define BOOST_COMPILER "NVIDIA CUDA C++ Compiler" | |
12 | #endif | |
13 | ||
14 | // NVIDIA Specific support | |
15 | // BOOST_GPU_ENABLED : Flag a function or a method as being enabled on the host and device | |
16 | #define BOOST_GPU_ENABLED __host__ __device__ | |
17 | ||
18 | // A bug in version 7.0 of CUDA prevents use of variadic templates in some occasions | |
19 | // https://svn.boost.org/trac/boost/ticket/11897 | |
20 | // This is fixed in 7.5. As the following version macro was introduced in 7.5 an existance | |
21 | // check is enough to detect versions < 7.5 | |
22 | #if !defined(__CUDACC_VER__) || (__CUDACC_VER__ < 70500) | |
23 | # define BOOST_NO_CXX11_VARIADIC_TEMPLATES | |
24 | #endif | |
25 | // The same bug is back again in 8.0: | |
26 | #if (__CUDACC_VER__ > 80000) && (__CUDACC_VER__ < 80100) | |
27 | # define BOOST_NO_CXX11_VARIADIC_TEMPLATES | |
28 | #endif | |
29 | // Most recent CUDA (8.0) has no constexpr support in msvc mode: | |
30 | #if defined(_MSC_VER) | |
31 | # define BOOST_NO_CXX11_CONSTEXPR | |
32 | #endif |