diff options
author | MarcoFalke <falke.marco@gmail.com> | 2021-05-26 07:44:31 +0200 |
---|---|---|
committer | MarcoFalke <falke.marco@gmail.com> | 2021-05-26 07:44:34 +0200 |
commit | 48c86eca02030827a0bbe7159e9a452d1ae1e3fc (patch) | |
tree | 2bd97d3312646fa992a6327a00858577c72e28b6 | |
parent | 35b83e6e43159d50179d3e054a6a3de2a690b333 (diff) | |
parent | 1be6267ce1ee142c3b90baed1925a82eab6514aa (diff) |
Merge bitcoin/bitcoin#22069: fuzz: don't try and use fopencookie() when building for Android
1be6267ce1ee142c3b90baed1925a82eab6514aa fuzz: don't try and use fopencookie when building for Android (fanquake)
Pull request description:
When building for Android, `_GNU_SOURCE` will be defined:
```bash
/home/ubuntu/android-sdk/ndk/22.1.7171670/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android30-clang++ -dM -E -x c++ - < /dev/null
#define _GNU_SOURCE 1
#define _LP64 1
#define __AARCH64EL__ 1
#define __AARCH64_CMODEL_SMALL__ 1
#define __ANDROID_API__ 30
#define __ANDROID__ 1
#define __ARM_64BIT_STATE 1
.....
```
but it doesn't have the [`fopencookie()` function](https://www.gnu.org/software/libc/manual/html_node/Streams-and-Cookies.html), or define the `cookie_io_functions_t` type, which results in compile failures:
```bash
In file included from test/fuzz/addition_overflow.cpp:7:
./test/fuzz/util.h:388:15: error: unknown type name 'cookie_io_functions_t'
const cookie_io_functions_t io_hooks = {
^
15 warnings and 1 error generated.
```
Just skip trying to use it if we are building for Android. Should fix #22062.
ACKs for top commit:
practicalswift:
cr ACK 1be6267ce1ee142c3b90baed1925a82eab6514aa
Tree-SHA512: d62f63d0624af04b76c7e07b0332c71eca2bf9cd9e096a60aea9e212b7bbc1548e9fa9a76d065ec719bb345fe8726619c3bd2d0631f54d877c82972b7b289321
-rw-r--r-- | src/test/fuzz/util.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/test/fuzz/util.h b/src/test/fuzz/util.h index 48b7877896..86b203c6b5 100644 --- a/src/test/fuzz/util.h +++ b/src/test/fuzz/util.h @@ -384,7 +384,7 @@ public: [&] { mode = "a+"; }); -#ifdef _GNU_SOURCE +#if defined _GNU_SOURCE && !defined __ANDROID__ const cookie_io_functions_t io_hooks = { FuzzedFileProvider::read, FuzzedFileProvider::write, |