fix makefile always rebuilding