1 Please comply with the following rules when hacking on Avahi:
3 * When you add a new textual file to the repository please enable SVN
4 keyword expansion for it:
6 svn ps svn:keywords Id foo.c
8 * Before commiting check with "svn st" that all built files are ignored
9 by svn. To change the list of ignored files use
13 This is similar to the ".cvsignore" file in CVS times.
15 * Don't forget to add the autoconf config.h inclusion to all C source files:
21 This needs to be placed in in .c files only. NOT IN HEADER FILES!
23 * Don't hardcode any paths in source files. Either use the -D option of gcc
24 for C sources or use "sed" to replace them based on a .in file.
26 * Never forget that Avahi should be buildable without DBUS, GTK or python!
28 * When you code in C, please compile with the following gcc options from time
33 -Wmissing-declarations
37 -Wold-style-definition
39 -Wdeclaration-after-statement
50 This will show you a bunch of issues which might be problems in your source
51 code. Not all options are available on all GCC versions. Just pass these
52 options in $CFLAGS when running bootstrap.sh:
54 CFLAGS="-Wextra ..." ./bootstrap.sh
56 * Whenever you add a new Makefile.am, C (.c or .h) source file, shell or
57 python script please add this legal blurb to its header:
59 For Makefile.am, python and shell code:
64 # This file is part of avahi.
66 # avahi is free software; you can redistribute it and/or modify it
67 # under the terms of the GNU Lesser General Public License as
68 # published by the Free Software Foundation; either version 2 of the
69 # License, or (at your option) any later version.
71 # avahi is distributed in the hope that it will be useful, but WITHOUT
72 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
73 # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
74 # License for more details.
76 # You should have received a copy of the GNU Lesser General Public
77 # License along with avahi; if not, write to the Free Software
78 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
88 This file is part of avahi.
90 avahi is free software; you can redistribute it and/or modify it
91 under the terms of the GNU Lesser General Public License as
92 published by the Free Software Foundation; either version 2.1 of the
93 License, or (at your option) any later version.
95 avahi is distributed in the hope that it will be useful, but WITHOUT
96 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
97 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
98 Public License for more details.
100 You should have received a copy of the GNU Lesser General Public
101 License along with avahi; if not, write to the Free Software
102 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307