pq-crystals / dilithium

Other
391 stars 144 forks source link

CCI enablement #18

Closed baentsch closed 4 years ago

baentsch commented 4 years ago

This implements #17

It exposes a weakness in using -mnative (if AVX2 is not native)...

It's a start for cross-platform testing but needs to be improved on as it relies on a UNIX shell script (see https://github.com/pq-crystals/dilithium/issues/16#issuecomment-639261587)

coveralls commented 4 years ago

Coverage Status

Coverage increased (+91.2%) to 91.187% when pulling 259cacc17af99b041147d655aae8dde0d13e84a2 on baentsch:cci-enablement into 19980fb52ce6b4b9ee0bacc6c63f5b11d0338a8d on pq-crystals:master.

gregorseiler commented 4 years ago

We already use Travis CI as a CI system, albeit only for the code coverage check. I have expanded this now. So all our tests and the verification of the test vectors are now performed on the following platforms on Travis CI:

linux-amd64 + gcc linux-amd64 + clang linux-arm64 + gcc linux-arm64 + clang linux-ppc64le + gcc linux-ppc64le + clang linux-s390 + gcc linux-s390 + clang osx-amd64 + clang

Therefore, I don't currently see a need for also integrating CircleCI into our workflow.

baentsch commented 4 years ago

The support for s390 is a good argument speaking for Travis CI. CCI would have given you Windows testing support -- albeit only under a commercial account. With the decision above I'm afraid I have to withdraw my offer to help you getting Windows (testing) support.

gregorseiler commented 4 years ago

Travis CI also supports Windows, even for open source projects, but our code and build system doesn't yet. Therefore I haven't included Windows for now. With your help with CMake we will hopefully be able to add testing on Windows soon.