switch to CMake