Avoid regenerating hcache/hcversion.h after building objects in hcache
Specifying the hcache directory asqa dependency for hcache/hcversion.h
means that the latter will be regenerated whenever the hcache directory
is changed, such as when object files are written into it. The net
effect is that "make; make" regenerates hcache/hcversion.h twice.
This commit fixes this problem by explicitely creating the hcache
directory as part of the hcache/hcversion.h target.