Better test for skipping project creation: the project file should also exist and be newer than the xml file, and the .exp should exist.
diff --git a/Mac/Lib/mkcwproject/__init__.py b/Mac/Lib/mkcwproject/__init__.py
index 387108d..c4064d7 100644
--- a/Mac/Lib/mkcwproject/__init__.py
+++ b/Mac/Lib/mkcwproject/__init__.py
@@ -30,13 +30,20 @@
 	xmlbuilder = cwxmlgen.ProjectBuilder(dictcopy)
 	xmlbuilder.generate()
 	if not force:
-		# check whether it is the same as it was
+		# We do a number of checks and all must succeed before we decide to
+		# skip the build-project step:
+		# 1. the xml file must exist, and its content equal to what we've generated
+		# 2. the project file must exist and be newer than the xml file
+		# 3. the .exp file must exist
 		if os.path.exists(dictcopy['mac_projectxmlname']):
 			fp = open(dictcopy['mac_projectxmlname'])
 			data = fp.read()
 			fp.close()
 			if data == dictcopy["tmp_projectxmldata"]:
-				return
+				if os.path.exists(outputfile) and \
+						os.stat(outputfile)[os.path.ST_MTIME] > os.stat(dictcopy['mac_projectxmlname'])[os.path.ST_MTIME]:
+					if os.path.exists(outputfile + '.exp'):
+						return
 	fp = open(dictcopy['mac_projectxmlname'], "w")
 	fp.write(dictcopy["tmp_projectxmldata"])
 	fp.close()