summaryrefslogtreecommitdiff
path: root/docs/CODING_STYLE.md
diff options
context:
space:
mode:
authorLuca Boccassi <luca.boccassi@microsoft.com>2021-06-03 15:37:17 +0100
committerLennart Poettering <lennart@poettering.net>2021-06-03 22:14:19 +0200
commit2ecce1f1a81660fe8e4e0a8e0cf3d0f5cdd0db17 (patch)
tree2e4e5409b60ebf4bac580875d9b802038919d39e /docs/CODING_STYLE.md
parentd0fd114929d3c8d5781e10e408ec178722d2f672 (diff)
downloadsystemd-2ecce1f1a81660fe8e4e0a8e0cf3d0f5cdd0db17.tar.gz
docs: add ARCHITECTURE.md with code map
Initial and coarse version of a code map, useful for people getting started and looking at the repository for the first time.
Diffstat (limited to 'docs/CODING_STYLE.md')
-rw-r--r--docs/CODING_STYLE.md25
1 files changed, 0 insertions, 25 deletions
diff --git a/docs/CODING_STYLE.md b/docs/CODING_STYLE.md
index e4b0d91833..2f9f80f778 100644
--- a/docs/CODING_STYLE.md
+++ b/docs/CODING_STYLE.md
@@ -135,31 +135,6 @@ layout: default
global in global variables, for example data parsed from command lines, see
below.
-- You might wonder what kind of common code belongs in `src/shared/` and what
- belongs in `src/basic/`. The split is like this: anything that is used to
- implement the public shared object we provide (sd-bus, sd-login, sd-id128,
- nss-systemd, nss-mymachines, nss-resolve, nss-myhostname, pam_systemd), must
- be located in `src/basic` (those objects are not allowed to link to
- libsystemd-shared.so). Conversely, anything which is shared between multiple
- components and does not need to be in `src/basic/`, should be in
- `src/shared/`.
-
- To summarize:
-
- `src/basic/`
- - may be used by all code in the tree
- - may not use any code outside of `src/basic/`
-
- `src/libsystemd/`
- - may be used by all code in the tree, except for code in `src/basic/`
- - may not use any code outside of `src/basic/`, `src/libsystemd/`
-
- `src/shared/`
- - may be used by all code in the tree, except for code in `src/basic/`,
- `src/libsystemd/`, `src/nss-*`, `src/login/pam_systemd.*`, and files under
- `src/journal/` that end up in `libjournal-client.a` convenience library.
- - may not use any code outside of `src/basic/`, `src/libsystemd/`, `src/shared/`
-
- Our focus is on the GNU libc (glibc), not any other libcs. If other libcs are
incompatible with glibc it's on them. However, if there are equivalent POSIX
and Linux/GNU-specific APIs, we generally prefer the POSIX APIs. If there