dev-libs/libFuzzer: initial package #572162
authorMike Frysinger <vapier@gentoo.org>
Tue, 14 Mar 2017 07:27:44 +0000 (00:27 -0700)
committerMike Frysinger <vapier@gentoo.org>
Tue, 14 Mar 2017 07:32:12 +0000 (00:32 -0700)
dev-libs/libFuzzer/Manifest [new file with mode: 0644]
dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild [new file with mode: 0644]
dev-libs/libFuzzer/metadata.xml [new file with mode: 0644]

diff --git a/dev-libs/libFuzzer/Manifest b/dev-libs/libFuzzer/Manifest
new file mode 100644 (file)
index 0000000..1b1385d
--- /dev/null
@@ -0,0 +1 @@
+DIST llvm-3.9.1.src.tar.xz 18130436 SHA256 1fd90354b9cf19232e8f168faf2220e79be555df3aa743242700879e8fd329ee SHA512 50cbe8ee911080f586e77861c442348701bd02e2de0c090c54c34f82ac275ecfcd712af0f41e387c33b4a6057778a4258a27554292fe68ab4af3fd9dd6d90683 WHIRLPOOL 1cd1a25befcb178bec4a4aace4367167f3838d32edbe9db9de8c6e558c01c1fcf123f6d6f80b7ec9ff32b3d6dcf2de2f4eb4201d417c3d17a5c8a69934832903
diff --git a/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild b/dev-libs/libFuzzer/libFuzzer-3.9.1.ebuild
new file mode 100644 (file)
index 0000000..d9e77c2
--- /dev/null
@@ -0,0 +1,44 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit cmake-multilib flag-o-matic
+
+MY_P="llvm-${PV}"
+
+DESCRIPTION="A fuzzing library distributed as part of LLVM"
+HOMEPAGE="http://llvm.org/docs/LibFuzzer.html"
+SRC_URI="http://llvm.org/releases/${PV}/${MY_P}.src.tar.xz"
+
+LICENSE="UoI-NCSA"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+S_ROOT="${WORKDIR}/${MY_P}.src"
+S="${S_ROOT}/lib/Fuzzer"
+
+src_prepare() {
+       cmake-utils_src_prepare
+       sed -i '/CMAKE_CXX_FLAGS/d' CMakeLists.txt || die
+}
+
+multilib_src_configure() {
+       append-cxxflags -std=c++11
+       local mycmakeargs=(
+               "-DLLVM_USE_SANITIZE_COVERAGE=ON"
+               "-DLLVM_USE_SANITIZER=Address"
+               "-DLIB_DIR=$(get_libdir)"
+       )
+       cmake-utils_src_configure
+}
+
+multilib_src_install() {
+       newlib.a libLLVMFuzzer.a libFuzzer.a
+       newlib.a libLLVMFuzzerNoMain.a libFuzzerNoMain.a
+}
+
+multilib_src_install_all() {
+       dodoc "${S_ROOT}/docs/LibFuzzer.rst"
+}
diff --git a/dev-libs/libFuzzer/metadata.xml b/dev-libs/libFuzzer/metadata.xml
new file mode 100644 (file)
index 0000000..83f3425
--- /dev/null
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+       <email>llvm@gentoo.org</email>
+</maintainer>
+<maintainer type="person">
+       <email>vapier@gentoo.org</email>
+</maintainer>
+</pkgmetadata>