| OLD | NEW |
| (Empty) | |
| 1 |
| 2 #!/bin/bash |
| 3 set -o nounset |
| 4 set -o errexit |
| 5 |
| 6 |
| 7 readonly SYSROOT=$(pwd)/arm_jail |
| 8 |
| 9 readonly TC_URL_PREFIX=https://commondatastorage.googleapis.com/nativeclient-arc
hive2/toolchain |
| 10 readonly TC_REV=7000 |
| 11 |
| 12 |
| 13 |
| 14 readonly CROSS_ARM_TC_PACKAGES="\ |
| 15 gcc-4.5-arm-linux-gnueabi-base \ |
| 16 libc6-armel-cross \ |
| 17 libc6-dev-armel-cross \ |
| 18 libgcc1-armel-cross \ |
| 19 libgomp1-armel-cross \ |
| 20 linux-libc-dev-armel-cross \ |
| 21 libgcc1-dbg-armel-cross \ |
| 22 libgomp1-dbg-armel-cross \ |
| 23 libstdc++6-4.4-dev-armel-cross \ |
| 24 binutils-arm-linux-gnueabi \ |
| 25 gcc-4.5-locales \ |
| 26 cpp-4.5-arm-linux-gnueabi \ |
| 27 cpp-arm-linux-gnueabi \ |
| 28 gcc-4.5-arm-linux-gnueabi \ |
| 29 libmudflap0-4.5-dev-armel-cross \ |
| 30 libmudflap0-dbg-armel-cross |
| 31 " |
| 32 |
| 33 readonly GYP_DEFINES="\ |
| 34 target_arch=arm \ |
| 35 armv7=1 \ |
| 36 sysroot=${SYSROOT} \ |
| 37 remoting=0 \ |
| 38 linux_breakpad=0 \ |
| 39 disable_nacl_untrusted=1 \ |
| 40 linux_use_tcmalloc=0 |
| 41 " |
| 42 |
| 43 |
| 44 ###################################################################### |
| 45 export GYP_DEFINES |
| 46 export SYSROOT |
| 47 |
| 48 ###################################################################### |
| 49 |
| 50 |
| 51 #@ run this once on your system to install necessary crosstoolchain |
| 52 #@ binaries - NOTE: sudo required |
| 53 #@ |
| 54 install-cross-toolchain-base() { |
| 55 sudo apt-get install ${CROSS_ARM_TC_PACKAGES} |
| 56 } |
| 57 |
| 58 |
| 59 #@ run this once for each chrome checkout inside src/ |
| 60 #@ (this could be shared across chrome checkouts as well) |
| 61 #@ |
| 62 install-cross-toolchain-jail() { |
| 63 local tarball=$(pwd)/jail.tgz |
| 64 |
| 65 curl -L \ |
| 66 ${TC_URL_PREFIX}/${TC_REV}/naclsdk_linux_arm-trusted.tgz \ |
| 67 -o ${tarball} |
| 68 |
| 69 |
| 70 rm -rf ${SYSROOT} |
| 71 mkdir -p ${SYSROOT} |
| 72 tar zxf ${tarball} -C ${SYSROOT} |
| 73 } |
| 74 |
| 75 |
| 76 #@ |
| 77 #@ |
| 78 configure-chrome() { |
| 79 # note this reads GYP_DEFINES |
| 80 gclient runhooks |
| 81 } |
| 82 |
| 83 |
| 84 #@ |
| 85 #@ |
| 86 make-chrome() { |
| 87 make V=99 BUILDTYPE=Release CC=${SYSROOT}/chrome.cc.arm.sh CXX=${SYSROOT}/chr
ome.c++.arm.sh CC.host=${SYSROOT}/chrome.cc.host.sh CXX.host=${SYSROOT}/chrome.c
++.host.sh -j 16 chrome |
| 88 } |
| 89 |
| 90 package-chrome() { |
| 91 tar cfvz chrome-arm.tgz out/Release/chrome \ |
| 92 out/Release/lib*.so \ |
| 93 out/Release/chrome.pak \ |
| 94 out/Release/resources.pak \ |
| 95 out/Release/locales |
| 96 } |
| 97 |
| 98 ###################################################################### |
| 99 # DISPATCH |
| 100 ###################################################################### |
| 101 Usage() { |
| 102 egrep "^#@" $0 | cut --bytes=3- |
| 103 } |
| 104 |
| 105 |
| 106 if [[ $# -eq 0 ]] ; then |
| 107 echo "you must specify a mode on the commandline:" |
| 108 echo |
| 109 Usage |
| 110 exit -1 |
| 111 elif [[ "$(type -t $1)" != "function" ]]; then |
| 112 echo "ERROR: unknown function '$1'." >&2 |
| 113 echo "For help, try:" |
| 114 echo " $0 help" |
| 115 exit 1 |
| 116 else |
| 117 "$@" |
| 118 fi |
| OLD | NEW |