added cmake build system