Update contributing notes

git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@4309 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
This commit is contained in:
Dan Williams 2008-11-19 23:41:08 +00:00
parent 50b866c22a
commit 05571deefd

View file

@ -1,17 +1,19 @@
Guidelines for Contributing:
1) Platform-specific functionality (for example, location of binaries that NetworkManager calls) should be done in a platform-independent manner. If code currently in NetworkManager does not accomodate that, then the code in NetworkManager needs to be changed to provide that. For example, if another platform does not use "dhclient" to get DHCP information, a separate function should be created to return a command-line string to call rather than inserting huge if/#ifdef blocks into the current function.
1) Platform-specific functionality (for example, location of binaries that
NetworkManager calls, or functionality used only on some platforms or
distribution, like resolvconf) should be configurable at build time, with the
normal autoconf mechanisms for putting a #define in config.h (AC_DEFINE), then
with #ifdef MY_DEFINE / #endif in the code.
2) Coding standards are more-or-less GNOME coding standards, with these exceptions:
a) 5 space tabs (no 8-space tabs allowed)
b) REAL tabs
c) Braces are moved to the next line, like:
if (foobar)
{
2) Coding standards are generally GNOME coding standards, with these exceptions:
a) 4 space tabs (_not_ 8-space tabs)
b) REAL tabs (_not_ a mix of tabs and spaces in the initial indent)
c) spaces used to align continuation lines past the indent point of the
first statement line, like so:
if (some_really_really_long_variable_name &&
another_really_really_long_variable_name) {
...
}
rather than:
if (foobar) {
...
}
d) Limiting line width to 80 characters is frowned upon