Having run cmake 3.9.2 once already, I see: $ cat CMakeLists.txt set(var one two) message(${var}) $ cmake . onetwo -- Configuring done -- Generating done -- Build files have been written to: /tmp/cmaketest Would you have expected "one;two" rather than "onetwo"? Cheers, Patrick