]> Git Repo - VerusCoin.git/blob - contrib/gitian-descriptors/gitian-linux.yml
Merge pull request #5370
[VerusCoin.git] / contrib / gitian-descriptors / gitian-linux.yml
1 ---
2 name: "bitcoin-linux-0.10"
3 enable_cache: true
4 suites:
5 - "precise"
6 architectures:
7 - "amd64"
8 packages: 
9 - "g++-multilib"
10 - "git-core"
11 - "pkg-config"
12 - "autoconf2.13"
13 - "libtool"
14 - "automake"
15 - "faketime"
16 - "bsdmainutils"
17 - "binutils-gold"
18 reference_datetime: "2013-06-01 00:00:00"
19 remotes:
20 - "url": "https://github.com/bitcoin/bitcoin.git"
21   "dir": "bitcoin"
22 files: []
23 script: |
24   WRAP_DIR=$HOME/wrapped
25   HOSTS="i686-pc-linux-gnu x86_64-unknown-linux-gnu"
26   CONFIGFLAGS="--enable-upnp-default --enable-glibc-back-compat"
27   FAKETIME_HOST_PROGS=""
28   FAKETIME_PROGS="date ar ranlib nm strip"
29
30   export QT_RCC_TEST=1
31   export GZIP="-9n"
32   export TAR_OPTIONS="--mtime="$REFERENCE_DATE\\\ $REFERENCE_TIME""
33   export TZ="UTC"
34   export BUILD_DIR=`pwd`
35   mkdir -p ${WRAP_DIR}
36   if test -n "$GBUILD_CACHE_ENABLED"; then
37     export SOURCES_PATH=${GBUILD_COMMON_CACHE}
38     export BASE_CACHE=${GBUILD_PACKAGE_CACHE}
39     mkdir -p ${BASE_CACHE} ${SOURCES_PATH}
40   fi
41
42   # Create global faketime wrappers
43   for prog in ${FAKETIME_PROGS}; do
44     echo '#!/bin/bash' > ${WRAP_DIR}/${prog}
45     echo "REAL=\`which -a ${prog} | grep -v ${WRAP_DIR}/${prog} | head -1\`" >> ${WRAP_DIR}/${prog}
46     echo 'export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1' >> ${WRAP_DIR}/${prog}
47     echo "export FAKETIME=\"${REFERENCE_DATETIME}\"" >> ${WRAP_DIR}/${prog}
48     echo "\$REAL \$@" >> $WRAP_DIR/${prog}
49     chmod +x ${WRAP_DIR}/${prog}
50   done
51
52   # Create per-host faketime wrappers
53   for i in $HOSTS; do
54     for prog in ${FAKETIME_HOST_PROGS}; do
55         echo '#!/bin/bash' > ${WRAP_DIR}/${i}-${prog}
56         echo "REAL=\`which -a ${i}-${prog} | grep -v ${WRAP_DIR}/${i}-${prog} | head -1\`" >> ${WRAP_DIR}/${i}-${prog}
57         echo 'export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1' >> ${WRAP_DIR}/${i}-${prog}
58         echo "export FAKETIME=\"${REFERENCE_DATETIME}\"" >> ${WRAP_DIR}/${i}-${prog}
59         echo "\$REAL \$@" >> $WRAP_DIR/${i}-${prog}
60         chmod +x ${WRAP_DIR}/${i}-${prog}
61     done
62   done
63   export PATH=${WRAP_DIR}:${PATH}
64
65   cd bitcoin
66   BASEPREFIX=`pwd`/depends
67   # Build dependencies for each host
68   for i in $HOSTS; do
69     make ${MAKEOPTS} -C ${BASEPREFIX} HOST="${i}"
70   done
71
72   # Create the release tarball using (arbitrarily) the first host
73   ./autogen.sh
74   ./configure --prefix=${BASEPREFIX}/`echo "${HOSTS}" | awk '{print $1;}'`
75   make dist
76   DISTNAME=`echo bitcoin-*.tar.gz`
77
78   # Correct tar file order
79   mkdir -p temp
80   pushd temp
81   tar xf ../$DISTNAME
82   find bitcoin-* | sort | tar --no-recursion -c -T - | gzip -9n > ../$DISTNAME
83   popd
84
85   ORIGPATH="$PATH"
86   # Extract the release tarball into a dir for each host and build
87   for i in ${HOSTS}; do
88     export PATH=${BASEPREFIX}/${i}/native/bin:${ORIGPATH}
89     mkdir -p distsrc-${i}
90     cd distsrc-${i}
91     tar --strip-components=1 -xf ../$DISTNAME
92
93     ./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}
94     make ${MAKEOPTS}
95     make install-strip
96     cd ..
97   done
98   mkdir -p $OUTDIR/src
99   mv $DISTNAME $OUTDIR/src
100   mv ${OUTDIR}/x86_64-* ${OUTDIR}/64
101   mv ${OUTDIR}/i686-* ${OUTDIR}/32
102
103   # Delete unwanted stuff
104   find ${OUTDIR} -name "lib*.la" -delete
This page took 0.029921 seconds and 4 git commands to generate.