diff options
Diffstat (limited to 'security/afl++')
-rw-r--r-- | security/afl++/Makefile | 7 | ||||
-rw-r--r-- | security/afl++/files/patch-GNUmakefile.llvm | 20 | ||||
-rw-r--r-- | security/afl++/files/patch-include_forkserver.h | 11 |
3 files changed, 35 insertions, 3 deletions
diff --git a/security/afl++/Makefile b/security/afl++/Makefile index 6e45c1ed62e0..1a90d83b36a6 100644 --- a/security/afl++/Makefile +++ b/security/afl++/Makefile @@ -4,7 +4,7 @@ DISTVERSION= 4.33c CATEGORIES= security PKGNAMESUFFIX= ++-${FLAVOR} -MAINTAINER= ports@FreeBSD.org +MAINTAINER= fk@fabiankeil.de COMMENT= Fast instrumented fuzzer WWW= https://aflplus.plus/ @@ -13,6 +13,7 @@ LICENSE_FILE= ${WRKSRC}/docs/COPYING ONLY_FOR_ARCHS= aarch64 amd64 i386 powerpc powerpc64 powerpc64le riscv64 ONLY_FOR_ARCHS_REASON= uses x86-only instrumentation or requires complete LLVM support +BROKEN_FreeBSD_13= fails to build, error: unknown type name 'mode_t' BUILD_DEPENDS= ginstall:sysutils/coreutils @@ -30,10 +31,10 @@ USE_GCC= yes USE_GITHUB= yes GH_ACCOUNT= AFLplusplus GH_PROJECT= AFLplusplus -SHEBANG_FILES= afl-persistent-config +SHEBANG_FILES= afl-cmin.py afl-persistent-config MAKEFILE= GNUmakefile -MAKE_ARGS= ${${ARCH} != amd64 && ${ARCH} != i386:?AFL_NO_X86=1:} \ +MAKE_ARGS= AFL_NO_X86=1 AFL_NO_TEST_BUILD=1 \ PREFIX="${PREFIX}/${PKGBASE}" .if ${FLAVOR} == llvm CFLAGS_riscv64= -mno-relax diff --git a/security/afl++/files/patch-GNUmakefile.llvm b/security/afl++/files/patch-GNUmakefile.llvm new file mode 100644 index 000000000000..8642167f99eb --- /dev/null +++ b/security/afl++/files/patch-GNUmakefile.llvm @@ -0,0 +1,20 @@ +--- GNUmakefile.llvm.orig 2025-06-28 20:29:37 UTC ++++ GNUmakefile.llvm +@@ -554,6 +554,9 @@ test_build: $(PROGS) + + .PHONY: test_build + test_build: $(PROGS) ++ifdef AFL_NO_TEST_BUILD ++ @echo "[*] Not testing the CC wrapper and instrumentation output (AFL_NO_TEST_BUILD set)." ++else + @echo "[*] Testing the CC wrapper and instrumentation output..." + unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO AFL_LLVM_ALLOWLIST AFL_LLVM_DENYLIST; ASAN_OPTIONS=detect_leaks=0 AFL_QUIET=1 AFL_PATH=. AFL_LLVM_LAF_ALL=1 ./afl-cc $(CFLAGS) $(CPPFLAGS) ./test-instr.c -o test-instr $(LDFLAGS) + ifdef IS_IOS +@@ -564,6 +567,7 @@ endif + @rm -f test-instr + @cmp -s .test-instr0 .test-instr1; DR="$$?"; rm -f .test-instr0 .test-instr1; if [ "$$DR" = "0" ]; then echo; echo "Oops, the instrumentation does not seem to be behaving correctly!"; echo; echo "Please post to https://github.com/AFLplusplus/AFLplusplus/issues to troubleshoot the issue."; echo; exit 1; fi + @echo "[+] All right, the instrumentation seems to be working!" ++endif + + .PHONY: all_done + all_done: test_build diff --git a/security/afl++/files/patch-include_forkserver.h b/security/afl++/files/patch-include_forkserver.h new file mode 100644 index 000000000000..d47f462f9bd0 --- /dev/null +++ b/security/afl++/files/patch-include_forkserver.h @@ -0,0 +1,11 @@ +--- include/forkserver.h.orig 2025-06-28 20:29:37 UTC ++++ include/forkserver.h +@@ -30,6 +30,8 @@ + + #include <stdio.h> + #include <stdbool.h> ++#include <string.h> ++#include <unistd.h> + + #include "types.h" + |