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 @@ -15,14 +15,8 @@ WINDOWS BUILD NOTES
Compilers Supported
-------------------
MinGW GCC http://tdm-gcc.tdragon.net/
TDM-GCC with gcc 4.5.1 was used to build this release.
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.
TODO: What works?
Note: releases are cross-compiled using mingw running on Linux.
Dependencies
@ -42,7 +36,7 @@ Boost MIT-like license @@ -42,7 +36,7 @@ Boost MIT-like license
miniupnpc New (3-clause) BSD license
Versions used in this release:
OpenSSL 1.0.0d
OpenSSL 1.0.0e
Berkeley DB 4.8.30.NC
Boost 1.47.0
miniupnpc 1.6
@ -54,7 +48,7 @@ MSYS shell: @@ -54,7 +48,7 @@ MSYS shell:
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'
cd /c/openssl-1.0.0d-mgw
cd /c/openssl-1.0.0e-mgw
./config
make
@ -86,5 +80,5 @@ Bitcoin @@ -86,5 +80,5 @@ Bitcoin
-------
DOS prompt:
cd \bitcoin\src
mingw32-make bitcoind.exe -f makefile.mingw
mingw32-make -f makefile.mingw
strip bitcoind.exe

96
doc/release-process.txt

@ -10,45 +10,68 @@ @@ -10,45 +10,68 @@
* tag version in git
$ git tag -a v0.5.0
git tag -a v0.5.0
* 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
$ 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
* perform gitian builds
* From a directory containing the bitcoin source, gitian-builder and gitian.sigs
$ export VERSION=0.5.0
$ 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
$ cd build/out
$ zip bitcoin-$VERSION-linux-gitian.zip *
$ mv bitcoin-$VERSION-linux-gitian.zip ../../
* NOTE: gitian cross-compiled builds for Windows is broken, we are building
Windows binaries using a public Amazon AWS instance for this release.
export VERSION=0.5.0
cd ./gitian-builder
* Fetch and build inputs:
mkdir -p inputs; cd inputs/
wget 'http://miniupnp.free.fr/files/download.php?file=miniupnpc-1.6.tar.gz' -O miniupnpc-1.6.tar.gz
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'
wget 'http://downloads.sourceforge.net/project/boost/boost/1.47.0/boost_1_47_0.tar.bz2'
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:
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
* Linux .tar.gz:
$ mkdir bitcoin-$VERSION-linux
$ cd bitcoin-$VERSION-linux
$ unzip bitcoin-$VERSION-linux-gitian.zip
$ cd ..; tar czvf bitcoin-$VERSION-linux.tar.gz bitcoin-$VERSION-linux
mkdir bitcoin-$VERSION-linux
cd bitcoin-$VERSION-linux
unzip bitcoin-$VERSION-linux-gitian.zip
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
TODO: document process
@ -70,17 +93,28 @@ @@ -70,17 +93,28 @@
* 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
$ export VERSION=0.5.0
$ 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 ../
export VERSION=0.5.0
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 ../
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

Loading…
Cancel
Save