mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-08-30 06:05:22 +00:00
Includes the Collaboration Guideline. It contains the infromation regarding the use of the mailing list, Gerrit, the coding style and other usefull collaboration information. This Collaboration Guideline is constantly changing as new methods of collaboration are used. Change-Id: I9f1e66556e99defa8729f87f19052b539e8628d3 Signed-off-by: Rodrigo Caballero <rodrigo.caballero.abraham@intel.com>
41 lines
1.4 KiB
ReStructuredText
41 lines
1.4 KiB
ReStructuredText
.. _Coding:
|
|
|
|
Coding Style
|
|
############
|
|
|
|
Use this coding guideline to ensure that your development complies with
|
|
the project's style and naming conventions.
|
|
|
|
In general, follow the `Linux kernel coding style`_, with the following
|
|
exceptions:
|
|
|
|
* Add braces to every if and else body, even if it is a single line.
|
|
Use the :option:`--ignore BRACES` flag to make :program:`checkpatch`
|
|
stop complaining.
|
|
* Use hard tab stops. Set the tab width to either 4 or 8 spaces. Train
|
|
:program:`checkpatch` to only warn when lines are over 100
|
|
characters. In general, break lines at 80 characters where possible.
|
|
If you are trying to align comments after declarations, use spaces
|
|
instead of tabs to align them.
|
|
* Use C89-style single line comments, :literal:`/* */`. The C99-style
|
|
single line comment, //, is not allowed.
|
|
* Use :literal:`/*! */` for any comments that need to appear in the
|
|
documentation.
|
|
|
|
Checking for Conformity Using Checkpatch
|
|
########################################
|
|
|
|
The Linux kernel GPL-licensed tool, :program:`checkpatch` is used to
|
|
check the conformity to the coding style. The tool is available in the
|
|
scripts directory. To invoke :program:`checkpatch` when you commit
|
|
code, edit your :file:`.git/hooks/pre-commit` file to contain:
|
|
|
|
.. code-block::bash
|
|
|
|
#!/bin/sh
|
|
|
|
set -e exec
|
|
|
|
git diff --cached | /path/to/checkpatch.pl --no-signoff - || true
|
|
|
|
.. _Linux kernel coding style: https://www.kernel.org/doc/Documentation/CodingStyle |