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:
- Adding new files: new files must be sent to email@example.com for review. They may only be added after an explicit Ok.
- 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.
- 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.
- Documentation must never be removed as long as it is valid and not replaced.
- Other patches can always be committed without review.
- All patches must maintain source compatibility.
- All patches must follow the coding style for CMake files in KDE.