Meson and threads
Some time ago I wrote a small piece about using the Thread
dependencies in CMake and if I remember correctly it was a little tricky to set the correct threads library (Unix systems has a pthreads library, for example). Guess what? is super easy to do it in Meson!
Let’s see the example from that post:
#include <iostream>
#include <thread>
int main() {
std::thread t([] {
std::cout << "hello concurrent world!\n";
});
t.join();
}
The Meson build file couldn’t be simpler:
project('meson_conan', 'cpp', default_options: ['cpp_std=c++17'])
threads = dependency('threads')
executable('demo', 'main.cpp', dependencies: [threads])
Notice the dependency name should be threads
, Meson will know the correct library to pick dependending on the operating system, nothing to worry about!