How about:
# Each variable can have a registered filter name - packages/programs/libraries would use their name cmake_autoheader_add_variable(has_some_other_package, filter_name) # user controls what the output file is # User can generate a C #define method (default method if no language is specified) cmake_autoheader(C, path/to/cmake/autoheader_output.h [filter_name_list]) # User can generate a C++ const methods cmake_autoheader(CXX, path/to/cmake/autoheader_output.hpp [filter_name_list]) - if filter name list is not provided, all entries are entered into the header file - if filter is list is provided: - if name listed and is preceeded by an exclamation (!) then that name is not entered - if name is listed then it is entered - if name is not listed, then it is not entered Likely it would be good to have a parameter that would specify the default behavior of the filter list - enter or not enter - for names not listed. I think a default of 'not enter' would be good if the list is being provided, and this could be overridden and then the list becomes a 'not enter' list. So: # package defines its own automatically find_package(some package) if (some_package_found) -> cmake_autoheader_add_variable(has_some_package, some_package) ... # user can add it too cmake_autoheader_add_variable(has_some_other_package, some_other_package) # user controls what the output file is # User can generate a C #define method (default method if no language is specified) cmake_autoheader(C, path/to/cmake/autoheader_output.h some_other_package) # User can generate a C++ const methods cmake_autoheader(CXX, path/to/cmake/autoheader_output.hpp some_package) just another 2 cents... Ben ----- Original Message ---- From: Bill Hoffman <bill.hoff...@kitware.com> To: James Bigler <jamesbig...@gmail.com> Cc: CMake <cmake@cmake.org> Sent: Tuesday, March 31, 2009 11:45:42 AM Subject: Re: [CMake] autoheader James Bigler wrote: > > > If this feature comes to fruition, I would like the ability to specify which > flags make it into what header. In one project I worked on all our > configuration defines were in a single header. This caused extremely long > recompiles if something happened to change the one autoheader. We eventually > broke it into multiple files, and got targeted recompiles. > > I also like the idea of not having to have a configure.h.in > <http://configure.h.in> file like Hendrik Sattler suggested (put these > variables in this header here). > Do you have an API suggestion? What should this look like? -Bill _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake _______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake