A very early, rough draft of a guide to making public releases for LLVM.
authorReid Spencer <rspencer@reidspencer.com>
Thu, 23 Mar 2006 06:45:42 +0000 (06:45 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Thu, 23 Mar 2006 06:45:42 +0000 (06:45 +0000)
This document will detail the steps needed for making a quality release of
LLVM that ensures the release functions and is of high quality.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26978 91177308-0d34-0410-b5e6-96231b3b80d8

docs/HowToReleaseLLVM.html [new file with mode: 0644]

diff --git a/docs/HowToReleaseLLVM.html b/docs/HowToReleaseLLVM.html
new file mode 100644 (file)
index 0000000..02b54bb
--- /dev/null
@@ -0,0 +1,130 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                      "http://www.w3.org/TR/html4/strict.dtd">
+<html>
+<head>
+  <title>How To Release LLVM To The Public</title>
+  <link rel="stylesheet" href="llvm.css" type="text/css">
+</head>
+<body>
+
+<div class="doc_title">How To Release LLVM To The Public</div>
+<p class="doc_warning">NOTE: THIS DOCUMENT IS A WORK IN PROGRESS!</p>
+
+<table class="layout" style="width: 90%" >
+<ol>
+  <li><a href="#introduction">Introduction</a></li>
+  <li><a href="#process">Release Process</a>
+  <ol>
+    <li><a href="overview">Overview</a></li>
+    <li><a href="merge">Merge Branches</a></li>
+    <li><a href="build">Build LLVM</a></li>
+    <li><a href="check">Run 'make check'</a></li>
+    <li><a href="test">Run LLVM Test Suite</a></li>
+    <li><a href="deps">make LibDeps.txt</a></li>
+    <li><a href="tag">cvs tag</a></li>
+    <li><a href="dist">make dist</a></li>
+    <li><a href="release">Release</a></li>
+  </ol></li>
+</ol>
+<div class="doc_author">
+  <p>Written by <a href="mailto:rspencer@x10sys.com">Reid Spencer</a></p>
+</div>
+
+<!-- *********************************************************************** -->
+<div class="doc_section"><a name="introduction">Introduction</a></div>
+<!-- *********************************************************************** -->
+
+<div class="doc_text">
+<p>This document collects information about successfully releasing LLVM to the
+public. It is the release manager's guide to ensuring that a high quality build
+of LLVM is released. Mostly, its just a bunch of reminders of things to do at
+release time so we don't inadvertently ship something that is utility 
+deficient.</p>
+</div>
+
+<!-- *********************************************************************** -->
+<div class="doc_section"><a name="process">Release Process</a></div>
+<!-- *********************************************************************** -->
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="overview">Process Overview</a></div>
+<div class="doc_text">
+  <ol>
+    <li><a href="merge">Merge Branches</a></li>
+    <li><a href="build">Build LLVM</a></li>
+    <li><a href="check">Run 'make check'</a></li>
+    <li><a href="test">Run LLVM Test Suite</a></li>
+    <li><a href="deps">make LibDeps.txt</a></li>
+    <li><a href="tag">cvs tag</a></li>
+    <li><a href="dist">make dist</a></li>
+    <li><a href="release">release</a></li>
+  </ol>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="merge">Merge Branches</a></div>
+<div class="doc_text">
+<p>Merge any work done on branches intended for release into mainline.</p>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="build">Build LLVM</a></div>
+<div class="doc_text">
+  <p>Build LLVM</p>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="check">Run 'make check'</a></div>
+<div class="doc_text">
+  <p>Run "make check" and ensure there are no unexpected failures. If there
+  are, resolve the failures and go back to step 2.</p>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="test">LLVM Test Suite</a></div>
+<div class="doc_text">
+  <p>Run the llvm-test suite and ensure there are no unacceptable failures.
+  If there are, resolve the failures and go back to step 2.</p>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="deps">Make LibDeps.txt</a></div>
+<div class="doc_text">
+  <p>Rebuild the LibDeps.txt target in utils/llvm-config. This makes sure that
+  the llvm-config utility remains relevant for the release, reflecting any
+  changes in the library dependencies.</p>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="tag">CVS Tag</a></div>
+<div class="doc_text">
+  <p>Tag the release.</p>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="dist">Run 'make dist'</a></div>
+<div class="doc_text">
+  <p>Build the distribution, ensuring it is installable and working</p>
+</div>
+
+<!-- ======================================================================= -->
+<div class="doc_subsection"><a name="release">Release</a></div>
+<div class="doc_text">
+  <p>Release the distribution tarball to the public.</p>
+</div>
+
+<!-- *********************************************************************** -->
+<hr>
+<address>
+  <a href="http://jigsaw.w3.org/css-validator/check/referer"><img
+  src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!"></a>
+  <a href="http://validator.w3.org/check/referer"><img
+  src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01!" /></a>
+
+  <a href="mailto:rspencer@x10sys.com">Reid Spencer</a><br>
+  <a href="http://llvm.cs.uiuc.edu">The LLVM Compiler Infrastructure</a>
+  <br/>
+  Last modified: $Date$
+</address>
+</body>
+</html>