build module correctly