finished cmake draft