# SPDX-License-Identifier: Apache-2.0 # Simple utility that prints all WITH_* options in a CMakeLists.txt # Called by 'make help_features' import re import sys cmakelists_file = sys.argv[-1] def main(): options = [] for l in open(cmakelists_file, 'r').readlines(): if not l.lstrip().startswith('#'): l_option = re.sub(r'.*\boption\s*\(\s*(WITH_[a-zA-Z0-9_]+)\s+\"(.*)\"\s*.*', r'\g<1> - \g<2>', l) if l_option != l: l_option = l_option.strip() if l_option.startswith('WITH_'): options.append(l_option) print('\n'.join(options)) if __name__ == "__main__": main()