commit 38689af2a845dfa85765bf52e535c89476863378 Author: David Fifield david@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.