simplify and cleanup CMakeLists.txt