docs/jds-rules.html
author dcarbery
Fri, 24 Nov 2006 16:37:59 +0000
branch217update
changeset 19096 d542fc2c823e
parent 6213 116f2673981f
permissions -rw-r--r--
Merged trunk changes r9797:9829 into 217update branch.

<h2>JDS Rules</h2>

<style>
li {padding:3px;}
</style>

<p>
The following rules apply for hacking on the JDS sources -
<p>

<ul>
  <li>
	All patches that are not branding or vendor specific configuration
	<b>MUST</b> be submitted upstream to the original community of the
	component.
  </li>

  <li>
	Patches that are rejected by the upstream community are considered
	<b>broken</b> and should be reworked where possible. Each patch
	that remains locally increases the maintenance burden for any
	future work with that component.
  </li>

  <li>
	<b>FIXIT@THESOURCE</b>: Find the root cause of the problem and 
	either fix it yourself, or collaborate to get it fixed. You should
	not apply a workaround if at all possible. Temporary workarounds are
	appropriate in some cases, although not something that should be 
	done long term.
  </li>

  <li>
	Patches should be applied within the Linux spec files and <b>MUST</b>
	work on <b>both</b> Linux and Solaris.
  </li>

  <li>
	Avoid using <b>%ifos</b>
  </li>

  <li>
	If a patch requires images or other binary files, put those in 
	ext-sources. Remember to use the -kb CVS option when adding
	binaries. Where possible other files should be merged into
	a patch.
  </li>

  <li>
	Update %changelog in the spec file for <b>ALL</b> non-trivial 
	changes and make sure you have a ChangeLog entry to accompany
	this. There is a ChangeLog in the top level directory, and a
	ChangeLog in the Solaris directory. Use them as appropriate.
  </li>

  <li>
	The commit log message should be the same as what is in the
	ChangeLog entry. When you go to commit, do not use the -m
	CVS option, instead wait for the prompt, and cut and paste
	your ChangeLog entry in it.
  </li>

  <li>
	Follow the spec file templates -
	<blockquote>
	<dl>
	  <dt>docs/template.spec</dt>
          <dd>Linux spec file template</dd>

	  <dt>docs/SUNWtemplate.spec</dt>
          <dd>Solaris spec file template</dd>
	</dl>
	</blockquote>
  </li>

  <li>
	Avoid patching patches.
  </li>
</ul>