make the TSRM macros depend no the macroed cache name
fixed macro va args expansion for vs
use portable struct stat
C89 fixes
Merge remote-tracking branch 'origin/master' into native-tls

* origin/master:
  C89 fixes
  use portable struct stat
  fixed macro va args expansion for vs
various fixes for removing explicit tsrm_ls usage