Retro68/azure-pipelines.yml
2022-01-01 16:14:27 +01:00

106 lines
3.2 KiB
YAML

trigger:
- master
jobs:
- job: Linux
pool:
vmImage: 'ubuntu-20.04'
steps:
- checkout: self
submodules: true
- script: |
sudo apt-get update
DEBIAN_FRONTEND=noninteractive sudo apt-get install -y \
cmake libgmp-dev libmpfr-dev libmpc-dev \
libboost-all-dev bison texinfo \
ruby flex curl
displayName: 'Install prerequisites'
- script: |
mkdir build
cd build
../build-toolchain.bash
displayName: 'Build'
- script: |
cd build
curl -L -O https://github.com/autc04/executor/releases/download/v0.1.0/Executor2000-0.1.0-Linux.tar.bz2
tar xfvj Executor2000-0.1.0-Linux.tar.bz2 Executor2000-0.1.0-Linux/bin/executor-headless
echo "executor-path=`pwd`/Executor2000-0.1.0-Linux/bin/executor-headless" > ~/.LaunchAPPL.cfg
echo "emulator=executor" >> ~/.LaunchAPPL.cfg
ctest --no-compress-output -T test -E Carbon || true
displayName: Run Tests using Executor 2000
- task: PublishTestResults@2
inputs:
testResultsFormat: 'CTest'
testResultsFiles: build/Testing/**/*.xml
buildPlatform: 'x86_64-linux'
- job: macOS
pool:
vmImage: 'macOS-10.15'
steps:
- checkout: self
submodules: true
- script: |
brew install boost cmake gmp mpfr libmpc bison
displayName: 'Brew prerequisites'
- script: |
mkdir build
cd build
../build-toolchain.bash
displayName: Build
- script: |
cd build
curl -L -O https://github.com/autc04/executor/releases/download/v0.1.0/Executor2000-0.1.0-Darwin.tar.bz2
tar xfvj Executor2000-0.1.0-Darwin.tar.bz2 Executor2000-0.1.0-Darwin/bin/executor-headless
echo "executor-path=`pwd`/Executor2000-0.1.0-Darwin/bin/executor-headless" > ~/.LaunchAPPL.cfg
echo "emulator=executor" >> ~/.LaunchAPPL.cfg
ctest --no-compress-output -T test -E Carbon || true
displayName: Run Tests using Executor 2000
- task: PublishTestResults@2
inputs:
testResultsFormat: 'CTest'
testResultsFiles: build/Testing/**/*.xml
buildPlatform: 'x86_64-macos'
- job: nix_68k
pool:
vmImage: 'ubuntu-20.04'
steps:
- checkout: self
submodules: true
- script: |
docker run -i --name nix -v`pwd`:/src nixos/nix:latest <<EOF
chmod 1777 /tmp
nix-channel --add https://nixos.org/channels/nixos-21.11 nixpkgs
nix-channel --update
nix-build src -A m68k.retro68.samples
EOF
displayName: Build inside nixos/nix docker
- script: |
docker cp -L nix:result - | tar x --strip-components 1
displayName: Copy result out of docker
- publish: Applications
artifact: 68K Applications
- job: nix_ppc
pool:
vmImage: 'ubuntu-20.04'
steps:
- checkout: self
submodules: true
- script: |
docker run -i --name nix -v`pwd`:/src nixos/nix:latest <<EOF
chmod 1777 /tmp
nix-channel --add https1://nixos.org/channels/nixos-21.11 nixpkgs
nix-channel --update
nix-build src -A powerpc.retro68.samples
EOF
displayName: Build inside nixos/nix docker
- script: |
docker cp -L nix:result - | tar x --strip-components 1
displayName: Copy result out of docker
- publish: Applications
artifact: PowerPC Applications