Update third-party Makefile to only try re2 once when built speculatively.

Update the third-party/Makefile to only try to build re2 when the build/ subdir
(e.g. build/darwin-clang-native/) is not present (as opposed to checking for
the install dir). The build/ subdir is created early in the process, so even if
re2 fails to compile, it will exist. This allows the third-party to use it as
an indication that the build has been tried (regardless of success or failure).

Update the re2 Makefile to separate build/ subdir creation from regular steps
(and add another variable RE2_BUILD_DIR similar to RE2_INSTALL_DIR). The re2
Makefile still behaves the same as before, but separating out the build subdir
step makes it more clear that it is independent of the re2 build/install step.

All of this means a user that calls make from the top level and has an re2
build failure will not continue trying to re-build re2 (and failing). This
should be a better user experience.
Remove false stmt that was used for debugging.
Fix GMP_BUILD_DIR in Makefile.include.
Remove redundant variable decls in gmp Makefile.
Update gmp Makefile to use real files as targets, for clarity and consistency.

Replace the 'gmp-config' and 'gmp-build' targets with files that are generated
by those recipes (for clarity). Also, pull the build/ subdir creation out of
'gmp-config' into a separate target that runs first. This will be important for
the gmp speculative build.
Only try to speculatively build gmp once, even if it fails.

Use the gmp build/ subdir, which is created immediately, as an indication that
the gmp build has been attempted. If it exists, do not retry.
Warn user skipping the speculative gmp and re2 builds that previously failed.
Always build gmp and re2 targets if the respective headers do not exist.
Fix typo
Use info fxn instead of warning, per review feedback.
Factor *.h file vars into Makefile.include files, per review feedback.
Re-add absolute path vars in gmp Makefile, per review feedback.
Revive gmp-config/build targets, per review feedback..
Merge branch 'master' of github.com:chapel-lang/chapel into track-gmp-re2-build-failures
Merge pull request #814 from thomasvandoren/track-gmp-re2-build-failures

Squash speculative gmp and re2 builds when they have previously failed.

Before this change, a user would speculatively try to build gmp and re2 over
and over again when they failed. This updates the gmp, re2, and third-party
Makefiles to only attempt the speculative build once per configuration
regardless of whether the speculative build succeeds or fails. The user is
warned that the speculative build is squashed when it has previously failed.

The third-party makefile checks for the presence of the config-specific build
subdir (e.g. build/darwin-clang-native) and only builds when that directory
does not exist. The gmp and re2 makefiles create that directory first, so it
will exist even if the respective build fails.

When the config-specific build subdir does exist, the third-party makefile then
checks for an expected header file in the install subdir (similar to what
util/chplenv/* does to auto-detect gmp and re2). If the header does not exist,
but the build subdir does, the user is warned that the respective speculative
build is squashed due to a previous failure.

Along the way, gmp and re2 makefiles were cleaned up a bit (mostly for my
understanding).

r: @bradcray