mirror of
https://github.com/henrydcase/pqc.git
synced 2024-11-26 17:31:38 +00:00
5f0ddcad78
* Add ccache to speed up builds * Fix circleci config * fixup! Fix circleci config * Try again with environment variables * Set up ccache on MacOS
238 lines
14 KiB
YAML
238 lines
14 KiB
YAML
language: c
|
|
|
|
matrix:
|
|
include:
|
|
# Arm64 builds
|
|
- name: "KEMs: ARM64 + GCC"
|
|
os: linux
|
|
arch: arm64
|
|
compiler: gcc
|
|
before_script:
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
script:
|
|
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF --rm -v ~/.ccache:/ccache -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
|
|
uname -a &&
|
|
export CCACHE_DIR=/ccache &&
|
|
export CCACHE_NOSTATS=1 &&
|
|
export CCACHE_SLOPPINESS=include_file_mtime &&
|
|
export CC=\"ccache ${CC}\" &&
|
|
pip3 install -r requirements.txt &&
|
|
mkdir test-results &&
|
|
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: kem
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
services:
|
|
- docker
|
|
- name: "KEMs: ARM64 + Clang"
|
|
os: linux
|
|
arch: arm64
|
|
compiler: clang
|
|
before_script:
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
script:
|
|
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF --rm -v ~/.ccache:/ccache -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
|
|
uname -a &&
|
|
export CCACHE_NOSTATS=1 &&
|
|
export CCACHE_DIR=/ccache &&
|
|
export CCACHE_SLOPPINESS=include_file_mtime &&
|
|
export CC=\"ccache ${CC}\" &&
|
|
pip3 install -r requirements.txt &&
|
|
mkdir test-results &&
|
|
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: kem
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
services:
|
|
- docker
|
|
- name: "Signs: ARM64 + GCC"
|
|
os: linux
|
|
arch: arm64
|
|
compiler: gcc
|
|
before_script:
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
script:
|
|
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF -e PQCLEAN_SKIP_SCHEMES --rm -v ~/.ccache:/ccache -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
|
|
uname -a &&
|
|
export CCACHE_NOSTATS=1 &&
|
|
export CCACHE_DIR=/ccache &&
|
|
export CCACHE_SLOPPINESS=include_file_mtime &&
|
|
export CC=\"ccache ${CC}\" &&
|
|
pip3 install -r requirements.txt &&
|
|
mkdir test-results &&
|
|
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: sign
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
|
|
services:
|
|
- docker
|
|
- name: "signs: ARM64 + Clang"
|
|
os: linux
|
|
arch: arm64
|
|
compiler: clang
|
|
before_script:
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
script:
|
|
- travis_wait 60 docker run -e CI=true -e PQCLEAN_ONLY_TYPES -e PQCLEAN_ONLY_DIFF=1 -e PQCLEAN_SKIP_SCHEMES --rm -v ~/.ccache:/ccache -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:arm64" /bin/bash -c "
|
|
uname -a &&
|
|
export CCACHE_NOSTATS=1 &&
|
|
export CCACHE_DIR=/ccache &&
|
|
export CCACHE_SLOPPINESS=include_file_mtime &&
|
|
export CC=\"ccache ${CC}\" &&
|
|
pip3 install -r requirements.txt &&
|
|
mkdir test-results &&
|
|
cd test && python3 -m pytest --verbose --junitxml=test-results/pytest/results.xml --numprocesses=auto"
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: sign
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
|
|
services:
|
|
- docker
|
|
|
|
# MacOS builds
|
|
- name: "KEMs: MacOS + Clang"
|
|
os: osx
|
|
osx_image: xcode11.2
|
|
compiler: clang
|
|
before_install:
|
|
- pip3 install -r requirements.txt
|
|
before_script:
|
|
- export CCACHE_NOSTATS=1
|
|
- export CCACHE_SLOPPINESS=include_file_mtime
|
|
- export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
script:
|
|
# Use travis-wait to allow slower tests to run
|
|
- "cd test && travis_wait 60 python3 -m pytest --numprocesses=auto"
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: kem
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
|
|
addons:
|
|
homebrew:
|
|
packages:
|
|
- astyle
|
|
- ccache
|
|
- name: "KEMs: MacOS + GCC9"
|
|
os: osx
|
|
osx_image: xcode11.2
|
|
compiler: gcc
|
|
addons:
|
|
homebrew:
|
|
packages:
|
|
- astyle
|
|
- ccache
|
|
- gcc@9
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: kem
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
|
|
before_install:
|
|
- export CCACHE_NOSTATS=1
|
|
- export CCACHE_SLOPPINESS=include_file_mtime
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
- pip3 install -r requirements.txt
|
|
- brew link gcc
|
|
- export PATH="/usr/local/bin:$PATH"
|
|
- export CC="ccache gcc"
|
|
- ln -s /usr/local/bin/gcc-9 /usr/local/bin/gcc
|
|
- gcc --version
|
|
script:
|
|
# Use travis-wait to allow slower tests to run
|
|
- "cd test && travis_wait 60 python3 -m pytest --numprocesses=auto"
|
|
- name: "SIGs on MacOS + Clang"
|
|
os: osx
|
|
osx_image: xcode11.2
|
|
compiler: clang
|
|
before_install:
|
|
- pip3 install -r requirements.txt
|
|
before_script:
|
|
- export CCACHE_NOSTATS=1
|
|
- export CCACHE_SLOPPINESS=include_file_mtime
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
- export PATH="/usr/local/opt/ccache/libexec:$PATH"
|
|
script:
|
|
# Use travis-wait to allow slower tests to run
|
|
- "cd test && travis_wait 60 python3 -m pytest --numprocesses=auto"
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: sign
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
|
|
addons:
|
|
homebrew:
|
|
packages:
|
|
- astyle
|
|
- ccache
|
|
- name: "SIGs on MacOS + GCC9"
|
|
os: osx
|
|
osx_image: xcode11.2
|
|
compiler: gcc
|
|
addons:
|
|
homebrew:
|
|
packages:
|
|
- astyle
|
|
- ccache
|
|
- gcc@9
|
|
env:
|
|
PQCLEAN_ONLY_TYPES: sign
|
|
PQCLEAN_ONLY_DIFF: 1
|
|
PQCLEAN_SKIP_SCHEMES: sphincs-haraka-128f-robust,sphincs-haraka-192s-robust,sphincs-sha256-128f-robust,sphincs-sha256-192s-robust,sphincs-shake256-128f-robust,sphincs-shake256-192s-robust,sphincs-haraka-128f-simple,sphincs-haraka-192s-simple,sphincs-sha256-128f-simple,sphincs-sha256-192s-simple,sphincs-shake256-128f-simple,sphincs-shake256-192s-simple,sphincs-haraka-128s-robust,sphincs-haraka-256f-robust,sphincs-sha256-128s-robust,sphincs-sha256-256f-robust,sphincs-shake256-128s-robust,sphincs-shake256-256f-robust,sphincs-haraka-128s-simple,sphincs-haraka-256f-simple,sphincs-sha256-128s-simple,sphincs-sha256-256f-simple,sphincs-shake256-128s-simple,sphincs-shake256-256f-simple,sphincs-haraka-192f-robust,sphincs-haraka-256s-robust,sphincs-sha256-192f-robust,sphincs-sha256-256s-robust,sphincs-shake256-192f-robust,sphincs-shake256-256s-robust,sphincs-haraka-192f-simple,sphincs-haraka-256s-simple,sphincs-sha256-192f-simple,sphincs-sha256-256s-simple,sphincs-shake256-192f-simple,sphincs-shake256-256s-simple
|
|
before_install:
|
|
- export CCACHE_NOSTATS=1
|
|
- export CCACHE_SLOPPINESS=include_file_mtime
|
|
- export COMMIT=$(git rev-parse HEAD)
|
|
- git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/*
|
|
- git fetch --unshallow
|
|
- git checkout $TRAVIS_BRANCH
|
|
- git reset --hard $COMMIT
|
|
- pip3 install -r requirements.txt
|
|
- brew link gcc
|
|
- export PATH="/usr/local/bin:$PATH"
|
|
- export CC="ccache gcc"
|
|
- ln -s /usr/local/bin/gcc-9 /usr/local/bin/gcc
|
|
- gcc --version
|
|
script:
|
|
# Use travis-wait to allow slower tests to run
|
|
- "cd test && travis_wait 60 python3 -m pytest --numprocesses=auto"
|
|
|
|
|
|
cache:
|
|
directories:
|
|
- $HOME/Library/Caches/pip
|
|
- $HOME/Library/Caches/Homebrew
|
|
- $HOME/.ccache
|
|
|
|
before_cache:
|
|
- brew cleanup
|
|
|
|
# vim: set ft=yaml ts=2 sw=2 tw=0 et :
|