Improved CMakeLists.txt