source: trunk/base/HACKING @ 30449

Last change on this file since 30449 was 30449, checked in by jmpp@…, 13 years ago

Add project naming and credit attribution guidelines to the HACKING file.

File size: 1.9 KB
Line 
1Project naming and copyright attribution:
2
3* "The MacPorts Project" is the string that shall be used whereever there's a need to reference our project name, such as in copyright notices.
4* A developer or contributor is adviced to attribute himself a copyright notice if he/she is contributing a full new source file or a full new feature
5  to an already existing source file in the "base" component of our repository.
6* An exception to this rule is our Portfiles, since they are partly meant for human eyes consumption and the boilerplate header comments should be kept
7  down to a minimum
8* A copyright notice attributed to our group name, "The MacPorts Project", should also be added to these source files (if not already there) if they're
9  being uploaded to the "base" component of our repository, since as such they are being contributed to the project.
10
11
12Whitespace rules as discussed on the list:
13
14* All source code files MUST use soft tabs at a tabstop of 4. No hard tabs are allowed.
15* All source code files SHOULD have the following as the first line of the file:
16    # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
17  This is a modeline that works for both emacs and vim.
18* Portfiles SHOULD use soft tabs at a tabstop of 4, but implementation of this is left up to the discretion of the maintainer.
19* Portfiles SHOULD use the given modeline
20* Makefiles MUST use tabs as it is required by the syntax. Makefiles SHOULD use a tab stop of 8.
21* Makefiles MAY use a modeline. The following works for emacs and vim:
22    # -*- coding: utf-8; mode: Makefile; tab-width: 8; indent-tabs-mode: t -*- vim:fenc=utf-8:filetype=Makefile:noet:sw=8:ts=8
23* All other files (documentation, etc) SHOULD use soft tabs at a tabstop of 4 if the document format allows.
24* All other files (documentation, etc) SHOULD NOT use a modeline as it is probably meant for human consumption.
Note: See TracBrowser for help on using the repository browser.