Don't check build tools versions (including javac) every time make is run.

This trims off another 1/3 of a second from incremental build times.
VERSION_CHECK_SEQUENCE_NUMBER can be incremented to force a check.
diff --git a/core/main.mk b/core/main.mk
index c3f1e2f..482fefd 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -54,6 +54,12 @@
 # be generated correctly
 include $(BUILD_SYSTEM)/cleanbuild.mk
 
+VERSION_CHECK_SEQUENCE_NUMBER := 1
+-include $(OUT_DIR)/versions_checked.mk
+ifneq ($(VERSION_CHECK_SEQUENCE_NUMBER),$(VERSIONS_CHECKED))
+
+$(info Checking build tools versions...)
+
 ifneq ($(HOST_OS),windows)
 ifneq ($(HOST_OS)-$(HOST_ARCH),darwin-ppc)
 # check for a case sensitive file system
@@ -123,6 +129,10 @@
 
 endif # windows
 
+$(shell echo 'VERSIONS_CHECKED := $(VERSION_CHECK_SEQUENCE_NUMBER)' \
+        > $(OUT_DIR)/versions_checked.mk)
+endif
+
 # These are the modifier targets that don't do anything themselves, but
 # change the behavior of the build.
 # (must be defined before including definitions.make)