1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-01-18 06:03:42 +03:00

Merge pull request #1161 from dvdhrm/include-order2

CODING_STYLE: mandate alphabetical include order (v2)
This commit is contained in:
Lennart Poettering 2015-09-06 01:30:08 +02:00
commit 87766aa462

View File

@ -295,25 +295,15 @@
EXIT_FAILURE and EXIT_SUCCESS as defined by libc.
- The order in which header files are included doesn't matter too
much. However, please try to include the headers of external
libraries first (these are all headers enclosed in <>), followed by
the headers of our own public headers (these are all headers
starting with "sd-"), internal utility libraries from src/shared/,
followed by the headers of the specific component. Or in other
words:
#include <stdio.h>
#include "sd-daemon.h"
#include "util.h"
#include "frobnicator.h"
Where stdio.h is a public glibc API, sd-daemon.h is a public API of
our own, util.h is a utility library header from src/shared, and
frobnicator.h is an placeholder name for any systemd component. The
benefit of following this ordering is that more local definitions
are always defined after more global ones. Thus, our local
definitions will never "leak" into the global header files, possibly
altering their effect due to #ifdeffery.
much. systemd-internal headers must not rely on an include order, so
it is safe to include them in any order possible.
However, to not clutter global includes, and to make sure internal
definitions will not affect global headers, please always include the
headers of external components first (these are all headers enclosed
in <>), followed by our own exported headers (usually everything
that's prefixed by "sd-"), and then followed by internal headers.
Furthermore, in all three groups, order all includes alphabetically
so duplicate includes can easily be detected.
- To implement an endless loop, use "for (;;)" rather than "while
(1)". The latter is a bit ugly anyway, since you probably really