image: derfnull/multipass-ci:2020.08.13.2

stages:
  - build
  - test

build_esp8266:
  stage: build
  before_script:
  - export TOOLCHAIN_BASE=/opt/xtensa-lx106-elf/bin
  - export SDK_BASE=/opt/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr
  script:
  - curl -s https://ess.cs.uos.de/static/.gitlab-ci/xtensa-lx106-elf.tar.xz | tar -C /opt -xJf -
  - mkdir -p build
  - sh -x tests/build-esp8266

build_posix:
  stage: build
  script:
  - mkdir -p build
  - ./mp arch=posix app=donothing
  - ./mp arch=posix app=ledblink loop=1 timer_s=1
  - ./mp arch=posix app=sysinfo

build_msp430fr5969lp:
  stage: build
  before_script:
  - export PATH="/opt/msp430/ti/msp430-gcc-full-linux-5.1.2.0/bin:$PATH"
  script:
  - curl -s https://ess.cs.uos.de/static/.gitlab-ci/msp430-gcc-full-linux-5.1.2.0.tar.xz | tar -C /opt -xJf -
  - mkdir -p build
  - sh -x tests/build-msp430fr5969lp

build_msp430fr5994lp:
  stage: build
  before_script:
  - export PATH="/opt/msp430/ti/msp430-gcc-full-linux-5.1.2.0/bin:$PATH"
  script:
  - curl -s https://ess.cs.uos.de/static/.gitlab-ci/msp430-gcc-full-linux-5.1.2.0.tar.xz | tar -C /opt -xJf -
  - mkdir -p build
  - sh -x tests/build-msp430fr5994lp

build_stm32f446re-nucleo:
  stage: build
  script:
  - apt-get update -qy
  - apt-get install -y --no-install-recommends gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi libstdc++-arm-none-eabi-newlib git python3
  - mkdir -p build
  - sh -x tests/build-stm32f446re-nucleo

test_posix:
  stage: test
  script:
  - mkdir -p build
  - ./mpm arch=posix app=donothing
