[tor-commits] [tor-browser-bundle/master] Update the Gitian Firefox descriptor for Mac OS X

mikeperry at torproject.org mikeperry at torproject.org
Mon Dec 9 04:25:11 UTC 2013


commit 7e4c6fd54c0ec46a2ccfceca5b6e9c649572dec4
Author: Georg Koppen <georg at getfoxyproxy.org>
Date:   Mon Dec 2 05:26:17 2013 -0800

    Update the Gitian Firefox descriptor for Mac OS X
    
    Should now be able to build with our new cross-compiler for Firefox 24 ESRs.
---
 gitian/descriptors/mac/gitian-firefox.yml |   38 +++++++++++------------------
 gitian/make-vms.sh                        |    9 +++++++
 gitian/versions.alpha                     |    6 ++---
 3 files changed, 26 insertions(+), 27 deletions(-)

diff --git a/gitian/descriptors/mac/gitian-firefox.yml b/gitian/descriptors/mac/gitian-firefox.yml
index d6e5b4a..74b4287 100644
--- a/gitian/descriptors/mac/gitian-firefox.yml
+++ b/gitian/descriptors/mac/gitian-firefox.yml
@@ -3,8 +3,8 @@ name: "torbrowser-mac"
 suites:
 - "precise"
 architectures:
-- "i386"
-packages: 
+- "amd64"
+packages:
 - "git-core"
 - "unzip"
 - "zip"
@@ -12,7 +12,7 @@ packages:
 - "autoconf2.13"
 - "faketime"
 - "yasm"
-#- "libssl0.9.8"
+- "zlib1g-dev"
 reference_datetime: "2000-01-01 00:00:00"
 remotes:
 - "url": "https://git.torproject.org/tor-browser.git"
@@ -20,26 +20,17 @@ remotes:
 files:
 - "torbrowser.version"
 - "apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb"
-- "multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz"
-- "i686-apple-darwin11-gcc"
-- "i686-apple-darwin11-g++"
-- "i686-apple-darwin11-ld"
+- "x86_64-apple-darwin10.tar.xz"
 - "re-dzip.sh"
 - "dzip.sh"
 - "python.tar.bz2"
 - "versions"
-#- "apple-x86-gcc_4.2.1~5646.1flosoft2_i386.deb"
-#- "apple-x86-odcctools_758.159-0flosoft11_i386.deb"
 script: |
   INSTDIR="$HOME/install/"
   source versions
   export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1
   export FAKETIME=$REFERENCE_DATETIME
   export TZ=UTC
-  export CFLAGS="-isysroot /usr/lib/apple/SDKs/MacOSX10.6.sdk/"
-  export CXXFLAGS=$CFLAGS
-  export LDFLAGS=$CFLAGS
-  export PATH="$PATH:/usr/apple-osx/bin/"
   export LC_ALL=C
   umask 0022
   #
@@ -60,14 +51,13 @@ script: |
   fi
   #
   sudo dpkg -i *.deb
-  chmod 755 i686*
-  sudo cp i686* /usr/bin/
-  cd /usr
-  sudo tar -Jxvf /home/ubuntu/build/multiarch-darwin*tar.xz
-  cd ~/build
+  tar -xavf x86_64-apple-darwin10.tar.xz
+  # XXX: Needed for the otool patch. But we should replace that one with a
+  # better solution. See: comment 15 in
+  # https://bugzilla.mozilla.org/show_bug.cgi?id=936115
+  export PATH=$PATH:/home/ubuntu/build/x-tools/x86_64-apple-darwin10/bin
   # FIXME: path hacks:
   sudo mkdir -p /System/Library/
-  sudo ln -s /usr/apple-osx/bin/i686-apple-darwin11-otool /usr/bin/otool
   sudo ln -s /usr/lib/apple/SDKs/MacOSX10.6.sdk /usr/lib/apple/SDKs/MacOSX10.5.sdk
   sudo ln -s /usr/lib/apple/SDKs/MacOSX10.6.sdk /usr/lib/apple/SDKs/MacOSX10.5.sdk
   sudo ln -s /usr/lib/apple/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/ /System/Library/
@@ -88,16 +78,16 @@ script: |
   make -f client.mk configure
   find -type f | xargs touch --date="$REFERENCE_DATETIME"
   #
-  # XXX: Probably should fix this some other way than just letting it fail once..
-  make $MAKEOPTS -f client.mk build HOST_CFLAGS="" HOST_CXXFLAGS="" # || true
-  #make $MAKEOPTS -f client.mk build HOST_CFLAGS="" HOST_CXXFLAGS="" CC="apple-osx-gcc $CFLAGS"
+  make $MAKEOPTS -f client.mk build
   #
-  make -C obj-* package INNER_MAKE_PACKAGE=true
-  cp -a obj-*/dist/firefox/* $INSTDIR
+  make -C obj-macos package INNER_MAKE_PACKAGE=true
+  cp -a obj-macos/dist/firefox/* $INSTDIR
   # Remove firefox-bin (we don't use it, see ticket #10126)
   rm -f $INSTDIR/Browser/firefox-bin
   #
   cd $INSTDIR
+  # XXX: Find a better way to tell that we are having a 32bit build
+  GBUILD_BITS=32
   ~/build/re-dzip.sh TorBrowser.app/Contents/MacOS/omni.ja
   ~/build/re-dzip.sh TorBrowser.app/Contents/MacOS/webapprt/omni.ja
   if [ -f TorBrowser.app/Contents/MacOS/browser/omni.ja  ]; then # FF24 includes a third .ja
diff --git a/gitian/make-vms.sh b/gitian/make-vms.sh
index d5615a6..d4902ce 100755
--- a/gitian/make-vms.sh
+++ b/gitian/make-vms.sh
@@ -81,3 +81,12 @@ do
   echo
 done
 
+while ! build_and_test_vm precise amd64 64
+do
+  stop-target 64 precise
+  rm ./base-precise-amd64*
+  echo
+  echo "Lucid amd64 VM build failed... Trying again"
+  echo
+done
+
diff --git a/gitian/versions.alpha b/gitian/versions.alpha
index ab6e9cb..0f843c5 100755
--- a/gitian/versions.alpha
+++ b/gitian/versions.alpha
@@ -25,7 +25,7 @@ PYTHON_VER=2.7.5
 ## File names for the source packages
 # OPENSSL_PACKAGE=openssl-${OPENSSL_VER}.tar.gz
 NOSCRIPT_PACKAGE=noscript_security_suite-2.6.8.2-fx+fn+sm.xpi
-TOOLCHAIN4_PACKAGE=multiarch-darwin11-cctools127.2-gcc42-5666.3-llvmgcc42-2336.1-Linux-120724.tar.xz
+TOOLCHAIN4_PACKAGE=x86_64-apple-darwin10.tar.xz
 OSXSDK_PACKAGE=apple-uni-sdk-10.6_20110407-0.flosoft1_i386.deb
 MINGW_PACKAGE=mingw-w64-svn-snapshot.zip
 MSVCR100_PACKAGE=msvcr100.dll
@@ -36,14 +36,14 @@ PYTHON_PACKAGE=Python-${PYTHON_VER}.tar.bz2
 # Hashes for packages with weak sigs or no sigs
 # OPENSSL_HASH=f74f15e8c8ff11aa3d5bb5f276d202ec18d7246e95f961db76054199c69c1ae3
 OSXSDK_HASH=6602d8d5ddb371fbc02e2a5967d9bd0cd7358d46f9417753c8234b923f2ea6fc
-TOOLCHAIN4_HASH=65c1b2d302358a6b95a26c6828a66908a199276193bb0b268f2dcc1a997731e9
+TOOLCHAIN4_HASH=7b71bfe02820409b994c5c33a7eab81a81c72550f5da85ff7af70da3da244645
 NOSCRIPT_HASH=52b309f2e5ca1bee4d0f97cbb342fdac3be6a447c35f744a90348df55eea635f
 MINGW_HASH=a5b03d0448a309341be4cf34c6ad3016d04c89952dca5243254b4d6c738b164f
 MSVCR100_HASH=1221a09484964a6f38af5e34ee292b9afefccb3dc6e55435fd3aaf7c235d9067
 
 ## Non-git package URLs
 # OPENSSL_URL=https://www.openssl.org/source/${OPENSSL_PACKAGE}
-TOOLCHAIN4_URL=https://mingw-and-ndk.googlecode.com/files/${TOOLCHAIN4_PACKAGE}
+TOOLCHAIN4_URL=https://people.torproject.org/~mikeperry/mirrors/sources/${TOOLCHAIN4_PACKAGE}
 OSXSDK_URL=https://launchpad.net/~flosoft/+archive/cross-apple/+files/${OSXSDK_PACKAGE}
 BINUTILS_URL=https://ftp.gnu.org/gnu/binutils/${BINUTILS_PACKAGE}
 GCC_URL=https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/${GCC_PACKAGE}





More information about the tor-commits mailing list