# How wide to allow formatted cmake files line_width = 80 # How many spaces to tab for indent tab_size = 2 # If arglists are longer than this, break them always max_subargs_per_line = 5 # If true, separate flow control names from their parentheses with a space separate_ctrl_name_with_space = False # If true, separate function names from parentheses with a space separate_fn_name_with_space = False # If a statement is wrapped to more than one line, than dangle the closing # parenthesis on it's own line dangle_parens = False # What character to use for bulleted lists bullet_char = '*' # What character to use as punctuation after numerals in an enumerated list enum_char = '.' # What style line endings to use in the output. line_ending = 'unix' # Format command names consistently as 'lower' or 'upper' case command_case = 'canonical' # Format keywords consistently as 'lower' or 'upper' case keyword_case = 'upper' # Specify structure for custom cmake functions # * = ZERO_OR_MORE # + = ONE_OR_MORE additional_commands = { "o2_add_executable": { "flags": ["IS_TEST", "IS_BENCHMARK", "NO_INSTALL"], "kwargs": { "SOURCES": '+', "PUBLIC_LINK_LIBRARIES": '*', "COMPONENT_NAME": '*', "EXEVARNAME": '*' } }, "o2_add_header_only_library": { "kwargs": { "INCLUDE_DIRECTORIES": '*', "INTERFACE_LINK_LIBRARIES": '*', } }, "o2_add_library": { "kwargs": { "SOURCES": '+', "PUBLIC_INCLUDE_DIRECTORIES": '*', "PUBLIC_LINK_LIBRARIES": '*', "PRIVATE_INCLUDE_DIRECTORIES": '*', "TARGETVARNAME": '*', } }, "o2_target_root_dictionary": { "kwargs": { "LINKDEF": '+', "HEADERS": '*', } }, "o2_target_man_page": { "kwargs": { "NAME": '+', "SECTION": '*', } }, "add_root_dictionary": { "kwargs": { "LINKDEF": '+', "HEADERS": '*', "BASENAME": '*', } }, "o2_data_file": { "kwargs": { "COPY": '+', "DESTINATION": '*', } }, "o2_add_test_command": { "kwargs": { "COMMAND": '*', "TIMEOUT": '*', "NAME": '*', "WORKING_DIRECTORY": '*', "CONFIGURATIONS": '*', "COMMAND_LINE_ARGS": '*', "LABELS": '*', "ENVIRONMENT": '*', } }, "o2_add_test": { "kwargs": { "INSTALL": '*', "NO_BOOST_TEST": '*', "COMPONENT_NAME": '*', "TIMEOUT": '*', "WORKING_DIRECTORY": '*', "SOURCES": '*', "PUBLIC_LINK_LIBRARIES": '*', "COMMAND_LINE_ARGS": '*', "LABELS": '*', "ENVIRONMENT": '*', } }, "o2_add_test_root_macro": { "flags": ["COMPILE","COMPILE_ONLY"], "kwargs": { "ENVIRONMENT": '*', "PUBLIC_LINK_LIBRARIES": '*', "PUBLIC_INCLUDE_DIRECTORIES": '*', "LABELS": '*', } }, "o2_name_target": { "kwargs": { "INCLUDE_DIRECTORIES": '*', "INTERFACE_LINK_LIBRARIES": '*', } }, "find_package_handle_standard_args": { "flags": ["CONFIG_MODE"], "kwargs": { "DEFAULT_MSG": '*', "REQUIRED_VARS": '*', "VERSION_VAR": '*', "HANDLE_COMPONENTS": '*', "FAIL_MESSAGE": '*' } }, "set_package_properties": { "kwargs": { "PROPERTIES": '*', "URL": '*', "TYPE": '*', "PURPOSE": '*' } } } # A list of command names which should always be wrapped always_wrap = [] # Specify the order of wrapping algorithms during successive reflow attempts algorithm_order = [0, 1, 2, 3, 4] # If true, the argument lists which are known to be sortable will be sorted # lexicographicall autosort = False # enable comment markup parsing and reflow enable_markup = True # If comment markup is enabled, don't reflow the first comment block in # eachlistfile. Use this to preserve formatting of your # copyright/licensestatements. first_comment_is_literal = False # If comment markup is enabled, don't reflow any comment block which matchesthis # (regex) pattern. Default is `None` (disabled). literal_comment_pattern = None # Regular expression to match preformat fences in comments # default=r'^\s*([`~]{3}[`~]*)(.*)$' fence_pattern = '^\\s*([`~]{3}[`~]*)(.*)$' # Regular expression to match rulers in comments # default=r'^\s*[^\w\s]{3}.*[^\w\s]{3}$' ruler_pattern = '^\\s*[^\\w\\s]{3}.*[^\\w\\s]{3}$' # If true, emit the unicode byte-order mark (BOM) at the start of the file emit_byteorder_mark = False # If a comment line starts with at least this many consecutive hash characters, # then don't lstrip() them off. This allows for lazy hash rulers where the first # hash char is not separated by space hashruler_min_length = 10 # If true, then insert a space between the first hash char and remaining hash # chars in a hash ruler, and normalize it's length to fill the column canonicalize_hashrulers = True # Specify the encoding of the input file. Defaults to utf-8. input_encoding = 'utf-8' # Specify the encoding of the output file. Defaults to utf-8. Note that cmake # only claims to support utf-8 so be careful when using anything else output_encoding = 'utf-8' # A dictionary containing any per-command configuration overrides. Currently # only `command_case` is supported. per_command = {}