You should do it the other way around.
When your module is enabled, it should check for other modules that has implemented it's hook and call them to build up the cache you need.
Then you could create an API function for other modules to call when their module is activated.
It makes more sense to build it like that. You never know when the cache is reset anyways, so you can never rely on having a complete cache data all the time anyways.
Another solution would be to build the cache when it's needed. It doesn't make sense to build the cache data before it's actually needed. The normal thing to do with cache in drupal is to check if the cache data is there, if it's not create it and save it in the cache for next time. That would spare you the headache of trying to know all.
To answer your question, there is to my knowledge not a way to hook into the process of modules being installed / enabled.
Update:
For Drupal 7 there have actually been created a hook to react on modules being enabled: hook_modules_enabled()