24
24
script : |
25
25
STAGING="$HOME/install"
26
26
OPTFLAGS='-O2'
27
+ export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1
28
+ export FAKETIME=$REFERENCE_DATETIME
29
+ export TZ=UTC
27
30
export LIBRARY_PATH="$STAGING/lib"
28
31
# Integrity Check
29
32
echo "f74f15e8c8ff11aa3d5bb5f276d202ec18d7246e95f961db76054199c69c1ae3 openssl-1.0.1e.tar.gz" | sha256sum -c
@@ -37,6 +40,7 @@ script: |
37
40
cd openssl-1.0.1e
38
41
# need -fPIC to avoid relocation error in 64 bit builds
39
42
./config no-shared no-zlib no-dso no-krb5 --openssldir=$STAGING -fPIC
43
+ # need to build OpenSSL with faketime because a timestamp is embedded into cversion.o
40
44
make
41
45
make install_sw
42
46
cd ..
@@ -48,28 +52,38 @@ script: |
48
52
rm -f $STAGING/lib/libminiupnpc.so* # no way to skip shared lib build
49
53
cd ..
50
54
#
51
- tar xjfm qrencode-3.4.3.tar.bz2
55
+ tar xjf qrencode-3.4.3.tar.bz2
52
56
cd qrencode-3.4.3
57
+ unset FAKETIME # unset fake time during configure, as it does some clock sanity tests
53
58
# need --with-pic to avoid relocation error in 64 bit builds
54
- ./configure --prefix=$STAGING --enable-static --disable-shared --with-pic --without-tools --disable-maintainer-mode --disable-dependency-tracking
59
+ ./configure --prefix=$STAGING --enable-static --disable-shared --with-pic --without-tools --disable-dependency-tracking --without-zlib
60
+ # Workaround to prevent re-configuring by make; make all files have a date in the past
61
+ find . -print0 | xargs -r0 touch -t 200001010000
62
+ export FAKETIME=$REFERENCE_DATETIME
55
63
make $MAKEOPTS install
56
64
cd ..
57
65
#
58
- tar xjfm protobuf-2.5.0.tar.bz2
66
+ tar xjf protobuf-2.5.0.tar.bz2
59
67
cd protobuf-2.5.0
60
68
mkdir -p $STAGING/host/bin
69
+ unset FAKETIME # unset fake time during configure, as it does some clock sanity tests
61
70
# need --with-pic to avoid relocation error in 64 bit builds
62
71
./configure --prefix=$STAGING --bindir=$STAGING/host/bin --enable-static --disable-shared --with-pic
72
+ # Workaround to prevent re-configuring by make; make all files have a date in the past
73
+ find . -print0 | xargs -r0 touch -t 200001010000
74
+ export FAKETIME=$REFERENCE_DATETIME
63
75
make $MAKEOPTS install
64
76
cd ..
65
77
#
66
78
tar xzf db-4.8.30.NC.tar.gz
67
79
cd db-4.8.30.NC/build_unix
68
80
# need --with-pic to avoid relocation error in 64 bit builds
69
81
../dist/configure --prefix=$STAGING --enable-cxx --disable-shared --with-pic
82
+ # Workaround to prevent re-configuring by make; make all files have a date in the past
83
+ find . -print0 | xargs -r0 touch -t 200001010000
70
84
make $MAKEOPTS library_build
71
85
make install_lib install_include
72
86
cd ../..
73
87
#
74
88
cd $STAGING
75
- zip -r $OUTDIR/bitcoin-deps-linux${GBUILD_BITS}-gitian-r2 .zip include lib bin host
89
+ find include lib bin host -type f | sort | zip -X@ $OUTDIR/bitcoin-deps-linux${GBUILD_BITS}-gitian-r3 .zip
0 commit comments