Policies/CMake Coding Style

    From KDE TechBase
    Revision as of 20:08, 16 August 2008 by Neundorf (talk | contribs)
    The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

    This document describes the recommended coding style for CMake files in KDE, i.e. CMakeLists.txt files and *.cmake files.

    Indentation

    Indent all code correctly, i.e. the body of

    • IF/ELSE/ENDIF
    • FOREACH/ENDFOREACH
    • WHILE/ENDWHILE
    • MACRO/ENDMACRO
    • FUNCTION/ENDFUNCTION (CMake 2.6)

    Use spaces for indenting, 2, 3 or 4 spaces preferably. Use the same amount of spaces for indenting as is used in the rest of the file.

    Upper/lower casing

    CMake commands are case-insensitiv (only the commands, not the arguments or variable names). So all the following versions work: add_executable(foo foo.c) ADD_EXECUTABLE(bar bar.c) Add_Executable(hello hello.c) aDd_ExEcUtAbLe(blub blub.c)

    But this would be ugly.

    In KDE the all-lowercase style is preferred. The all-uppercase style is also ok. Mixing upper- and lowercase should not be done in KDE CMake files. Although all-lowercase is preferred, if a file is apparently in all-uppercase style, then stay consistent and also use all-uppercase in this file.

    Writing CMake Find-modules

    Follow the style guide from CMake when writing some FindFoo.cmake module: readme.txt