[tor-commits] [tor-browser-bundle/master] Bug 10120: Part 4: Refactor PT descriptors.

gk at torproject.org gk at torproject.org
Thu May 22 10:15:53 UTC 2014


commit 90d598f9dcd0758fd9c72f4b30286982017dd18d
Author: Georg Koppen <gk at torproject.org>
Date:   Thu May 22 12:06:04 2014 +0000

    Bug 10120: Part 4: Refactor PT descriptors.
    
    We build GMP separately and preserve it now as well. Apart from that
    we use the already built OpenSSL in the PT descriptors and leave other
    requirements for PTs alone: the overhead building them every time is
    not that high and they might be changing more often than the other
    utilities we preserve.
    
    Additionally, the descriptors got cleaned-up a bit.
---
 .../linux/gitian-pluggable-transports.yml          |   81 +++++-----
 gitian/descriptors/linux/gitian-tor.yml            |   11 +-
 gitian/descriptors/linux/gitian-utils.yml          |   20 ++-
 .../mac/gitian-pluggable-transports.yml            |  111 +++++++-------
 gitian/descriptors/mac/gitian-tor.yml              |    1 +
 gitian/descriptors/mac/gitian-utils.yml            |   13 ++
 .../windows/gitian-pluggable-transports.yml        |  154 ++++++++++----------
 gitian/descriptors/windows/gitian-tor.yml          |    8 +-
 gitian/descriptors/windows/gitian-utils.yml        |   12 +-
 gitian/mkbundle-linux.sh                           |    8 +-
 gitian/mkbundle-mac.sh                             |    5 +-
 gitian/mkbundle-windows.sh                         |    5 +-
 12 files changed, 231 insertions(+), 198 deletions(-)

diff --git a/gitian/descriptors/linux/gitian-pluggable-transports.yml b/gitian/descriptors/linux/gitian-pluggable-transports.yml
index eb9ca16..b2d57c0 100644
--- a/gitian/descriptors/linux/gitian-pluggable-transports.yml
+++ b/gitian/descriptors/linux/gitian-pluggable-transports.yml
@@ -5,7 +5,7 @@ suites:
 architectures:
 - "i386"
 - "amd64"
-packages: 
+packages:
 - "git-core"
 - "unzip"
 - "zip"
@@ -30,8 +30,6 @@ remotes:
 - "url": "https://github.com/habnabit/txsocksx.git"
   "dir": "txsocksx"
 files:
-- "openssl.tar.gz"
-- "gmp.tar.bz2"
 - "pycrypto.tar.gz"
 - "argparse.tar.gz"
 - "pyyaml.tar.gz"
@@ -40,77 +38,81 @@ files:
 - "m2crypto.tar.gz"
 - "parsley.tar.gz"
 - "dzip.sh"
+- "gmp-linux32-utils.zip"
+- "gmp-linux64-utils.zip"
+- "openssl-linux32-utils.zip"
+- "openssl-linux64-utils.zip"
 script: |
   INSTDIR="$HOME/install"
   PTDIR="$INSTDIR/Tor/PluggableTransports"
-  export LIBRARY_PATH="$INSTDIR/lib"
+  mkdir -p $PTDIR
+  mkdir -p $INSTDIR/Debug/
   export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1
   export FAKETIME=$REFERENCE_DATETIME
   export TZ=UTC
   export LC_ALL=C
   export PYTHON=python2
   umask 0022
-  #
+
   # Config options for hardening-wrapper
   export DEB_BUILD_HARDENING=1
   export DEB_BUILD_HARDENING_STACKPROTECTOR=1
   export DEB_BUILD_HARDENING_FORTIFY=1
   export DEB_BUILD_HARDENING_FORMAT=1
   export DEB_BUILD_HARDENING_PIE=1
-  #
-  mkdir -p $PTDIR
-  mkdir -p $INSTDIR/Debug/
-  #
-  tar xvf gmp.tar.bz2
-  cd gmp-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  ./configure --prefix=$INSTDIR/gmp --disable-static --enable-shared --enable-cxx
-  make
-  make install
-  cp -an $INSTDIR/gmp/lib/*.so* $INSTDIR/Tor
-  cd ..
-  #
+
+  unzip -d $INSTDIR gmp-linux$GBUILD_BITS-utils.zip
+  unzip -d $INSTDIR openssl-linux$GBUILD_BITS-utils.zip
+  cp $INSTDIR/gmp/lib/*.so* $INSTDIR/Tor
+
+  # Building pyptlib
   cd pyptlib
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   $PYTHON setup.py build --build-lib build
   cp -a build/pyptlib $PTDIR/
   cd ..
-  #
+
+  # Building PyCrypto
   tar xzf pycrypto.tar.gz
   cd pycrypto-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   $PYTHON setup.py build --build-lib build
   cp -a build/Crypto $PTDIR/
   cd ..
-  #
+
+  # Building argparse
   tar xzf argparse.tar.gz
   cd argparse-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   $PYTHON setup.py build --build-lib build
   cp -a build/argparse.py $PTDIR/
   cd ..
-  #
+
+  # Building Zope interfaces
   unzip zope.interface.zip
   cd zope.interface-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   $PYTHON setup.py build --build-lib build
   cp -a build/zope $PTDIR/
   cd ..
-  #
+
+  # Building PyYAML
   tar xzf pyyaml.tar.gz
   cd PyYAML-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   $PYTHON setup.py build --build-lib build
   cp -a build/yaml $PTDIR/
   cd ..
-  #
+
+  # Building Twisted
   tar xjf twisted.tar.bz2
   cd Twisted-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   $PYTHON setup.py build --build-lib build
   cp -a build/twisted $PTDIR/
   cd ..
-  #
+
+  # Building Parsley
   tar xzf parsley.tar.gz
   cd Parsley-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -119,7 +121,8 @@ script: |
   cp -a build/ometa $PTDIR/
   cp -a build/terml $PTDIR/
   cd ..
-  #
+
+  # Building txsocksx
   cd txsocksx
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   # Let's pretend we have the setup dependency already as we don't want to get
@@ -130,7 +133,8 @@ script: |
   $PYTHON setup.py build --build-lib build
   cp -a build/txsocksx $PTDIR/
   cd ..
-  #
+
+  # Building obfsproxy
   cd obfsproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   $PYTHON setup.py build --build-lib build
@@ -139,16 +143,8 @@ script: |
   mkdir -p $INSTDIR/Docs/Obfsproxy
   cp -a {LICENSE,README} $INSTDIR/Docs/Obfsproxy
   cd ..
-  #
-  tar xzf openssl.tar.gz
-  cd openssl-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  #./Configure -shared --prefix=$INSTDIR/openssl linux-elf
-  ./config -shared --prefix=$INSTDIR/openssl
-  make
-  make install
-  cd ..
-  #
+
+  # Building M2Crypto
   tar xzf m2crypto.tar.gz
   cd M2Crypto-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -156,7 +152,8 @@ script: |
   $PYTHON setup.py build --build-lib build
   cp -a build/M2Crypto $PTDIR/
   cd ..
-  #
+
+  # Building flashproxy
   cd flashproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   make dist DISTNAME=flashproxy-client
@@ -164,7 +161,8 @@ script: |
   mkdir -p $INSTDIR/Docs/FlashProxy
   cp -a {doc/*,README,LICENSE,ChangeLog} $INSTDIR/Docs/FlashProxy
   cd ..
-  #
+
+  # Building libfte
   cd libfte
   ln -s $INSTDIR/gmp thirdparty/gmp
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -174,7 +172,8 @@ script: |
   cp -a {LICENSE,README.md} $INSTDIR/Docs/libfte
   cp -a thirdparty/re2/LICENSE $INSTDIR/Docs/libfte/LICENSE.re2
   cd ..
-  #
+
+  # Building fteproxy
   cd fteproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   cp -a bin/fteproxy $PTDIR/fteproxy.bin
@@ -182,9 +181,9 @@ script: |
   mkdir -p $INSTDIR/Docs/fteproxy
   cp -a {COPYING,README.md} $INSTDIR/Docs/fteproxy
   cd ..
-  #
+
+  # Grabbing the results
   cd $INSTDIR
-  #
   ~/build/dzip.sh pluggable-transports-linux$GBUILD_BITS-gbuilt.zip Tor/ Docs/
   ~/build/dzip.sh pluggable-transports-linux$GBUILD_BITS-debug.zip Debug/
   cp pluggable-transports-linux$GBUILD_BITS-gbuilt.zip $OUTDIR/
diff --git a/gitian/descriptors/linux/gitian-tor.yml b/gitian/descriptors/linux/gitian-tor.yml
index 44c2b1f..4a8f08e 100644
--- a/gitian/descriptors/linux/gitian-tor.yml
+++ b/gitian/descriptors/linux/gitian-tor.yml
@@ -44,14 +44,14 @@ script: |
   export TZ=UTC
   export LC_ALL=C
   umask 0022
-  #
+
   # Config options for hardening-wrapper
   export DEB_BUILD_HARDENING=1
   export DEB_BUILD_HARDENING_STACKPROTECTOR=1
   export DEB_BUILD_HARDENING_FORTIFY=1
   export DEB_BUILD_HARDENING_FORMAT=1
   export DEB_BUILD_HARDENING_PIE=1
-  #
+
   mkdir -p $INSTDIR/Data/Tor/
   mkdir -p $INSTDIR/Tor/
   mkdir -p $INSTDIR/Debug/Tor/
@@ -60,9 +60,9 @@ script: |
   cp $INSTDIR/openssl/lib/libssl.so.1.0.0 $INSTDIR/Tor/
   cp $INSTDIR/openssl/lib/libcrypto.so.1.0.0 $INSTDIR/Tor/
   cp $INSTDIR/libevent/lib/libevent-2.0.so.5 $INSTDIR/Tor/
-  #
   chmod 700 $INSTDIR/Tor/*so*
-  #
+
+  # Building tor
   cd tor
   git update-index --refresh -q
   export GIT_COMMITTER_NAME="nobody"
@@ -106,7 +106,8 @@ script: |
     strip $INSTDIR/Tor/$LIB
     objcopy --add-gnu-debuglink=./Debug/Tor/$LIB $INSTDIR/Tor/$LIB
   done
-  #
+
+  # Grabbing the results
   ~/build/dzip.sh tor-linux$GBUILD_BITS-gbuilt.zip Data/ Tor/
   ~/build/dzip.sh tor-linux$GBUILD_BITS-debug.zip Debug/
   cp tor-linux$GBUILD_BITS-gbuilt.zip $OUTDIR/
diff --git a/gitian/descriptors/linux/gitian-utils.yml b/gitian/descriptors/linux/gitian-utils.yml
index 9bbae76..34b1672 100644
--- a/gitian/descriptors/linux/gitian-utils.yml
+++ b/gitian/descriptors/linux/gitian-utils.yml
@@ -25,11 +25,12 @@ remotes:
 - "url": "https://github.com/libevent/libevent.git"
   "dir": "libevent"
 files:
-- "versions"
-- "dzip.sh"
 - "openssl.tar.gz"
 - "python.tar.bz2"
 - "lxml.tar.gz"
+- "gmp.tar.bz2"
+- "versions"
+- "dzip.sh"
 script: |
   INSTDIR="$HOME/install"
   source versions
@@ -38,7 +39,7 @@ script: |
   export TZ=UTC
   export LC_ALL=C
   umask 0022
-  #
+
   # Config options for hardening-wrapper
   export DEB_BUILD_HARDENING=1
   export DEB_BUILD_HARDENING_STACKPROTECTOR=1
@@ -80,7 +81,7 @@ script: |
   make $MAKEOPTS altinstall prefix=$INSTDIR/python exec-prefix=$INSTDIR/python
   cd ..
 
-  # Building the Python lxml module
+  # Building lxml
   tar xzf lxml.tar.gz
   cd lxml-*
   # Make sure we use our freshly built python binary here. Otherwise bad things
@@ -92,10 +93,19 @@ script: |
   cp *utils.zip $OUTDIR
   cd ../../../
 
+  # Building GMP
+  tar xjf gmp.tar.bz2
+  cd gmp-*
+  find -type f | xargs touch --date="$REFERENCE_DATETIME"
+  ./configure --prefix=$INSTDIR/gmp --disable-static --enable-shared --enable-cxx
+  make
+  make install
+  cd ..
+
   # Grabbing the remaining results
   cd $INSTDIR
   ~/build/dzip.sh openssl-$OPENSSL_VER-linux$GBUILD_BITS-utils.zip openssl
   ~/build/dzip.sh libevent-${LIBEVENT_TAG#release-}-linux$GBUILD_BITS-utils.zip libevent
   ~/build/dzip.sh python-$PYTHON_VER-linux$GBUILD_BITS-utils.zip python
-
+  ~/build/dzip.sh gmp-$GMP_VER-linux$GBUILD_BITS-utils.zip gmp
   cp *utils.zip $OUTDIR/
diff --git a/gitian/descriptors/mac/gitian-pluggable-transports.yml b/gitian/descriptors/mac/gitian-pluggable-transports.yml
index 48521d8..52dd403 100644
--- a/gitian/descriptors/mac/gitian-pluggable-transports.yml
+++ b/gitian/descriptors/mac/gitian-pluggable-transports.yml
@@ -4,7 +4,7 @@ suites:
 - "precise"
 architectures:
 - "i386"
-packages: 
+packages:
 - "git-core"
 - "unzip"
 - "zip"
@@ -14,7 +14,6 @@ packages:
 - "python-dev"
 - "faketime"
 - "libtool"
-#- "libssl0.9.8"
 reference_datetime: "2000-01-01 00:00:00"
 remotes:
 - "url": "https://git.torproject.org/pluggable-transports/pyptlib.git"
@@ -30,8 +29,6 @@ remotes:
 - "url": "https://github.com/habnabit/txsocksx.git"
   "dir": "txsocksx"
 files:
-- "openssl.tar.gz"
-- "gmp.tar.bz2"
 - "pycrypto.tar.gz"
 - "argparse.tar.gz"
 - "pyyaml.tar.gz"
@@ -42,56 +39,45 @@ files:
 - "apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb"
 - "multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz"
 - "dzip.sh"
-#- "apple-x86-gcc_4.2.1~5646.1flosoft2_i386.deb"
-#- "apple-x86-odcctools_758.159-0flosoft11_i386.deb"
+- "gmp-mac32-utils.zip"
+- "openssl-mac32-utils.zip"
 script: |
   INSTDIR="$HOME/install"
   PTDIR="$INSTDIR/TorBrowserBundle.app/Tor/PluggableTransports"
-  export LIBRARY_PATH="$INSTDIR/lib"
   export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1
   export FAKETIME=$REFERENCE_DATETIME
   export TZ=UTC
   export LC_ALL=C
   umask 0022
   #
-  #export CFLAGS="-isysroot /usr/lib/apple/SDKs/MacOSX10.6.sdk/"
-  #export CXXFLAGS=$CFLAGS
-  #export LDFLAGS=$CFLAGS
-  export PATH="$PATH:/usr/apple-osx/bin/"
-  export AR=/usr/apple-osx/bin/i686-apple-darwin11-ar
-  export CC=/usr/apple-osx/bin/i686-apple-darwin11-gcc
-  export CXX=/usr/apple-osx/bin/i686-apple-darwin11-g++
-  # http://bugs.python.org/issue9437
-  export LDSHARED="$CC -pthread -shared"
-  export CFLAGS="-I/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/include/ -I/usr/lib/gcc/i686-apple-darwin10/4.2.1/include/ -I.  -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -F/usr/lib/apple/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.5 -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/i686-apple-darwin10/4.2.1 -I$INSTDIR/gmp/include -L$INSTDIR/gmp/lib"
-  export CXXFLAGS="-I/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/include/ -I/usr/lib/gcc/i686-apple-darwin10/4.2.1/include/ -I.  -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -F/usr/lib/apple/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.5 -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/i686-apple-darwin10/4.2.1 -I$INSTDIR/gmp/include -L$INSTDIR/gmp/lib"
-  export LDFLAGS="-L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -F/usr/lib/apple/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.5"
-  #
   mkdir -p $PTDIR/
   mkdir -p $OUTDIR/
   #
   sudo dpkg -i *.deb
-  cd /usr
-  sudo tar -Jxvf /home/ubuntu/build/multiarch-darwin*tar.xz
-  cd ~/build
-  # For OpenSSL
-  sudo ln -s /usr/apple-osx/bin/apple-osx-gcc /usr/apple-osx/bin/i686-apple-darwin11-cc
-  #
-  tar xvf gmp.tar.bz2
-  cd gmp-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  ./configure --host=i686-apple-darwin11 --prefix=$INSTDIR/gmp --disable-static --enable-shared --enable-cxx
-  make
-  make install
+  tar xaf multiarch-darwin*tar.xz
+  export PATH="$PATH:$HOME/build/apple-osx/bin/"
+  unzip -d $INSTDIR gmp-mac32-utils.zip
+  unzip -d $INSTDIR openssl-mac32-utils.zip
   cp $INSTDIR/gmp/lib/*dylib* $INSTDIR/TorBrowserBundle.app/Tor/
-  cd ..
   #
+  export AR=$HOME/build/apple-osx/bin/i686-apple-darwin11-ar
+  export CC=$HOME/build/apple-osx/bin/i686-apple-darwin11-gcc
+  export CXX=$HOME/build/apple-osx/bin/i686-apple-darwin11-g++
+  # http://bugs.python.org/issue9437
+  export LDSHARED="$CC -pthread -shared"
+  # XXX Clean up these flags?
+  export CFLAGS="-I/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/include/ -I/usr/lib/gcc/i686-apple-darwin10/4.2.1/include/ -I.  -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -F/usr/lib/apple/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.5 -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/i686-apple-darwin10/4.2.1 -I$INSTDIR/gmp/include -L$INSTDIR/gmp/lib"
+  export CXXFLAGS="-I/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/include/ -I/usr/lib/gcc/i686-apple-darwin10/4.2.1/include/ -I.  -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -F/usr/lib/apple/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.5 -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/i686-apple-darwin10/4.2.1 -I$INSTDIR/gmp/include -L$INSTDIR/gmp/lib"
+  export LDFLAGS="-L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -F/usr/lib/apple/SDKs/MacOSX10.6.sdk/System/Library/Frameworks -mmacosx-version-min=10.5"
+
+  # Building pyptlib
   cd pyptlib
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   python setup.py build --build-lib build
   cp -a build/pyptlib $PTDIR/
   cd ..
-  #
+
+  # Building PyCrypto
   tar xzf pycrypto.tar.gz
   cd pycrypto-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -101,28 +87,32 @@ script: |
   python setup.py build --build-lib build
   cp -a build/Crypto $PTDIR/
   cd ..
-  #
+
+  # Building argparse
   tar xzf argparse.tar.gz
   cd argparse-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   python setup.py build --build-lib build
   cp -a build/argparse.py $PTDIR/
   cd ..
-  #
-  tar xzf pyyaml.tar.gz
-  cd PyYAML-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  python setup.py build --build-lib build
-  cp -a build/yaml $PTDIR/
-  cd ..
-  #
+
+  # Building Zope interfaces
   unzip zope.interface.zip
   cd zope.interface-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   python setup.py build --build-lib build
   cp -a build/zope $PTDIR/
   cd ..
-  #
+
+  # Building PyYAML
+  tar xzf pyyaml.tar.gz
+  cd PyYAML-*
+  find -type f | xargs touch --date="$REFERENCE_DATETIME"
+  python setup.py build --build-lib build
+  cp -a build/yaml $PTDIR/
+  cd ..
+
+  # Building Twisted
   tar xjf twisted.tar.bz2
   cd Twisted-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -130,7 +120,8 @@ script: |
   python setup.py build --build-lib build
   cp -a build/twisted $PTDIR/
   cd ..
-  #
+
+  # Building Parsley
   tar xzf parsley.tar.gz
   cd Parsley-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -139,7 +130,8 @@ script: |
   cp -a build/ometa $PTDIR/
   cp -a build/terml $PTDIR/
   cd ..
-  #
+
+  # Building txsocksx
   cd txsocksx
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   # Let's pretend we have the setup dependency already as we don't want to get
@@ -150,7 +142,8 @@ script: |
   python setup.py build --build-lib build
   cp -a build/txsocksx $PTDIR/
   cd ..
-  #
+
+  # Building obfsproxy
   cd obfsproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   python setup.py build --build-lib build
@@ -159,16 +152,8 @@ script: |
   mkdir -p $INSTDIR/TorBrowserBundle.app/Docs/Obfsproxy
   cp -a {LICENSE,README} $INSTDIR/TorBrowserBundle.app/Docs/Obfsproxy
   cd ..
-  #
-  tar xzf openssl.tar.gz
-  cd openssl-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  CC=cc ./Configure --cross-compile-prefix=i686-apple-darwin11- $CFLAGS darwin-i386-cc --prefix=$INSTDIR/openssl
-  make # SHARED_LDFLAGS="-shared -dynamiclib -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/"
-  make install
-  #cp $INSTDIR/openssl/lib/*.dylib $INSTDIR/TorBrowserBundle.app/Tor/
-  cd ..
-  #
+
+  # Building M2Crypto
   tar xzf m2crypto.tar.gz
   cd M2Crypto-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -182,7 +167,8 @@ script: |
   python setup.py build --build-lib build
   cp -a build/M2Crypto $PTDIR/
   cd ..
-  #
+
+  # Building flashproxy
   cd flashproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   make dist DISTNAME=flashproxy-client
@@ -190,7 +176,8 @@ script: |
   mkdir -p $INSTDIR/TorBrowserBundle.app/Docs/FlashProxy
   cp -a {doc/*,README,LICENSE,ChangeLog} $INSTDIR/TorBrowserBundle.app/Docs/FlashProxy
   cd ..
-  #
+
+  # Building libfte
   cd libfte
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   CFLAGS="-L$INSTDIR/Tor -I$INSTDIR/gmp/include $CFLAGS" CXXFLAGS="-L$INSTDIR/Tor -I$INSTDIR/gmp/include $CXXFLAGS" make
@@ -199,7 +186,8 @@ script: |
   cp -a {LICENSE,README.md} $INSTDIR/TorBrowserBundle.app/Docs/libfte
   cp -an thirdparty/re2/LICENSE $INSTDIR/TorBrowserBundle.app/Docs/libfte/LICENSE.re2
   cd ..
-  #
+
+  # Building fteproxy
   cd fteproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   cp -a bin/fteproxy $PTDIR/fteproxy.bin
@@ -207,7 +195,8 @@ script: |
   mkdir -p $INSTDIR/TorBrowserBundle.app/Docs/fteproxy
   cp -a {COPYING,README.md} $INSTDIR/TorBrowserBundle.app/Docs/fteproxy
   cd ..
-  #
+
+  # Grabbing the result
   cd $INSTDIR
   ~/build/dzip.sh pluggable-transports-mac$GBUILD_BITS-gbuilt.zip TorBrowserBundle.app
   cp pluggable-transports-mac$GBUILD_BITS-gbuilt.zip $OUTDIR/
diff --git a/gitian/descriptors/mac/gitian-tor.yml b/gitian/descriptors/mac/gitian-tor.yml
index b8a761b..90f56e0 100644
--- a/gitian/descriptors/mac/gitian-tor.yml
+++ b/gitian/descriptors/mac/gitian-tor.yml
@@ -55,6 +55,7 @@ script: |
   cp $INSTDIR/libevent/lib/libevent-*.dylib $INSTDIR/TorBrowserBundle.app/Tor/
   LIBEVENT_FILE=`basename $INSTDIR/libevent/lib/libevent-*.dylib`
   #
+  # XXX Clean up these flags?
   export CFLAGS="-I/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/include/ -I/usr/lib/gcc/i686-apple-darwin10/4.2.1/include/ -I.  -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -mmacosx-version-min=10.5"
   export LDFLAGS="-L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -mmacosx-version-min=10.5"
   cd tor
diff --git a/gitian/descriptors/mac/gitian-utils.yml b/gitian/descriptors/mac/gitian-utils.yml
index 1caf8f0..3c6e4a7 100644
--- a/gitian/descriptors/mac/gitian-utils.yml
+++ b/gitian/descriptors/mac/gitian-utils.yml
@@ -21,6 +21,7 @@ files:
 - "apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb"
 - "multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz"
 - "openssl.tar.gz"
+- "gmp.tar.bz2"
 - "versions"
 - "dzip.sh"
 script: |
@@ -38,7 +39,9 @@ script: |
   # For OpenSSL
   ln -s ~/build/apple-osx/bin/apple-osx-gcc ~/build/apple-osx/bin/i686-apple-darwin11-cc
 
+  # XXX Clean up these flags?
   export CFLAGS="-I/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/include/ -I/usr/lib/gcc/i686-apple-darwin10/4.2.1/include/ -I.  -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -mmacosx-version-min=10.5"
+  export CXXFLAGS="-I/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/include/ -I/usr/lib/gcc/i686-apple-darwin10/4.2.1/include/ -I.  -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/i686-apple-darwin10/4.2.1 -mmacosx-version-min=10.5"
   export LDFLAGS="-L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/ -L/usr/lib/apple/SDKs/MacOSX10.6.sdk/usr/lib/system/ -mmacosx-version-min=10.5"
 
   # Building Libevent
@@ -62,9 +65,19 @@ script: |
   make install
   cd ..
 
+  # Building GMP
+  tar xjf gmp.tar.bz2
+  cd gmp-*
+  find -type f | xargs touch --date="$REFERENCE_DATETIME"
+  ./configure --host=i686-apple-darwin11 --prefix=$INSTDIR/gmp --disable-static --enable-shared --enable-cxx
+  make
+  make install
+  cd ..
+
   # Grabbing the results
   cd $INSTDIR
   ~/build/dzip.sh openssl-$OPENSSL_VER-mac32-utils.zip openssl
   ~/build/dzip.sh libevent-${LIBEVENT_TAG#release-}-mac32-utils.zip libevent
+  ~/build/dzip.sh gmp-$GMP_VER-mac32-utils.zip gmp
 
   cp *utils.zip $OUTDIR/
diff --git a/gitian/descriptors/windows/gitian-pluggable-transports.yml b/gitian/descriptors/windows/gitian-pluggable-transports.yml
index 1637b23..6af344c 100644
--- a/gitian/descriptors/windows/gitian-pluggable-transports.yml
+++ b/gitian/descriptors/windows/gitian-pluggable-transports.yml
@@ -31,8 +31,6 @@ remotes:
 - "url": "https://github.com/habnabit/txsocksx.git"
   "dir": "txsocksx"
 files:
-- "openssl.tar.gz"
-- "gmp.tar.bz2"
 - "setuptools.tar.gz"
 - "pycrypto.tar.gz"
 - "argparse.tar.gz"
@@ -47,16 +45,38 @@ files:
 - "py2exe.exe"
 - "dzip.sh"
 - "pyc-timestamp.sh"
+- "openssl-win32-utils.zip"
+- "gmp-win32-utils.zip"
 script: |
+  # Set the timestamp on every .pyc file in a zip file, and re-dzip the zip file.
+  function py2exe_zip_timestomp {
+    ZIPFILE="$1"
+    local tmpdir="$(mktemp -d)"
+    local tmpzip="$(mktemp -u)"
+    unzip -d "$tmpdir" "$ZIPFILE"
+    cd "$tmpdir"
+    find . -name '*.pyc' -print0 | xargs -0 ~/build/pyc-timestamp.sh "$REFERENCE_DATETIME"
+    ~/build/dzip.sh "$tmpzip" .
+    cd -
+    mv -f "$tmpzip" "$ZIPFILE"
+    rm -rf "$tmpdir"
+  }
+
   INSTDIR="$HOME/install"
   PTDIR="$INSTDIR/Tor/PluggableTransports"
-  export LIBRARY_PATH="$INSTDIR/lib"
+  mkdir -p $INSTDIR/bin/
+  mkdir -p $PTDIR/
   export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1
   export FAKETIME=$REFERENCE_DATETIME
   export TZ=UTC
   export LC_ALL=C
   export CFLAGS="-mwindows"
   export LDFLAGS="-mwindows"
+  umask 0022
+
+  unzip -d $INSTDIR gmp-win32-utils.zip
+  unzip -d $INSTDIR openssl-win32-utils.zip
+  cp $INSTDIR/gmp/bin/*dll* $INSTDIR/Tor
 
   # We need at least Wine 1.5.29 which is not in Ubuntu's main repository (see
   # below). Thus, we resort to a PPA and need therefore to determine the correct
@@ -69,47 +89,13 @@ script: |
     # KVM
     MIRROR_HOST=10.0.2.2
   fi
-
+  # Install a Wine new enough to have a fix for
+  # http://bugs.winehq.org/show_bug.cgi?id=29764; otherwise Python run under
+  # Wine constantly crashes in _PyVerify_fd, which is called by such common
+  # operations as io.open and os.fstat (anything involving a file descriptor
+  # number). Ubuntu's main repository only has wine1.4, and the issue was fixed
+  # in 1.5.29.
   WINEROOT=$HOME/.wine/drive_c
-  # XXX: Hardening options cause the exe's to crash.. not sure why
-  #export CFLAGS="-mwindows -fstack-protector-all -fPIE -Wstack-protector --param ssp-buffer-size=4 -fno-strict-overflow -Wno-missing-field-initializers -Wformat-security"
-  #export LDFLAGS="-mwindows -Wl,--dynamicbase -Wl,--nxcompat -lssp -L/usr/lib/gcc/i686-w64-mingw32/4.6/"
-  umask 0022
-  #
-  mkdir -p $INSTDIR/bin/
-  mkdir -p $PTDIR/
-  mkdir -p $OUTDIR/
-  #
-  # Set the timestamp on every .pyc file in a zip file, and re-dzip the zip file.
-  function py2exe_zip_timestomp {
-    ZIPFILE="$1"
-    local tmpdir="$(mktemp -d)"
-    local tmpzip="$(mktemp -u)"
-    unzip -d "$tmpdir" "$ZIPFILE"
-    cd "$tmpdir"
-    find . -name '*.pyc' -print0 | xargs -0 ~/build/pyc-timestamp.sh "$REFERENCE_DATETIME"
-    ~/build/dzip.sh "$tmpzip" .
-    cd -
-    mv -f "$tmpzip" "$ZIPFILE"
-    rm -rf "$tmpdir"
-  }
-  #
-  #
-  tar xvf gmp.tar.bz2
-  cd gmp-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  ./configure --prefix=$INSTDIR/gmp --host=i686-w64-mingw32 --enable-cxx --disable-static --enable-shared
-  make
-  make install
-  cp -an $INSTDIR/gmp/bin/*dll* $INSTDIR/Tor
-  cd ..
-  #
-  #
-  # Install a Wine new enough to have a fix for http://bugs.winehq.org/show_bug.cgi?id=29764;
-  # otherwise Python run under Wine constantly crashes in _PyVerify_fd, which is
-  # called by such common operations as io.open and os.fstat (anything involving
-  # a file descriptor number). Ubuntu's main repository only has wine1.4, and
-  # the issue was fixed in 1.5.29.
   sudo -s sh -c "echo deb http://$MIRROR_HOST:3142/ppa.launchpad.net/ubuntu-wine/ppa/ubuntu precise main >> /etc/apt/sources.list"
   # This key is from https://launchpad.net/~ubuntu-wine/+archive/ppa and
   # http://keyserver.ubuntu.com:11371/pks/lookup?op=get&search=0x5A9A06AEF9CB8DB0.
@@ -140,40 +126,40 @@ script: |
   LD_PRELOAD= $INSTPYTHON setup.py py2exe
   cp -a dist/gcc.exe dist/g++.exe dist/dllwrap.exe dist/swig.exe $WINEROOT/windows/
   cd ..
-  #
+
+  # Building setuptools
   tar xzf setuptools.tar.gz
   cd setuptools-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   LD_PRELOAD= $INSTPYTHON setup.py install
   cd ..
-  #
+
+  # Bulding pyptlib
   cd pyptlib
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   LD_PRELOAD= $INSTPYTHON setup.py install --single-version-externally-managed --record /dev/null
   cd ..
-  #
+
+  # Building PyCrypto
   tar xzf pycrypto.tar.gz
   cd pycrypto-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  # This is bogus, that we run the configure script in the build environment, but it seems to work.
-  # https://bugs.launchpad.net/pycrypto/+bug/1096207 for ac_cv_func_malloc_0_nonnull.
+  # This is bogus, that we run the configure script in the build environment,
+  # but it seems to work. https://bugs.launchpad.net/pycrypto/+bug/1096207 for
+  # ac_cv_func_malloc_0_nonnull.
   ac_cv_func_malloc_0_nonnull=yes sh configure --host=i686-w64-mingw32
   LD_PRELOAD= $INSTPYTHON setup.py build_ext -c mingw32
   LD_PRELOAD= $INSTPYTHON setup.py install
   cd ..
-  #
+
+  # Building argparse
   tar xzf argparse.tar.gz
   cd argparse-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   LD_PRELOAD= $INSTPYTHON setup.py install
   cd ..
-  #
-  tar xzf pyyaml.tar.gz
-  cd PyYAML-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  LD_PRELOAD= $INSTPYTHON setup.py install
-  cd ..
-  #
+
+  # Building Zope interfaces
   unzip zope.interface.zip
   cd zope.interface-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
@@ -182,11 +168,20 @@ script: |
   # Must create this file in order for py2exe to find the package.
   touch $INSTDIR/python/Lib/site-packages/zope/__init__.py
   cd ..
-  #
+
+  # Building PyYAML
+  tar xzf pyyaml.tar.gz
+  cd PyYAML-*
+  find -type f | xargs touch --date="$REFERENCE_DATETIME"
+  LD_PRELOAD= $INSTPYTHON setup.py install
+  cd ..
+
+  # Building Twisted
   tar xjf twisted.tar.bz2
   cd Twisted-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  # twisted/internet/iocpreactor/iocpsupport/iocpsupport.c includes "python.h" rather than "Python.h".
+  # twisted/internet/iocpreactor/iocpsupport/iocpsupport.c includes "python.h"
+  # rather than "Python.h".
   ln -sf Python.h $INSTDIR/python/include/python.h
   # We need to set the "mingw32" compiler to avoid an error in build_ext, but
   # Twisted's "install" command calls build_ext unconditionally, whether the
@@ -196,13 +191,18 @@ script: |
   echo $'[build_ext]\ncompiler=mingw32' > setup.cfg
   LD_PRELOAD= $INSTPYTHON setup.py install --single-version-externally-managed --record /dev/null
   cd ..
-  #
+  # py2exe byte-compiles to .pyc files, which embed the mtime of the parent .py
+  # file.
+  find $INSTDIR/python -type f | xargs touch --date="$REFERENCE_DATETIME"
+
+  # Building Parsley
   tar xzf parsley.tar.gz
   cd Parsley-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   LD_PRELOAD= $INSTPYTHON setup.py install
   cd ..
-  #
+
+  # Building txsocksx
   cd txsocksx
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   # Let's pretend we have the setup dependency already as we don't want to get
@@ -212,10 +212,8 @@ script: |
   mkdir vcversioner-1.14.1.1-py2.7.egg
   LD_PRELOAD= $INSTPYTHON setup.py install
   cd ..
-  #
-  # py2exe byte-compiles to .pyc files, which embed the mtime of the parent .py file.
-  find $INSTDIR/python -type f | xargs touch --date="$REFERENCE_DATETIME"
-  #
+
+  # Building obfsproxy
   cd obfsproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   LD_PRELOAD= $INSTPYTHON setup_py2exe.py py2exe
@@ -225,24 +223,19 @@ script: |
   mkdir -p $INSTDIR/Docs/Obfsproxy
   cp {LICENSE,README} $INSTDIR/Docs/Obfsproxy
   cd ..
-  #
-  tar xzf openssl.tar.gz
-  cd openssl-*
-  find -type f | xargs touch --date="$REFERENCE_DATETIME"
-  ./Configure -shared --cross-compile-prefix=i686-w64-mingw32- mingw --prefix=$INSTDIR/openssl
-  make
-  make install
-  cd ..
-  #
+
+  # Building M2Crypto
   tar xzf m2crypto.tar.gz
   cd M2Crypto-*
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   LD_PRELOAD= $INSTPYTHON setup.py build_ext -c mingw32 --openssl $INSTDIR/openssl/ -lssl.dll,crypto.dll
   LD_PRELOAD= $INSTPYTHON setup.py install --single-version-externally-managed --record /dev/null
   cd ..
-  #
+  # py2exe byte-compiles to .pyc files, which embed the mtime of the parent .py
+  # file.
   find $INSTDIR/python -type f | xargs touch --date="$REFERENCE_DATETIME"
-  #
+
+  # Building flashproxy
   cd flashproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   make dist-exe DISTNAME=flashproxy-client PYTHON="LD_PRELOAD= $INSTPYTHON"
@@ -251,7 +244,8 @@ script: |
   mkdir -p $INSTDIR/Docs/FlashProxy
   cp dist/flashproxy-client-win32/{doc/*,README,LICENSE,ChangeLog} $INSTDIR/Docs/FlashProxy
   cd ..
-  #
+
+  # Building libfte
   cd libfte
   ln -s $INSTDIR/gmp thirdparty/gmp
   cp -a $INSTDIR/gmp/bin/libgmp-*.dll .
@@ -262,7 +256,8 @@ script: |
   cp -an {LICENSE,README.md} $INSTDIR/Docs/libfte
   cp -an thirdparty/re2/LICENSE $INSTDIR/Docs/libfte/LICENSE.re2
   cd ..
-  #
+
+  # Building fteproxy
   cd fteproxy
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   LD_PRELOAD= $INSTPYTHON setup_tbb.py py2exe
@@ -275,10 +270,11 @@ script: |
   mkdir -p $INSTDIR/Docs/fteproxy
   cp -an {COPYING,README.md} $INSTDIR/Docs/fteproxy
   cd ..
-  #
+
   # http://bugs.winehq.org/show_bug.cgi?id=3591
   cp -a $INSTDIR/python/python27.dll $PTDIR/
-  #
+
+  # Grabbing the result
   cd $INSTDIR
   ~/build/dzip.sh pluggable-transports-win32-gbuilt.zip Tor/ Docs/
   cp pluggable-transports-win32-gbuilt.zip $OUTDIR/
diff --git a/gitian/descriptors/windows/gitian-tor.yml b/gitian/descriptors/windows/gitian-tor.yml
index abfd8bb..19c4acd 100644
--- a/gitian/descriptors/windows/gitian-tor.yml
+++ b/gitian/descriptors/windows/gitian-tor.yml
@@ -43,7 +43,7 @@ script: |
   export TZ=UTC
   export LC_ALL=C
   umask 0022
-  #
+
   mkdir -p $INSTDIR/bin/
   mkdir -p $INSTDIR/Tor/
   mkdir -p $INSTDIR/Data/Tor/
@@ -58,7 +58,8 @@ script: |
   # See the we-need-only-the-binutils-comment in gitian-utils.yml for the
   # reasoning behind the "mingw-w64" dir instead of an expected "binutils" one.
   export PATH=$INSTDIR/mingw-w64/bin:$PATH
-  #
+
+  # Building tor
   cd tor
   git update-index --refresh -q
   export GIT_COMMITTER_NAME="nobody"
@@ -98,7 +99,8 @@ script: |
   # XXX: Geoip files..
   cp -a /usr/lib/gcc/i686-w64-mingw32/4.6/libgcc_s_sjlj-1.dll $INSTDIR/Tor/
   cp -a /usr/lib/gcc/i686-w64-mingw32/4.6/libssp*.dll $INSTDIR/Tor/
-  #
+
+  # Grabbing the result
   cd $INSTDIR
   ~/build/dzip.sh tor-win32-gbuilt.zip Tor/ Data/
   cp tor-win32-gbuilt.zip $OUTDIR/
diff --git a/gitian/descriptors/windows/gitian-utils.yml b/gitian/descriptors/windows/gitian-utils.yml
index 4e321a0..530e716 100644
--- a/gitian/descriptors/windows/gitian-utils.yml
+++ b/gitian/descriptors/windows/gitian-utils.yml
@@ -30,6 +30,7 @@ files:
 - "binutils.tar.bz2"
 - "gcc.tar.bz2"
 - "openssl.tar.gz"
+- "gmp.tar.bz2"
 - "versions"
 - "dzip.sh"
 script: |
@@ -135,11 +136,20 @@ script: |
   make install
   cd ..
 
+  # Building GMP
+  tar xjf gmp.tar.bz2
+  cd gmp-*
+  find -type f | xargs touch --date="$REFERENCE_DATETIME"
+  ./configure --prefix=$INSTDIR/gmp --host=i686-w64-mingw32 --enable-cxx --disable-static --enable-shared
+  make
+  make install
+  cd ..
+
   # Grabbing the remaining results
   cd $INSTDIR
   ~/build/dzip.sh mingw-w64-$GCC_VER-win32-utils.zip mingw-w64
   ~/build/dzip.sh zlib-${ZLIB_TAG#v}-win32-utils.zip zlib
   ~/build/dzip.sh libevent-${LIBEVENT_TAG#release-}-win32-utils.zip libevent
   ~/build/dzip.sh openssl-$OPENSSL_VER-win32-utils.zip openssl
-
+  ~/build/dzip.sh gmp-$GMP_VER-win32-utils.zip gmp
   cp *-utils.zip $OUTDIR/
diff --git a/gitian/mkbundle-linux.sh b/gitian/mkbundle-linux.sh
index 992a23a..330e475 100755
--- a/gitian/mkbundle-linux.sh
+++ b/gitian/mkbundle-linux.sh
@@ -105,7 +105,9 @@ if [ ! -f inputs/openssl-$OPENSSL_VER-linux32-utils.zip -o \
      ! -f inputs/python-$PYTHON_VER-linux32-utils.zip -o \
      ! -f inputs/python-$PYTHON_VER-linux64-utils.zip -o \
      ! -f inputs/lxml-$LXML_VER-linux32-utils.zip -o \
-     ! -f inputs/lxml-$LXML_VER-linux64-utils.zip ];
+     ! -f inputs/lxml-$LXML_VER-linux64-utils.zip -o \
+     ! -f inputs/gmp-$GMP_VER-linux32-utils.zip -o \
+     ! -f inputs/gmp-$GMP_VER-linux64-utils.zip ];
 then
   echo
   echo "****** Starting Utilities Component of Linux Bundle (1/5 for Linux) ******"
@@ -128,6 +130,8 @@ then
   ln -sf python-$PYTHON_VER-linux64-utils.zip python-linux64-utils.zip
   ln -sf lxml-$LXML_VER-linux32-utils.zip lxml-linux32-utils.zip
   ln -sf lxml-$LXML_VER-linux64-utils.zip lxml-linux64-utils.zip
+  ln -sf gmp-$GMP_VER-linux32-utils.zip gmp-linux32-utils.zip
+  ln -sf gmp-$GMP_VER-linux64-utils.zip gmp-linux64-utils.zip
   cd ..
   #cp -a result/utils-linux-res.yml inputs/
 else
@@ -145,6 +149,8 @@ else
   ln -sf python-$PYTHON_VER-linux64-utils.zip python-linux64-utils.zip
   ln -sf lxml-$LXML_VER-linux32-utils.zip lxml-linux32-utils.zip
   ln -sf lxml-$LXML_VER-linux64-utils.zip lxml-linux64-utils.zip
+  ln -sf gmp-$GMP_VER-linux32-utils.zip gmp-linux32-utils.zip
+  ln -sf gmp-$GMP_VER-linux64-utils.zip gmp-linux64-utils.zip
   cd ..
 fi
 
diff --git a/gitian/mkbundle-mac.sh b/gitian/mkbundle-mac.sh
index fb1d32f..e852989 100755
--- a/gitian/mkbundle-mac.sh
+++ b/gitian/mkbundle-mac.sh
@@ -106,7 +106,8 @@ fi
 cd $GITIAN_DIR
 
 if [ ! -f inputs/openssl-$OPENSSL_VER-mac32-utils.zip -o \
-     ! -f inputs/libevent-${LIBEVENT_TAG_ORIG#release-}-mac32-utils.zip ];
+     ! -f inputs/libevent-${LIBEVENT_TAG_ORIG#release-}-mac32-utils.zip -o \
+     ! -f inputs/gmp-$GMP_VER-mac32-utils.zip ];
 then
   echo
   echo "****** Starting Utilities Component of Mac Bundle (1/5 for Max) ******"
@@ -122,6 +123,7 @@ then
   cp -a ../build/out/*-utils.zip .
   ln -sf openssl-$OPENSSL_VER-mac32-utils.zip openssl-mac32-utils.zip
   ln -sf libevent-${LIBEVENT_TAG_ORIG#release-}-mac32-utils.zip libevent-mac32-utils.zip
+  ln -sf gmp-$GMP_VER-mac32-utils.zip gmp-mac32-utils.zip
   cd ..
   #cp -a result/utils-mac-res.yml inputs/
 else
@@ -134,6 +136,7 @@ else
   cd inputs
   ln -sf openssl-$OPENSSL_VER-mac32-utils.zip openssl-mac32-utils.zip
   ln -sf libevent-${LIBEVENT_TAG_ORIG#release-}-mac32-utils.zip libevent-mac32-utils.zip
+  ln -sf gmp-$GMP_VER-mac32-utils.zip gmp-mac32-utils.zip
   cd ..
 fi
 
diff --git a/gitian/mkbundle-windows.sh b/gitian/mkbundle-windows.sh
index 198fe87..ecabeae 100755
--- a/gitian/mkbundle-windows.sh
+++ b/gitian/mkbundle-windows.sh
@@ -104,7 +104,8 @@ if [ ! -f inputs/binutils-$BINUTILS_VER-win32-utils.zip -o \
      ! -f inputs/mingw-w64-$GCC_VER-win32-utils.zip -o \
      ! -f inputs/zlib-${ZLIB_TAG_ORIG#v}-win32-utils.zip -o \
      ! -f inputs/libevent-${LIBEVENT_TAG_ORIG#release-}-win32-utils.zip -o \
-     ! -f inputs/openssl-$OPENSSL_VER-win32-utils.zip ];
+     ! -f inputs/openssl-$OPENSSL_VER-win32-utils.zip -o \
+     ! -f inputs/gmp-$GMP_VER-win32-utils.zip ];
 then
   echo
   echo "****** Starting Utilities Component of Windows Bundle (1/5 for Windows) ******"
@@ -124,6 +125,7 @@ then
   ln -sf zlib-${ZLIB_TAG_ORIG#v}-win32-utils.zip zlib-win32-utils.zip
   ln -sf libevent-${LIBEVENT_TAG_ORIG#release-}-win32-utils.zip libevent-win32-utils.zip
   ln -sf openssl-$OPENSSL_VER-win32-utils.zip openssl-win32-utils.zip
+  ln -sf gmp-$GMP_VER-win32-utils.zip gmp-win32-utils.zip
   cd ..
   #cp -a result/utils-win-res.yml inputs/
 else
@@ -138,6 +140,7 @@ else
   ln -sf zlib-${ZLIB_TAG_ORIG#v}-win32-utils.zip zlib-win32-utils.zip
   ln -sf libevent-${LIBEVENT_TAG_ORIG#release-}-win32-utils.zip libevent-win32-utils.zip
   ln -sf openssl-$OPENSSL_VER-win32-utils.zip openssl-win32-utils.zip
+  ln -sf gmp-$GMP_VER-win32-utils.zip gmp-win32-utils.zip
   cd ..
 fi
 




More information about the tor-commits mailing list