CMake project templates for C++11 and CUDA with google test/benchmark support

Tweet

2017.01.30

Books generally don't cover project organization and few introductions to C++ discuss testing frameworks, let alone benchmarking. In my experience, many science students compile without optimization flags, don't know how to separate header and source files, tests, etc etc. So I created two simple cmake project templates. One for C++11 (with a library and an executable) and one for CUDA. Both support testing with Google Test and benchmarks with Google Benchmark.

CMake is a popular tool for building cross-platform C++ applications, you shouldn't have any issue installing it.

The C++ project template works on both Linux/UNIX and Windows, while the CUDA project is tested only on Linux. Feel free to fork / suggest improvements.

let world = "世界" in print $ "Hello " ++ world ++ "!"