[PATCH uci 1/2] fuzz: Compile using libstd++
It looks like libfuzzer is compiled using libstd++ on Debian Bookworm and not libc++. Using libc++ causes linking errors, use libstd++ instead. Signed-off-by: Hauke Mehrtens --- tests/fuzz/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/fuzz/CMakeLists.txt b/tests/fuzz/CMakeLists.txt index 1533c46..f1b4a0d 100644 --- a/tests/fuzz/CMakeLists.txt +++ b/tests/fuzz/CMakeLists.txt @@ -4,7 +4,7 @@ MACRO(ADD_FUZZER_TEST name) ADD_EXECUTABLE(${name} ${name}.c) TARGET_COMPILE_OPTIONS(${name} PRIVATE -g -O1 -fno-omit-frame-pointer -fsanitize=fuzzer,address,leak,undefined) TARGET_INCLUDE_DIRECTORIES(${name} PRIVATE ${PROJECT_SOURCE_DIR}) - TARGET_LINK_OPTIONS(${name} PRIVATE -stdlib=libc++ -fsanitize=fuzzer,address,leak,undefined) + TARGET_LINK_OPTIONS(${name} PRIVATE -fsanitize=fuzzer,address,leak,undefined) TARGET_LINK_LIBRARIES(${name} uci) ADD_TEST( NAME ${name} -- 2.39.2 ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [PATCH uci 1/2] fuzz: Compile using libstd++
Hauke Mehrtens [2023-03-09 00:18:09]: Hi, > It looks like libfuzzer is compiled using libstd++ on Debian Bookworm > and not libc++. Using libc++ causes linking errors, use libstd++ > instead. so maybe this should be detected and decided at runtime? Otherwise this seems to just support Bookworm from now and thus fail to compile elsewhere? Cheers, Petr ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [PATCH uci 1/2] fuzz: Compile using libstd++
On 3/11/23 10:01, Petr Štetiar wrote: Hauke Mehrtens [2023-03-09 00:18:09]: Hi, It looks like libfuzzer is compiled using libstd++ on Debian Bookworm and not libc++. Using libc++ causes linking errors, use libstd++ instead. so maybe this should be detected and decided at runtime? Otherwise this seems to just support Bookworm from now and thus fail to compile elsewhere? Cheers, Petr Hi Petr, I tried this in a Debian bullseye container too and there it also works fine with libstd++. What libfuzzer did you use in your container in gitlab? An automatic detection would be nice, but I have no idea how to do it. Hauke ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel
Re: [PATCH uci 1/2] fuzz: Compile using libstd++
Hauke Mehrtens [2023-03-12 22:52:50]: Hi, > What libfuzzer did you use in your container in gitlab? I was using clang builds from apt.llvm.org[1]. > An automatic detection would be nice, but I have no idea how to do it. I found only https://gitlab.kitware.com/cmake/cmake/-/issues/18275 which has some ideas and further pointers, but unfortunately no copy&paste-able solution. Anyway, I wouldn't waste more time on this, simply push the patch as proposed and move on, we're all going to use that same tool container in the end, so it should always provide some common working starting point. 1. https://gitlab.com/ynezz/openwrt-ci/-/blob/master/docker/Dockerfile#L9 Cheers, Petr ___ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel