Index: makefile
===================================================================
--- makefile	(revision 9e81839edff77dc59eb5269483c3d2c2edaf631d)
+++ makefile	(revision 8e232cecdd2f9454141fa07ec5d2eec44beb8034)
@@ -10,15 +10,18 @@
 endif
 
+# If I were generating.o files as well, I should use $? instead of $^
+# as this well prevent regenerating .o files for unchanged .cpp files
+
 newgame: new-game.cpp logger.cpp
-	$(CC) $? $(DEP) $(CFLAGS) -o $@
+	$(CC) $^ $(DEP) $(CFLAGS) -o $@
 
 pong: pong.cpp logger.cpp
-	$(CC) $? $(DEP) $(CFLAGS) -o $@
+	$(CC) $^ $(DEP) $(CFLAGS) -o $@
 
 mygame: mygame.cpp common/shader.cpp common/texture.cpp common/controls-new.cpp
-	$(CC) $? $(DEP) $(CFLAGS) -o $@
+	$(CC) $^ $(DEP) $(CFLAGS) -o $@
 
 demo: game06.cpp common/shader.cpp common/texture.cpp common/controls.cpp
-	$(CC) $? $(DEP) $(CFLAGS) -o $@
+	$(CC) $^ $(DEP) $(CFLAGS) -o $@
 
 clean:
