Browse Source

Update documentation to reflect 0.5 reality. And removed leading $ from shell commands, so it is easier to copy and paste from release-process.txt.

miguelfreitas
Gavin Andresen 13 years ago
parent
commit
434a483d50
  1. 16
      doc/build-msw.txt
  2. 96
      doc/release-process.txt

16
doc/build-msw.txt

@ -15,14 +15,8 @@ WINDOWS BUILD NOTES
Compilers Supported Compilers Supported
------------------- -------------------
MinGW GCC http://tdm-gcc.tdragon.net/ TODO: What works?
TDM-GCC with gcc 4.5.1 was used to build this release. Note: releases are cross-compiled using mingw running on Linux.
MSYS 1.0.11 was also used (sh needed to compile some dependencies)
Candidate releases were built with MSVC 10.0 (2010), but
compiling with Visual C++ caused rendering artifacts when
bitcoin was run.
Dependencies Dependencies
@ -42,7 +36,7 @@ Boost MIT-like license
miniupnpc New (3-clause) BSD license miniupnpc New (3-clause) BSD license
Versions used in this release: Versions used in this release:
OpenSSL 1.0.0d OpenSSL 1.0.0e
Berkeley DB 4.8.30.NC Berkeley DB 4.8.30.NC
Boost 1.47.0 Boost 1.47.0
miniupnpc 1.6 miniupnpc 1.6
@ -54,7 +48,7 @@ MSYS shell:
un-tar sources with MSYS 'tar xfz' to avoid issue with symlinks (OpenSSL ticket 2377) un-tar sources with MSYS 'tar xfz' to avoid issue with symlinks (OpenSSL ticket 2377)
change 'MAKE' env. variable from 'C:\MinGW32\bin\mingw32-make.exe' to '/c/MinGW32/bin/mingw32-make.exe' change 'MAKE' env. variable from 'C:\MinGW32\bin\mingw32-make.exe' to '/c/MinGW32/bin/mingw32-make.exe'
cd /c/openssl-1.0.0d-mgw cd /c/openssl-1.0.0e-mgw
./config ./config
make make
@ -86,5 +80,5 @@ Bitcoin
------- -------
DOS prompt: DOS prompt:
cd \bitcoin\src cd \bitcoin\src
mingw32-make bitcoind.exe -f makefile.mingw mingw32-make -f makefile.mingw
strip bitcoind.exe strip bitcoind.exe

96
doc/release-process.txt

@ -10,45 +10,68 @@
* tag version in git * tag version in git
$ git tag -a v0.5.0 git tag -a v0.5.0
* write release notes. git shortlog helps a lot: * write release notes. git shortlog helps a lot:
$ git shortlog --no-merges v0.4.0.. git shortlog --no-merges v0.4.0..
* create source-only archive * create source-only archive
$ git archive --format=tar --prefix=bitcoin-0.5.0/ HEAD | \ git archive --format=tar --prefix=bitcoin-0.5.0/ HEAD | \
gzip -9c > ~/tmp/bitcoin-0.5.0-src.tar.gz gzip -9c > ~/tmp/bitcoin-0.5.0-src.tar.gz
* perform gitian builds * perform gitian builds
* From a directory containing the bitcoin source, gitian-builder and gitian.sigs * From a directory containing the bitcoin source, gitian-builder and gitian.sigs
$ export VERSION=0.5.0 export VERSION=0.5.0
$ cd ./gitian-builder cd ./gitian-builder
$ ./bin/gbuild --commit bitcoin=v$VERSION ../bitcoin/contrib/gitian-descriptors/gitian.yml
$ ./bin/gsign --signer (your gitian key, ie bluematt, sipa, etc) --release $VERSION --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian.yml * Fetch and build inputs:
$ cd build/out mkdir -p inputs; cd inputs/
$ zip bitcoin-$VERSION-linux-gitian.zip * wget 'http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.6.tar.gz' -O miniupnpc-1.6.tar.gz
$ mv bitcoin-$VERSION-linux-gitian.zip ../../ wget 'http://www.openssl.org/source/openssl-1.0.0e.tar.gz'
wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz'
* NOTE: gitian cross-compiled builds for Windows is broken, we are building wget 'http://downloads.sourceforge.net/project/boost/boost/1.47.0/boost_1_47_0.tar.bz2'
Windows binaries using a public Amazon AWS instance for this release. wget 'http://download.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.4.tar.gz'
cd ..
./bin/gbuild ../bitcoin/contrib/gitian-descriptors/boost-win32.yml
cp build/out/boost-win32-1.47.0-gitian.zip inputs/
./bin/gbuild ../bitcoin/contrib/gitian-descriptors/qt-win32.yml
cp build/out/qt-win32-4.7.4-gitian.zip inputs/
* Build bitcoind and bitcoin-qt on Linux32, Linux64, and Win32:
./bin/gbuild --commit bitcoin=v$VERSION ../bitcoin/contrib/gitian-descriptors/gitian.yml
./bin/gsign --signer (your gitian key, ie bluematt, sipa, etc) --release $VERSION --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian.yml
cd build/out
zip bitcoin-$VERSION-linux-gitian.zip *
mv bitcoin-$VERSION-linux-gitian.zip ../../
./bin/gbuild --commit bitcoin=v$VERSION ../bitcoin/contrib/gitian-descriptors/gitian-win32.yml
./bin/gsign --signer (your gitian key, ie bluematt, sipa, etc) --release $VERSION-win32 --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-win32.yml
cd build/out
zip bitcoin-$VERSION-win32-gitian.zip *
mv bitcoin-$VERSION-win32-gitian.zip ../../
Build output expected: Build output expected:
1. linux 32-bit and 64-bit binaries + source (bitcoin-$VERSION-linux-gitian.zip) 1. linux 32-bit and 64-bit binaries + source (bitcoin-$VERSION-linux-gitian.zip)
2. Gitian signatures (in gitian.sigs/$VERSION[-win32]/(your gitian key)/ 2. windows 32-bit binary, installer + source (bitcoin-$VERSION-win32-gitian.zip)
3. Gitian signatures (in gitian.sigs/$VERSION[-win32]/(your gitian key)/
* repackage gitian builds for release as stand-alone zip/tar/installer exe * repackage gitian builds for release as stand-alone zip/tar/installer exe
* Linux .tar.gz: * Linux .tar.gz:
$ mkdir bitcoin-$VERSION-linux mkdir bitcoin-$VERSION-linux
$ cd bitcoin-$VERSION-linux cd bitcoin-$VERSION-linux
$ unzip bitcoin-$VERSION-linux-gitian.zip unzip bitcoin-$VERSION-linux-gitian.zip
$ cd ..; tar czvf bitcoin-$VERSION-linux.tar.gz bitcoin-$VERSION-linux cd ..; tar czvf bitcoin-$VERSION-linux.tar.gz bitcoin-$VERSION-linux
* Windows .zip and setup.exe:
mkdir bitcoin-$VERSION-win32
cd bitcoin-$VERSION-win32
unzip bitcoin-$VERSION-win32-gitian.zip
mv bitcoin-$VERSION-win32-setup.exe ..
cd ..; zip bitcoin-$VERSION-win32.zip bitcoin-$VERSION-win32
* Compile Windows .zip and setup.exe on Amazon EC2 instance
TODO: document process
* perform Mac build * perform Mac build
TODO: document process TODO: document process
@ -70,17 +93,28 @@
* Collect enough gitian signatures to meet minimum_weight (see contrib/gitian-downloader/*-download-config) * Collect enough gitian signatures to meet minimum_weight (see contrib/gitian-downloader/*-download-config)
* From a directory containing bitcoin source, gitian.sigs and gitian zips * From a directory containing bitcoin source, gitian.sigs and gitian zips
$ export VERSION=0.5.0 export VERSION=0.5.0
$ mkdir bitcoin-$VERSION-linux-gitian; cd bitcoin-$VERSION-linux-gitian mkdir bitcoin-$VERSION-linux-gitian; cd bitcoin-$VERSION-linux-gitian
$ unzip ../bitcoin-$VERSION-linux-gitian.zip unzip ../bitcoin-$VERSION-linux-gitian.zip
$ mkdir gitian mkdir gitian
$ cp ../bitcoin/contrib/gitian-downloader/*.pgp ./gitian/ cp ../bitcoin/contrib/gitian-downloader/*.pgp ./gitian/
$ for file in `ls ../gitian.sigs/$VERSION/`; do for file in `ls ../gitian.sigs/$VERSION/`; do
$ cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert ./gitian/$file-build.assert cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert ./gitian/$file-build.assert
$ cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert.sig ./gitian/$file-build.assert.sig cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert.sig ./gitian/$file-build.assert.sig
$ done done
$ zip bitcoin-$VERSION-linux-gitian.zip * zip bitcoin-$VERSION-linux-gitian.zip *
$ cp bitcoin-$VERSION-linux-gitian.zip ../ cp bitcoin-$VERSION-linux-gitian.zip ../
cd ..
mkdir bitcoin-$VERSION-linux-gitian; cd bitcoin-$VERSION-linux-gitian
unzip ../bitcoin-$VERSION-linux-gitian.zip
mkdir gitian
cp ../bitcoin/contrib/gitian-downloader/*.pgp ./gitian/
for file in `ls ../gitian.sigs/$VERSION/`; do
cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert ./gitian/$file-build.assert
cp ../gitian.sigs/$VERSION/$file/bitcoin-build.assert.sig ./gitian/$file-build.assert.sig
done
zip bitcoin-$VERSION-linux-gitian.zip *
cp bitcoin-$VERSION-linux-gitian.zip ../
* Upload gitian zips to SourceForge * Upload gitian zips to SourceForge

Loading…
Cancel
Save