using cmake to build the project instead of make