aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2014-11-26 11:08:48 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2014-11-26 11:15:35 +0100
commitce7204bf2eb78e38d2ac94c6a614eadee25a13a8 (patch)
tree47f24429c5de2ebdec70bdba5bbc759d84cf1ca0
parent91eaedd4ce41f1555269586e45a47296e6614f91 (diff)
parentdfef929bf7770176908164baf79a30285ad3ed74 (diff)
Merge pull request #5371
dfef929 release: update docs to reflect new layout (Cory Fields) 52bb7a7 gitian: update descriptors to use a sane uniform output (Cory Fields)
-rw-r--r--contrib/gitian-descriptors/gitian-linux.yml29
-rw-r--r--contrib/gitian-descriptors/gitian-osx.yml29
-rw-r--r--contrib/gitian-descriptors/gitian-win.yml33
-rw-r--r--doc/release-process.md46
4 files changed, 65 insertions, 72 deletions
diff --git a/contrib/gitian-descriptors/gitian-linux.yml b/contrib/gitian-descriptors/gitian-linux.yml
index b57a04469c..bba2104edb 100644
--- a/contrib/gitian-descriptors/gitian-linux.yml
+++ b/contrib/gitian-descriptors/gitian-linux.yml
@@ -73,13 +73,13 @@ script: |
./autogen.sh
./configure --prefix=${BASEPREFIX}/`echo "${HOSTS}" | awk '{print $1;}'`
make dist
- DISTNAME=`echo bitcoin-*.tar.gz`
-
+ SOURCEDIST=`echo bitcoin-*.tar.gz`
+ DISTNAME=`echo ${SOURCEDIST} | sed 's/.tar.*//'`
# Correct tar file order
mkdir -p temp
pushd temp
- tar xf ../$DISTNAME
- find bitcoin-* | sort | tar --no-recursion -c -T - | gzip -9n > ../$DISTNAME
+ tar xf ../$SOURCEDIST
+ find bitcoin-* | sort | tar --no-recursion -c -T - | gzip -9n > ../$SOURCEDIST
popd
ORIGPATH="$PATH"
@@ -88,17 +88,22 @@ script: |
export PATH=${BASEPREFIX}/${i}/native/bin:${ORIGPATH}
mkdir -p distsrc-${i}
cd distsrc-${i}
- tar --strip-components=1 -xf ../$DISTNAME
+ INSTALLPATH=`pwd`/installed/${DISTNAME}
+ mkdir -p ${INSTALLPATH}
+ tar --strip-components=1 -xf ../$SOURCEDIST
- ./configure --prefix=${BASEPREFIX}/${i} --bindir=${OUTDIR}/${i}/bin --includedir=${OUTDIR}/${i}/include --libdir=${OUTDIR}/${i}/lib --disable-ccache --disable-maintainer-mode --disable-dependency-tracking ${CONFIGFLAGS}
+ ./configure --prefix=${BASEPREFIX}/${i} --bindir=${INSTALLPATH}/bin --includedir=${INSTALLPATH}/include --libdir=${INSTALLPATH}/lib --disable-ccache --disable-maintainer-mode --disable-dependency-tracking ${CONFIGFLAGS}
make ${MAKEOPTS}
make install-strip
- cd ..
+ cd installed
+ find . -name "lib*.la" -delete
+ find . -name "lib*.a" -delete
+ rm -rf ${DISTNAME}/lib/pkgconfig
+ find . | sort | tar --no-recursion -c -T - | gzip -9n > ${OUTDIR}/${DISTNAME}-${i}.tar.gz
+ cd ../../
done
mkdir -p $OUTDIR/src
- mv $DISTNAME $OUTDIR/src
- mv ${OUTDIR}/x86_64-* ${OUTDIR}/64
- mv ${OUTDIR}/i686-* ${OUTDIR}/32
+ mv $SOURCEDIST $OUTDIR/src
+ mv ${OUTDIR}/${DISTNAME}-x86_64-*.tar.gz ${OUTDIR}/${DISTNAME}-linux64.tar.gz
+ mv ${OUTDIR}/${DISTNAME}-i686-*.tar.gz ${OUTDIR}/${DISTNAME}-linux32.tar.gz
- # Delete unwanted stuff
- find ${OUTDIR} -name "lib*.la" -delete
diff --git a/contrib/gitian-descriptors/gitian-osx.yml b/contrib/gitian-descriptors/gitian-osx.yml
index 7ec0700ed3..cbe28e4f34 100644
--- a/contrib/gitian-descriptors/gitian-osx.yml
+++ b/contrib/gitian-descriptors/gitian-osx.yml
@@ -83,13 +83,14 @@ script: |
./autogen.sh
./configure --prefix=${BASEPREFIX}/`echo "${HOSTS}" | awk '{print $1;}'`
make dist
- DISTNAME=`echo bitcoin-*.tar.gz`
+ SOURCEDIST=`echo bitcoin-*.tar.gz`
+ DISTNAME=`echo ${SOURCEDIST} | sed 's/.tar.*//'`
# Correct tar file order
mkdir -p temp
pushd temp
- tar xf ../$DISTNAME
- find bitcoin-* | sort | tar --no-recursion -c -T - | gzip -9n > ../$DISTNAME
+ tar xf ../$SOURCEDIST
+ find bitcoin-* | sort | tar --no-recursion -c -T - | gzip -9n > ../$SOURCEDIST
popd
ORIGPATH="$PATH"
@@ -98,17 +99,23 @@ script: |
export PATH=${BASEPREFIX}/${i}/native/bin:${ORIGPATH}
mkdir -p distsrc-${i}
cd distsrc-${i}
- tar --strip-components=1 -xf ../$DISTNAME
+ INSTALLPATH=`pwd`/installed/${DISTNAME}
+ mkdir -p ${INSTALLPATH}
+ tar --strip-components=1 -xf ../$SOURCEDIST
- ./configure --prefix=${BASEPREFIX}/${i} --bindir=${OUTDIR}/${i}/bin --includedir=${OUTDIR}/${i}/include --libdir=${OUTDIR}/${i}/lib --disable-ccache --disable-maintainer-mode --disable-dependency-tracking ${CONFIGFLAGS}
+ ./configure --prefix=${BASEPREFIX}/${i} --bindir=${INSTALLPATH}/bin --includedir=${INSTALLPATH}/include --libdir=${INSTALLPATH}/lib --disable-ccache --disable-maintainer-mode --disable-dependency-tracking ${CONFIGFLAGS}
make ${MAKEOPTS}
make install-strip
make deploy
- ${WRAP_DIR}/dmg dmg Bitcoin-Qt.dmg ${OUTDIR}/Bitcoin-Qt.dmg
- cd ..
+ ${WRAP_DIR}/dmg dmg Bitcoin-Qt.dmg ${OUTDIR}/${DISTNAME}-osx.dmg
+
+ cd installed
+ find . -name "lib*.la" -delete
+ find . -name "lib*.a" -delete
+ rm -rf ${DISTNAME}/lib/pkgconfig
+ find . | sort | tar --no-recursion -c -T - | gzip -9n > ${OUTDIR}/${DISTNAME}-${i}.tar.gz
+ cd ../../
done
mkdir -p $OUTDIR/src
- mv $DISTNAME $OUTDIR/src
-
- # Delete unwanted stuff
- find ${OUTDIR} -name "lib*.la" -delete
+ mv $SOURCEDIST $OUTDIR/src
+ mv ${OUTDIR}/${DISTNAME}-x86_64-*.tar.gz ${OUTDIR}/${DISTNAME}-osx64.tar.gz
diff --git a/contrib/gitian-descriptors/gitian-win.yml b/contrib/gitian-descriptors/gitian-win.yml
index 172807467a..97c823cde6 100644
--- a/contrib/gitian-descriptors/gitian-win.yml
+++ b/contrib/gitian-descriptors/gitian-win.yml
@@ -17,6 +17,7 @@ packages:
- "mingw-w64"
- "g++-mingw-w64"
- "nsis"
+- "zip"
reference_datetime: "2013-06-01 00:00:00"
remotes:
- "url": "https://github.com/bitcoin/bitcoin.git"
@@ -27,7 +28,7 @@ script: |
HOSTS="x86_64-w64-mingw32 i686-w64-mingw32"
CONFIGFLAGS="--enable-upnp-default"
FAKETIME_HOST_PROGS="g++ ar ranlib nm windres strip"
- FAKETIME_PROGS="date makensis"
+ FAKETIME_PROGS="date makensis zip"
export QT_RCC_TEST=1
export GZIP="-9n"
@@ -75,13 +76,14 @@ script: |
./autogen.sh
./configure --prefix=${BASEPREFIX}/`echo "${HOSTS}" | awk '{print $1;}'`
make dist
- DISTNAME=`echo bitcoin-*.tar.gz`
+ SOURCEDIST=`echo bitcoin-*.tar.gz`
+ DISTNAME=`echo ${SOURCEDIST} | sed 's/.tar.*//'`
# Correct tar file order
mkdir -p temp
pushd temp
- tar xf ../$DISTNAME
- find bitcoin-* | sort | tar --no-recursion -c -T - | gzip -9n > ../$DISTNAME
+ tar xf ../$SOURCEDIST
+ find bitcoin-* | sort | tar --no-recursion -c -T - | gzip -9n > ../$SOURCEDIST
popd
ORIGPATH="$PATH"
@@ -90,19 +92,24 @@ script: |
export PATH=${BASEPREFIX}/${i}/native/bin:${ORIGPATH}
mkdir -p distsrc-${i}
cd distsrc-${i}
- tar --strip-components=1 -xf ../$DISTNAME
+ INSTALLPATH=`pwd`/installed/${DISTNAME}
+ mkdir -p ${INSTALLPATH}
+ tar --strip-components=1 -xf ../$SOURCEDIST
- ./configure --prefix=${BASEPREFIX}/${i} --bindir=${OUTDIR}/${i}/bin --includedir=${OUTDIR}/${i}/include --libdir=${OUTDIR}/${i}/lib --disable-ccache --disable-maintainer-mode --disable-dependency-tracking ${CONFIGFLAGS}
+ ./configure --prefix=${BASEPREFIX}/${i} --bindir=${INSTALLPATH}/bin --includedir=${INSTALLPATH}/include --libdir=${INSTALLPATH}/lib --disable-ccache --disable-maintainer-mode --disable-dependency-tracking ${CONFIGFLAGS}
make ${MAKEOPTS}
make deploy
make install-strip
cp -f bitcoin-*setup*.exe $OUTDIR/
- cd ..
+ cd installed
+ mv ${DISTNAME}/bin/*.dll ${DISTNAME}/lib/
+ find . -name "lib*.la" -delete
+ find . -name "lib*.a" -delete
+ rm -rf ${DISTNAME}/lib/pkgconfig
+ find . -type f | sort | zip -X@ ${OUTDIR}/${DISTNAME}-${i}.zip
+ cd ../..
done
mkdir -p $OUTDIR/src
- mv $DISTNAME $OUTDIR/src
- mv ${OUTDIR}/x86_64-* ${OUTDIR}/64
- mv ${OUTDIR}/i686-* ${OUTDIR}/32
-
- # Delete unwanted stuff
- find ${OUTDIR} -name "lib*.la" -delete
+ mv $SOURCEDIST $OUTDIR/src
+ mv ${OUTDIR}/${DISTNAME}-x86_64-*.zip ${OUTDIR}/${DISTNAME}-win64.zip
+ mv ${OUTDIR}/${DISTNAME}-i686-*.zip ${OUTDIR}/${DISTNAME}-win32.zip
diff --git a/doc/release-process.md b/doc/release-process.md
index c6a7266ef1..df27c5829c 100644
--- a/doc/release-process.md
+++ b/doc/release-process.md
@@ -54,48 +54,22 @@ Release Process
./bin/gbuild --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-linux.yml
./bin/gsign --signer $SIGNER --release ${VERSION}-linux --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-linux.yml
- pushd build/out
- zip -r bitcoin-${VERSION}-linux-gitian.zip *
- mv bitcoin-${VERSION}-linux-gitian.zip ../../../
- popd
+ mv build/out/bitcoin-*.tar.gz build/out/src/bitcoin-*.tar.gz ../
./bin/gbuild --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-win.yml
./bin/gsign --signer $SIGNER --release ${VERSION}-win --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-win.yml
- pushd build/out
- zip -r bitcoin-${VERSION}-win-gitian.zip *
- mv bitcoin-${VERSION}-win-gitian.zip ../../../
- popd
- ./bin/gbuild --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
- ./bin/gsign --signer $SIGNER --release ${VERSION}-osx --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
- pushd build/out
- mv Bitcoin-Qt.dmg ../../../
- popd
+ mv build/out/bitcoin-*.zip build/out/bitcoin-*.exe ../
+ ./bin/gbuild --commit bitcoin=v${VERSION} ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
+ ./bin/gsign --signer $SIGNER --release ${VERSION}-osx --destination ../gitian.sigs/ ../bitcoin/contrib/gitian-descriptors/gitian-osx.yml
+ mv build/out/bitcoin-*.tar.gz build/out/bitcoin-*.dmg ../
popd
Build output expected:
- 1. linux 32-bit and 64-bit binaries + source (bitcoin-${VERSION}-linux-gitian.zip)
- 2. windows 32-bit and 64-bit binaries + installer + source (bitcoin-${VERSION}-win-gitian.zip)
- 3. OSX installer (Bitcoin-Qt.dmg)
- 4. Gitian signatures (in gitian.sigs/${VERSION}-<linux|win|osx>/(your gitian key)/
-
-repackage gitian builds for release as stand-alone zip/tar/installer exe
-
-**Linux .tar.gz:**
-
- unzip bitcoin-${VERSION}-linux-gitian.zip -d bitcoin-${VERSION}-linux
- tar czvf bitcoin-${VERSION}-linux.tar.gz bitcoin-${VERSION}-linux
- rm -rf bitcoin-${VERSION}-linux
-
-**Windows .zip and setup.exe:**
-
- unzip bitcoin-${VERSION}-win-gitian.zip -d bitcoin-${VERSION}-win
- mv bitcoin-${VERSION}-win/bitcoin-*-setup.exe .
- zip -r bitcoin-${VERSION}-win.zip bitcoin-${VERSION}-win
- rm -rf bitcoin-${VERSION}-win
-
-**Mac OS X .dmg:**
-
- mv Bitcoin-Qt.dmg bitcoin-${VERSION}-osx.dmg
+ 1. source tarball (bitcoin-${VERSION}.tar.gz)
+ 2. linux 32-bit and 64-bit binaries dist tarballs (bitcoin-${VERSION}-linux[32|64].tar.gz)
+ 3. windows 32-bit and 64-bit installers and dist zips (bitcoin-${VERSION}-win[32|64]-setup.exe, bitcoin-${VERSION}-win[32|64].zip)
+ 4. OSX installer (bitcoin-${VERSION}-osx.dmg)
+ 5. Gitian signatures (in gitian.sigs/${VERSION}-<linux|win|osx>/(your gitian key)/
###Next steps: