From 3d0a0a9b9e84da32454d24a7828c385b6d11fcae Mon Sep 17 00:00:00 2001 From: Matt Corallo Date: Wed, 22 Feb 2012 22:09:06 -0500 Subject: [PATCH] Make deps build deterministic and upgrade to libpng 1.5.9. --- contrib/gitian-descriptors/deps-win32.yml | 24 +++++++++++++++------ contrib/gitian-descriptors/gitian-win32.yml | 4 ++-- doc/release-process.txt | 2 +- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/contrib/gitian-descriptors/deps-win32.yml b/contrib/gitian-descriptors/deps-win32.yml index 0107b306eca..776a8da00ad 100644 --- a/contrib/gitian-descriptors/deps-win32.yml +++ b/contrib/gitian-descriptors/deps-win32.yml @@ -7,7 +7,7 @@ architectures: packages: - "mingw32" - "git-core" -- "unzip" +- "zip" - "faketime" - "wine" reference_datetime: "2011-01-30 00:00:00" @@ -17,9 +17,13 @@ files: - "db-4.8.30.NC.tar.gz" - "miniupnpc-1.6.tar.gz" - "zlib-1.2.6.tar.gz" -- "libpng-1.5.8.tar.gz" +- "libpng-1.5.9.tar.gz" - "qrencode-3.2.0.tar.bz2" script: | + # + export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1 + export FAKETIME=$REFERENCE_DATETIME + export TZ=UTC # tar xzf openssl-1.0.0e.tar.gz cd openssl-1.0.0e @@ -46,16 +50,22 @@ script: | make -f win32/Makefile.gcc PREFIX=i586-mingw32msvc- $MAKEOPTS cd .. # - tar xzf libpng-1.5.8.tar.gz - cd libpng-1.5.8 - ./configure CC=i586-mingw32msvc-cc AR=i586-mingw32msvc-ar STRIP=i586-mingw32msvc-strip RANLIB=i586-mingw32msvc-ranlib OBJDUMP=i586-mingw32msvc-objdump LD=i586-mingw32msvc-ld LDFLAGS="-L../zlib-1.2.6/" CFLAGS="-I../zlib-1.2.6/" + tar xzf libpng-1.5.9.tar.gz + cd libpng-1.5.9 + ./configure -disable-shared CC=i586-mingw32msvc-cc AR=i586-mingw32msvc-ar STRIP=i586-mingw32msvc-strip RANLIB=i586-mingw32msvc-ranlib OBJDUMP=i586-mingw32msvc-objdump LD=i586-mingw32msvc-ld LDFLAGS="-L../zlib-1.2.6/" CFLAGS="-I../zlib-1.2.6/" make $MAKEOPTS cd .. # tar xjf qrencode-3.2.0.tar.bz2 cd qrencode-3.2.0 - ./configure CC=i586-mingw32msvc-cc AR=i586-mingw32msvc-ar STRIP=i586-mingw32msvc-strip RANLIB=i586-mingw32msvc-ranlib OBJDUMP=i586-mingw32msvc-objdump LD=i586-mingw32msvc-ld png_LIBS="../libpng-1.5.8/.libs/libpng15.a ../zlib-1.2.6/libz.a" png_CFLAGS="-I../libpng-1.5.8" + ./configure CC=i586-mingw32msvc-cc AR=i586-mingw32msvc-ar STRIP=i586-mingw32msvc-strip RANLIB=i586-mingw32msvc-ranlib OBJDUMP=i586-mingw32msvc-objdump LD=i586-mingw32msvc-ld png_LIBS="../libpng-1.5.9/.libs/libpng15.a ../zlib-1.2.6/libz.a" png_CFLAGS="-I../libpng-1.5.9" make $MAKEOPTS cd .. # - tar cjvpf "$OUTDIR/bitcoin-deps-0.0.1.tbz2" "$HOME/build" + zip -r $OUTDIR/bitcoin-deps-0.0.3.zip \ + $(ls qrencode-*/{qrencode.h,.libs/libqrencode.{,l}a} | sort) \ + $(ls db-*/build_unix/{libdb_cxx.a,db.h,db_cxx.h,libdb.a,.libs/libdb_cxx-?.?.a} | sort) \ + $(find openssl-* -name '*.a' -o -name '*.h' | sort) \ + $(find miniupnpc -name '*.h' -o -name 'libminiupnpc.a' | sort) + # Kill wine processes as gitian won't figure out we are done otherwise + killall wineserver services.exe explorer.exe winedevice.exe diff --git a/contrib/gitian-descriptors/gitian-win32.yml b/contrib/gitian-descriptors/gitian-win32.yml index 683eed3528a..9e372c716b8 100644 --- a/contrib/gitian-descriptors/gitian-win32.yml +++ b/contrib/gitian-descriptors/gitian-win32.yml @@ -17,7 +17,7 @@ remotes: files: - "qt-win32-4.7.4-gitian.zip" - "boost-win32-1.47.0-gitian.zip" -- "bitcoin-deps-0.0.1.tbz2" +- "bitcoin-deps-0.0.3.zip" script: | # mkdir $HOME/qt @@ -39,7 +39,7 @@ script: | mv include/boost . cd .. # - tar -C / -xjvpf bitcoin-deps-0.0.1.tbz2 + unzip bitcoin-deps-0.0.3.zip # find -type f | xargs touch --date="$REFERENCE_DATETIME" # diff --git a/doc/release-process.txt b/doc/release-process.txt index 8adf50db131..841edbda6d2 100644 --- a/doc/release-process.txt +++ b/doc/release-process.txt @@ -27,7 +27,7 @@ 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://zlib.net/zlib-1.2.6.tar.gz' - wget 'ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.5.8.tar.gz' + wget 'ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.5.9.tar.gz' wget 'http://fukuchi.org/works/qrencode/qrencode-3.2.0.tar.bz2' 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'