project structure
cmake build