Policies/CMake Commit Policy: Difference between revisions

    From KDE TechBase
    No edit summary
    (Replace underscores with spaces in page links)
    (One intermediate revision by the same user not shown)
    Line 1: Line 1:
    The policies outlined here apply to the CMake files in kdelibs/cmake/modules/, i.e. they don't apply to CMake files in other KDE modules.
    The policies outlined here apply to the CMake files in kdelibs/cmake/modules/, i.e. they don't apply to CMake files in other KDE modules.


    The files located in kdelibs/cmake/modules/ are installed and can be used by other application. This means they are part of the public interface of kdelibs and we have to keep compatibility. Committing there also has the potential to break the build of whole KDE for everybody.
    The files located in kdelibs/cmake/modules/ are installed and can be used by other applications. This means they are part of the public interface of kdelibs and we have to keep compatibility. Committing there also has the potential to break the build of whole KDE for everybody.


    When committing changes in kdelibs/cmake/modules/, the following rules must be followed:
    When committing changes in kdelibs/cmake/modules/, the following rules must be followed:
    Line 10: Line 10:
    # Documentation must never be removed as long as it is valid and not replaced.
    # Documentation must never be removed as long as it is valid and not replaced.
    # Other patches can always be committed without review.
    # Other patches can always be committed without review.
    # All patches must maintain [[Policies/CMake_and_Source_Compatibility|source compatibility]].
    # All patches must maintain [[Policies/CMake and Source Compatibility|source compatibility]].
    # All patches must follow the [[Policies/CMake_Coding_Style|coding style]] for CMake files in KDE.
    # All patches must follow the [[Policies/CMake Coding Style|coding style]] for CMake files in KDE.

    Revision as of 02:38, 31 July 2010

    The policies outlined here apply to the CMake files in kdelibs/cmake/modules/, i.e. they don't apply to CMake files in other KDE modules.

    The files located in kdelibs/cmake/modules/ are installed and can be used by other applications. This means they are part of the public interface of kdelibs and we have to keep compatibility. Committing there also has the potential to break the build of whole KDE for everybody.

    When committing changes in kdelibs/cmake/modules/, the following rules must be followed:

    1. Adding new files: new files must be sent to [email protected] for review. They may only be added after an explicit Ok.
    2. Patches which refactor multiple modules at once or which change how something is done in general for multiple files must be posted first. They may only be committed after an explicit Ok.
    3. Adding public macros or functions: they must be posted for review first. If there is NO answer at all within two weeks they may be committed anyway.
    4. Documentation must never be removed as long as it is valid and not replaced.
    5. Other patches can always be committed without review.
    6. All patches must maintain source compatibility.
    7. All patches must follow the coding style for CMake files in KDE.