As I was working on #556 I noticed we provide INSTALL_GENERATED_HEADERS as an option and I think it doesn't make too much sense. On the one hand, if the headers are required for the project to work properly then disabling the option would prevent the proper use of the project. On the other hand, if the headers are not required by the project it should be up to the maintainers to decide whether or not to ship them along the project (for example config.hh can be useful outside the project even if not used internally)
What would you think of moving this option to a PROJECT_INSTALL_GENERATED_HEADERS variable instead that can be set by maintainers?