1
mirror of https://github.com/jedisct1/libsodium.git synced 2024-12-19 18:15:18 -07:00
Commit Graph

399 Commits

Author SHA1 Message Date
Frank Denis
8b1f568cb1 aarch64: try harder when checking for the crypto extensions 2023-09-12 15:57:03 +02:00
Frank Denis
e15f2f7ffa New attempt to move Appveyor CI scripts to ci/appveyor 2023-09-11 11:42:54 +02:00
Frank Denis
4b9baefce5 Remove Windows/ARM64 support for Visual Studio 2023-09-11 02:19:11 +02:00
Frank Denis
c3b923d6c2 Try moving all the Visual Studio/Appveyor stuff into ci/appveyor 2023-09-11 01:53:09 +02:00
Frank Denis
9dc6b80d8c Bump dev version 2023-09-08 21:44:54 +02:00
Frank Denis
6668dc8008 Require/enable AVX for AES-based ciphers 2023-08-05 09:33:04 +02:00
Frank Denis
890905f946
Add proper CET support (followup to #1290) (#1291) 2023-07-19 18:27:36 +02:00
Frank Denis
8d9ab6cd76 Use CCRandomGenerateBytes if present
Helps with App Store validation rules.
2023-04-16 15:15:53 +02:00
Frank Denis
05b8da1a49 Use CLOCK_MONOTONIC for benchmarking, if possible 2023-02-15 19:42:08 +01:00
Frank Denis
6e8468d875 Support memset_explicit() if available
NetBSD has explicit_memset(), but C23 decided to implement the
same thing but call it memset_explicit() instead. Go figure.
2022-11-21 15:29:44 +01:00
Frank Denis
cda2788e00 Add -Wno-unknown-pragmas if supported 2022-11-16 19:05:39 +01:00
Frank Denis
6a81ad2b25 Repair CFLAGS/ CWFLAGS mixup 2022-11-16 10:59:08 +00:00
Frank Denis
07d83b808e -mcpu=native -> -mtune=native 2022-11-14 23:21:53 +01:00
Frank Denis
870c6fc53f Promote -Wno-deprecated-declarations to CFLAGS 2022-11-13 23:42:34 +01:00
Frank Denis
ad4584d455 Try using -Ofast / -O3 by default 2022-11-13 22:52:29 +01:00
Frank Denis
a3521f1e85 configure.ac: add -Wno-deprecated-declarations 2022-11-13 21:08:41 +01:00
Frank Denis
c281249fd8 Add -Warray-bounds if supported 2022-09-19 15:26:22 +02:00
Frank Denis
69d15f1123 Support gcc-like and C11-like memory fences 2022-03-07 16:47:43 +01:00
Jørgen P. Tjernø
64129657a5
Portability improvements (#1105)
* Move `raise` code to be behind an autoconf check

This moves the call to `raise` behind a `HAVE_RAISE` autoconf check,
in addition to `__wasm__`. This is intended to help porting to
other platforms that don't support `raise` (e.g. modern game consoles).

* Add autoconf check for `sysconf`

Only try to invoke `sysconf` if the target platform supports it, and
don't warn about unknown page size if `PAGE_SIZE` was defined. Add an
include for `sys/param.h` to increase likelihood of finding `PAGE_SIZE`.
This is intended to help porting to other platforms that don't support
`sysconf` (e.g. modern game consoles) that have a fixed hardware page
size.

* Don't try to use raise & sysconf in a WASI environment

Co-authored-by: Frank Denis <124872+jedisct1@users.noreply.github.com>
2021-09-16 20:01:24 +02:00
Frank Denis
c2d66aaec9 WASI: remove wasi-sdk dependency; build module with zig 2021-07-19 12:45:33 +02:00
Frank Denis
b1873666b4 CI: Ubuntu's autoconf version is old - Try with version 2.69 2021-05-25 19:16:00 +02:00
Frank Denis
6b21ef2f2d Call AC_CANONICAL_TARGET 2021-05-22 12:21:58 +02:00
Frank Denis
63165fd148 wasi-libc exposes getpid() but it doesn't work without emulation 2021-05-22 11:56:52 +02:00
Frank Denis
85e48722a8 Enable crypto extensions on ARMv8 2021-04-08 11:13:40 +02:00
Frank Denis
8a40c424ab COMPILE -> LINK 2021-04-08 11:06:56 +02:00
Frank Denis
0d7c5bec06 Autoconf updates 2021-03-16 19:30:52 +01:00
Frank Denis
45bca21a95 Detect ARM features with elf_aux_info on FreeBSD >= 12.0
by @devnexen, thanks!

Fixes #1012
2020-12-04 15:34:27 +01:00
Ryan
4f4d69c5ad s/eabi/eabi*/g in configure scripts to support eabihf (#977) 2020-07-03 11:48:06 +02:00
Frank Denis
e04088d0b2 Disable PIE/PIC/SP/async-unwind on eabi 2020-07-01 23:34:34 +02:00
Frank Denis
e87df50575 Improve arm64 & arm crypto detection
Do not rely on host_cpu, but on the __aarch64__ symbol.

Also, ARM macs don't need -march=armv8-a+crypto; crypto extensions are
enabled by default. So try without this explicit target first (required
for Raspberry Pi), and then with the target only if necessary.
2020-07-01 18:34:06 +02:00
Frank Denis
13214d18c6 Recognize the arm + apple combo as aarch64 2020-07-01 15:33:52 +02:00
Frank Denis
8360706c21 Don't add linker flags with the emscripten target 2020-05-26 17:50:19 +02:00
Frank Denis
ef70441654 Move AC_USE_SYSTEM_EXTENSIONS up 2020-05-26 14:27:26 +02:00
Frank Denis
3a736f4d19 Bump major 2020-03-31 12:21:14 +02:00
Frank Denis
178359ddf9 Remove unmaintained Findsodium.cmake
Fixes #929
2020-02-08 12:47:04 +01:00
Frank Denis
3b26a5c1f1 Define _FORTIFY_SOURCE only on linux-gnu 2019-12-04 23:32:50 +01:00
Frank Denis
fe04ff5aa5 Use AX_ADD_FORTIFY_SOURCE
Include a workaround for newer versions of MingW
2019-11-11 01:06:16 +01:00
Frank Denis
728b7ef237 Add libarmcrypto.la 2019-10-23 19:30:48 +02:00
Frank Denis
db64ee1787 Bump the minimum iOS version to iOS 9
Add stricter checks for getrandom()/getentropy()
2019-10-23 18:11:12 +02:00
Frank Denis
acaed459ce Add ARM NEON and AES runtime checks 2019-10-22 22:51:58 +02:00
Frank Denis
59a195d05f We don't need to check if data alignment is required any more 2019-10-09 02:15:04 +02:00
Frank Denis
c8d15621c7 Use AC_LINK_IFELSE for everything using inline assembly 2019-08-29 18:16:23 +02:00
Frank Denis
e72a7d183a Use AC_LINK_IFELSE instead of _COMPILE_IFELSE for cpuid detection
This apparently works around a bug on OpenSuSE on ARM and PPC when
LTO is enabled.

Still, as documented, LTO shouldn't be used when compiling the library.
2019-08-29 18:14:44 +02:00
Frank Denis
6a6a5cc79e Revert "Disable getentropy() on Apple devices"
This reverts commit 9710a33ba1.
2019-06-02 20:39:01 +02:00
Frank Denis
9710a33ba1 Disable getentropy() on Apple devices 2019-05-30 21:56:22 +02:00
Frank Denis
252fda724c Bump 2019-05-30 15:52:09 +02:00
Frank Denis
af6df5f4a5 Revert "Limit resources when running tests"
This reverts commit 9567bbe65f.
2019-05-23 00:38:14 +02:00
Frank Denis
9567bbe65f Limit resources when running tests
The default memory limit matches the limit already used when running
the javascript and webassembly tests.

Original diff by @pilou-

Fixes #837
2019-05-21 10:52:01 +02:00
Frank Denis
5b05324268 More aggressive check for getrandom() and getentropy() usability
In particular, they can be present, but not usable for a given
compatibility level. This is especially expected on iOS and Android.
2019-04-19 00:51:06 +02:00
Frank Denis
9dbf03c115 Run the WASI checks using wasmtime 2019-04-08 21:45:08 +02:00