public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: app-forensics/aflplusplus/, app-forensics/aflplusplus/files/
@ 2021-06-01 18:33 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2021-06-01 18:33 UTC (permalink / raw
  To: gentoo-commits

commit:     e9da09d6482d95ea8353fe243d2fc8d69535a118
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jun  1 18:18:23 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jun  1 18:33:02 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9da09d6

app-forensics/aflplusplus: add 3.13c

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-forensics/aflplusplus/Manifest                 |  1 +
 app-forensics/aflplusplus/aflplusplus-3.13c.ebuild | 97 +++++++++++++++++++++
 .../files/aflplusplus-3.13c-CFLAGS.patch           | 99 ++++++++++++++++++++++
 3 files changed, 197 insertions(+)

diff --git a/app-forensics/aflplusplus/Manifest b/app-forensics/aflplusplus/Manifest
index 81c2a1618a1..981ff63c53a 100644
--- a/app-forensics/aflplusplus/Manifest
+++ b/app-forensics/aflplusplus/Manifest
@@ -1 +1,2 @@
 DIST aflplusplus-3.12c.tar.gz 2065569 BLAKE2B ff7a87eb02f7731b5ce8e1a3016239c6fd1cd1bfeb0b9c0fb69f72bdbf079e7700cdb32abe64f64853e5ff82f1c0ecd86d2cadb892e7c40be6bb2a7b089f7387 SHA512 a814d61298b60d99388289e742dbedf2ed1ab454a5e1ea20d48bb2f18b36c01553ab1f097a06f733439d67e804d48cb823a82ff249c404fb0b83a281564f3040
+DIST aflplusplus-3.13c.tar.gz 2128787 BLAKE2B 40fa65654468dc1de7f6e1b63d2266915a40d145b7cb91b8b95488bc975804f70887bc1c3718fbd12c76872a0126f3bcc36134eb55ef729060b5efcf93dad424 SHA512 916a714deaf67969c9ac6e90bd2d8015a1e5188c8a8122f4d5d64ce4b841822de65458e469a47d4244358fab5e31ef4e52b8ec1432dcbd60d29aedf15e4c36fe

diff --git a/app-forensics/aflplusplus/aflplusplus-3.13c.ebuild b/app-forensics/aflplusplus/aflplusplus-3.13c.ebuild
new file mode 100644
index 00000000000..c665a60d41b
--- /dev/null
+++ b/app-forensics/aflplusplus/aflplusplus-3.13c.ebuild
@@ -0,0 +1,97 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+LLVM_MAX_SLOT=12
+inherit toolchain-funcs llvm optfeature python-single-r1
+
+DESCRIPTION="A fork of AFL, the popular compile-time instrumentation fuzzer"
+HOMEPAGE="https://github.com/AFLplusplus/AFLplusplus"
+SRC_URI="https://github.com/AFLplusplus/AFLplusplus/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/AFLplusplus-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# Tests involve heavy use of LD_PRELOAD in some cases
+# This isn't compatible with sandbox
+RESTRICT="test"
+
+# It turns out we need Clang too
+RDEPEND="
+	${PYTHON_DEPS}
+	>=sys-devel/llvm-10:=
+	|| (
+		sys-devel/clang:10
+		sys-devel/clang:11
+		sys-devel/clang:12
+	)
+"
+DEPEND="
+	${RDEPEND}
+	test? ( dev-util/cmocka )
+"
+
+QA_PREBUILT="/usr/share/afl/testcases/others/elf/small_exec.elf"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-3.0c-LDFLAGS.patch"
+	"${FILESDIR}/${PN}-3.13c-CFLAGS.patch"
+)
+
+llvm_check_deps() {
+	has_version -b "sys-devel/clang:${LLVM_SLOT}" && \
+		has_version -b "sys-devel/llvm:${LLVM_SLOT}"
+}
+
+pkg_setup() {
+	llvm_pkg_setup
+	python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	default
+
+	sed -i -e 's/-O3 -fno-unroll-loops//' GNUmakefile || die
+}
+
+src_compile() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)" \
+		CFLAGS_FLTO="" \
+		PREFIX="${EPREFIX}/usr" \
+		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
+		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
+		MAN_PATH="${EPREFIX}/usr/share/man/man8"
+}
+
+src_test() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)"
+}
+
+src_install() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)" \
+		DESTDIR="${D}" \
+		PREFIX="${EPREFIX}/usr" \
+		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
+		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
+		MAN_PATH="${EPREFIX}/usr/share/man/man8" \
+		install
+}
+
+pkg_postinst() {
+	# TODO: Any others?
+	optfeature "fuzzing with AFL_USE_ASAN" sys-libs/compiler-rt-sanitizers[asan]
+	optfeature "fuzzing with AFL_USE_MSAN" sys-libs/compiler-rt-sanitizers[msan]
+}

diff --git a/app-forensics/aflplusplus/files/aflplusplus-3.13c-CFLAGS.patch b/app-forensics/aflplusplus/files/aflplusplus-3.13c-CFLAGS.patch
new file mode 100644
index 00000000000..a3f54b437b8
--- /dev/null
+++ b/app-forensics/aflplusplus/files/aflplusplus-3.13c-CFLAGS.patch
@@ -0,0 +1,99 @@
+--- a/GNUmakefile.gcc_plugin
++++ b/GNUmakefile.gcc_plugin
+@@ -28,14 +28,14 @@ MAN_PATH    ?= $(PREFIX)/share/man/man8
+ 
+ VERSION     = $(shell grep '^$(HASH)define VERSION ' ./config.h | cut -d '"' -f2)
+ 
+-CFLAGS          ?= -O3 -g -funroll-loops -D_FORTIFY_SOURCE=2
++CFLAGS          ?= -D_FORTIFY_SOURCE=2
+ CFLAGS_SAFE     := -Wall -Iinclude -Wno-pointer-sign \
+                    -DAFL_PATH=\"$(HELPER_PATH)\" -DBIN_PATH=\"$(BIN_PATH)\" \
+                    -DGCC_VERSION=\"$(GCCVER)\" -DGCC_BINDIR=\"$(GCCBINDIR)\" \
+                    -Wno-unused-function
+ override CFLAGS += $(CFLAGS_SAFE)
+ 
+-CXXFLAGS    ?= -O3 -g -funroll-loops -D_FORTIFY_SOURCE=2
++CXXFLAGS    ?= -D_FORTIFY_SOURCE=2
+ CXXEFLAGS   := $(CXXFLAGS) -Wall -std=c++11
+ 
+ CC          ?= gcc
+--- a/GNUmakefile.llvm
++++ b/GNUmakefile.llvm
+@@ -237,7 +237,7 @@ else
+         AFL_CLANG_DEBUG_PREFIX =
+ endif
+ 
+-CFLAGS          ?= -O3 -funroll-loops -fPIC -D_FORTIFY_SOURCE=2
++CFLAGS          ?= -fPIC -D_FORTIFY_SOURCE=2
+ CFLAGS_SAFE     := -Wall -g -Wno-cast-qual -Wno-variadic-macros -Wno-pointer-sign -I ./include/ -I ./instrumentation/ \
+                    -DAFL_PATH=\"$(HELPER_PATH)\" -DBIN_PATH=\"$(BIN_PATH)\" \
+                    -DLLVM_BINDIR=\"$(LLVM_BINDIR)\" -DVERSION=\"$(VERSION)\" \
+@@ -254,7 +254,7 @@ ifdef AFL_TRACE_PC
+   $(info Compile option AFL_TRACE_PC is deprecated, just set AFL_LLVM_INSTRUMENT=PCGUARD to activate when compiling targets )
+ endif
+ 
+-CXXFLAGS          ?= -O3 -funroll-loops -fPIC -D_FORTIFY_SOURCE=2
++CXXFLAGS          ?= -fPIC -D_FORTIFY_SOURCE=2
+ override CXXFLAGS += -Wall -g -I ./include/ \
+                      -DVERSION=\"$(VERSION)\" -Wno-variadic-macros \
+                      -DLLVM_MINOR=$(LLVM_MINOR) -DLLVM_MAJOR=$(LLVM_MAJOR)
+@@ -434,20 +434,20 @@ afl-llvm-dict2file.so:	instrumentation/afl-llvm-dict2file.so.cc instrumentation/
+ 
+ .PHONY: document
+ document:
+-	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
+-	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+-	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
++	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
+-	$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
++	$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -c $< -o $@
+ 
+ ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
+-	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
++	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
+-	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
++	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
+ 
+ .PHONY: test_build
+ test_build: $(PROGS)
+--- a/unicorn_mode/samples/c/Makefile
++++ b/unicorn_mode/samples/c/Makefile
+@@ -35,7 +35,7 @@ clean:
+ 	rm -rf *.o harness harness-debug
+ 
+ harness.o: harness.c ../../unicornafl/include/unicorn/*.h
+-	${MYCC} ${CFLAGS} -O3 -c harness.c
++	${MYCC} ${CFLAGS} -c harness.c
+ 
+ harness-debug.o: harness.c ../../unicornafl/include/unicorn/*.h
+ 	${MYCC} ${CFLAGS} -g -c harness.c -o $@
+--- a/unicorn_mode/samples/persistent/Makefile
++++ b/unicorn_mode/samples/persistent/Makefile
+@@ -35,7 +35,7 @@ clean:
+ 	rm -rf *.o harness harness-debug
+ 
+ harness.o: harness.c ../../unicornafl/include/unicorn/*.h
+-	${MYCC} ${CFLAGS} -O3 -c harness.c
++	${MYCC} ${CFLAGS} -c harness.c
+ 
+ harness-debug.o: harness.c ../../unicornafl/include/unicorn/*.h
+ 	${MYCC} ${CFLAGS} -DAFL_DEBUG=1 -g -c harness.c -o $@
+--- a/utils/afl_untracer/Makefile
++++ b/utils/afl_untracer/Makefile
+@@ -1,7 +1,7 @@
+ ifdef DEBUG
+   OPT=-O0
+ else
+-  OPT=-O3
++  OPT?=-O2
+ endif
+ 
+ all:	afl-untracer libtestinstr.so


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-forensics/aflplusplus/, app-forensics/aflplusplus/files/
@ 2022-01-28  6:21 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2022-01-28  6:21 UTC (permalink / raw
  To: gentoo-commits

commit:     955dc1dcf97b4bd2bb0a3ff7726118798c261947
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 28 05:51:48 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 28 05:51:48 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=955dc1dc

app-forensics/aflplusplus: add 4.00c

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-forensics/aflplusplus/Manifest                 |   1 +
 app-forensics/aflplusplus/aflplusplus-4.00c.ebuild |  93 ++++++++++++++++
 ...lplusplus-4.00c-no-ignore-errors-makefile.patch | 121 ++++++++++++++++++++
 .../files/aflplusplus-4.00c-respect-flags.patch    | 122 +++++++++++++++++++++
 4 files changed, 337 insertions(+)

diff --git a/app-forensics/aflplusplus/Manifest b/app-forensics/aflplusplus/Manifest
index b03d0a638510..c3eed8c10f4b 100644
--- a/app-forensics/aflplusplus/Manifest
+++ b/app-forensics/aflplusplus/Manifest
@@ -1 +1,2 @@
 DIST aflplusplus-3.14c.tar.gz 2162934 BLAKE2B 0830b320cea65b9bdd048a08a388c7145164f6b7f4dc140a2f4268a3aa22dc608a771169c830e2196e7a0d543e6f3da49f39736f3b2514c559b986ce929d43c4 SHA512 318607cff40b5f2fc94938747e2ac6b8f400767138eb39edf4daf320afbdab417d0d97a80a1c9db8bb557ad4b7b62f887ae6e692c376f5d5673a493bd23bb811
+DIST aflplusplus-4.00c.tar.gz 2805041 BLAKE2B c1ce15aa9860fc02a7d6f608cae9dd8987b72253b465ea734c721d1b6927e482c31b907aeafe82c00618465227e2e140bfc595151ea5d73037638c3ee630872c SHA512 23a7a4260e581f7c212393e1e14704464bbbc3ff5465b3472db31c6c7f2cd25a9ecc5ad81fad8958c775fcd01b22269085e6c69419a07fbbdb9ec317a3e39beb

diff --git a/app-forensics/aflplusplus/aflplusplus-4.00c.ebuild b/app-forensics/aflplusplus/aflplusplus-4.00c.ebuild
new file mode 100644
index 000000000000..8f04bfb0de1b
--- /dev/null
+++ b/app-forensics/aflplusplus/aflplusplus-4.00c.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+LLVM_MAX_SLOT=13
+inherit toolchain-funcs llvm optfeature python-single-r1
+
+DESCRIPTION="A fork of AFL, the popular compile-time instrumentation fuzzer"
+HOMEPAGE="https://github.com/AFLplusplus/AFLplusplus"
+SRC_URI="https://github.com/AFLplusplus/AFLplusplus/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/AFLplusplus-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# Tests involve heavy use of LD_PRELOAD in some cases
+# This isn't compatible with sandbox
+RESTRICT="test"
+
+# It turns out we need Clang too
+RDEPEND="
+	${PYTHON_DEPS}
+	>=sys-devel/llvm-10:=
+	|| (
+		sys-devel/clang:10
+		sys-devel/clang:11
+		sys-devel/clang:12
+		sys-devel/clang:13
+	)
+	!app-forensics/afl
+"
+DEPEND="
+	${RDEPEND}
+	test? ( dev-util/cmocka )
+"
+
+QA_PREBUILT="/usr/share/afl/testcases/others/elf/small_exec.elf"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-4.00c-respect-flags.patch
+	"${FILESDIR}"/${PN}-4.00c-no-ignore-errors-makefile.patch
+)
+
+llvm_check_deps() {
+	has_version -b "sys-devel/clang:${LLVM_SLOT}" && \
+		has_version -b "sys-devel/llvm:${LLVM_SLOT}"
+}
+
+pkg_setup() {
+	llvm_pkg_setup
+	python-single-r1_pkg_setup
+}
+
+src_compile() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)" \
+		CFLAGS_FLTO="" \
+		PREFIX="${EPREFIX}/usr" \
+		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
+		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
+		MAN_PATH="${EPREFIX}/usr/share/man/man8"
+}
+
+src_test() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)"
+}
+
+src_install() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)" \
+		DESTDIR="${D}" \
+		PREFIX="${EPREFIX}/usr" \
+		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
+		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
+		MAN_PATH="${EPREFIX}/usr/share/man/man8" \
+		install
+}
+
+pkg_postinst() {
+	# TODO: Any others?
+	optfeature "fuzzing with AFL_USE_ASAN" sys-libs/compiler-rt-sanitizers[asan]
+	optfeature "fuzzing with AFL_USE_MSAN" sys-libs/compiler-rt-sanitizers[msan]
+}

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.00c-no-ignore-errors-makefile.patch b/app-forensics/aflplusplus/files/aflplusplus-4.00c-no-ignore-errors-makefile.patch
new file mode 100644
index 000000000000..50d9268ac9bb
--- /dev/null
+++ b/app-forensics/aflplusplus/files/aflplusplus-4.00c-no-ignore-errors-makefile.patch
@@ -0,0 +1,121 @@
+https://bugs.gentoo.org/800941
+
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -310,13 +310,13 @@ all:	test_x86 test_shm test_python ready $(PROGS) afl-as llvm gcc_plugin test_bu
+ 
+ .PHONY: llvm
+ llvm:
+-	-$(MAKE) -j4 -f GNUmakefile.llvm
++	$(MAKE) -j4 -f GNUmakefile.llvm
+ 	@test -e afl-cc || { echo "[-] Compiling afl-cc failed. You seem not to have a working compiler." ; exit 1; }
+ 
+ .PHONY: gcc_plugin
+ gcc_plugin:
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin
++	$(MAKE) -f GNUmakefile.gcc_plugin
+ endif
+ 
+ .PHONY: man
+@@ -565,19 +565,19 @@ all_done: test_build
+ .PHONY: clean
+ clean:
+ 	rm -rf $(PROGS) afl-fuzz-document afl-as as afl-g++ afl-clang afl-clang++ *.o src/*.o *~ a.out core core.[1-9][0-9]* *.stackdump .test .test1 .test2 test-instr .test-instr0 .test-instr1 afl-cs-proxy afl-qemu-trace afl-gcc-fast afl-g++-fast ld *.so *.8 test/unittests/*.o test/unittests/unit_maybe_alloc test/unittests/preallocable .afl-* afl-gcc afl-g++ afl-clang afl-clang++ test/unittests/unit_hash test/unittests/unit_rand *.dSYM
+-	-$(MAKE) -f GNUmakefile.llvm clean
+-	-$(MAKE) -f GNUmakefile.gcc_plugin clean
+-	-$(MAKE) -C utils/libdislocator clean
+-	-$(MAKE) -C utils/libtokencap clean
++	$(MAKE) -f GNUmakefile.llvm clean
++	$(MAKE) -f GNUmakefile.gcc_plugin clean
++	$(MAKE) -C utils/libdislocator clean
++	$(MAKE) -C utils/libtokencap clean
+ 	$(MAKE) -C utils/aflpp_driver clean
+-	-$(MAKE) -C utils/afl_network_proxy clean
+-	-$(MAKE) -C utils/socket_fuzzing clean
+-	-$(MAKE) -C utils/argv_fuzzing clean
+-	-$(MAKE) -C utils/plot_ui clean
+-	-$(MAKE) -C qemu_mode/unsigaction clean
+-	-$(MAKE) -C qemu_mode/libcompcov clean
+-	-$(MAKE) -C qemu_mode/libqasan clean
+-	-$(MAKE) -C frida_mode clean
++	$(MAKE) -C utils/afl_network_proxy clean
++	$(MAKE) -C utils/socket_fuzzing clean
++	$(MAKE) -C utils/argv_fuzzing clean
++	$(MAKE) -C utils/plot_ui clean
++	$(MAKE) -C qemu_mode/unsigaction clean
++	$(MAKE) -C qemu_mode/libcompcov clean
++	$(MAKE) -C qemu_mode/libqasan clean
++	$(MAKE) -C frida_mode clean
+ 	rm -rf nyx_mode/packer/linux_initramfs/init.cpio.gz nyx_mode/libnyx/libnyx/target/release/* nyx_mode/QEMU-Nyx/x86_64-softmmu/qemu-system-x86_64
+ ifeq "$(IN_REPO)" "1"
+ 	-test -e coresight_mode/coresight-trace/Makefile && $(MAKE) -C coresight_mode/coresight-trace clean || true
+@@ -607,20 +607,20 @@ endif
+ 
+ .PHONY: distrib
+ distrib: all
+-	-$(MAKE) -j4 -f GNUmakefile.llvm
++	$(MAKE) -j4 -f GNUmakefile.llvm
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin
++	$(MAKE) -f GNUmakefile.gcc_plugin
+ endif
+-	-$(MAKE) -C utils/libdislocator
+-	-$(MAKE) -C utils/libtokencap
+-	-$(MAKE) -C utils/afl_network_proxy
+-	-$(MAKE) -C utils/socket_fuzzing
+-	-$(MAKE) -C utils/argv_fuzzing
++	$(MAKE) -C utils/libdislocator
++	$(MAKE) -C utils/libtokencap
++	$(MAKE) -C utils/afl_network_proxy
++	$(MAKE) -C utils/socket_fuzzing
++	$(MAKE) -C utils/argv_fuzzing
+ 	# -$(MAKE) -C utils/plot_ui
+-	-$(MAKE) -C frida_mode
++	$(MAKE) -C frida_mode
+ ifneq "$(SYS)" "Darwin"
+ ifeq "$(ARCH)" "aarch64"
+-	-$(MAKE) -C coresight_mode
++	$(MAKE) -C coresight_mode
+ endif
+ ifeq "$(SYS)" "Linux"
+ 	-cd nyx_mode && ./build_nyx_support.sh
+@@ -651,12 +651,12 @@ endif
+ 
+ .PHONY: source-only
+ source-only: all
+-	-$(MAKE) -j4 -f GNUmakefile.llvm
++	$(MAKE) -j4 -f GNUmakefile.llvm
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin
++	$(MAKE) -f GNUmakefile.gcc_plugin
+ endif
+-	-$(MAKE) -C utils/libdislocator
+-	-$(MAKE) -C utils/libtokencap
++	$(MAKE) -C utils/libdislocator
++	$(MAKE) -C utils/libtokencap
+ 	# -$(MAKE) -C utils/plot_ui
+ ifeq "$(SYS)" "Linux"
+ 	-cd nyx_mode && ./build_nyx_support.sh
+@@ -702,9 +702,9 @@ install: all $(MANPAGES)
+ 	@if [ -f utils/afl_network_proxy/afl-network-server ]; then $(MAKE) -C utils/afl_network_proxy install; fi
+ 	@if [ -f utils/aflpp_driver/libAFLDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLDriver.a $${DESTDIR}$(HELPER_PATH); fi
+ 	@if [ -f utils/aflpp_driver/libAFLQemuDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLQemuDriver.a $${DESTDIR}$(HELPER_PATH); fi
+-	-$(MAKE) -f GNUmakefile.llvm install
++	$(MAKE) -f GNUmakefile.llvm install
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin install
++	$(MAKE) -f GNUmakefile.gcc_plugin install
+ endif
+ 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-gcc
+ 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-g++
+--- a/GNUmakefile.llvm
++++ b/GNUmakefile.llvm
+@@ -457,6 +457,7 @@ document:
+ test_build: $(PROGS)
+ 	@echo "[*] Testing the CC wrapper and instrumentation output..."
+ 	unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO; 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)
++	@test -e test-instr || { echo "[-] Testing CC wrapper failed. You seem not to have a working compiler." ; exit 1; }
+ 	ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr0 ./test-instr < /dev/null
+ 	echo 1 | ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr1 ./test-instr
+ 	@rm -f test-instr

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.00c-respect-flags.patch b/app-forensics/aflplusplus/files/aflplusplus-4.00c-respect-flags.patch
new file mode 100644
index 000000000000..47ccbe008c89
--- /dev/null
+++ b/app-forensics/aflplusplus/files/aflplusplus-4.00c-respect-flags.patch
@@ -0,0 +1,122 @@
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -420,7 +420,7 @@ afl-as: src/afl-as.c include/afl-as.h $(COMM_HDR) | test_x86
+ 	@ln -sf afl-as as
+ 
+ src/afl-performance.o : $(COMM_HDR) src/afl-performance.c include/hash.h
+-	$(CC) $(CFLAGS) -Iinclude $(SPECIAL_PERFORMANCE) -O3 -fno-unroll-loops -c src/afl-performance.c -o src/afl-performance.o
++	$(CC) $(CFLAGS) -Iinclude $(SPECIAL_PERFORMANCE) -fno-unroll-loops -c src/afl-performance.c -o src/afl-performance.o
+ 
+ src/afl-common.o : $(COMM_HDR) src/afl-common.c include/common.h
+ 	$(CC) $(CFLAGS) $(CFLAGS_FLTO) -c src/afl-common.c -o src/afl-common.o
+--- a/GNUmakefile.gcc_plugin
++++ b/GNUmakefile.gcc_plugin
+@@ -131,18 +131,18 @@ afl-common.o: ./src/afl-common.c
+ 	$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ $(LDFLAGS)
+ 
+ ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
+-	$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
++	$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -c $< -o $@
+ 
+ ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
+-	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
+-	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
+ 
+ ./afl-gcc-pass.so: instrumentation/afl-gcc-pass.so.cc | test_deps
+-	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@
++	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@ $(LDFLAGS)
+ 	ln -sf afl-cc afl-gcc-fast
+ 	ln -sf afl-cc afl-g++-fast
+ 	ln -sf afl-cc.8 afl-gcc-fast.8
+--- a/GNUmakefile.llvm
++++ b/GNUmakefile.llvm
+@@ -438,20 +438,20 @@ afl-llvm-dict2file.so:	instrumentation/afl-llvm-dict2file.so.cc instrumentation/
+ 
+ .PHONY: document
+ document:
+-	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
+-	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+-	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
++	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
+-	$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
++	$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -c $< -o $@
+ 
+ ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
+-	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
+-	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
+ 
+ .PHONY: test_build
+ test_build: $(PROGS)
+--- a/custom_mutators/honggfuzz/Makefile
++++ b/custom_mutators/honggfuzz/Makefile
+@@ -1,5 +1,6 @@
+ 
+-CFLAGS = -O3 -funroll-loops -fPIC -Wl,-Bsymbolic
++CFLAGS ?= -O3
++CFLAGS += -funroll-loops -fPIC -Wl,-Bsymbolic
+ 
+ all: honggfuzz-mutator.so
+ 
+--- a/custom_mutators/libfuzzer/Makefile
++++ b/custom_mutators/libfuzzer/Makefile
+@@ -1,5 +1,6 @@
+ 
+-CFLAGS = -g -O3 -funroll-loops -fPIC -fpermissive -std=c++11
++CFLAGS ?= -g -O3
++CFLAGS += -funroll-loops -fpermissive -std=c++11 -fPIC
+ #CFLAGS = -g -O0 -fPIC -fpermissive -std=c++11
+ CXX ?= clang++
+ 
+--- a/frida_mode/GNUmakefile
++++ b/frida_mode/GNUmakefile
+@@ -17,7 +17,6 @@ CFLAGS+=-fPIC \
+ 		-D_GNU_SOURCE \
+ 		-D_FORTIFY_SOURCE=2 \
+ 		-g \
+-		-O3 \
+ 		-funroll-loops \
+ 		-ffunction-sections \
+ 
+--- a/frida_mode/test/png/persistent/hook/GNUmakefile
++++ b/frida_mode/test/png/persistent/hook/GNUmakefile
+@@ -5,11 +5,9 @@ BUILD_DIR:=$(PWD)build/
+ AFLPP_FRIDA_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/frida_hook.so
+ AFLPP_QEMU_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/qemu_hook.so
+ 
+-CFLAGS+=-O3 \
+-		-funroll-loops \
++CFLAGS+= -funroll-loops \
+ 		-g \
+-		-fPIC \
+-		-funroll-loops \
++		-fPIC
+ 
+ LDFLAGS+=-shared \
+ 
+--- a/utils/aflpp_driver/GNUmakefile
++++ b/utils/aflpp_driver/GNUmakefile
+@@ -7,7 +7,7 @@ ifneq "" "$(LLVM_BINDIR)"
+   LLVM_BINDIR := $(LLVM_BINDIR)/
+ endif
+ 
+-CFLAGS := -O3 -funroll-loops -g -fPIC
++CFLAGS ?= -O3 -funroll-loops -g -fPIC
+ 
+ all:	libAFLDriver.a libAFLQemuDriver.a aflpp_qemu_driver_hook.so
+ 


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-forensics/aflplusplus/, app-forensics/aflplusplus/files/
@ 2022-07-04 23:24 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2022-07-04 23:24 UTC (permalink / raw
  To: gentoo-commits

commit:     54b1cd46b846e631eff7431ca55bdd73806f110b
Author:     Alexander Miller <alex.miller <AT> gmx <DOT> de>
AuthorDate: Mon Jul  4 17:21:47 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jul  4 23:24:02 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=54b1cd46

app-forensics/aflplusplus: Fix lld detection

Signed-off-by: Alexander Miller <alex.miller <AT> gmx.de>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-forensics/aflplusplus/aflplusplus-4.01c.ebuild         |  1 +
 .../aflplusplus/files/aflplusplus-4.01c-lld-detect.patch   | 14 ++++++++++++++
 2 files changed, 15 insertions(+)

diff --git a/app-forensics/aflplusplus/aflplusplus-4.01c.ebuild b/app-forensics/aflplusplus/aflplusplus-4.01c.ebuild
index b304644ff905..18186168e86e 100644
--- a/app-forensics/aflplusplus/aflplusplus-4.01c.ebuild
+++ b/app-forensics/aflplusplus/aflplusplus-4.01c.ebuild
@@ -40,6 +40,7 @@ QA_PREBUILT="usr/share/afl/testcases/others/elf/small_exec.elf"
 PATCHES=(
 	"${FILESDIR}"/${PN}-4.01c-respect-flags.patch
 	"${FILESDIR}"/${PN}-4.01c-no-ignore-errors-makefile.patch
+	"${FILESDIR}"/${PN}-4.01c-lld-detect.patch
 )
 
 llvm_check_deps() {

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.01c-lld-detect.patch b/app-forensics/aflplusplus/files/aflplusplus-4.01c-lld-detect.patch
new file mode 100644
index 000000000000..cec2c9d17979
--- /dev/null
+++ b/app-forensics/aflplusplus/files/aflplusplus-4.01c-lld-detect.patch
@@ -0,0 +1,14 @@
+--- a/GNUmakefile.llvm
++++ b/GNUmakefile.llvm
+@@ -218,9 +218,8 @@ endif
+ ifeq "$(LLVM_LTO)" "1"
+   ifneq "$(AFL_CLANG_FLTO)" ""
+     ifeq "$(AFL_REAL_LD)" ""
+-      ifneq "$(shell readlink $(LLVM_BINDIR)/ld.lld 2>&1)" ""
+-        AFL_REAL_LD = $(LLVM_BINDIR)/ld.lld
+-      else
++      AFL_REAL_LD = "$(shell command -v $(LLVM_BINDIR)/ld.lld 2>/dev/null || command -v ld.lld 2>/dev/null)"
++      ifeq "$(AFL_REAL_LD)" ""
+         $(warning ld.lld not found, cannot enable LTO mode)
+         LLVM_LTO = 0
+       endif


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-forensics/aflplusplus/, app-forensics/aflplusplus/files/
@ 2022-07-04 23:24 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2022-07-04 23:24 UTC (permalink / raw
  To: gentoo-commits

commit:     4c38bde47bbac4eaf8654581b9806a11780b298f
Author:     Alexander Miller <alex.miller <AT> gmx <DOT> de>
AuthorDate: Mon Jul  4 16:10:19 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Jul  4 23:24:00 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c38bde4

app-forensics/aflplusplus: add 4.01c

Closes: https://bugs.gentoo.org/856337
Signed-off-by: Alexander Miller <alex.miller <AT> gmx.de>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-forensics/aflplusplus/Manifest                 |   1 +
 app-forensics/aflplusplus/aflplusplus-4.01c.ebuild |  88 ++++++++++++
 ...lplusplus-4.01c-no-ignore-errors-makefile.patch | 154 +++++++++++++++++++++
 .../files/aflplusplus-4.01c-respect-flags.patch    | 123 ++++++++++++++++
 4 files changed, 366 insertions(+)

diff --git a/app-forensics/aflplusplus/Manifest b/app-forensics/aflplusplus/Manifest
index a99f8f055073..3e2e5b638831 100644
--- a/app-forensics/aflplusplus/Manifest
+++ b/app-forensics/aflplusplus/Manifest
@@ -1 +1,2 @@
 DIST aflplusplus-4.00c.tar.gz 2805041 BLAKE2B c1ce15aa9860fc02a7d6f608cae9dd8987b72253b465ea734c721d1b6927e482c31b907aeafe82c00618465227e2e140bfc595151ea5d73037638c3ee630872c SHA512 23a7a4260e581f7c212393e1e14704464bbbc3ff5465b3472db31c6c7f2cd25a9ecc5ad81fad8958c775fcd01b22269085e6c69419a07fbbdb9ec317a3e39beb
+DIST aflplusplus-4.01c.tar.gz 2818445 BLAKE2B f3699c4b2fabec0ab238277c3b2c7b19b35af7a0b82b14a57c34b8579121cfa0644ef432132cf4a3382547db3faf799d2ab601512ddfb469e4a2246cdb61aa7f SHA512 d2b03ab4ff9538fe0b52aa3ed4778a6e5657d64d6f0e5f75a99305bad69c5179d6b1c882650f19a884a740577acb73dab7cee3d5c9c7b06ff2326ffeba37d1fe

diff --git a/app-forensics/aflplusplus/aflplusplus-4.01c.ebuild b/app-forensics/aflplusplus/aflplusplus-4.01c.ebuild
new file mode 100644
index 000000000000..b304644ff905
--- /dev/null
+++ b/app-forensics/aflplusplus/aflplusplus-4.01c.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+LLVM_MAX_SLOT=14
+inherit toolchain-funcs llvm optfeature python-single-r1
+
+DESCRIPTION="A fork of AFL, the popular compile-time instrumentation fuzzer"
+HOMEPAGE="https://github.com/AFLplusplus/AFLplusplus"
+SRC_URI="https://github.com/AFLplusplus/AFLplusplus/archive/${PV}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}/AFLplusplus-${PV}"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+IUSE="test"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# Tests involve heavy use of LD_PRELOAD in some cases
+# This isn't compatible with sandbox
+RESTRICT="test"
+
+# It turns out we need Clang too
+RDEPEND="${PYTHON_DEPS}
+	>=sys-devel/llvm-12:=
+	|| (
+		sys-devel/clang:12
+		sys-devel/clang:13
+		sys-devel/clang:${LLVM_MAX_SLOT}
+	)
+	!app-forensics/afl"
+DEPEND="${RDEPEND}
+	test? ( dev-util/cmocka )"
+
+QA_PREBUILT="usr/share/afl/testcases/others/elf/small_exec.elf"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-4.01c-respect-flags.patch
+	"${FILESDIR}"/${PN}-4.01c-no-ignore-errors-makefile.patch
+)
+
+llvm_check_deps() {
+	has_version -b "sys-devel/clang:${LLVM_SLOT}" && \
+		has_version -b "sys-devel/llvm:${LLVM_SLOT}"
+}
+
+pkg_setup() {
+	llvm_pkg_setup
+	python-single-r1_pkg_setup
+}
+
+src_compile() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)" \
+		CFLAGS_FLTO="" \
+		PREFIX="${EPREFIX}/usr" \
+		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
+		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
+		MAN_PATH="${EPREFIX}/usr/share/man/man8"
+}
+
+src_test() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)"
+}
+
+src_install() {
+	emake \
+		CC="$(tc-getCC)" \
+		CXX="$(tc-getCXX)" \
+		DESTDIR="${D}" \
+		PREFIX="${EPREFIX}/usr" \
+		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
+		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
+		MAN_PATH="${EPREFIX}/usr/share/man/man8" \
+		install
+}
+
+pkg_postinst() {
+	# TODO: Any others?
+	optfeature "fuzzing with AFL_USE_ASAN" sys-libs/compiler-rt-sanitizers[asan]
+	optfeature "fuzzing with AFL_USE_MSAN" sys-libs/compiler-rt-sanitizers[msan]
+}

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.01c-no-ignore-errors-makefile.patch b/app-forensics/aflplusplus/files/aflplusplus-4.01c-no-ignore-errors-makefile.patch
new file mode 100644
index 000000000000..95718bb3a32d
--- /dev/null
+++ b/app-forensics/aflplusplus/files/aflplusplus-4.01c-no-ignore-errors-makefile.patch
@@ -0,0 +1,154 @@
+https://bugs.gentoo.org/800941
+
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -308,17 +308,17 @@ endif
+ 
+ .PHONY: all
+ all:	test_x86 test_shm test_python ready $(PROGS) afl-as llvm gcc_plugin test_build all_done
+-	-$(MAKE) -C utils/aflpp_driver
++	$(MAKE) -C utils/aflpp_driver
+ 
+ .PHONY: llvm
+ llvm:
+-	-$(MAKE) -j4 -f GNUmakefile.llvm
++	$(MAKE) -j4 -f GNUmakefile.llvm
+ 	@test -e afl-cc || { echo "[-] Compiling afl-cc failed. You seem not to have a working compiler." ; exit 1; }
+ 
+ .PHONY: gcc_plugin
+ gcc_plugin:
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin
++	$(MAKE) -f GNUmakefile.gcc_plugin
+ endif
+ 
+ .PHONY: man
+@@ -568,19 +568,19 @@ all_done: test_build
+ .PHONY: clean
+ clean:
+ 	rm -rf $(PROGS) afl-fuzz-document afl-as as afl-g++ afl-clang afl-clang++ *.o src/*.o *~ a.out core core.[1-9][0-9]* *.stackdump .test .test1 .test2 test-instr .test-instr0 .test-instr1 afl-cs-proxy afl-qemu-trace afl-gcc-fast afl-g++-fast ld *.so *.8 test/unittests/*.o test/unittests/unit_maybe_alloc test/unittests/preallocable .afl-* afl-gcc afl-g++ afl-clang afl-clang++ test/unittests/unit_hash test/unittests/unit_rand *.dSYM lib*.a
+-	-$(MAKE) -f GNUmakefile.llvm clean
+-	-$(MAKE) -f GNUmakefile.gcc_plugin clean
+-	-$(MAKE) -C utils/libdislocator clean
+-	-$(MAKE) -C utils/libtokencap clean
++	$(MAKE) -f GNUmakefile.llvm clean
++	$(MAKE) -f GNUmakefile.gcc_plugin clean
++	$(MAKE) -C utils/libdislocator clean
++	$(MAKE) -C utils/libtokencap clean
+ 	$(MAKE) -C utils/aflpp_driver clean
+-	-$(MAKE) -C utils/afl_network_proxy clean
+-	-$(MAKE) -C utils/socket_fuzzing clean
+-	-$(MAKE) -C utils/argv_fuzzing clean
+-	-$(MAKE) -C utils/plot_ui clean
+-	-$(MAKE) -C qemu_mode/unsigaction clean
+-	-$(MAKE) -C qemu_mode/libcompcov clean
+-	-$(MAKE) -C qemu_mode/libqasan clean
+-	-$(MAKE) -C frida_mode clean
++	$(MAKE) -C utils/afl_network_proxy clean
++	$(MAKE) -C utils/socket_fuzzing clean
++	$(MAKE) -C utils/argv_fuzzing clean
++	$(MAKE) -C utils/plot_ui clean
++	$(MAKE) -C qemu_mode/unsigaction clean
++	$(MAKE) -C qemu_mode/libcompcov clean
++	$(MAKE) -C qemu_mode/libqasan clean
++	$(MAKE) -C frida_mode clean
+ 	rm -rf nyx_mode/packer/linux_initramfs/init.cpio.gz nyx_mode/libnyx/libnyx/target/release/* nyx_mode/QEMU-Nyx/x86_64-softmmu/qemu-system-x86_64
+ ifeq "$(IN_REPO)" "1"
+ 	-test -e coresight_mode/coresight-trace/Makefile && $(MAKE) -C coresight_mode/coresight-trace clean || true
+@@ -610,20 +610,20 @@ endif
+ 
+ .PHONY: distrib
+ distrib: all
+-	-$(MAKE) -j4 -f GNUmakefile.llvm
++	$(MAKE) -j4 -f GNUmakefile.llvm
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin
++	$(MAKE) -f GNUmakefile.gcc_plugin
+ endif
+-	-$(MAKE) -C utils/libdislocator
+-	-$(MAKE) -C utils/libtokencap
+-	-$(MAKE) -C utils/afl_network_proxy
+-	-$(MAKE) -C utils/socket_fuzzing
+-	-$(MAKE) -C utils/argv_fuzzing
+-	# -$(MAKE) -C utils/plot_ui
+-	-$(MAKE) -C frida_mode
++	$(MAKE) -C utils/libdislocator
++	$(MAKE) -C utils/libtokencap
++	$(MAKE) -C utils/afl_network_proxy
++	$(MAKE) -C utils/socket_fuzzing
++	$(MAKE) -C utils/argv_fuzzing
++	# $(MAKE) -C utils/plot_ui
++	$(MAKE) -C frida_mode
+ ifneq "$(SYS)" "Darwin"
+ ifeq "$(ARCH)" "aarch64"
+-	-$(MAKE) -C coresight_mode
++	$(MAKE) -C coresight_mode
+ endif
+ ifeq "$(SYS)" "Linux"
+ ifndef NO_NYX
+@@ -636,16 +636,16 @@ endif
+ 
+ .PHONY: binary-only
+ binary-only: test_shm test_python ready $(PROGS)
+-	-$(MAKE) -C utils/libdislocator
+-	-$(MAKE) -C utils/libtokencap
+-	-$(MAKE) -C utils/afl_network_proxy
+-	-$(MAKE) -C utils/socket_fuzzing
+-	-$(MAKE) -C utils/argv_fuzzing
+-	# -$(MAKE) -C utils/plot_ui
+-	-$(MAKE) -C frida_mode
++	$(MAKE) -C utils/libdislocator
++	$(MAKE) -C utils/libtokencap
++	$(MAKE) -C utils/afl_network_proxy
++	$(MAKE) -C utils/socket_fuzzing
++	$(MAKE) -C utils/argv_fuzzing
++	# $(MAKE) -C utils/plot_ui
++	$(MAKE) -C frida_mode
+ ifneq "$(SYS)" "Darwin"
+ ifeq "$(ARCH)" "aarch64"
+-	-$(MAKE) -C coresight_mode
++	$(MAKE) -C coresight_mode
+ endif
+ ifeq "$(SYS)" "Linux"
+ ifndef NO_NYX
+@@ -658,13 +658,13 @@ endif
+ 
+ .PHONY: source-only
+ source-only: all
+-	-$(MAKE) -j4 -f GNUmakefile.llvm
++	$(MAKE) -j4 -f GNUmakefile.llvm
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin
++	$(MAKE) -f GNUmakefile.gcc_plugin
+ endif
+-	-$(MAKE) -C utils/libdislocator
+-	-$(MAKE) -C utils/libtokencap
+-	# -$(MAKE) -C utils/plot_ui
++	$(MAKE) -C utils/libdislocator
++	$(MAKE) -C utils/libtokencap
++	# $(MAKE) -C utils/plot_ui
+ ifeq "$(SYS)" "Linux"
+ ifndef NO_NYX
+ 	-cd nyx_mode && ./build_nyx_support.sh
+@@ -712,9 +712,9 @@ install: all $(MANPAGES)
+ 	@if [ -f utils/afl_network_proxy/afl-network-server ]; then $(MAKE) -C utils/afl_network_proxy install; fi
+ 	@if [ -f utils/aflpp_driver/libAFLDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLDriver.a $${DESTDIR}$(HELPER_PATH); fi
+ 	@if [ -f utils/aflpp_driver/libAFLQemuDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLQemuDriver.a $${DESTDIR}$(HELPER_PATH); fi
+-	-$(MAKE) -f GNUmakefile.llvm install
++	$(MAKE) -f GNUmakefile.llvm install
+ ifneq "$(SYS)" "Darwin"
+-	-$(MAKE) -f GNUmakefile.gcc_plugin install
++	$(MAKE) -f GNUmakefile.gcc_plugin install
+ endif
+ 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-gcc
+ 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-g++
+--- a/GNUmakefile.llvm
++++ b/GNUmakefile.llvm
+@@ -463,6 +463,7 @@ document:
+ test_build: $(PROGS)
+ 	@echo "[*] Testing the CC wrapper and instrumentation output..."
+ 	unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO; 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)
++	@test -e test-instr || { echo "[-] Testing CC wrapper failed. You seem not to have a working compiler." ; exit 1; }
+ 	ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr0 ./test-instr < /dev/null
+ 	echo 1 | ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr1 ./test-instr
+ 	@rm -f test-instr

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.01c-respect-flags.patch b/app-forensics/aflplusplus/files/aflplusplus-4.01c-respect-flags.patch
new file mode 100644
index 000000000000..d22d582ecaa9
--- /dev/null
+++ b/app-forensics/aflplusplus/files/aflplusplus-4.01c-respect-flags.patch
@@ -0,0 +1,123 @@
+--- a/GNUmakefile
++++ b/GNUmakefile
+@@ -423,7 +423,7 @@ afl-as: src/afl-as.c include/afl-as.h $(COMM_HDR) | test_x86
+ 	@ln -sf afl-as as
+ 
+ src/afl-performance.o : $(COMM_HDR) src/afl-performance.c include/hash.h
+-	$(CC) $(CFLAGS) $(CFLAGS_OPT) -Iinclude -c src/afl-performance.c -o src/afl-performance.o
++	$(CC) $(CFLAGS) -Iinclude -c src/afl-performance.c -o src/afl-performance.o
+ 
+ src/afl-common.o : $(COMM_HDR) src/afl-common.c include/common.h
+ 	$(CC) $(CFLAGS) $(CFLAGS_FLTO) -c src/afl-common.c -o src/afl-common.o
+--- a/GNUmakefile.gcc_plugin
++++ b/GNUmakefile.gcc_plugin
+@@ -131,18 +131,18 @@ afl-common.o: ./src/afl-common.c
+ 	$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ $(LDFLAGS)
+ 
+ ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
+-	$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
++	$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -c $< -o $@
+ 
+ ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
+-	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
+-	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+ 
+ ./afl-gcc-pass.so: instrumentation/afl-gcc-pass.so.cc | test_deps
+-	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@
++	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@ $(LDFLAGS)
+ 	ln -sf afl-cc afl-gcc-fast
+ 	ln -sf afl-cc afl-g++-fast
+ 	ln -sf afl-cc.8 afl-gcc-fast.8
+--- a/GNUmakefile.llvm
++++ b/GNUmakefile.llvm
+@@ -444,20 +444,20 @@ afl-llvm-dict2file.so:	instrumentation/afl-llvm-dict2file.so.cc instrumentation/
+ 
+ .PHONY: document
+ document:
+-	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
+-	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+-	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
++	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
+-	$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
++	$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -c $< -o $@
+ 
+ ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
+-	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+ 
+ ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
+ 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
+-	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
++	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
+ 
+ .PHONY: test_build
+ test_build: $(PROGS)
+--- a/custom_mutators/honggfuzz/Makefile
++++ b/custom_mutators/honggfuzz/Makefile
+@@ -1,5 +1,6 @@
+ 
+-CFLAGS = -O3 -funroll-loops -fPIC -Wl,-Bsymbolic
++CFLAGS ?= -O3
++CFLAGS += -funroll-loops -fPIC -Wl,-Bsymbolic
+ 
+ all: honggfuzz-mutator.so
+ 
+--- a/custom_mutators/libfuzzer/Makefile
++++ b/custom_mutators/libfuzzer/Makefile
+@@ -1,5 +1,5 @@
+ 
+-CFLAGS = -g -O3 -funroll-loops -fPIC -fpermissive -std=c++11
+-#CFLAGS = -g -O0 -fPIC -fpermissive -std=c++11
++CFLAGS ?= -g -O3
++CFLAGS += -funroll-loops -fpermissive -std=c++11 -fPIC
+ CXX ?= clang++
+ 
+--- a/frida_mode/GNUmakefile
++++ b/frida_mode/GNUmakefile
+@@ -17,7 +17,6 @@ CFLAGS+=-fPIC \
+ 		-D_GNU_SOURCE \
+ 		-D_FORTIFY_SOURCE=2 \
+ 		-g \
+-		-O3 \
+ 		-funroll-loops \
+ 		-ffunction-sections \
+ 
+--- a/frida_mode/test/png/persistent/hook/GNUmakefile
++++ b/frida_mode/test/png/persistent/hook/GNUmakefile
+@@ -5,11 +5,9 @@ BUILD_DIR:=$(PWD)build/
+ AFLPP_FRIDA_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/frida_hook.so
+ AFLPP_QEMU_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/qemu_hook.so
+ 
+-CFLAGS+=-O3 \
+-		-funroll-loops \
++CFLAGS+= -funroll-loops \
+ 		-g \
+-		-fPIC \
+-		-funroll-loops \
++		-fPIC
+ 
+ LDFLAGS+=-shared \
+ 
+--- a/utils/aflpp_driver/GNUmakefile
++++ b/utils/aflpp_driver/GNUmakefile
+@@ -13,7 +13,8 @@ ifneq "" "$(LLVM_BINDIR)"
+   LLVM_BINDIR := $(LLVM_BINDIR)/
+ endif
+ 
+-CFLAGS := -O3 -funroll-loops -g -fPIC
++CFLAGS ?= -O3 -funroll-loops -g
++CFLAGS += -fPIC
+ 
+ all:	libAFLDriver.a libAFLQemuDriver.a aflpp_qemu_driver_hook.so
+ 


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-forensics/aflplusplus/, app-forensics/aflplusplus/files/
@ 2022-08-31  4:30 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2022-08-31  4:30 UTC (permalink / raw
  To: gentoo-commits

commit:     0e3b20750bc2d021e7540d24433bfbf3afb16890
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 31 04:26:43 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Aug 31 04:26:43 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e3b2075

app-forensics/aflplusplus: drop 4.00c

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-forensics/aflplusplus/Manifest                 |   1 -
 app-forensics/aflplusplus/aflplusplus-4.00c.ebuild |  88 ---------------
 ...lplusplus-4.00c-no-ignore-errors-makefile.patch | 121 --------------------
 .../files/aflplusplus-4.00c-respect-flags.patch    | 122 ---------------------
 4 files changed, 332 deletions(-)

diff --git a/app-forensics/aflplusplus/Manifest b/app-forensics/aflplusplus/Manifest
index f5ef08b725dc..3a76da8c144b 100644
--- a/app-forensics/aflplusplus/Manifest
+++ b/app-forensics/aflplusplus/Manifest
@@ -1,3 +1,2 @@
-DIST aflplusplus-4.00c.tar.gz 2805041 BLAKE2B c1ce15aa9860fc02a7d6f608cae9dd8987b72253b465ea734c721d1b6927e482c31b907aeafe82c00618465227e2e140bfc595151ea5d73037638c3ee630872c SHA512 23a7a4260e581f7c212393e1e14704464bbbc3ff5465b3472db31c6c7f2cd25a9ecc5ad81fad8958c775fcd01b22269085e6c69419a07fbbdb9ec317a3e39beb
 DIST aflplusplus-4.01c.tar.gz 2818445 BLAKE2B f3699c4b2fabec0ab238277c3b2c7b19b35af7a0b82b14a57c34b8579121cfa0644ef432132cf4a3382547db3faf799d2ab601512ddfb469e4a2246cdb61aa7f SHA512 d2b03ab4ff9538fe0b52aa3ed4778a6e5657d64d6f0e5f75a99305bad69c5179d6b1c882650f19a884a740577acb73dab7cee3d5c9c7b06ff2326ffeba37d1fe
 DIST aflplusplus-4.02c.tar.gz 2828429 BLAKE2B 0c4d7937626a699bb6768e2f67f369508f7ec131d1170cd48f8650d8081135b466733de34e52f2ac2213c4bd13ab8936b17d3b0f8debf28e8a32ad87d9dcb55d SHA512 f5159a84e0ecd2c260d2d8ce7df33fe4704c664bdf06f193a7fef377d48646e4d921ee90d0b66c7dac02d16e6b1607c6569351aaeea9b2ee3968d22b3f583763

diff --git a/app-forensics/aflplusplus/aflplusplus-4.00c.ebuild b/app-forensics/aflplusplus/aflplusplus-4.00c.ebuild
deleted file mode 100644
index 3cc127a6a3d0..000000000000
--- a/app-forensics/aflplusplus/aflplusplus-4.00c.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8,9,10} )
-LLVM_MAX_SLOT=13
-inherit toolchain-funcs llvm optfeature python-single-r1
-
-DESCRIPTION="A fork of AFL, the popular compile-time instrumentation fuzzer"
-HOMEPAGE="https://github.com/AFLplusplus/AFLplusplus"
-SRC_URI="https://github.com/AFLplusplus/AFLplusplus/archive/${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/AFLplusplus-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64"
-IUSE="test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# Tests involve heavy use of LD_PRELOAD in some cases
-# This isn't compatible with sandbox
-RESTRICT="test"
-
-# It turns out we need Clang too
-RDEPEND="${PYTHON_DEPS}
-	>=sys-devel/llvm-11:=
-	|| (
-		sys-devel/clang:11
-		sys-devel/clang:12
-		sys-devel/clang:13
-	)
-	!app-forensics/afl"
-DEPEND="${RDEPEND}
-	test? ( dev-util/cmocka )"
-
-QA_PREBUILT="usr/share/afl/testcases/others/elf/small_exec.elf"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-4.00c-respect-flags.patch
-	"${FILESDIR}"/${PN}-4.00c-no-ignore-errors-makefile.patch
-)
-
-llvm_check_deps() {
-	has_version -b "sys-devel/clang:${LLVM_SLOT}" && \
-		has_version -b "sys-devel/llvm:${LLVM_SLOT}"
-}
-
-pkg_setup() {
-	llvm_pkg_setup
-	python-single-r1_pkg_setup
-}
-
-src_compile() {
-	emake \
-		CC="$(tc-getCC)" \
-		CXX="$(tc-getCXX)" \
-		CFLAGS_FLTO="" \
-		PREFIX="${EPREFIX}/usr" \
-		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
-		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
-		MAN_PATH="${EPREFIX}/usr/share/man/man8"
-}
-
-src_test() {
-	emake \
-		CC="$(tc-getCC)" \
-		CXX="$(tc-getCXX)"
-}
-
-src_install() {
-	emake \
-		CC="$(tc-getCC)" \
-		CXX="$(tc-getCXX)" \
-		DESTDIR="${D}" \
-		PREFIX="${EPREFIX}/usr" \
-		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
-		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
-		MAN_PATH="${EPREFIX}/usr/share/man/man8" \
-		install
-}
-
-pkg_postinst() {
-	# TODO: Any others?
-	optfeature "fuzzing with AFL_USE_ASAN" sys-libs/compiler-rt-sanitizers[asan]
-	optfeature "fuzzing with AFL_USE_MSAN" sys-libs/compiler-rt-sanitizers[msan]
-}

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.00c-no-ignore-errors-makefile.patch b/app-forensics/aflplusplus/files/aflplusplus-4.00c-no-ignore-errors-makefile.patch
deleted file mode 100644
index 50d9268ac9bb..000000000000
--- a/app-forensics/aflplusplus/files/aflplusplus-4.00c-no-ignore-errors-makefile.patch
+++ /dev/null
@@ -1,121 +0,0 @@
-https://bugs.gentoo.org/800941
-
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -310,13 +310,13 @@ all:	test_x86 test_shm test_python ready $(PROGS) afl-as llvm gcc_plugin test_bu
- 
- .PHONY: llvm
- llvm:
--	-$(MAKE) -j4 -f GNUmakefile.llvm
-+	$(MAKE) -j4 -f GNUmakefile.llvm
- 	@test -e afl-cc || { echo "[-] Compiling afl-cc failed. You seem not to have a working compiler." ; exit 1; }
- 
- .PHONY: gcc_plugin
- gcc_plugin:
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin
-+	$(MAKE) -f GNUmakefile.gcc_plugin
- endif
- 
- .PHONY: man
-@@ -565,19 +565,19 @@ all_done: test_build
- .PHONY: clean
- clean:
- 	rm -rf $(PROGS) afl-fuzz-document afl-as as afl-g++ afl-clang afl-clang++ *.o src/*.o *~ a.out core core.[1-9][0-9]* *.stackdump .test .test1 .test2 test-instr .test-instr0 .test-instr1 afl-cs-proxy afl-qemu-trace afl-gcc-fast afl-g++-fast ld *.so *.8 test/unittests/*.o test/unittests/unit_maybe_alloc test/unittests/preallocable .afl-* afl-gcc afl-g++ afl-clang afl-clang++ test/unittests/unit_hash test/unittests/unit_rand *.dSYM
--	-$(MAKE) -f GNUmakefile.llvm clean
--	-$(MAKE) -f GNUmakefile.gcc_plugin clean
--	-$(MAKE) -C utils/libdislocator clean
--	-$(MAKE) -C utils/libtokencap clean
-+	$(MAKE) -f GNUmakefile.llvm clean
-+	$(MAKE) -f GNUmakefile.gcc_plugin clean
-+	$(MAKE) -C utils/libdislocator clean
-+	$(MAKE) -C utils/libtokencap clean
- 	$(MAKE) -C utils/aflpp_driver clean
--	-$(MAKE) -C utils/afl_network_proxy clean
--	-$(MAKE) -C utils/socket_fuzzing clean
--	-$(MAKE) -C utils/argv_fuzzing clean
--	-$(MAKE) -C utils/plot_ui clean
--	-$(MAKE) -C qemu_mode/unsigaction clean
--	-$(MAKE) -C qemu_mode/libcompcov clean
--	-$(MAKE) -C qemu_mode/libqasan clean
--	-$(MAKE) -C frida_mode clean
-+	$(MAKE) -C utils/afl_network_proxy clean
-+	$(MAKE) -C utils/socket_fuzzing clean
-+	$(MAKE) -C utils/argv_fuzzing clean
-+	$(MAKE) -C utils/plot_ui clean
-+	$(MAKE) -C qemu_mode/unsigaction clean
-+	$(MAKE) -C qemu_mode/libcompcov clean
-+	$(MAKE) -C qemu_mode/libqasan clean
-+	$(MAKE) -C frida_mode clean
- 	rm -rf nyx_mode/packer/linux_initramfs/init.cpio.gz nyx_mode/libnyx/libnyx/target/release/* nyx_mode/QEMU-Nyx/x86_64-softmmu/qemu-system-x86_64
- ifeq "$(IN_REPO)" "1"
- 	-test -e coresight_mode/coresight-trace/Makefile && $(MAKE) -C coresight_mode/coresight-trace clean || true
-@@ -607,20 +607,20 @@ endif
- 
- .PHONY: distrib
- distrib: all
--	-$(MAKE) -j4 -f GNUmakefile.llvm
-+	$(MAKE) -j4 -f GNUmakefile.llvm
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin
-+	$(MAKE) -f GNUmakefile.gcc_plugin
- endif
--	-$(MAKE) -C utils/libdislocator
--	-$(MAKE) -C utils/libtokencap
--	-$(MAKE) -C utils/afl_network_proxy
--	-$(MAKE) -C utils/socket_fuzzing
--	-$(MAKE) -C utils/argv_fuzzing
-+	$(MAKE) -C utils/libdislocator
-+	$(MAKE) -C utils/libtokencap
-+	$(MAKE) -C utils/afl_network_proxy
-+	$(MAKE) -C utils/socket_fuzzing
-+	$(MAKE) -C utils/argv_fuzzing
- 	# -$(MAKE) -C utils/plot_ui
--	-$(MAKE) -C frida_mode
-+	$(MAKE) -C frida_mode
- ifneq "$(SYS)" "Darwin"
- ifeq "$(ARCH)" "aarch64"
--	-$(MAKE) -C coresight_mode
-+	$(MAKE) -C coresight_mode
- endif
- ifeq "$(SYS)" "Linux"
- 	-cd nyx_mode && ./build_nyx_support.sh
-@@ -651,12 +651,12 @@ endif
- 
- .PHONY: source-only
- source-only: all
--	-$(MAKE) -j4 -f GNUmakefile.llvm
-+	$(MAKE) -j4 -f GNUmakefile.llvm
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin
-+	$(MAKE) -f GNUmakefile.gcc_plugin
- endif
--	-$(MAKE) -C utils/libdislocator
--	-$(MAKE) -C utils/libtokencap
-+	$(MAKE) -C utils/libdislocator
-+	$(MAKE) -C utils/libtokencap
- 	# -$(MAKE) -C utils/plot_ui
- ifeq "$(SYS)" "Linux"
- 	-cd nyx_mode && ./build_nyx_support.sh
-@@ -702,9 +702,9 @@ install: all $(MANPAGES)
- 	@if [ -f utils/afl_network_proxy/afl-network-server ]; then $(MAKE) -C utils/afl_network_proxy install; fi
- 	@if [ -f utils/aflpp_driver/libAFLDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLDriver.a $${DESTDIR}$(HELPER_PATH); fi
- 	@if [ -f utils/aflpp_driver/libAFLQemuDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLQemuDriver.a $${DESTDIR}$(HELPER_PATH); fi
--	-$(MAKE) -f GNUmakefile.llvm install
-+	$(MAKE) -f GNUmakefile.llvm install
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin install
-+	$(MAKE) -f GNUmakefile.gcc_plugin install
- endif
- 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-gcc
- 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-g++
---- a/GNUmakefile.llvm
-+++ b/GNUmakefile.llvm
-@@ -457,6 +457,7 @@ document:
- test_build: $(PROGS)
- 	@echo "[*] Testing the CC wrapper and instrumentation output..."
- 	unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO; 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)
-+	@test -e test-instr || { echo "[-] Testing CC wrapper failed. You seem not to have a working compiler." ; exit 1; }
- 	ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr0 ./test-instr < /dev/null
- 	echo 1 | ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr1 ./test-instr
- 	@rm -f test-instr

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.00c-respect-flags.patch b/app-forensics/aflplusplus/files/aflplusplus-4.00c-respect-flags.patch
deleted file mode 100644
index 47ccbe008c89..000000000000
--- a/app-forensics/aflplusplus/files/aflplusplus-4.00c-respect-flags.patch
+++ /dev/null
@@ -1,122 +0,0 @@
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -420,7 +420,7 @@ afl-as: src/afl-as.c include/afl-as.h $(COMM_HDR) | test_x86
- 	@ln -sf afl-as as
- 
- src/afl-performance.o : $(COMM_HDR) src/afl-performance.c include/hash.h
--	$(CC) $(CFLAGS) -Iinclude $(SPECIAL_PERFORMANCE) -O3 -fno-unroll-loops -c src/afl-performance.c -o src/afl-performance.o
-+	$(CC) $(CFLAGS) -Iinclude $(SPECIAL_PERFORMANCE) -fno-unroll-loops -c src/afl-performance.c -o src/afl-performance.o
- 
- src/afl-common.o : $(COMM_HDR) src/afl-common.c include/common.h
- 	$(CC) $(CFLAGS) $(CFLAGS_FLTO) -c src/afl-common.c -o src/afl-common.o
---- a/GNUmakefile.gcc_plugin
-+++ b/GNUmakefile.gcc_plugin
-@@ -131,18 +131,18 @@ afl-common.o: ./src/afl-common.c
- 	$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ $(LDFLAGS)
- 
- ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
--	$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
-+	$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -c $< -o $@
- 
- ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
--	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
- 
- ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
--	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
- 
- ./afl-gcc-pass.so: instrumentation/afl-gcc-pass.so.cc | test_deps
--	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@
-+	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@ $(LDFLAGS)
- 	ln -sf afl-cc afl-gcc-fast
- 	ln -sf afl-cc afl-g++-fast
- 	ln -sf afl-cc.8 afl-gcc-fast.8
---- a/GNUmakefile.llvm
-+++ b/GNUmakefile.llvm
-@@ -438,20 +438,20 @@ afl-llvm-dict2file.so:	instrumentation/afl-llvm-dict2file.so.cc instrumentation/
- 
- .PHONY: document
- document:
--	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
--	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
--	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
-+	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
- 
- ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
--	$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
-+	$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -c $< -o $@
- 
- ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
--	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-32.o afl-llvm-rt-32.o; else echo "failed (that's fine)"; fi
- 
- ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
--	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; ln -sf afl-compiler-rt-64.o afl-llvm-rt-64.o; else echo "failed (that's fine)"; fi
- 
- .PHONY: test_build
- test_build: $(PROGS)
---- a/custom_mutators/honggfuzz/Makefile
-+++ b/custom_mutators/honggfuzz/Makefile
-@@ -1,5 +1,6 @@
- 
--CFLAGS = -O3 -funroll-loops -fPIC -Wl,-Bsymbolic
-+CFLAGS ?= -O3
-+CFLAGS += -funroll-loops -fPIC -Wl,-Bsymbolic
- 
- all: honggfuzz-mutator.so
- 
---- a/custom_mutators/libfuzzer/Makefile
-+++ b/custom_mutators/libfuzzer/Makefile
-@@ -1,5 +1,6 @@
- 
--CFLAGS = -g -O3 -funroll-loops -fPIC -fpermissive -std=c++11
-+CFLAGS ?= -g -O3
-+CFLAGS += -funroll-loops -fpermissive -std=c++11 -fPIC
- #CFLAGS = -g -O0 -fPIC -fpermissive -std=c++11
- CXX ?= clang++
- 
---- a/frida_mode/GNUmakefile
-+++ b/frida_mode/GNUmakefile
-@@ -17,7 +17,6 @@ CFLAGS+=-fPIC \
- 		-D_GNU_SOURCE \
- 		-D_FORTIFY_SOURCE=2 \
- 		-g \
--		-O3 \
- 		-funroll-loops \
- 		-ffunction-sections \
- 
---- a/frida_mode/test/png/persistent/hook/GNUmakefile
-+++ b/frida_mode/test/png/persistent/hook/GNUmakefile
-@@ -5,11 +5,9 @@ BUILD_DIR:=$(PWD)build/
- AFLPP_FRIDA_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/frida_hook.so
- AFLPP_QEMU_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/qemu_hook.so
- 
--CFLAGS+=-O3 \
--		-funroll-loops \
-+CFLAGS+= -funroll-loops \
- 		-g \
--		-fPIC \
--		-funroll-loops \
-+		-fPIC
- 
- LDFLAGS+=-shared \
- 
---- a/utils/aflpp_driver/GNUmakefile
-+++ b/utils/aflpp_driver/GNUmakefile
-@@ -7,7 +7,7 @@ ifneq "" "$(LLVM_BINDIR)"
-   LLVM_BINDIR := $(LLVM_BINDIR)/
- endif
- 
--CFLAGS := -O3 -funroll-loops -g -fPIC
-+CFLAGS ?= -O3 -funroll-loops -g -fPIC
- 
- all:	libAFLDriver.a libAFLQemuDriver.a aflpp_qemu_driver_hook.so
- 


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: app-forensics/aflplusplus/, app-forensics/aflplusplus/files/
@ 2023-01-10  3:36 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2023-01-10  3:36 UTC (permalink / raw
  To: gentoo-commits

commit:     d91bc8093ff2947000f6c773f807349340d8750d
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 10 03:35:55 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jan 10 03:35:55 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d91bc809

app-forensics/aflplusplus: drop 4.01c-r1

Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-forensics/aflplusplus/Manifest                 |   1 -
 .../aflplusplus/aflplusplus-4.01c-r1.ebuild        |  90 ----------
 .../files/aflplusplus-4.01c-lld-detect.patch       |  14 --
 ...lplusplus-4.01c-no-ignore-errors-makefile.patch | 155 ----------------
 .../files/aflplusplus-4.01c-respect-flags.patch    | 197 ---------------------
 5 files changed, 457 deletions(-)

diff --git a/app-forensics/aflplusplus/Manifest b/app-forensics/aflplusplus/Manifest
index 97392ef78644..90512a2f7a66 100644
--- a/app-forensics/aflplusplus/Manifest
+++ b/app-forensics/aflplusplus/Manifest
@@ -1,4 +1,3 @@
-DIST aflplusplus-4.01c.tar.gz 2818445 BLAKE2B f3699c4b2fabec0ab238277c3b2c7b19b35af7a0b82b14a57c34b8579121cfa0644ef432132cf4a3382547db3faf799d2ab601512ddfb469e4a2246cdb61aa7f SHA512 d2b03ab4ff9538fe0b52aa3ed4778a6e5657d64d6f0e5f75a99305bad69c5179d6b1c882650f19a884a740577acb73dab7cee3d5c9c7b06ff2326ffeba37d1fe
 DIST aflplusplus-4.03c-patches.tar.xz 4444 BLAKE2B 4eed2ee97e4f7aef987e5c931469b7bb1d85310cb101878e5e71431ac36329a07b0e05812ed1e743c6ed3ce76e10c4392f2bf7ccc98ec1537b75196c5629acfe SHA512 bcaa196640f47923be6daa65e3c5f8461eadaec3b939f2cfe0223eacc64be385c80166ec7dc0df25d0c38053a38c3efcfbc25d8387bed5c54c95a8781ed64b00
 DIST aflplusplus-4.03c.tar.gz 2830718 BLAKE2B 1b55daf3c3a0a0b11c1ef0a7dd1005cfa1ec61fb54691b96519f57788233b1385b52948468f2d5beada3c58129bc0524f07aebfb25ee8cef1e5d5afd06b1233d SHA512 4bab00d964eb9d0664d97062f5da8090dfef599480f25b04d08b84e7f47676a9790fb23573f7e885b5da6ab813694f9ab26a0b5c9d341834892530558e3b83ef
 DIST aflplusplus-4.04c-patches.tar.xz 4236 BLAKE2B 86bb5d1e0da271833fc548633e08897bd681f1b575b3131d72222eeb7135f3cbdbd5580d0afc56a23639eb4621f878fd4ffdc4e0ba11b34388a99768f2529c76 SHA512 5c607b255e2d74033d5258218a907a8edcd44eab006377edee9618d3755815fbda9f5d565444e090ab0b27220675736a1eed285f92cb74122d0b9b3bcbcc0a2c

diff --git a/app-forensics/aflplusplus/aflplusplus-4.01c-r1.ebuild b/app-forensics/aflplusplus/aflplusplus-4.01c-r1.ebuild
deleted file mode 100644
index 098797d09e10..000000000000
--- a/app-forensics/aflplusplus/aflplusplus-4.01c-r1.ebuild
+++ /dev/null
@@ -1,90 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8,9,10} )
-LLVM_MAX_SLOT=14
-inherit toolchain-funcs llvm optfeature python-single-r1
-
-DESCRIPTION="A fork of AFL, the popular compile-time instrumentation fuzzer"
-HOMEPAGE="https://github.com/AFLplusplus/AFLplusplus"
-SRC_URI="https://github.com/AFLplusplus/AFLplusplus/archive/${PV}.tar.gz -> ${P}.tar.gz"
-S="${WORKDIR}/AFLplusplus-${PV}"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm64"
-IUSE="test"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-# Tests involve heavy use of LD_PRELOAD in some cases
-# This isn't compatible with sandbox
-RESTRICT="test"
-
-# It turns out we need Clang too
-RDEPEND="${PYTHON_DEPS}
-	>=sys-devel/llvm-12:=
-	|| (
-		sys-devel/clang:12
-		sys-devel/clang:13
-		sys-devel/clang:${LLVM_MAX_SLOT}
-	)
-	!app-forensics/afl"
-DEPEND="${RDEPEND}
-	test? ( dev-util/cmocka )"
-
-QA_PREBUILT="usr/share/afl/testcases/others/elf/small_exec.elf"
-
-PATCHES=(
-	"${FILESDIR}"/${PN}-4.01c-respect-flags.patch
-	"${FILESDIR}"/${PN}-4.01c-no-ignore-errors-makefile.patch
-	"${FILESDIR}"/${PN}-4.01c-lld-detect.patch
-)
-
-llvm_check_deps() {
-	has_version -b "sys-devel/clang:${LLVM_SLOT}" && \
-		has_version -b "sys-devel/llvm:${LLVM_SLOT}"
-}
-
-pkg_setup() {
-	llvm_pkg_setup
-	python-single-r1_pkg_setup
-}
-
-src_compile() {
-	emake \
-		CC="$(tc-getCC)" \
-		CXX="$(tc-getCXX)" \
-		CFLAGS_FLTO="" \
-		PREFIX="${EPREFIX}/usr" \
-		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
-		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
-		MAN_PATH="${EPREFIX}/usr/share/man/man8"
-}
-
-src_test() {
-	emake \
-		CC="$(tc-getCC)" \
-		CXX="$(tc-getCXX)"
-}
-
-src_install() {
-	emake \
-		CC="$(tc-getCC)" \
-		CXX="$(tc-getCXX)" \
-		DESTDIR="${D}" \
-		PREFIX="${EPREFIX}/usr" \
-		HELPER_PATH="${EPREFIX}/usr/$(get_libdir)/afl" \
-		DOC_PATH="${EPREFIX}/usr/share/doc/${PF}" \
-		MAN_PATH="${EPREFIX}/usr/share/man/man8" \
-		install
-	dostrip -x /usr/share/afl/testcases/
-}
-
-pkg_postinst() {
-	# TODO: Any others?
-	optfeature "fuzzing with AFL_USE_ASAN" sys-libs/compiler-rt-sanitizers[asan]
-	optfeature "fuzzing with AFL_USE_MSAN" sys-libs/compiler-rt-sanitizers[msan]
-}

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.01c-lld-detect.patch b/app-forensics/aflplusplus/files/aflplusplus-4.01c-lld-detect.patch
deleted file mode 100644
index cec2c9d17979..000000000000
--- a/app-forensics/aflplusplus/files/aflplusplus-4.01c-lld-detect.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/GNUmakefile.llvm
-+++ b/GNUmakefile.llvm
-@@ -218,9 +218,8 @@ endif
- ifeq "$(LLVM_LTO)" "1"
-   ifneq "$(AFL_CLANG_FLTO)" ""
-     ifeq "$(AFL_REAL_LD)" ""
--      ifneq "$(shell readlink $(LLVM_BINDIR)/ld.lld 2>&1)" ""
--        AFL_REAL_LD = $(LLVM_BINDIR)/ld.lld
--      else
-+      AFL_REAL_LD = "$(shell command -v $(LLVM_BINDIR)/ld.lld 2>/dev/null || command -v ld.lld 2>/dev/null)"
-+      ifeq "$(AFL_REAL_LD)" ""
-         $(warning ld.lld not found, cannot enable LTO mode)
-         LLVM_LTO = 0
-       endif

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.01c-no-ignore-errors-makefile.patch b/app-forensics/aflplusplus/files/aflplusplus-4.01c-no-ignore-errors-makefile.patch
deleted file mode 100644
index 861835892bb5..000000000000
--- a/app-forensics/aflplusplus/files/aflplusplus-4.01c-no-ignore-errors-makefile.patch
+++ /dev/null
@@ -1,155 +0,0 @@
-https://bugs.gentoo.org/800941
-(also don't override jobs for sub-makes)
-
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -308,17 +308,17 @@ endif
- 
- .PHONY: all
- all:	test_x86 test_shm test_python ready $(PROGS) afl-as llvm gcc_plugin test_build all_done
--	-$(MAKE) -C utils/aflpp_driver
-+	$(MAKE) -C utils/aflpp_driver
- 
- .PHONY: llvm
- llvm:
--	-$(MAKE) -j4 -f GNUmakefile.llvm
-+	$(MAKE) -f GNUmakefile.llvm
- 	@test -e afl-cc || { echo "[-] Compiling afl-cc failed. You seem not to have a working compiler." ; exit 1; }
- 
- .PHONY: gcc_plugin
- gcc_plugin:
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin
-+	$(MAKE) -f GNUmakefile.gcc_plugin
- endif
- 
- .PHONY: man
-@@ -568,19 +568,19 @@ all_done: test_build
- .PHONY: clean
- clean:
- 	rm -rf $(PROGS) afl-fuzz-document afl-as as afl-g++ afl-clang afl-clang++ *.o src/*.o *~ a.out core core.[1-9][0-9]* *.stackdump .test .test1 .test2 test-instr .test-instr0 .test-instr1 afl-cs-proxy afl-qemu-trace afl-gcc-fast afl-g++-fast ld *.so *.8 test/unittests/*.o test/unittests/unit_maybe_alloc test/unittests/preallocable .afl-* afl-gcc afl-g++ afl-clang afl-clang++ test/unittests/unit_hash test/unittests/unit_rand *.dSYM lib*.a
--	-$(MAKE) -f GNUmakefile.llvm clean
--	-$(MAKE) -f GNUmakefile.gcc_plugin clean
--	-$(MAKE) -C utils/libdislocator clean
--	-$(MAKE) -C utils/libtokencap clean
-+	$(MAKE) -f GNUmakefile.llvm clean
-+	$(MAKE) -f GNUmakefile.gcc_plugin clean
-+	$(MAKE) -C utils/libdislocator clean
-+	$(MAKE) -C utils/libtokencap clean
- 	$(MAKE) -C utils/aflpp_driver clean
--	-$(MAKE) -C utils/afl_network_proxy clean
--	-$(MAKE) -C utils/socket_fuzzing clean
--	-$(MAKE) -C utils/argv_fuzzing clean
--	-$(MAKE) -C utils/plot_ui clean
--	-$(MAKE) -C qemu_mode/unsigaction clean
--	-$(MAKE) -C qemu_mode/libcompcov clean
--	-$(MAKE) -C qemu_mode/libqasan clean
--	-$(MAKE) -C frida_mode clean
-+	$(MAKE) -C utils/afl_network_proxy clean
-+	$(MAKE) -C utils/socket_fuzzing clean
-+	$(MAKE) -C utils/argv_fuzzing clean
-+	$(MAKE) -C utils/plot_ui clean
-+	$(MAKE) -C qemu_mode/unsigaction clean
-+	$(MAKE) -C qemu_mode/libcompcov clean
-+	$(MAKE) -C qemu_mode/libqasan clean
-+	$(MAKE) -C frida_mode clean
- 	rm -rf nyx_mode/packer/linux_initramfs/init.cpio.gz nyx_mode/libnyx/libnyx/target/release/* nyx_mode/QEMU-Nyx/x86_64-softmmu/qemu-system-x86_64
- ifeq "$(IN_REPO)" "1"
- 	-test -e coresight_mode/coresight-trace/Makefile && $(MAKE) -C coresight_mode/coresight-trace clean || true
-@@ -610,20 +610,20 @@ endif
- 
- .PHONY: distrib
- distrib: all
--	-$(MAKE) -j4 -f GNUmakefile.llvm
-+	$(MAKE) -f GNUmakefile.llvm
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin
-+	$(MAKE) -f GNUmakefile.gcc_plugin
- endif
--	-$(MAKE) -C utils/libdislocator
--	-$(MAKE) -C utils/libtokencap
--	-$(MAKE) -C utils/afl_network_proxy
--	-$(MAKE) -C utils/socket_fuzzing
--	-$(MAKE) -C utils/argv_fuzzing
--	# -$(MAKE) -C utils/plot_ui
--	-$(MAKE) -C frida_mode
-+	$(MAKE) -C utils/libdislocator
-+	$(MAKE) -C utils/libtokencap
-+	$(MAKE) -C utils/afl_network_proxy
-+	$(MAKE) -C utils/socket_fuzzing
-+	$(MAKE) -C utils/argv_fuzzing
-+	# $(MAKE) -C utils/plot_ui
-+	$(MAKE) -C frida_mode
- ifneq "$(SYS)" "Darwin"
- ifeq "$(ARCH)" "aarch64"
--	-$(MAKE) -C coresight_mode
-+	$(MAKE) -C coresight_mode
- endif
- ifeq "$(SYS)" "Linux"
- ifndef NO_NYX
-@@ -636,16 +636,16 @@ endif
- 
- .PHONY: binary-only
- binary-only: test_shm test_python ready $(PROGS)
--	-$(MAKE) -C utils/libdislocator
--	-$(MAKE) -C utils/libtokencap
--	-$(MAKE) -C utils/afl_network_proxy
--	-$(MAKE) -C utils/socket_fuzzing
--	-$(MAKE) -C utils/argv_fuzzing
--	# -$(MAKE) -C utils/plot_ui
--	-$(MAKE) -C frida_mode
-+	$(MAKE) -C utils/libdislocator
-+	$(MAKE) -C utils/libtokencap
-+	$(MAKE) -C utils/afl_network_proxy
-+	$(MAKE) -C utils/socket_fuzzing
-+	$(MAKE) -C utils/argv_fuzzing
-+	# $(MAKE) -C utils/plot_ui
-+	$(MAKE) -C frida_mode
- ifneq "$(SYS)" "Darwin"
- ifeq "$(ARCH)" "aarch64"
--	-$(MAKE) -C coresight_mode
-+	$(MAKE) -C coresight_mode
- endif
- ifeq "$(SYS)" "Linux"
- ifndef NO_NYX
-@@ -658,13 +658,13 @@ endif
- 
- .PHONY: source-only
- source-only: all
--	-$(MAKE) -j4 -f GNUmakefile.llvm
-+	$(MAKE) -f GNUmakefile.llvm
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin
-+	$(MAKE) -f GNUmakefile.gcc_plugin
- endif
--	-$(MAKE) -C utils/libdislocator
--	-$(MAKE) -C utils/libtokencap
--	# -$(MAKE) -C utils/plot_ui
-+	$(MAKE) -C utils/libdislocator
-+	$(MAKE) -C utils/libtokencap
-+	# $(MAKE) -C utils/plot_ui
- ifeq "$(SYS)" "Linux"
- ifndef NO_NYX
- 	-cd nyx_mode && ./build_nyx_support.sh
-@@ -712,9 +712,9 @@ install: all $(MANPAGES)
- 	@if [ -f utils/afl_network_proxy/afl-network-server ]; then $(MAKE) -C utils/afl_network_proxy install; fi
- 	@if [ -f utils/aflpp_driver/libAFLDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLDriver.a $${DESTDIR}$(HELPER_PATH); fi
- 	@if [ -f utils/aflpp_driver/libAFLQemuDriver.a ]; then set -e; install -m 644 utils/aflpp_driver/libAFLQemuDriver.a $${DESTDIR}$(HELPER_PATH); fi
--	-$(MAKE) -f GNUmakefile.llvm install
-+	$(MAKE) -f GNUmakefile.llvm install
- ifneq "$(SYS)" "Darwin"
--	-$(MAKE) -f GNUmakefile.gcc_plugin install
-+	$(MAKE) -f GNUmakefile.gcc_plugin install
- endif
- 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-gcc
- 	ln -sf afl-cc $${DESTDIR}$(BIN_PATH)/afl-g++
---- a/GNUmakefile.llvm
-+++ b/GNUmakefile.llvm
-@@ -463,6 +463,7 @@ document:
- test_build: $(PROGS)
- 	@echo "[*] Testing the CC wrapper and instrumentation output..."
- 	unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO; ASAN_OPTIONS=detect_leaks=0 AFL_QUIET=1 AFL_PATH=. AFL_LLVM_LAF_ALL=1 ./afl-cc ./test-instr.c -o test-instr
-+	@test -e test-instr || { echo "[-] Testing CC wrapper failed. You seem not to have a working compiler." ; exit 1; }
- 	ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr0 ./test-instr < /dev/null
- 	echo 1 | ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr1 ./test-instr
- 	@rm -f test-instr

diff --git a/app-forensics/aflplusplus/files/aflplusplus-4.01c-respect-flags.patch b/app-forensics/aflplusplus/files/aflplusplus-4.01c-respect-flags.patch
deleted file mode 100644
index 0fe62c0b41ae..000000000000
--- a/app-forensics/aflplusplus/files/aflplusplus-4.01c-respect-flags.patch
+++ /dev/null
@@ -1,197 +0,0 @@
-* Respect AR, CC, CFLAGS, CPPFLAGS, LDFLAGS everywhere when building.
-* Ignore build flags then when testing the CC wrappers (could contain
-  incompatible flags).
-* Disable LTO for runtime objects, these shouldn't contain IR.
-
---- a/GNUmakefile
-+++ b/GNUmakefile
-@@ -423,7 +423,7 @@ afl-as: src/afl-as.c include/afl-as.h $(COMM_HDR) | test_x86
- 	@ln -sf afl-as as
- 
- src/afl-performance.o : $(COMM_HDR) src/afl-performance.c include/hash.h
--	$(CC) $(CFLAGS) $(CFLAGS_OPT) -Iinclude -c src/afl-performance.c -o src/afl-performance.o
-+	$(CC) $(CFLAGS) -Iinclude -c src/afl-performance.c -o src/afl-performance.o
- 
- src/afl-common.o : $(COMM_HDR) src/afl-common.c include/common.h
- 	$(CC) $(CFLAGS) $(CFLAGS_FLTO) -c src/afl-common.c -o src/afl-common.o
-@@ -531,7 +531,7 @@ .PHONY: test_build
- ifndef AFL_NO_X86
- test_build: afl-cc afl-gcc afl-as afl-showmap
- 	@echo "[*] Testing the CC wrapper afl-cc and its instrumentation output..."
--	@unset AFL_MAP_SIZE AFL_USE_UBSAN AFL_USE_CFISAN AFL_USE_LSAN AFL_USE_ASAN AFL_USE_MSAN; ASAN_OPTIONS=detect_leaks=0 AFL_INST_RATIO=100 AFL_PATH=. ./afl-cc test-instr.c $(LDFLAGS) -o test-instr 2>&1 || (echo "Oops, afl-cc failed"; exit 1 )
-+	@unset AFL_MAP_SIZE AFL_USE_UBSAN AFL_USE_CFISAN AFL_USE_LSAN AFL_USE_ASAN AFL_USE_MSAN; ASAN_OPTIONS=detect_leaks=0 AFL_INST_RATIO=100 AFL_PATH=. ./afl-cc test-instr.c -o test-instr 2>&1 || (echo "Oops, afl-cc failed"; exit 1 )
- 	ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr0 ./test-instr < /dev/null
- 	echo 1 | ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr1 ./test-instr
- 	@rm -f test-instr
---- a/GNUmakefile.gcc_plugin
-+++ b/GNUmakefile.gcc_plugin
-@@ -131,18 +131,18 @@ afl-common.o: ./src/afl-common.c
- 	$(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ $(LDFLAGS)
- 
- ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
--	$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
-+	$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -fno-lto -c $< -o $@
- 
- ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
--	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -fno-lto -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
- 
- ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
--	@$(CC) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -fno-lto -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
- 
- ./afl-gcc-pass.so: instrumentation/afl-gcc-pass.so.cc | test_deps
--	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@
-+	$(CXX) $(CXXEFLAGS) $(PLUGIN_FLAGS) -shared $< -o $@ $(LDFLAGS)
- 	ln -sf afl-cc afl-gcc-fast
- 	ln -sf afl-cc afl-g++-fast
- 	ln -sf afl-cc.8 afl-gcc-fast.8
---- a/GNUmakefile.llvm
-+++ b/GNUmakefile.llvm
-@@ -410,7 +410,7 @@ endif
- 
- ./afl-ld-lto: src/afl-ld-lto.c
- ifeq "$(LLVM_LTO)" "1"
--	$(CC) $(CFLAGS) $(CPPFLAGS) $< -o $@
-+	$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $< -o $@
- endif
- 
- ./SanitizerCoverageLTO.so: instrumentation/SanitizerCoverageLTO.so.cc instrumentation/afl-llvm-common.o
-@@ -444,25 +444,25 @@ afl-llvm-dict2file.so:	instrumentation/afl-llvm-dict2file.so.cc instrumentation/
- 
- .PHONY: document
- document:
--	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
--	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
--	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -O3 -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt.o
-+	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m32 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-32.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	@$(CLANG_BIN) -D_AFL_DOCUMENT_MUTATIONS $(CFLAGS) $(CFLAGS_SAFE) $(CPPFLAGS) $(CLANG_CFL) -Wno-unused-result -m64 -fPIC -c instrumentation/afl-compiler-rt.o.c -o ./afl-compiler-rt-64.o 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
- 
- ./afl-compiler-rt.o: instrumentation/afl-compiler-rt.o.c
--	$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -fPIC -c $< -o $@
-+	$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -fPIC -fno-lto -c $< -o $@
- 
- ./afl-compiler-rt-32.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 32-bit variant of the runtime (-m32)... "
--	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m32 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m32 -fPIC -fno-lto -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
- 
- ./afl-compiler-rt-64.o: instrumentation/afl-compiler-rt.o.c
- 	@printf "[*] Building 64-bit variant of the runtime (-m64)... "
--	@$(CC) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -O3 -Wno-unused-result -m64 -fPIC -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
-+	@$(CC) $(CFLAGS) $(CLANG_CFL) $(CFLAGS_SAFE) $(CPPFLAGS) -Wno-unused-result -m64 -fPIC -fno-lto -c $< -o $@ 2>/dev/null; if [ "$$?" = "0" ]; then echo "success!"; else echo "failed (that's fine)"; fi
- 
- .PHONY: test_build
- test_build: $(PROGS)
- 	@echo "[*] Testing the CC wrapper and instrumentation output..."
--	unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO; 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)
-+	unset AFL_USE_ASAN AFL_USE_MSAN AFL_INST_RATIO; ASAN_OPTIONS=detect_leaks=0 AFL_QUIET=1 AFL_PATH=. AFL_LLVM_LAF_ALL=1 ./afl-cc ./test-instr.c -o test-instr
- 	ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr0 ./test-instr < /dev/null
- 	echo 1 | ASAN_OPTIONS=detect_leaks=0 ./afl-showmap -m none -q -o .test-instr1 ./test-instr
- 	@rm -f test-instr
---- a/custom_mutators/honggfuzz/Makefile
-+++ b/custom_mutators/honggfuzz/Makefile
-@@ -1,5 +1,6 @@
- 
--CFLAGS = -O3 -funroll-loops -fPIC -Wl,-Bsymbolic
-+CFLAGS ?= -O3
-+CFLAGS += -funroll-loops -fPIC -Wl,-Bsymbolic
- 
- all: honggfuzz-mutator.so
- 
---- a/custom_mutators/libfuzzer/Makefile
-+++ b/custom_mutators/libfuzzer/Makefile
-@@ -1,5 +1,5 @@
- 
--CFLAGS = -g -O3 -funroll-loops -fPIC -fpermissive -std=c++11
--#CFLAGS = -g -O0 -fPIC -fpermissive -std=c++11
-+CFLAGS ?= -g -O3
-+CFLAGS += -funroll-loops -fpermissive -std=c++11 -fPIC
- CXX ?= clang++
- 
---- a/frida_mode/GNUmakefile
-+++ b/frida_mode/GNUmakefile
-@@ -17,7 +17,6 @@ CFLAGS+=-fPIC \
- 		-D_GNU_SOURCE \
- 		-D_FORTIFY_SOURCE=2 \
- 		-g \
--		-O3 \
- 		-funroll-loops \
- 		-ffunction-sections \
- 
---- a/frida_mode/test/png/persistent/hook/GNUmakefile
-+++ b/frida_mode/test/png/persistent/hook/GNUmakefile
-@@ -5,11 +5,9 @@ BUILD_DIR:=$(PWD)build/
- AFLPP_FRIDA_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/frida_hook.so
- AFLPP_QEMU_DRIVER_HOOK_OBJ=$(ROOT)frida_mode/build/qemu_hook.so
- 
--CFLAGS+=-O3 \
--		-funroll-loops \
-+CFLAGS+= -funroll-loops \
- 		-g \
--		-fPIC \
--		-funroll-loops \
-+		-fPIC
- 
- LDFLAGS+=-shared \
- 
---- a/utils/aflpp_driver/GNUmakefile
-+++ b/utils/aflpp_driver/GNUmakefile
-@@ -13,40 +13,42 @@ ifneq "" "$(LLVM_BINDIR)"
-   LLVM_BINDIR := $(LLVM_BINDIR)/
- endif
- 
--CFLAGS := -O3 -funroll-loops -g -fPIC
-+AR ?= ar
-+CFLAGS ?= -O3 -funroll-loops -g
-+CFLAGS += -fPIC -fno-lto
- 
- all:	libAFLDriver.a libAFLQemuDriver.a aflpp_qemu_driver_hook.so
- 
- aflpp_driver.o:	aflpp_driver.c
--	-$(LLVM_BINDIR)clang -I. -I../../include $(CFLAGS) -c aflpp_driver.c
-+	$(CC) $(CPPFLAGS) -I. -I../../include $(CFLAGS) -c aflpp_driver.c
- 
- libAFLDriver.a:	aflpp_driver.o
--	@ar rc libAFLDriver.a aflpp_driver.o
-+	$(AR) rc libAFLDriver.a aflpp_driver.o
- 	@cp -vf libAFLDriver.a ../../
- 
- debug:
--	$(LLVM_BINDIR)clang -Wno-deprecated -I../../include $(CFLAGS) -D_DEBUG=\"1\" -c -o afl-performance.o ../../src/afl-performance.c
--	$(LLVM_BINDIR)clang -I../../include -D_DEBUG=\"1\" -g -funroll-loops -c aflpp_driver.c
-+	$(CC) $(CPPFLAGS) -Wno-deprecated -I../../include $(CFLAGS) -D_DEBUG=\"1\" -c -o afl-performance.o ../../src/afl-performance.c
-+	$(CC) $(CPPFLAGS) -I../../include -D_DEBUG=\"1\" $(CFLAGS) -g -funroll-loops -c aflpp_driver.c
- 	#$(LLVM_BINDIR)clang -S -emit-llvm -Wno-deprecated -I../../include $(CFLAGS) -D_DEBUG=\"1\" -c -o afl-performance.ll ../../src/afl-performance.c
- 	#$(LLVM_BINDIR)clang -S -emit-llvm -I../../include -D_DEBUG=\"1\" -g -funroll-loops -c aflpp_driver.c
--	ar rc libAFLDriver.a afl-performance.o aflpp_driver.o
-+	$(AR) rc libAFLDriver.a afl-performance.o aflpp_driver.o
- 
- aflpp_qemu_driver.o:	aflpp_qemu_driver.c
--	-$(LLVM_BINDIR)clang $(CFLAGS) -O0 -funroll-loops -c aflpp_qemu_driver.c
-+	$(CC) $(CPPFLAGS) $(CFLAGS) -O0 -funroll-loops -c aflpp_qemu_driver.c
- 
- libAFLQemuDriver.a:	aflpp_qemu_driver.o
--	@-ar rc libAFLQemuDriver.a aflpp_qemu_driver.o
--	@-cp -vf libAFLQemuDriver.a ../../
-+	$(AR) rc libAFLQemuDriver.a aflpp_qemu_driver.o
-+	@cp -vf libAFLQemuDriver.a ../../
- 
- aflpp_qemu_driver_hook.so:	aflpp_qemu_driver_hook.o
--	@-test -e aflpp_qemu_driver_hook.o && $(LLVM_BINDIR)clang $(LDFLAGS) -shared aflpp_qemu_driver_hook.o -o aflpp_qemu_driver_hook.so || echo "Note: Optional aflpp_qemu_driver_hook.so not built."
-+	@test -e aflpp_qemu_driver_hook.o && $(CC) $(LDFLAGS) -shared aflpp_qemu_driver_hook.o -o aflpp_qemu_driver_hook.so || echo "Note: Optional aflpp_qemu_driver_hook.so not built."
- 
- aflpp_qemu_driver_hook.o:	aflpp_qemu_driver_hook.c
--	@-test -e ../../qemu_mode/qemuafl/qemuafl/api.h && $(LLVM_BINDIR)clang $(CFLAGS) -funroll-loops -c aflpp_qemu_driver_hook.c || echo "Note: Optional aflpp_qemu_driver_hook.o not built."
-+	@test -e ../../qemu_mode/qemuafl/qemuafl/api.h && $(CC) $(CPPFLAGS) $(CFLAGS) -funroll-loops -c aflpp_qemu_driver_hook.c || echo "Note: Optional aflpp_qemu_driver_hook.o not built."
- 
- test:	debug
- 	#clang -S -emit-llvm -D_DEBUG=\"1\" -I../../include -Wl,--allow-multiple-definition -funroll-loops -o aflpp_driver_test.ll aflpp_driver_test.c
--	afl-clang-fast -D_DEBUG=\"1\" -I../../include -Wl,--allow-multiple-definition -funroll-loops -o aflpp_driver_test aflpp_driver_test.c libAFLDriver.a afl-performance.o
-+	../../afl-clang-fast -D_DEBUG=\"1\" -I../../include -Wl,--allow-multiple-definition -funroll-loops -o aflpp_driver_test aflpp_driver_test.c libAFLDriver.a afl-performance.o
- 
- clean:
- 	rm -f *.o libAFLDriver*.a libAFLQemuDriver.a aflpp_qemu_driver_hook.so *~ core aflpp_driver_test


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-01-10  3:36 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-04 23:24 [gentoo-commits] repo/gentoo:master commit in: app-forensics/aflplusplus/, app-forensics/aflplusplus/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2023-01-10  3:36 Sam James
2022-08-31  4:30 Sam James
2022-07-04 23:24 Sam James
2022-01-28  6:21 Sam James
2021-06-01 18:33 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox