Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 1 | # Travis configuration file for downloading and building OP-TEE according to the |
| 2 | # instructions in build.git |
| 3 | language: bash |
| 4 | |
| 5 | notifications: |
| 6 | email: |
| 7 | recipients: |
| 8 | - op-tee@linaro.org |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 9 | on_success: change |
| 10 | on_failure: always |
| 11 | |
| 12 | dist: trusty |
| 13 | sudo: required |
| 14 | group: beta |
| 15 | |
| 16 | cache: |
| 17 | directories: |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 18 | - $HOME/.ccache |
| 19 | |
| 20 | git: |
Joakim Bech | 4b8b553 | 2017-04-05 19:11:38 +0200 | [diff] [blame] | 21 | depth: 10 |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 22 | |
| 23 | after_script: |
| 24 | - ccache -s |
| 25 | |
| 26 | before_install: |
| 27 | - ccache -s |
| 28 | - sudo dpkg --add-architecture i386 |
| 29 | - sudo apt-get update -qq |
Joakim Bech | 4b8b553 | 2017-04-05 19:11:38 +0200 | [diff] [blame] | 30 | # Package list taken from README.md |
Joakim Bech | aff02a6 | 2017-04-05 15:38:48 +0200 | [diff] [blame] | 31 | - sudo apt-get install -qq -y android-tools-adb android-tools-fastboot autoconf automake bc bison build-essential cscope curl device-tree-compiler flex ftp-upload gdisk iasl libattr1-dev libc6:i386 libcap-dev libfdt-dev libftdi-dev libglib2.0-dev libhidapi-dev libncurses5-dev libpixman-1-dev libssl-dev libstdc++6:i386 libtool libz1:i386 make mtools netcat python-crypto python-serial python-wand unzip uuid-dev xdg-utils xterm xz-utils zlib1g-dev |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 32 | |
| 33 | install: true |
| 34 | |
| 35 | env: |
| 36 | - $REPO_PROJ=default |
| 37 | - $REPO_PROJ=fvp |
| 38 | - $REPO_PROJ=hikey |
Victor Chong | b1bcc75 | 2017-08-09 16:09:33 +0100 | [diff] [blame] | 39 | - $REPO_PROJ=hikey960 |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 40 | - $REPO_PROJ=juno |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 41 | - $REPO_PROJ=qemu_v8 |
| 42 | - $REPO_PROJ=rpi3 |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 43 | |
| 44 | before_script: |
Joakim Bech | 831b580 | 2017-07-09 10:08:23 +0200 | [diff] [blame] | 45 | - mkdir -p $HOME/bin |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 46 | - cd $HOME/bin && wget https://storage.googleapis.com/git-repo-downloads/repo && chmod +x repo |
| 47 | - export PATH=$HOME/bin:$PATH |
Joakim Bech | 4b8b553 | 2017-04-05 19:11:38 +0200 | [diff] [blame] | 48 | - mkdir -p $HOME/$REPO_PROJ |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 49 | |
| 50 | script: |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 51 | # Special case for FVP, since we check for the Foundation_Platformpkg folder |
Joakim Bech | 4b8b553 | 2017-04-05 19:11:38 +0200 | [diff] [blame] | 52 | # in the makefile. |
Joakim Bech | e707cbb | 2017-01-27 10:00:05 +0100 | [diff] [blame] | 53 | - if [ $REPO_PROJ == "fvp" ]; then mkdir -p $HOME/$REPO_PROJ/Foundation_Platformpkg; fi |
| 54 | - cd $HOME/$REPO_PROJ && repo init -u https://github.com/OP-TEE/manifest.git -m $REPO_PROJ.xml </dev/null && repo sync -j2 --no-clone-bundle --no-tags --quiet |
Jerome Forissier | e28c701 | 2017-02-24 10:05:52 +0100 | [diff] [blame] | 55 | # Fetch a local copy of dtc+libfdt to avoid issues with a possibly outdated libfdt-dev |
| 56 | - if [ $REPO_PROJ == "qemu_v8" ]; then cd $HOME/$REPO_PROJ/qemu && git submodule update --init dtc; fi |
Joakim Bech | 4b8b553 | 2017-04-05 19:11:38 +0200 | [diff] [blame] | 57 | # Here we are using Travis environment variables to select the correct branch |
| 58 | # based on either a pull request or a normal push. |
Joakim Bech | 17bd83b | 2017-06-01 12:18:45 +0200 | [diff] [blame] | 59 | - | |
| 60 | if [ "$TRAVIS_EVENT_TYPE" == "pull_request" ]; then |
| 61 | slug=$TRAVIS_PULL_REQUEST_SLUG |
| 62 | branch=$TRAVIS_PULL_REQUEST_BRANCH |
| 63 | else |
| 64 | slug=$TRAVIS_REPO_SLUG |
| 65 | branch=$TRAVIS_BRANCH |
| 66 | fi |
Joakim Bech | 6990294 | 2018-02-26 08:47:29 +0100 | [diff] [blame] | 67 | - cd $HOME/$REPO_PROJ/build && git remote add github_remote https://github.com/$slug && git remote update |
| 68 | - cd $HOME/$REPO_PROJ/build && git checkout github_remote/$branch |
Joakim Bech | 4b8b553 | 2017-04-05 19:11:38 +0200 | [diff] [blame] | 69 | - cd $HOME/$REPO_PROJ/build && make -f toolchain.mk toolchains -j3 && make all -j`nproc` |