Having spent a decade watching the Cmake versus bjam/b2 battle, I had thought it wise to wait until the dust has settled. It would appear that the enthusiasm for CMake and Boost is much greater among consumers than producers ☹ But recently I have been working on a project that is possible Boost library and thought that I would dip my toe in the water. After some research, I am still puzzled how I should replace a simple b2/bjam program (say a classic “hello World”) that is run like this \example > b2 -a toolset=msvc,gcc,clang cxxstd=14 release > my_log.log The jamfile contains run hello_world.cpp ; # Simplest hello_world, no other includes apart from iostream. And the b2 run .log contains some outputs of "Hello world" and 3 nice **passed** lines and ...updated 3(?) targets..., one for each compiler (and version too, perhaps with some potentially using build info too), and return exit_success value. (I also would expect to get a simple setup to run a test using the /included version of unit_test_framework. Trying to walk before I fall over running, I have avoided any pre-compiler libraries, at least at first.) After some research (getting as far as generating a Visual Studio project, where I can intervene manually to build and run my hello_world program), I am still unclear how to replicate this b2 test to end with a .exe run and some log file with pass/fail indications. I am of course building on Windows 10 with three recent versions of MSVC, GCC and Clang compilers working, and in my bjam/b2 user-config.jam. Advice from less-than-novice CMakers most welcome. Thank you. Paul