[tor-commits] [tor-browser-bundle/master] Build gn in linux-webrtc.

gk at torproject.org gk at torproject.org
Fri Mar 31 19:03:27 UTC 2017


commit 38689af2a845dfa85765bf52e535c89476863378
Author: David Fifield <david at bamsoftware.com>
Date:   Fri Sep 23 13:14:07 2016 -0700

    Build gn in linux-webrtc.
    
    There is a prebuilt gn binary for linux64, but none for linux32, and
    anyway we prefer to build from source for reproducibility reasons.
---
 gitian/descriptors/linux/gitian-webrtc.yml | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/gitian/descriptors/linux/gitian-webrtc.yml b/gitian/descriptors/linux/gitian-webrtc.yml
index ba654c5..cab2430 100644
--- a/gitian/descriptors/linux/gitian-webrtc.yml
+++ b/gitian/descriptors/linux/gitian-webrtc.yml
@@ -66,6 +66,8 @@ script: |
   ln -sf hardened-cc c++
   cd ~/build
   export PATH=$INSTDIR/gcc/bin:$INSTDIR/binutils/bin:$PATH
+  # GN needs libatomic.so.1 here.
+  export LD_LIBRARY_PATH=$INSTDIR/gcc/lib
   ARCH=""
   if [ $GBUILD_BITS == "64" ];
   then
@@ -83,6 +85,15 @@ script: |
   # Building webrtc
   tar xaf webrtc.tar.gz
   cd webrtc/src
+
+  # First, build a copy of GN, rather than use the prebuilt copy in buildtools/linux64.
+  cd tools/gn
+  # __STDC_FORMAT_MACROS is needed for a definition of PRIxPTR from inttypes.h.
+  CXXFLAGS=-D__STDC_FORMAT_MACROS=1 LDFLAGS=-latomic ./bootstrap/bootstrap.py --no-rebuild --no-clean
+  cd ../..
+  # This is where bootstrap.py stashes the built gn.
+  GN="$PWD/out_bootstrap/gn"
+
   export GYP_CROSSCOMPILE=1
   export GYP_DEFINES="OS=linux target_arch=$(if [ $GBUILD_BITS = 32 ]; then echo ia32; else echo x64; fi)"
   # Do not use bundled utilities.





More information about the tor-commits mailing list