1. 01 Oct, 2019 1 commit
    • Marc Chevrier's avatar
      clang-format: Normalize headers presentation · 185fe49f
      Marc Chevrier authored
      By using clang-format directives 'IncludeBlocks' and 'IncludeCategories'
      headers are regrouped by categories:
      1. "cmConfigure.h" which must be first
      2. header matching current implementation file
      3. standard language headers
      4. CMake replacement ones
      5. external  headers (i.e. #include directive with '<' and '>')
      6. Qt headers
      7. cmsys/* headers
      8. cm_* headers
      9. CMake headers (i.e. starting with 'cm[A-Z]')
      10. all other headers
      
      Fixes: #19674
      185fe49f
  2. 01 Jun, 2018 1 commit
    • Brad King's avatar
      clang-format.bash: update to clang-format-6.0 · 523c443d
      Brad King authored
      Update `.clang-format` with configuration to make the 6.0 format as
      close as possible to what 3.8 produced before.  Then revise the style:
      
      * Indent preprocessor directives (a feature new since 3.8)
      * Add a newline and indentation before inheritance `:` and `,`
      
      Rename the Git attribute identifying the format to include the
      clang-format version number: `format.clang-format-6.0`.  This will aid
      external infrastructure in knowing what version of the tool to run.
      523c443d
  3. 18 May, 2018 1 commit
    • Brad King's avatar
      clang-format: Explicitly require version 3.8 of the tool · 8cfc45f6
      Brad King authored
      Versions of clang-format newer than 3.8 produce different output.
      Our source code guide says that version 3.8 exactly must be used.
      Update the comment in our `.clang-format` config file accordingly.
      Add a check to our formatting script to verify the version.
      Also update its tool search to look for the explicitly-named
      3.8 variant first.
      8cfc45f6
  4. 30 Aug, 2017 1 commit
  5. 16 May, 2016 1 commit
    • Brad King's avatar
      Configure clang-format for CMake source tree · 1e90d78f
      Brad King authored
      After discussion among developers we settled on the Mozilla style
      with a few tweaks:
      
      * Do not align operator arguments.
      
      * Do not always break after a function return type.
      
      * Limit to 79 columns instead of 80 to fit edge cases
        better in 80-column terminals as CMake has always done.
      
      * Format for C++98 instead of C++11 because CMake is written
        in the former language.
      
      Co-Author: Daniel Pfeifer <daniel@pfeifer-mail.de>
      1e90d78f