bitcoin/ci/test
fanquake 09351f51d2
Merge bitcoin/bitcoin#27699: random: drop syscall wrapper usage for getrandom()
5228223e1f ci: remove MSAN getrandom syscall workaround (fanquake)
d5e06919db random: switch to using getrandom() directly (fanquake)
c2ba3f5b0c random: add [[maybe_unused]] to GetDevURandom (fanquake)
c13c97dbf8 random: getentropy on macOS does not need unistd.h (fanquake)

Pull request description:

  This requires a linux kernel of `3.17`+, which seems entirely
  reasonable. `3.17` went EOL in 2015, and the last supported `3.x` kernel
  (`3.16`) went EOL > 4 years ago, in 2020. For reference, the current
  oldest maintained kernel is `4.14` (released 2017, going EOL Jan 2024).

  Support for `getrandom()` (and `getentropy()`) was added to
  glibc `2.25` https://sourceware.org/legacy-ml/libc-alpha/2017-02/msg00079.html:
  > * The getentropy and getrandom functions, and the <sys/random.h> header
    file have been added.

  and we already require `2.27` or later.

  All that being said, I don't think you would encounter a current day (+~6 months from now)
  system, running with kernel headers older than 3.17 (released 2014) but also having a
  glibc of 2.27+ (released 2018)?

  Removing this (our only) use of `syscall()` also means we can drop a workaround in our MSAN jobs.
  If this is merged, I'll drop the [same workaround in oss-fuzz](25946a5448/projects/bitcoin-core/build.sh (L49-L56)).

ACKs for top commit:
  josibake:
    ACK 5228223e1f
  hebasto:
    ACK 5228223e1f, I've tested build system changes on Ubuntu 22.04 and macOS Monterey 12.6.6 (x86_64).

Tree-SHA512: cc978e08510c461b875ca8c08ae176b4519fa1108f0efd74dcb7474518945357e0184e54423282c9a496de195e4ddc3e221ee78623bd63e24c50cc86acdf32e2
2023-05-22 11:34:58 +01:00
..
00_setup_env.sh ci: remove RUN_SECURITY_TESTS 2023-05-17 10:57:39 +01:00
00_setup_env_android.sh ci: Use the latest Ubuntu LTS for "ARM64 Android APK" task 2023-02-08 14:15:13 +00:00
00_setup_env_arm.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_i686_centos.sh ci: Bump centos:stream8 to centos:stream9 2023-05-18 12:24:38 +02:00
00_setup_env_i686_multiprocess.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_mac.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_mac_native_arm64.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
00_setup_env_native_asan.sh ci: remove usage of untrusted bpfcc-tools 2023-05-02 12:02:45 +01:00
00_setup_env_native_fuzz.sh ci: use LLVM/clang-16 in native_fuzz (ASAN) job 2023-03-29 16:05:59 +01:00
00_setup_env_native_fuzz_with_msan.sh test: LLVM/Clang 16 for MSAN jobs 2023-04-10 10:57:05 +01:00
00_setup_env_native_fuzz_with_valgrind.sh ci: explicitly install libclang-rt-dev in valgrind jobs 2023-04-13 11:22:39 +01:00
00_setup_env_native_msan.sh test: LLVM/Clang 16 for MSAN jobs 2023-04-10 10:57:05 +01:00
00_setup_env_native_nowallet_libbitcoinkernel.sh ci: Drop NO_WERROR=1 for clang-10 build 2023-05-17 10:55:03 +02:00
00_setup_env_native_qt5.sh build: Bump minimum supported GCC to g++-9 2023-05-18 12:24:40 +02:00
00_setup_env_native_tidy.sh ci: Run iwyu on all src files 2023-05-13 10:45:52 +02:00
00_setup_env_native_tsan.sh ci: Use TSan new runtime (llvm-16, take 3) 2023-03-28 10:01:47 +02:00
00_setup_env_native_valgrind.sh ci: explicitly install libclang-rt-dev in valgrind jobs 2023-04-13 11:22:39 +01:00
00_setup_env_s390x.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_win64.sh Merge bitcoin/bitcoin#25696: build: Re-enable external signer on Windows 2023-03-08 21:01:53 -05:00
01_base_install.sh ci: Bump centos:stream8 to centos:stream9 2023-05-18 12:24:38 +02:00
04_install.sh move-only: Move almost all CI_EXEC code to 06_script_b.sh 2023-05-10 14:10:38 +02:00
06_script_b.sh Merge bitcoin/bitcoin#27699: random: drop syscall wrapper usage for getrandom() 2023-05-22 11:34:58 +01:00
wrap-qemu.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
wrap-valgrind.sh scripted-diff: Bump copyright headers 2021-12-30 19:36:57 +02:00
wrap-wine.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
wrapped-cl.bat ci: Integrate ccache into MSVC build 2022-03-12 03:20:33 +01:00