Fix dependency on cache dir
The dependency on the cache dir only serves to ensure that the cache directory exists. Using a normal dependency, however, causes make to rerun every dependent task once any file in the directory has changed. This usually causes lots of unnecessary rebuilds. Fix this by specifying the cache directory as order-only dependency which avoids rebuilds due to changed dependencies.