aboutsummaryrefslogtreecommitdiff
path: root/contrib/gitian-descriptors/protobuf-win.yml
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2014-02-06 18:47:19 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2014-02-10 17:07:35 +0100
commit6b55e6b97d333a5252f9516a20414f7204e3363a (patch)
tree973ba961c1af0ad3508f53d2ff966b05a2c8d3c8 /contrib/gitian-descriptors/protobuf-win.yml
parentc43d1e5549f548efd221043bbc8069700ee22183 (diff)
gitian: Post-process .a libraries for win to be deterministic
Diffstat (limited to 'contrib/gitian-descriptors/protobuf-win.yml')
-rw-r--r--contrib/gitian-descriptors/protobuf-win.yml11
1 files changed, 10 insertions, 1 deletions
diff --git a/contrib/gitian-descriptors/protobuf-win.yml b/contrib/gitian-descriptors/protobuf-win.yml
index 11dd50de15..543f20b394 100644
--- a/contrib/gitian-descriptors/protobuf-win.yml
+++ b/contrib/gitian-descriptors/protobuf-win.yml
@@ -17,6 +17,7 @@ script: |
#
export TZ=UTC
INDIR=$HOME/build
+ TEMPDIR=$HOME/tmp
OPTFLAGS="-O2"
# Integrity Check
echo "13bfc5ae543cf3aa180ac2485c0bc89495e3ae711fc6fab4f8ffe90dfb4bb677 protobuf-2.5.0.tar.bz2" | sha256sum -c
@@ -48,9 +49,17 @@ script: |
export FAKETIME=$REFERENCE_DATETIME
make
make install
+ # post-process all generated libraries to be deterministic
+ # extract them to a temporary directory then re-build them deterministically
+ for LIB in $(find $INSTALLPREFIX -name \*.a); do
+ rm -rf $TEMPDIR && mkdir $TEMPDIR && cd $TEMPDIR
+ $HOST-ar xv $LIB | cut -b5- > /tmp/list.txt
+ rm $LIB
+ $HOST-ar crsD $LIB $(cat /tmp/list.txt)
+ done
#
cd $INSTALLPREFIX
- find include lib host | sort | zip -@ $OUTDIR/protobuf-win$BITS-2.5.0-gitian-r4.zip
+ find include lib host | sort | zip -X@ $OUTDIR/protobuf-win$BITS-2.5.0-gitian-r4.zip
unset LD_PRELOAD
unset FAKETIME
done # for BITS in