use premake to ease the build process