blob: f6b15778232949c3d79a4a491e05097ee69cfe94 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# Contributor: Marian <marian.buschsieweke@ovgu.de>
# Maintainer: Marian <marian.buschsieweke@ovgu.de>
pkgname=afl
pkgver=2.50b
pkgrel=0
pkgdesc="American fuzzy lop - a fuzzer relying on genetic algorithms instead brute force"
url="http://lcamtuf.coredump.cx/afl/"
arch="all"
license="ASL 2.0"
depends="clang llvm"
makedepends="clang-dev llvm-dev"
subpackages="$pkgname-doc"
source="http://lcamtuf.coredump.cx/$pkgname/releases/$pkgname-$pkgver.tgz"
builddir="$srcdir/$pkgname-$pkgver"
build() {
local dir; for dir in "$builddir" "$builddir"/llvm_mode; do
make -C "$dir" PREFIX=/usr CC=clang AFL_NO_X86=1
done
}
package() {
cd "$builddir"
make AFL_NO_X86=1 PREFIX=/usr DESTDIR="$pkgdir" install
install -Dm644 llvm_mode/README.llvm \
"$pkgdir"/usr/share/doc/$pkgname/README.llvm_mode
# Only install the llvm_mode of afl. Even though this is still
# considered experimental it is faster than the gcc mode and
# portable to non-x86 platforms.
rm -f "$pkgdir/usr/bin/afl-clang" "$pkgdir/usr/bin/afl-clang++" \
"$pkgdir/usr/bin/afl-gcc" "$pkgdir/usr/bin/afl-g++"
# small_exec.elf is an Intel binary which causes an error during
# the strip() process on non Intel plattforms.
case "$CARCH" in
x86*) ;;
*) rm -f "$pkgdir"/usr/share/afl/testcases/others/elf/small_exec.elf ;;
esac
}
sha512sums="a06cc3c8f0613e105805b4dfba59fffcc2b6d9b519df56dc4af7085f1edffa1a63b9a5cccd1b65354b87584c7b060f71b50e7ad29f55584799d20479b898a4f9 afl-2.50b.tgz"
|