Changes

Jump to navigation Jump to search
2,112 bytes added ,  12:32, 24 August 2016
add content for contributing to Octave (instead of contribution rules for the wiki only)
Line 1: Line 1:  +
== Bug reports and patch submission ==
 +
 +
Bugs and patches should be submitted to Octave's
 +
[https://savannah.gnu.org/bug/?func=additem&group=octave bug] and
 +
[https://savannah.gnu.org/patch/?func=additem&group=octave patch]
 +
trackers respectively.
 +
 +
The best way to contribute patches is to create a Mercurial changeset.
 +
See the [[Mercurial]] page for instructions.
 +
 +
== Building from development sources ==
 +
 +
We general build instructions up to date in the source tree.  Please
 +
clone using [[Mercurial]] or download it to see the README.
 +
 +
Distribution specific instructions are kept on the wiki:
 +
 +
* [[Building for Linux systems]]
 +
* [[Octave for Debian systems]]
 +
* [[Octave for Arch Linux]]
 +
* [[Building for Macintosh platform]]
 +
* [[Building on Cygwin platform]]
 +
* [[MXE]] build on Linux system
 +
 +
== Coding style ==
 +
 +
Apart from C++ and Octave language (m-files), Octave's sources include
 +
files written in C, Fortran, M4, Perl, Unix shell, AWK, Texinfo, and
 +
@TeX{}.  There are not many rules to follow when using these other
 +
languages; some of them are summarized below.  In any case, the golden
 +
rule is: if you modify a source file, try to follow any conventions you
 +
can detect in the file or other similar files.
 +
 +
=== C++ guide ===
 +
 +
See [[C++ style guide]].
 +
 +
=== Octave guide ===
 +
 +
See [[Octave style sguide]]].
 +
 +
=== Help text style ===
 +
 +
Octave's manual and functions help text is written in Texinfo.
 +
See [[Help text]].
 +
 +
=== C guide ==
 +
 +
For C, you should follow all [[C++ style guide|C++ rules]] that can apply.
 +
 +
=== Fortran guide ===
 +
 +
If you modify a Fortran file, you should stay within Fortran 77 with
 +
common extensions like {{codeline|END DO}}.  Currently, we want all sources to
 +
be compilable with the f2c and g77 compilers, without special flags if
 +
possible.  This usually means that non-legacy compilers also accept the
 +
sources.
 +
 +
=== M4 guide ===
 +
 +
The M4 macro language is mainly used for Autoconf configuration files.
 +
You should follow normal M4 rules when contributing to these files.
 +
Some M4 files come from external source, namely the
 +
[https://www.gnu.org/software/autoconf-archive/ Autoconf archive].
 +
 +
=== mediawiki guide ===
 +
 
* Please try to fit a new page into the already existing category tree.
 
* Please try to fit a new page into the already existing category tree.
 
* If you have to create a new category, choose the name and place wisely (try to stay close to Wikipedia's categorization scheme).
 
* If you have to create a new category, choose the name and place wisely (try to stay close to Wikipedia's categorization scheme).
Line 4: Line 71:  
* The one and only root category is [[:Category:Contents]]. All other categories have to point to it (over one or more subcategories).
 
* The one and only root category is [[:Category:Contents]]. All other categories have to point to it (over one or more subcategories).
 
* Start a new page title with a capital letter, the rest is written in lower case (except for names, cities, etc.).
 
* Start a new page title with a capital letter, the rest is written in lower case (except for names, cities, etc.).
  −
[[Category:Wiki]]
 

Navigation menu