Home | History | Annotate | Download | only in docs
      1 <h2>JDS Rules</h2>
      2 
      3 <style>
      4 li {padding:3px;}
      5 </style>
      6 
      7 <p>
      8 The following rules apply for hacking on the JDS sources -
      9 <p>
     10 
     11 <ul>
     12   <li>
     13 	All patches that are not branding or vendor specific configuration
     14 	<b>MUST</b> be submitted upstream to the original community of the
     15 	component.
     16   </li>
     17 
     18   <li>
     19 	Patches that are rejected by the upstream community are considered
     20 	<b>broken</b> and should be reworked where possible. Each patch
     21 	that remains locally increases the maintenance burden for any
     22 	future work with that component.
     23   </li>
     24 
     25   <li>
     26 	<b>FIXIT@THESOURCE</b>: Find the root cause of the problem and 
     27 	either fix it yourself, or collaborate to get it fixed. You should
     28 	not apply a workaround if at all possible. Temporary workarounds are
     29 	appropriate in some cases, although not something that should be 
     30 	done long term.
     31   </li>
     32 
     33   <li>
     34 	Patches should be applied within the Linux spec files and <b>MUST</b>
     35 	work on <b>both</b> Linux and Solaris.
     36   </li>
     37 
     38   <li>
     39 	Avoid using <b>%ifos</b>
     40   </li>
     41 
     42   <li>
     43 	If a patch requires images or other binary files, put those in 
     44 	ext-sources. Remember to use the -kb CVS option when adding
     45 	binaries. Where possible other files should be merged into
     46 	a patch.
     47   </li>
     48 
     49   <li>
     50 	Update %changelog in the spec file for <b>ALL</b> non-trivial 
     51 	changes and make sure you have a ChangeLog entry to accompany
     52 	this. There is a ChangeLog in the top level directory, and a
     53 	ChangeLog in the Solaris directory. Use them as appropriate.
     54   </li>
     55 
     56   <li>
     57 	The commit log message should be the same as what is in the
     58 	ChangeLog entry. When you go to commit, do not use the -m
     59 	CVS option, instead wait for the prompt, and cut and paste
     60 	your ChangeLog entry in it.
     61   </li>
     62 
     63   <li>
     64 	Follow the spec file templates -
     65 	<blockquote>
     66 	<dl>
     67 	  <dt>docs/template.spec</dt>
     68           <dd>Linux spec file template</dd>
     69 
     70 	  <dt>docs/SUNWtemplate.spec</dt>
     71           <dd>Solaris spec file template</dd>
     72 	</dl>
     73 	</blockquote>
     74   </li>
     75 
     76   <li>
     77 	Avoid patching patches.
     78   </li>
     79 </ul>
     80