diff --git a/Makefile b/Makefile
index 423e869344..8536b2288f 100644
--- a/Makefile
+++ b/Makefile
@@ -19,15 +19,15 @@ endif
 all: fresh_vc fresh_tcc
 ifdef WIN32
 	$(CC) -std=c99 -w -o v0.exe vc/v_win.c $(LDFLAGS)
-	./v0.exe -o v.exe v.v
+	./v0.exe -prod -o v.exe v.v
 	rm -f v0.exe
 else
-	$(CC) -std=gnu11 -w -o v vc/v.c $(LDFLAGS) -lm
+	$(CC) -O2 -std=gnu11 -w -o v vc/v.c $(LDFLAGS) -lm
 	@(VC_V=`./v version | cut -f 3 -d " "`; \
 	V_V=`git rev-parse --short HEAD`; \
 	if [ $$VC_V != $$V_V ]; then \
 		echo "Self rebuild ($$VC_V => $$V_V)"; \
-		./v -o v v.v; \
+		./v -prod -o v v.v; \
 	fi)
 endif
 	rm -rf vc/