- * When you code in C, please compile with the following gcc options from time
- to time:
-
- -Wextra
- -Wfloat-equal
- -Wmissing-declarations
- -Wmissing-prototypes
- -Wstrict-prototypes
- -Wredundant-decls
- -Wold-style-definition
- -Wmissing-noreturn
- -Wdeclaration-after-statement
- -Wshadow
- -Wendif-labels
- -Wlarger-than-4000
- -Wpointer-arith
- -Wbad-function-cast
- -Wcast-qual
- -Wcast-align
- -Wwrite-strings
- -Winline
-
- This will show you a bunch of issues which might be problems in your source
- code. Not all options are available on all GCC versions. Just pass these
- options in $CFLAGS when running bootstrap.sh:
-
- CFLAGS="-Wextra ..." ./bootstrap.sh
+ * Before commiting, test your code! In case of C consider running it
+ a few times through valgrind, to make sure that you got everything
+ right. You have to call libtool explicitly when running valgrind
+ on binaries that depend on shared objects. e.g:
+
+ libtool --mode=execute valgrind ./avahi-daemon
+
+ Please note that valgrind can't find you all bugs. Please check
+ your code thrice with your brain before committing. Valgrind is
+ only a final check.