From 49b9186252a9e2cf57809ad04e75c801cbcb3622 Mon Sep 17 00:00:00 2001
From: Tanya Lattner Create the release branch for llvm, llvm-gcc4.2,
clang, and the test-suite. The branch name will be
release_XX,where XX is the major and minor release numbers.
- Clang will have a different release number than llvm/
+ Clang will have a different release number than llvm/
llvm-gcc4 since its first release was years later
(still deciding if this will be true or not). These branches
can be created without checking out anything from subversion.
@@ -175,9 +175,10 @@ svn co https://llvm.org/svn/llvm-project/cfe/branches/release_XX
After creating the LLVM release branch, update the release branches'
autoconf/configure.ac version from X.Xsvn to just X.X. Update it on mainline
as well to be the next version (X.X+1svn). Regenerated the configure script
- for both. This must be done for both llvm and the test-suite.
+ for both. This must be done for both llvm and the
+ test-suite.
FIXME: Add a note about clang. FIXME: Add a note about clang. In addition, the version number of all the Bugzilla components must be
updated for the next release.
- Create source distributions for LLVM, LLVM GCC, Clang, and the LLVM Test
- Suite by exporting the source from Subversion and archiving it. This can be
- done with the following commands:
+ Create source distributions for LLVM, LLVM-GCC,
+ clang, and the llvm test-suite by exporting the source from
+ Subversion and archiving it. This can be done with the following commands:
- Build both debug and release (optimized) versions of LLVM on all
- platforms. Ensure the build is warning and error free on each platform.
- Note that when building the LLVM GCC Binary, use a release build of LLVM.
+ Build both debug and release (optimized) versions of LLVM on all supported
+ platforms. Direction to build llvm are
+ here.
Creating the Clang binary distribution (release/optimized) requires
@@ -257,11 +263,15 @@ Info about this. Criteria for a successful build.
- Specify what is used to build llvm, llvm-gcc, clang on each target.
+ The table below specifies which compilers are used for each arch/os combination
+ when qualifying the build of llvm, llvm-gcc, clang.
+
+
- Details
- Details. We do not use the gcc dejagnu test suite as release criteria.
- Details.
- Details
-
+
+
+ Architecture OS compiler
+ x86-32 Mac OS 10.5 gcc 4.0.1
+ x86-32 Linux gcc 4.2.X, gcc 4.3.X
+ x86-32 FreeBSD gcc ?
+ x86-32 mingw gcc ?
+ x86-64 Mac OS 10.5 gcc 4.0.1
+ x86-64 Linux gcc 4.2.X, gcc 4.3.X
+
+ x86-64 FreeBSD gcc?
+
+ Architecture OS llvm-gcc baseline clang baseline
+ tests
+ x86-32 Mac OS 10.5 last release none llvm dejagnu, clang tests, test-suite (including spec)
+ x86-32 Linux last release none llvm dejagnu, clang tests, test-suite (including spec)
+ x86-32 FreeBSD none none llvm dejagnu, clang tests, test-suite
+ x86-32 mingw last release none QT
+ x86-64 Mac OS 10.5 last release none llvm dejagnu, clang tests, test-suite (including spec)
+ x86-64 Linux last release none llvm dejagnu, clang tests, test-suite (including spec)
+ x86-64 FreeBSD none none llvm dejagnu, clang tests, test-suite
Ask LLVM developers to submit the report and make check results to the list. - Verify that there are no regressions from the previous release. For - unsupported targets, verify that make check at least is clean.
+ Attempt to verify that there are no regressions from the previous release. + The results are not used to qualify a release, but to spot other potential + problems. For unsupported targets, verify that make check at least is + clean. -The first round of pre-release testing will be the longest. During this time, - all regressions must be fixed before the second pre-release is created (repeat - steps 4-8).
+During the first round of testing time, + all regressions must be fixed before the second pre-release is created.
-If this is the second round of testing, this is only to ensure the bug fixes - previously merged in have not created new major problems. This is not the time - to solve additional and unrelated bugs. If no patches are merged in, the release - is determined to be ready and the release manager may move onto the next step.
+If this is the second round of testing, this is only to ensure the bug + fixes previously merged in have not created new major problems. This is not + the time to solve additional and unrelated bugs. If no patches are merged in, + the release is determined to be ready and the release manager may move onto + the next step. +
@@ -348,7 +397,19 @@ Qualification Details- Details
+ Below are the rules regarding patching the release branch. ++
- Details
+ The final stages of the release process involving taging the release branch, + updating documentation that refers to the release, and updating the demo + page. +FIXME: Add a note if anything needs to be done to the clang website. + Eventually the websites will be merged hopefully.
+ Review the documentation and ensure that it is up to date. The Release Notes + must be updated to reflect bug fixes, new known issues, and changes in the + list of supported platforms. The Getting Started Guide should be updated to + reflect the new release version number tag avaiable from Subversion and + changes in basic system requirements. Merge both changes from mainline into + the release branch. +
+- Review the documentation and ensure that it is up to date. The Release Notes - must be updated to reflect bug fixes, new known issues, and changes in the - list of supported platforms. The Getting Started Guide should be updated to - reflect the new release version number tag avaiable from Subversion and - changes in basic system requirements. Merge both changes from mainline into - the release branch. -
-