Initial compile structure based on CMake