As hinted in the cygwin mailing list, I've added some functionality to upset2 which I intend on using to automatically generate the /usr/info/dir file.
I've added an 'autodep' field which introduces a regex. The regex is supposed to match a filename. If the filename occurs in any package, then the package which introduced the regex is automatically added to the requires list for that package. So, for instance, I've added a new update-info-dir package. It only contains a postinstall file which iterates over /usr/info/*.info. The setup.hint file looks like this: sdesc: "Generate info/dir file automatically" category: PostInstall requires: texinfo ash autodep: usr/info/.*\.info incver_ifdep: yes As you can see, there is another field in this file: 'incver_ifdep'. This is used to autoincrement the version number if the file is found in a dependency list, essentially renaming update-info-dir-00000-1.tar.bz2 to update-info-dir-00001-1.tar.bz2. This will force setup.exe to download the file and run the postinstall.sh script. I'm not wild about the incver_ifdep but it seems like the only way to accomplish what I want without making changes to setup.exe. Possibly, I could leave the filename alone and just increment the version number. I suspect that would confuse setup.exe, though. Anyway, I'll be implementing this in the next couple of days. This is just a heads up. This means that special "generate info file" logic can safely be removed from setup, I think. Btw, I tried to write a "update only changed info files" program to avoid the overhead of running install-info on every single file but it proved to be infeasible to do this due to irregularities in info file packaging. cgf