diff --git a/.circleci/config.yml b/.circleci/config.yml new file mode 100644 index 00000000..810608fa --- /dev/null +++ b/.circleci/config.yml @@ -0,0 +1,97 @@ +version: 2 + +.emulated_job: &defaultjob + machine: true + steps: + - checkout + - run: + name: Install the emulation handlers + command: docker run --rm --privileged multiarch/qemu-user-static:register --reset + - run: + name: Run the tests in a container + command: | + docker run --rm -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:$ARCH" /bin/bash -c " + uname -a && + export CC=${CC} && + cd test && python3 -m nose --rednose --verbose" + +.native_job: &nativejob + docker: + - image: pqclean/ci-container:$ARCH + steps: + - checkout + - run: + name: Run tests + command: | + export CC=${CC} + cd test && python3 -m nose --rednose --verbose + + +jobs: + arm64-gcc: + <<: *defaultjob + environment: + CC: gcc + ARCH: arm64 + arm64-clang: + <<: *defaultjob + environment: + CC: clang + ARCH: arm64 + arm32-gcc: + <<: *defaultjob + environment: + CC: gcc + ARCH: armhf + arm32-clang: + <<: *defaultjob + environment: + CC: clang + ARCH: armhf + ppc-clang: + <<: *defaultjob + environment: + CC: clang + ARCH: unstable-ppc + ppc-gcc: + <<: *defaultjob + environment: + CC: gcc + ARCH: unstable-ppc + amd64-gcc: + <<: *nativejob + environment: + CC: gcc + ARCH: amd64 + amd64-clang: + <<: *nativejob + environment: + CC: gcc + ARCH: amd64 + i386-gcc: + <<: *nativejob + environment: + CC: gcc + ARCH: i386 + i386-clang: + <<: *nativejob + environment: + CC: gcc + ARCH: i386 + +workflows: + version: 2 + build: + jobs: + - arm64-gcc + - arm64-clang + - arm32-gcc + - arm32-clang + - ppc-gcc + - ppc-clang + - amd64-gcc + - amd64-clang + - i386-gcc + - i386-clang + +# vim: set ft=yaml ts=2 sw=2 tw=0 et : diff --git a/.travis.yml b/.travis.yml index e19a1f35..d9629b7a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,3 @@ -dist: xenial -language: minimal - matrix: include: - name: "MacOS + Clang" @@ -26,26 +23,6 @@ matrix: - "cd test && python3 -m nose --rednose --verbose" -env: - matrix: - - CC=gcc ARCH=armhf - - CC=clang ARCH=armhf - - CC=gcc ARCH=arm64 - - CC=clang ARCH=arm64 - - CC=gcc ARCH=i386 - - CC=clang ARCH=i386 - - CC=gcc ARCH=amd64 - - CC=clang ARCH=amd64 - - CC=gcc ARCH=unstable-ppc - - CC=clang ARCH=unstable-ppc - -script: - - docker run --rm --privileged multiarch/qemu-user-static:register --reset - - docker run --rm -v `pwd`:`pwd` -w `pwd` "pqclean/ci-container:$ARCH" /bin/bash -c " - uname -a && - export CC=${CC} && - cd test && python3 -m nose --rednose --verbose" - cache: pip # vim: set ft=yaml ts=2 sw=2 tw=0 et : diff --git a/README.md b/README.md index 9f3b0216..c15dd272 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,8 @@ # PQClean -[![Build Status](https://travis-ci.com/PQClean/PQClean.svg?branch=master)](https://travis-ci.com/PQClean/PQClean) -[![Build status](https://ci.appveyor.com/api/projects/status/186ky7yb9mlqj3io/branch/master?svg=true)](https://ci.appveyor.com/project/PQClean/pqclean/branch/master) +[![Build Status on Travis CI](https://travis-ci.com/PQClean/PQClean.svg?branch=master)](https://travis-ci.com/PQClean/PQClean) +[![Build Status on Appveyor](https://ci.appveyor.com/api/projects/status/186ky7yb9mlqj3io/branch/master?svg=true)](https://ci.appveyor.com/project/PQClean/pqclean/branch/master) +[![Build Status on CircleCI](https://circleci.com/gh/PQClean/PQClean/tree/master.svg?style=svg)](https://circleci.com/gh/PQClean/PQClean/tree/master) **PQClean**, in short, is an effort to collect **clean** implementations of the post-quantum schemes that are in the