OSDN Git Service

0aefd1103310cdd9e26bafc1680c2acae07fa1e8
[pf3gnuchains/gcc-fork.git] / libstdc++-v3 / doc / html / manual / appendix_contributing.html
1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml"><head><title>Appendix A.  Contributing</title><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"/><meta name="keywords" content="&#10;      ISO C++&#10;    , &#10;      library&#10;    "/><meta name="keywords" content="&#10;      ISO C++&#10;    , &#10;      runtime&#10;    , &#10;      library&#10;    "/><link rel="home" href="../index.html" title="The GNU C++ Library"/><link rel="up" href="bk01pt04.html" title="Part IV.  Appendices"/><link rel="prev" href="bk01pt04.html" title="Part IV.  Appendices"/><link rel="next" href="source_organization.html" title="Directory Layout and Source Conventions"/></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix A. 
4   Contributing
5   
6 </th></tr><tr><td align="left"><a accesskey="p" href="bk01pt04.html">Prev</a> </td><th width="60%" align="center">Part IV. 
7   Appendices
8 </th><td align="right"> <a accesskey="n" href="source_organization.html">Next</a></td></tr></table><hr/></div><div class="appendix" title="Appendix A.  Contributing"><div class="titlepage"><div><div><h1 class="title"><a id="appendix.contrib"/>
9   Contributing
10   <a id="id699646" class="indexterm"/>
11 </h1></div></div></div><div class="toc"><p><strong>Table of Contents</strong></p><dl><dt><span class="section"><a href="appendix_contributing.html#contrib.list">Contributor Checklist</a></span></dt><dd><dl><dt><span class="section"><a href="appendix_contributing.html#list.reading">Reading</a></span></dt><dt><span class="section"><a href="appendix_contributing.html#list.copyright">Assignment</a></span></dt><dt><span class="section"><a href="appendix_contributing.html#list.getting">Getting Sources</a></span></dt><dt><span class="section"><a href="appendix_contributing.html#list.patches">Submitting Patches</a></span></dt></dl></dd><dt><span class="section"><a href="source_organization.html">Directory Layout and Source Conventions</a></span></dt><dt><span class="section"><a href="source_code_style.html">Coding Style</a></span></dt><dd><dl><dt><span class="section"><a href="source_code_style.html#coding_style.bad_identifiers">Bad Identifiers</a></span></dt><dt><span class="section"><a href="source_code_style.html#coding_style.example">By Example</a></span></dt></dl></dd><dt><span class="section"><a href="source_design_notes.html">Design Notes</a></span></dt></dl></div><p>
12   The GNU C++ Library follows an open development model. Active
13   contributors are assigned maintainer-ship responsibility, and given
14   write access to the source repository. First time contributors
15   should follow this procedure:
16 </p><div class="section" title="Contributor Checklist"><div class="titlepage"><div><div><h2 class="title"><a id="contrib.list"/>Contributor Checklist</h2></div></div></div><div class="section" title="Reading"><div class="titlepage"><div><div><h3 class="title"><a id="list.reading"/>Reading</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist"><li class="listitem"><p>
17           Get and read the relevant sections of the C++ language
18           specification. Copies of the full ISO 14882 standard are
19           available on line via the ISO mirror site for committee
20           members. Non-members, or those who have not paid for the
21           privilege of sitting on the committee and sustained their
22           two meeting commitment for voting rights, may get a copy of
23           the standard from their respective national standards
24           organization. In the USA, this national standards
25           organization is ANSI and their web-site is right
26           <a class="link" href="http://www.ansi.org">here.</a>
27           (And if you've already registered with them, clicking this link will take you to directly to the place where you can
28           <a class="link" href="http://webstore.ansi.org/RecordDetail.aspx?sku=ISO%2FIEC+14882:2003">buy the standard on-line</a>.)
29         </p></li><li class="listitem"><p>
30           The library working group bugs, and known defects, can
31           be obtained here:
32           <a class="link" href="http://www.open-std.org/jtc1/sc22/wg21/">http://www.open-std.org/jtc1/sc22/wg21 </a>
33         </p></li><li class="listitem"><p>
34           The newsgroup dedicated to standardization issues is
35           comp.std.c++: this FAQ for this group is quite useful and
36           can be
37           found <a class="link" href="http://www.comeaucomputing.com/csc/faq.html">
38           here </a>.
39       </p></li><li class="listitem"><p>
40           Peruse
41           the <a class="link" href="http://www.gnu.org/prep/standards">GNU
42           Coding Standards</a>, and chuckle when you hit the part
43           about <span class="quote">“<span class="quote">Using Languages Other Than C</span>”</span>.
44         </p></li><li class="listitem"><p>
45           Be familiar with the extensions that preceded these
46           general GNU rules. These style issues for libstdc++ can be
47           found <a class="link" href="source_code_style.html" title="Coding Style">here</a>.
48       </p></li><li class="listitem"><p>
49           And last but certainly not least, read the
50           library-specific information
51           found <a class="link" href="appendix_porting.html" title="Appendix B.  Porting and Maintenance"> here</a>.
52       </p></li></ul></div></div><div class="section" title="Assignment"><div class="titlepage"><div><div><h3 class="title"><a id="list.copyright"/>Assignment</h3></div></div></div><p>
53       Small changes can be accepted without a copyright assignment form on
54       file. New code and additions to the library need completed copyright
55       assignment form on file at the FSF. Note: your employer may be required
56       to fill out appropriate disclaimer forms as well.
57     </p><p>
58       Historically, the libstdc++ assignment form added the following
59       question:
60     </p><p>
61       <span class="quote">“<span class="quote">
62         Which Belgian comic book character is better, Tintin or Asterix, and
63         why?
64       </span>”</span>
65     </p><p>
66       While not strictly necessary, humoring the maintainers and answering
67       this question would be appreciated.
68     </p><p>
69       For more information about getting a copyright assignment, please see
70       <a class="link" href="http://www.gnu.org/prep/maintain/html_node/Legal-Matters.html">Legal
71         Matters</a>.
72     </p><p>
73       Please contact Benjamin Kosnik at
74       <code class="email">&lt;<a class="email" href="mailto:bkoz+assign@redhat.com">bkoz+assign@redhat.com</a>&gt;</code> if you are confused
75       about the assignment or have general licensing questions. When
76       requesting an assignment form from
77       <code class="email">&lt;<a class="email" href="mailto:mailto:assign@gnu.org">mailto:assign@gnu.org</a>&gt;</code>, please cc the libstdc++
78       maintainer above so that progress can be monitored.
79     </p></div><div class="section" title="Getting Sources"><div class="titlepage"><div><div><h3 class="title"><a id="list.getting"/>Getting Sources</h3></div></div></div><p>
80       <a class="link" href="http://gcc.gnu.org/svnwrite.html">Getting write access
81         (look for "Write after approval")</a>
82     </p></div><div class="section" title="Submitting Patches"><div class="titlepage"><div><div><h3 class="title"><a id="list.patches"/>Submitting Patches</h3></div></div></div><p>
83       Every patch must have several pieces of information before it can be
84       properly evaluated. Ideally (and to ensure the fastest possible
85       response from the maintainers) it would have all of these pieces:
86     </p><div class="itemizedlist"><ul class="itemizedlist"><li class="listitem"><p>
87           A description of the bug and how your patch fixes this
88           bug. For new features a description of the feature and your
89           implementation.
90         </p></li><li class="listitem"><p>
91           A ChangeLog entry as plain text; see the various
92           ChangeLog files for format and content. If you are
93           using emacs as your editor, simply position the insertion
94           point at the beginning of your change and hit CX-4a to bring
95           up the appropriate ChangeLog entry. See--magic! Similar
96           functionality also exists for vi.
97         </p></li><li class="listitem"><p>
98           A testsuite submission or sample program that will
99           easily and simply show the existing error or test new
100           functionality.
101         </p></li><li class="listitem"><p>
102           The patch itself. If you are accessing the SVN
103           repository use <span class="command"><strong>svn update; svn diff NEW</strong></span>;
104           else, use <span class="command"><strong>diff -cp OLD NEW</strong></span> ... If your
105           version of diff does not support these options, then get the
106           latest version of GNU
107           diff. The <a class="link" href="http://gcc.gnu.org/wiki/SvnTricks">SVN
108           Tricks</a> wiki page has information on customising the
109           output of <code class="code">svn diff</code>.
110         </p></li><li class="listitem"><p>
111           When you have all these pieces, bundle them up in a
112           mail message and send it to libstdc++@gcc.gnu.org. All
113           patches and related discussion should be sent to the
114           libstdc++ mailing list.
115         </p></li></ul></div></div></div></div><div class="navfooter"><hr/><table width="100%" summary="Navigation footer"><tr><td align="left"><a accesskey="p" href="bk01pt04.html">Prev</a> </td><td align="center"><a accesskey="u" href="bk01pt04.html">Up</a></td><td align="right"> <a accesskey="n" href="source_organization.html">Next</a></td></tr><tr><td align="left" valign="top">Part IV. 
116   Appendices
117  </td><td align="center"><a accesskey="h" href="../index.html">Home</a></td><td align="right" valign="top"> Directory Layout and Source Conventions</td></tr></table></div></body></html>