sudo: required language: c git: depth: false services: - docker # We don't need the strict sequence of stages; for now we use stages # only as presentation labels. Nothing in stage "tests" will run if # anything in buildonly fails; in the future we may want to get rid of # stages. stages: - buildonly - tests # 'name:'-less jobs appear with their env, e.g.: PLATFORM=sue jobs: include: # stage buildonly - &build-platform stage: buildonly before_install: &docker-pull-sof docker pull thesofproject/sof && docker tag thesofproject/sof sof script: ./scripts/docker-run.sh ./scripts/xtensa-build-all.sh -r $PLATFORM env: PLATFORM='sue' - <<: *build-platform env: PLATFORM='jsl' - <<: *build-platform env: PLATFORM='tgl' - name: "./scripts/build-tools.sh" before_install: *docker-pull-sof script: ./scripts/docker-run.sh ./scripts/build-tools.sh - name: "./scripts/host-build-all.sh" before_install: *docker-pull-sof script: ./scripts/docker-run.sh ./scripts/host-build-all.sh -l # stage tests - &qemuboottest stage: tests script: - sed -i $(($(grep "config HAVE_AGENT" -n src/platform/Kconfig | cut -f1 -d:)+2))"s/default y/default n/" src/platform/Kconfig - ./scripts/docker-run.sh ./scripts/xtensa-build-all.sh -r $PLATFORM - ./scripts/docker-qemu.sh ../sof.git/scripts/qemu-check.sh $PLATFORM env: PLATFORM='byt cht' before_install: - *docker-pull-sof - docker pull thesofproject/sofqemu && docker tag thesofproject/sofqemu sofqemu - <<: *qemuboottest env: PLATFORM='bdw hsw' - <<: *qemuboottest env: PLATFORM='apl skl kbl' - <<: *qemuboottest env: PLATFORM='cnl icl' - <<: *qemuboottest env: PLATFORM='imx8 imx8x imx8m' - name: testbench before_install: *docker-pull-sof script: # testbench needs some topologies - ./scripts/docker-run.sh ./scripts/build-tools.sh -t - ./scripts/docker-run.sh ./scripts/rebuild-testbench.sh - ./scripts/host-testbench.sh - name: doxygen before_install: sudo apt-get -y install ninja-build doxygen graphviz script: # Show ALL warnings. Warnings don't cause doxygen to fail (yet). - mkdir -p doxybuild && pushd doxybuild && cmake -GNinja -S ../doc && ninja -v doc - popd # Build again (it's very quick) and report a failure in Travis if # any issue. This time doxygen stops on the first issue. - printf 'WARN_AS_ERROR = YES\n' >> doc/sof.doxygen.in - ninja -C doxybuild -v doc notifications: irc: channels: - "chat.freenode.net#sof" on_success: always on_failure: always