blob: ee2608a8f1bcac41c03c795c619ea1d3e1d2cee4 [file] [log] [blame]
Colin Cross0ffa5a02016-04-01 16:45:40 -07001#!/bin/bash -ex
2
3if [ -z "${OUT_DIR}" ]; then
4 echo Must set OUT_DIR
5 exit 1
6fi
7
8TOP=$(pwd)
9
10UNAME="$(uname)"
11case "$UNAME" in
12Linux)
13 OS='linux'
14 ;;
15Darwin)
16 OS='darwin'
17 ;;
18*)
19 exit 1
20 ;;
21esac
22
23build_soong=1
24if [ -d ${TOP}/toolchain/go ]; then
25 build_go=1
26fi
Colin Cross0ffa5a02016-04-01 16:45:40 -070027
28if [ -n ${build_soong} ]; then
29 # ckati and makeparallel (Soong)
30 SOONG_OUT=${OUT_DIR}/soong
31 SOONG_HOST_OUT=${OUT_DIR}/soong/host/${OS}-x86
32 rm -rf ${SOONG_OUT}
33 mkdir -p ${SOONG_OUT}
34 cat > ${SOONG_OUT}/soong.variables << EOF
35{
36 "Allow_missing_dependencies": true,
37 "HostArch":"x86_64",
38 "HostSecondaryArch":"x86",
39
40 "DeviceName": "generic",
41 "DeviceArch": "arm",
42 "DeviceArchVariant": "armv7-a",
43 "DeviceCpuVariant": "generic"
44}
45EOF
46 BUILDDIR=${SOONG_OUT} ./bootstrap.bash
Dan Willemsen76748492016-04-21 12:40:04 -070047 ${SOONG_OUT}/soong ${SOONG_HOST_OUT}/bin/ckati ${SOONG_HOST_OUT}/bin/makeparallel ${SOONG_HOST_OUT}/bin/ninja ${SOONG_HOST_OUT}/nativetest64/ninja_test/ninja_test
Colin Cross0ffa5a02016-04-01 16:45:40 -070048 (
49 cd ${SOONG_HOST_OUT}
50 zip -qryX build-prebuilts.zip bin/ lib*/
51 )
Dan Willemsen76748492016-04-21 12:40:04 -070052 ${SOONG_HOST_OUT}/nativetest64/ninja_test/ninja_test
Colin Cross0ffa5a02016-04-01 16:45:40 -070053fi
54
55# Go
56if [ -n ${build_go} ]; then
57 GO_OUT=${OUT_DIR}/obj/go
58 rm -rf ${GO_OUT}
59 mkdir -p ${GO_OUT}
60 cp -a ${TOP}/toolchain/go/* ${GO_OUT}/
61 (
62 cd ${GO_OUT}/src
63 export GOROOT_BOOTSTRAP=${TOP}/prebuilts/go/${OS}-x86
Colin Cross42f43d92016-04-18 12:31:06 -070064 export GOROOT_FINAL=./prebuilts/go/${OS}-x86
Colin Cross0ffa5a02016-04-01 16:45:40 -070065 export GO_TEST_TIMEOUT_SCALE=100
66 ./make.bash
67 GOROOT=$(pwd)/.. ../bin/go install -race std
68 )
69 (
70 cd ${GO_OUT}
71 zip -qryX go.zip *
72 )
73fi
74
75if [ -n "${DIST_DIR}" ]; then
76 mkdir -p ${DIST_DIR} || true
77
78 if [ -n ${build_soong} ]; then
79 cp ${SOONG_HOST_OUT}/build-prebuilts.zip ${DIST_DIR}/
80 fi
Colin Cross0ffa5a02016-04-01 16:45:40 -070081 if [ -n ${build_go} ]; then
82 cp ${GO_OUT}/go.zip ${DIST_DIR}/
83 fi
84fi