blob: 9dd03bd62490f5defbc162b3016074a123d4330f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
|
- job:
name: 96boards-hikey-uefi
project-type: freestyle
defaults: global
logrotate:
daysToKeep: 30
numToKeep: 30
properties:
- authorization:
anonymous:
- job-read
- job-extended-read
- job-workspace
disabled: false
node: docker-utopic-amd64
display-name: '96boards - HiKey UEFI'
scm:
- git:
url: https://github.com/96boards-hikey/edk2.git
refspec: +refs/heads/hikey:refs/remotes/origin/hikey
name: origin
branches:
- refs/heads/hikey
basedir: linaro-edk2
skip-tag: true
shallow-clone: true
clean: true
wipe-workspace: false
wrappers:
- timestamps
- build-name:
name: '#${BUILD_NUMBER}-${GIT_REVISION,length=8}'
builders:
- linaro-publish-token:
host: builds.96boards.org
- shell: |
#!/bin/bash
set -ex
trap cleanup_exit INT TERM EXIT
cleanup_exit()
{
cd ${WORKSPACE}
rm -rf arm64-tc
rm -rf arm-trusted-firmware
rm -rf uefi-tools
rm -rf l-loader
rm -rf out
}
sudo sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
sudo apt-get update
sudo apt-get install -y python-pycurl python-crypto
# Use pre-installed linaro toolchain
export PATH="${HOME}/srv/toolchain/arm-tc-15.02/bin:${HOME}/srv/toolchain/arm64-tc-15.02/bin:$PATH"
export CROSS_COMPILE_ta_arm64=aarch64-linux-gnu-
export CROSS_COMPILE_ta_arm32=arm-linux-gnueabihf-
# Check out arm-trusted-firmware
git clone -b hikey --depth 1 https://github.com/96boards-hikey/arm-trusted-firmware.git
# Check out optee_os
git clone --depth 1 https://github.com/OP-TEE/optee_os.git
git clone git://git.linaro.org/uefi/uefi-tools.git
export AARCH64_TOOLCHAIN=GCC49
export EDK2_DIR=${WORKSPACE}/linaro-edk2
export UEFI_TOOLS_DIR=${WORKSPACE}/uefi-tools
export JENKINS_WORKSPACE=${WORKSPACE}
unset WORKSPACE
cd ${EDK2_DIR}
${UEFI_TOOLS_DIR}/uefi-build.sh -b RELEASE -a ../arm-trusted-firmware -s ../optee_os hikey
unset WORKSPACE
export WORKSPACE=${JENKINS_WORKSPACE}
cd ${WORKSPACE}
mkdir -p out/optee
cp -a ${EDK2_DIR}/Build/HiKey/RELEASE_GCC49/FV/*.bin out/
cp -a ${EDK2_DIR}/Build/HiKey/RELEASE_GCC49/AARCH64/AndroidFastbootApp.efi out/
# Don't ship BL33_AP_UEFI.fd, mcuimage.bin and tee.bin
# (already included in the firmware image package - fip)
#cp -a ${EDK2_DIR}/Build/HiKey/RELEASE_GCC49/FV/*.fd out/
#cp -a ${EDK2_DIR}/HisiPkg/HiKeyPkg/NonFree/mcuimage.bin out/
rm -f out/tee.bin
# Ship nvme.img with UEFI binaries for convenience
dd if=/dev/zero of=out/nvme.img bs=128 count=1024
# Ship files needed to build OP-TEE test suite
tar -C ${WORKSPACE}/optee_os/out -acvf \
${WORKSPACE}/out/optee/arm-plat-hikey.tar.xz \
arm-plat-hikey/export-ta_arm64 arm-plat-hikey/export-ta_arm32
git clone --depth 1 https://github.com/96boards-hikey/l-loader.git
cd l-loader
ln -s ${WORKSPACE}/out/bl1.bin
make
cp -a l-loader.bin ptable*.img ${WORKSPACE}/out/
cd ${WORKSPACE}
# Publish
test -d ${HOME}/bin || mkdir ${HOME}/bin
wget https://git.linaro.org/ci/publishing-api.git/blob_plain/HEAD:/linaro-cp.py -O ${HOME}/bin/linaro-cp.py
time python ${HOME}/bin/linaro-cp.py \
--server ${PUBLISH_SERVER} \
--link-latest \
out snapshots/hikey/linaro/uefi/${BUILD_NUMBER}
publishers:
- email:
recipients: 'fathi.boudra@linaro.org'
|