add the build and clean function