made build task generic