build: reload config when regenerated

As of 690d2f53, include/config/auto.conf is included to provide the
config variables in the Makefiles.  To prevent Make from attempting, and
failing, to generate this file when it didn't exist, a dummy rule was
created for the file, while a rule with a different target (the config
.h file), actually generated this file.

Unfortunately, since Make did not know which rules actually changed the
file, it was not reloaded after it was regenerated whenever .config
changed.  As a result, this reconfigured build would occur with old
config Make variables, causing an odd "off by one" issue, where two
builds where required after reconfiguring for everything to be built
correctly.

Fix this issue by declaring the config file as a target of the rule that
generates it.  The config include must still ignore errors, otherwise
'make *_defconfig' cannot be run.  If the file doesn't exist, disallow
actual builds, killing them with a configuration error.

Change-Id: Ia9620999827845fed313fabc7214169510362429