* Ensure build without an executable stack (fixes#1285)
Until it is clear why the shared library on mips64el and hppa is built
with the executable bit set for the stack, build with both
`-Wa,--noexecstack` (for the assembler) and `-Wl,-z,--noexecstack` (for
the linker).
* Check if compiler/linker support flags for noexecstack before using them
* Add a warning if unable to check for support
* Solve '-Wstrict-prototypes'
Manual changes are applied to the following algorithms only:
* Bike
* Frodo
* Picnic
* Add prototype for implementation of `OQS_SIG_alg_count`
* Add prototype for implementation of `OQS_KEM_alg_count`
* Run `copy_from_upstream.py`
Now, the constructors have a full prototype. It compiles with clang 16.0
The script `scripts/update_docs_from_yaml.py` is using the python package
`tabulate`. It is missing from the `requirements.txt` file.
This PR adds it the the `requirements.txt` file.
* Updated to SIKE v3.5.1
* Prettyprint
* Newline at the end of the file (to avoid error from -Wnewline-eof)
* Wrap logical not check in parenthesis, to avoid error from -Wlogical-not-parentheses
* Added empty functions to avoid unused errors on macOS
* Adding extra empty line at the end of assembly files to avoid newline-eof errors
* Fixing missing newlines at the end of the .S files
* Initialized some sike values
* Initialized a sike value
* Small edits
* Initialized some more SIKE variables
* sike cmake update
* include for windows
Co-authored-by: Basil Hess <bhe@zurich.ibm.com>
* Added FreeBSD cpu feature detection to common/common.c
* Updated common/common.c to use __FreeBSD__ instead of __FREEBSD__
* added FreeBSD support to SIKE's CmakeLists.txt
* Added FreeBSD cpu feature detection to common/common.c
* Updated common/common.c to use __FreeBSD__ instead of __FREEBSD__
* added FreeBSD support to SIKE's CmakeLists.txt
* Added in comment to common.c to keep consistent with other platforms
* Added FreeBSD cpu feature detection to common/common.c
* Updated common/common.c to use __FreeBSD__ instead of __FREEBSD__
* added FreeBSD support to SIKE's CmakeLists.txt
* Added in comment to common.c to keep consistent with other platforms
* Updated documentation to say FreeBSD is support on aarch64
* Updated docs to indicated that SIKE is supported on FreeBSD on aarch64
* Updated sig templates to add support for arch specific upstreams. Currently behaves as expected, but still need to test (and integrate) dilithium
* Fixed a couple of build errors, and started work on dilithium integration from pqclean. Currently failing kat tests
* Updated templating for both sig and kem to make them look a little better
* Renamed dilithium folders so they are consistent across pqclean and pqcrystals so that copy_from_upstream script will function correctly
* Added arm optimized version of dilithium[2|3|5]
* Updating other signature schemes CMakeLists.txt to be the output of the updated templates
* Arm optimized implementation of dilithium is added, with randomized signing patched into it. copy_from_upstream script is working properly. Still need to update the update_docs scripts before ready to merge
* Finished updating docs scripts and yml files. Builds pass, so should be ready for a merge
* Fixed template issue with multiple compile flags
* Updated doc generation scripts so that all '_' in scheme names are replaced with '\_'