sw_vers
Output:
ProductName: Mac OS X
# Find mt.exe and creates executable target 'Win10::Mt'.
function(find_mt)
set(MT_TARGET_NAME Win10::Mt)
if(NOT TARGET ${MT_TARGET_NAME})
find_program(MT_TARGET_EXE
NAME "mt.exe"
PATHS "C:/Program Files (x86)/Windows Kits/10/bin/${CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION}/${CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE}"
NO_DEFAULT_PATH
Legend:
0️⃣ Rule of 0: These constructors and operators are not require when you don't declare any of them and make usage of existing types that support the appropriate copy/move semantics.
It's the rule of "All or Nothing".
std::cond_var cond; | |
std::mutex mutex; | |
std::queue<int> queue; | |
auto finished = false; | |
std::thread producer([&cond, &mutex, &queue, &finished](){ | |
// Add data to the queue. | |
auto steps = 100; | |
while (steps) { | |
std::lock_guard<std::mutex> lock{ mutex }; |
To initialize:
git submodule update --init --recursive
To get latest commits:
git submodule update --init --remote --recursive