Mercurial > minori
diff dep/fmt/test/cuda-test/cuda-cpp14.cu @ 343:1faa72660932
*: transfer back to cmake from autotools
autotools just made lots of things more complicated than
they should have and many things broke (i.e. translations)
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Thu, 20 Jun 2024 05:56:06 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dep/fmt/test/cuda-test/cuda-cpp14.cu Thu Jun 20 05:56:06 2024 -0400 @@ -0,0 +1,28 @@ +// Direct NVCC command line example: +// +// nvcc ./cuda-cpp14.cu -x cu -I"../include" -l"fmtd" -L"../build/Debug" \ +// -std=c++14 -Xcompiler /std:c++14 -Xcompiler /Zc:__cplusplus + +// Ensure that we are using the latest C++ standard for NVCC +// The version is C++14 +// +// https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#c-cplusplus-language-support +// https://en.cppreference.com/w/cpp/preprocessor/replace#Predefined_macros +static_assert(__cplusplus >= 201402L, "expect C++ 2014 for nvcc"); + +#include <fmt/core.h> + +#include <cuda.h> +#include <iostream> + +extern auto make_message_cpp() -> std::string; +extern auto make_message_cuda() -> std::string; + +int main() { + std::cout << make_message_cuda() << std::endl; + std::cout << make_message_cpp() << std::endl; +} + +auto make_message_cuda() -> std::string { + return fmt::format("nvcc compiler \t: __cplusplus == {}", __cplusplus); +}