summaryrefslogtreecommitdiff
path: root/app-forensics/quickfuzz
diff options
context:
space:
mode:
Diffstat (limited to 'app-forensics/quickfuzz')
-rw-r--r--app-forensics/quickfuzz/Manifest7
-rw-r--r--app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-derive-2.6.patch21
-rw-r--r--app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-directory-1.3.patch9
-rw-r--r--app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-ghc-8.0.2_rc1.patch8
-rw-r--r--app-forensics/quickfuzz/metadata.xml23
-rw-r--r--app-forensics/quickfuzz/quickfuzz-0.1_p20160920.ebuild151
-rw-r--r--app-forensics/quickfuzz/quickfuzz-9999.ebuild174
7 files changed, 393 insertions, 0 deletions
diff --git a/app-forensics/quickfuzz/Manifest b/app-forensics/quickfuzz/Manifest
new file mode 100644
index 000000000000..36c20f04f1be
--- /dev/null
+++ b/app-forensics/quickfuzz/Manifest
@@ -0,0 +1,7 @@
+AUX quickfuzz-0.1_p20160920-derive-2.6.patch 663 BLAKE2B 7eea4e3259044c340767ef774b13e060c9e7c1c59f253f62b9e3a47d30f8ec7f6d9a3256e99bd1f7257a2e539c3358f03be5fd6fa02af326e2c1d3842827a201 SHA512 c604134457566e226d0254451988c848cb10d5ec5a8ea6ae5387ad7813eadacc31fbf72e1072ec57ff650c813d0656a7bbdabb65c1e69d125cbd858258baff72
+AUX quickfuzz-0.1_p20160920-directory-1.3.patch 267 BLAKE2B 716af42b15069c0204ef98c275725ae5e26369bac072232561663538412e8d1554ae75489c5195fd46cd5f39b0ada717ab2ca4be6afce48a9a54adcea42409d8 SHA512 cd1cbe40b93c324caf8a687742ffb8fc9e5caab4dbfc18a3292d392e6b8fa74b30c3f9ef40342047c9cf8cca29de11ffa1121b6dbed3ec0495fd5706a8e6a0c5
+AUX quickfuzz-0.1_p20160920-ghc-8.0.2_rc1.patch 250 BLAKE2B d6de3b6acec0fcf3a61c2de5eb870b30bf0186baf33ca2260a0c210c98801097d135db5eef71055c6e28ce8c299d38ffb512d496cd96b6c3c95c1077fede3f4b SHA512 f1eab2915fc5175b35b6f4d92ed9a04d215058b5f131f43f9b584d80613a2cf59a701688433871c9a165dfdce21577e9c6ebbbaba5b0bcd4a6a1b13ff789a3ca
+DIST quickfuzz-0.1_p20160920.tar.gz 1073894 BLAKE2B fdf9cf9f1b3aaf7e21221d62417aa5bd80dd67bab3e09d67344b0eaf8d6a50e9eee585a6d234b1c6472f7c17a9b4057a242ba19f48fbfa859cfd0ef8111c409b SHA512 52068c35cef580e4719f1b7128ae069a80581f176adc4a2abbbdfc7fc48849e4ff1c228d342b7eaddc780e5b50eabb285b398c334753fca0dc70d3d3ec9f55f8
+EBUILD quickfuzz-0.1_p20160920.ebuild 4188 BLAKE2B ee219636c2f27136dd92fbdd4c2c47da623ffcb89a15d713d16c0d66af6ed1959afa80b7f6a2582116f073dc4749d914f5311b647584383783f8d6bf5af236c7 SHA512 d49800f4b9bb9a527af576f5b1d3e5485b52a1ac9cba167ffef623eea7f74c654c1e8cdaf76cad4e31633ba2fcbfb1bae6fbf1df1ac6ab0ae7681c63bbd8a79c
+EBUILD quickfuzz-9999.ebuild 4726 BLAKE2B 358d39153910f22d0e991fe4855e96407f837161fa31f02771e347018ed1effdaa3a1f7b163e8a941227b35f4cd008003f51f7ad30ca10435f7bff54f40143a0 SHA512 cd8523998adee21241edbc8aa3db85530d76cfd19f25ba6987c83da12f38889b8edd26dd4fc25c0ff6b6fed5ed70aa1c467838c828138b343f37e116ffc95940
+MISC metadata.xml 805 BLAKE2B 5e8884355c25d4387fa5a96d25aa773cc87481a9767a2824e2987319979fe1f42e78fee3ce1a6a07d3aa1290cb1a3e3ce5de67fecad1486e621d86b5b1c70b42 SHA512 c0546197822adc83a8339312fcbf88d3f81effe6689508d4b1bbe34c42a91b407be5539713599ba087985d6780db4788f328a7f7a3d4925fe7d4ca03ec115989
diff --git a/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-derive-2.6.patch b/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-derive-2.6.patch
new file mode 100644
index 000000000000..6e0f25636b6a
--- /dev/null
+++ b/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-derive-2.6.patch
@@ -0,0 +1,21 @@
+diff --git a/src/DeriveShow.hs b/src/DeriveShow.hs
+index c11dd03..40cc205 100644
+--- a/src/DeriveShow.hs
++++ b/src/DeriveShow.hs
+@@ -1,5 +1,5 @@
+ {-# LANGUAGE TemplateHaskell #-}
++{-# LANGUAGE StandaloneDeriving #-}
+ module DeriveShow where
+
+-import Data.Derive.Show
+ import Data.DeriveTH
+@@ -12,3 +12,2 @@ isArbInsName = isinsName ''Show
+ devShow :: Name -> Q [Dec]
+-devShow = megaderive (derive makeShow) isArbInsName
+-
++devShow = megaderive (\n -> [d| deriving instance Show $(return (ConT n)) |]) isArbInsName
+--- a/QuickFuzz.cabal
++++ b/QuickFuzz.cabal
+@@ -75,0 +75,1 @@ executable QuickFuzz
++ default-extensions: StandaloneDeriving
+
diff --git a/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-directory-1.3.patch b/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-directory-1.3.patch
new file mode 100644
index 000000000000..34e92089b53f
--- /dev/null
+++ b/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-directory-1.3.patch
@@ -0,0 +1,9 @@
+diff --git a/src/Check.hs b/src/Check.hs
+index b38a56a..246bf24 100644
+--- a/src/Check.hs
++++ b/src/Check.hs
+@@ -23,3 +23,3 @@ import System.Posix.Env
+ import System.Exit
+-import System.Directory
++import System.Directory hiding (getFileSize)
+ import System.IO.Unsafe
diff --git a/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-ghc-8.0.2_rc1.patch b/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-ghc-8.0.2_rc1.patch
new file mode 100644
index 000000000000..0e8abbd9d796
--- /dev/null
+++ b/app-forensics/quickfuzz/files/quickfuzz-0.1_p20160920-ghc-8.0.2_rc1.patch
@@ -0,0 +1,8 @@
+diff --git a/src/Midi.hs b/src/Midi.hs
+index 2b7a359..8c4eacc 100644
+--- a/src/Midi.hs
++++ b/src/Midi.hs
+@@ -1,2 +1,2 @@
+-{-# LANGUAGE TemplateHaskell, FlexibleInstances#-}
++{-# LANGUAGE TemplateHaskell, FlexibleInstances, OverlappingInstances #-}
+
diff --git a/app-forensics/quickfuzz/metadata.xml b/app-forensics/quickfuzz/metadata.xml
new file mode 100644
index 000000000000..1e1e29136406
--- /dev/null
+++ b/app-forensics/quickfuzz/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>haskell@gentoo.org</email>
+ <name>Gentoo Haskell</name>
+ </maintainer>
+ <use>
+ <flag name='archs'>support archive formats</flag>
+ <flag name='codes'>support cource code formats</flag>
+ <flag name='docs'>support document formats</flag>
+ <flag name='imgs'>support image formats</flag>
+ <flag name='media'>support media formats</flag>
+ <flag name='net'>support networking formats</flag>
+ <flag name='pki'>support PKI formats</flag>
+ </use>
+ <longdescription>
+ An experimental grammar fuzzer in Haskell using QuickCheck.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">CIFASIS/QuickFuzz</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-forensics/quickfuzz/quickfuzz-0.1_p20160920.ebuild b/app-forensics/quickfuzz/quickfuzz-0.1_p20160920.ebuild
new file mode 100644
index 000000000000..b16b564b392b
--- /dev/null
+++ b/app-forensics/quickfuzz/quickfuzz-0.1_p20160920.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# ebuild generated by hackport 0.5.9999
+
+CABAL_FEATURES="bin"
+inherit haskell-cabal
+
+MY_PN="QuickFuzz"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="An experimental grammar fuzzer in Haskell using QuickCheck"
+HOMEPAGE="http://quickfuzz.org/"
+SRC_URI="https://dev.gentoo.org/~slyfox/distfiles/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="archs codes docs imgs media net pki"
+
+RDEPEND="dev-haskell/abstract-par:=
+ dev-haskell/argparser:=
+ dev-haskell/derive:=
+ dev-haskell/linear:=
+ dev-haskell/monad-par:=
+ dev-haskell/mtl:=
+ dev-haskell/parallel-io:=
+ dev-haskell/primitive:=
+ dev-haskell/process-extras:=
+ dev-haskell/quickcheck:2=
+ dev-haskell/quickcheck-unicode:=
+ dev-haskell/random:=
+ dev-haskell/split:=
+ dev-haskell/text:=
+ dev-haskell/vector:=
+ dev-haskell/wl-pprint:=
+ >=dev-lang/ghc-7.8.2:=
+ archs? ( dev-haskell/base16-bytestring:=
+ >=dev-haskell/tar-0.5:=
+ dev-haskell/zip-archive:= )
+ !archs? ( net? ( dev-haskell/base16-bytestring:= ) )
+ codes? ( dev-haskell/haxml:=
+ dev-haskell/json:=
+ dev-haskell/language-bash:=
+ dev-haskell/language-css:=
+ dev-haskell/language-dot:=
+ dev-haskell/language-ecmascript:=
+ dev-haskell/language-glsl:=
+ dev-haskell/language-lua:=
+ dev-haskell/language-python:=
+ dev-haskell/shell-escape:=
+ dev-haskell/uniplate:= )
+ docs? ( app-text/pandoc:=
+ dev-haskell/data-default:=
+ dev-haskell/hcg-minus:=
+ dev-haskell/hps:=
+ dev-haskell/icalendar:=
+ dev-haskell/pandoc-types:= )
+ imgs? ( dev-haskell/ac-ppm:=
+ dev-haskell/memory:=
+ dev-haskell/attoparsec:=
+ dev-haskell/lens:=
+ dev-haskell/scientific:=
+ dev-haskell/thyme:=
+ dev-haskell/xml:=
+ >=dev-haskell/zlib-0.6:= )
+ !imgs? ( archs? ( >=dev-haskell/zlib-0.6:= ) )
+ media? ( dev-haskell/hcodecs:=
+ dev-haskell/hunit:=
+ dev-haskell/mtl:=
+ dev-haskell/old-locale:=
+ dev-haskell/random:=
+ dev-haskell/idiii:=
+ dev-haskell/bitwise:=
+ dev-haskell/monad-loops:=
+ dev-haskell/mtl:=
+ dev-haskell/wavy:= )
+ net? ( dev-haskell/concurrent-extra:=
+ dev-haskell/dns:=
+ dev-haskell/http:=
+ dev-haskell/iproute:=
+ dev-haskell/network:=
+ dev-haskell/network-uri:=
+ dev-haskell/unbounded-delays:= )
+ pki? ( dev-haskell/hourglass:=
+ dev-haskell/asn1-types:=
+ dev-haskell/asn1-parse:=
+ dev-haskell/cryptonite:=
+ dev-haskell/hourglass:=
+ dev-haskell/memory:= )
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.18.1.3
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-ghc-8.0.2_rc1.patch
+ "${FILESDIR}"/${P}-directory-1.3.patch
+ "${FILESDIR}"/${P}-derive-2.6.patch
+)
+
+# $1 - target tarball name (not including extension)
+make_snapshot() {
+ ln -s "${S}" "${WORKDIR}"/"$1" || die
+ tar \
+ --dereference \
+ --directory="${WORKDIR}" \
+ --exclude="$1"/bundled/Juicy.Pixels/tests \
+ -zcvvf \
+ "${WORKDIR}"/"$1".tar.gz "$1"/ || die
+}
+
+# As of 2016-09-10 QuickFuzz forks a few hackage packages
+# without renames:
+# - asn1-encoding: stabilised handling of corrupterd data
+# - hogg: more functions are exported directly
+# - juicypixels: more functions and modules are exported,
+# unsafe functions are changed to safe
+# - svg-tree: upstream, build agains patched juicypixels
+# - x509: stabilised handling of corrupterd data
+# - megadeth: not a fork but has no releases
+# - ttasm: cabalised, renamed module
+
+src_prepare() {
+ default
+
+ # inline dependencies of bundled dependencies
+ cabal_chdeps \
+ 'JuicyPixels' 'memory' \
+ 'asn1-encoding' 'hourglass' \
+ 'hogg' 'array' \
+ 'megadeth' 'base' \
+ 'svg-tree' 'attoparsec, lens, scientific, thyme' \
+ 'ttasm' 'bitwise, mtl, monad-loops' \
+ 'x509' 'asn1-parse, cryptonite, hourglass, memory' \
+ \
+ 'hs-source-dirs: src' 'hs-source-dirs: src, bundled/Juicy.Pixels/src, bundled/hogg, bundled/hs-asn1-encoding, bundled/hs-certificate-x509, bundled/megadeth, bundled/svg-tree/src, bundled/ttasm'
+}
+
+src_configure() {
+ haskell-cabal_src_configure \
+ $(cabal_flag archs archs) \
+ $(cabal_flag codes codes) \
+ $(cabal_flag docs docs) \
+ $(cabal_flag imgs imgs) \
+ $(cabal_flag media media) \
+ $(cabal_flag net net) \
+ $(cabal_flag pki pki)
+}
diff --git a/app-forensics/quickfuzz/quickfuzz-9999.ebuild b/app-forensics/quickfuzz/quickfuzz-9999.ebuild
new file mode 100644
index 000000000000..41734df6f0ce
--- /dev/null
+++ b/app-forensics/quickfuzz/quickfuzz-9999.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# ebuild generated by hackport 0.5.9999
+
+CABAL_FEATURES="bin"
+inherit git-r3 haskell-cabal
+
+MY_PN="QuickFuzz"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="An experimental grammar fuzzer in Haskell using QuickCheck"
+HOMEPAGE="http://quickfuzz.org/"
+EGIT_REPO_URI="https://github.com/CIFASIS/QuickFuzz.git"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="archs codes docs imgs media net pki"
+
+RDEPEND="dev-haskell/abstract-par:=
+ dev-haskell/argparser:=
+ dev-haskell/derive:=
+ dev-haskell/linear:=
+ dev-haskell/monad-par:=
+ dev-haskell/mtl:=
+ dev-haskell/parallel-io:=
+ dev-haskell/primitive:=
+ dev-haskell/process-extras:=
+ dev-haskell/quickcheck:2=
+ dev-haskell/quickcheck-unicode:=
+ dev-haskell/random:=
+ dev-haskell/split:=
+ dev-haskell/text:=
+ dev-haskell/vector:=
+ dev-haskell/wl-pprint:=
+ >=dev-lang/ghc-7.8.2:=
+ archs? ( dev-haskell/base16-bytestring:=
+ >=dev-haskell/tar-0.5:=
+ dev-haskell/zip-archive:= )
+ !archs? ( net? ( dev-haskell/base16-bytestring:= ) )
+ codes? ( dev-haskell/haxml:=
+ dev-haskell/json:=
+ dev-haskell/language-bash:=
+ dev-haskell/language-css:=
+ dev-haskell/language-dot:=
+ dev-haskell/language-ecmascript:=
+ dev-haskell/language-glsl:=
+ dev-haskell/language-lua:=
+ dev-haskell/language-python:=
+ dev-haskell/shell-escape:=
+ dev-haskell/uniplate:= )
+ docs? ( app-text/pandoc:=
+ dev-haskell/data-default:=
+ dev-haskell/hcg-minus:=
+ dev-haskell/hps:=
+ dev-haskell/icalendar:=
+ dev-haskell/pandoc-types:= )
+ imgs? ( dev-haskell/ac-ppm:=
+ dev-haskell/memory:=
+ dev-haskell/attoparsec:=
+ dev-haskell/lens:=
+ dev-haskell/scientific:=
+ dev-haskell/thyme:=
+ dev-haskell/xml:=
+ >=dev-haskell/zlib-0.6:= )
+ !imgs? ( archs? ( >=dev-haskell/zlib-0.6:= ) )
+ media? ( dev-haskell/hcodecs:=
+ dev-haskell/hunit:=
+ dev-haskell/mtl:=
+ dev-haskell/old-locale:=
+ dev-haskell/random:=
+ dev-haskell/idiii:=
+ dev-haskell/bitwise:=
+ dev-haskell/monad-loops:=
+ dev-haskell/mtl:=
+ dev-haskell/wavy:= )
+ net? ( dev-haskell/concurrent-extra:=
+ dev-haskell/dns:=
+ dev-haskell/http:=
+ dev-haskell/iproute:=
+ dev-haskell/network:=
+ dev-haskell/network-uri:=
+ dev-haskell/unbounded-delays:= )
+ pki? ( dev-haskell/hourglass:=
+ dev-haskell/asn1-types:=
+ dev-haskell/asn1-parse:=
+ dev-haskell/cryptonite:=
+ dev-haskell/hourglass:=
+ dev-haskell/memory:= )
+"
+DEPEND="${RDEPEND}
+ >=dev-haskell/cabal-1.18.1.3
+"
+
+# $1 - target tarball name (not including extension)
+make_snapshot() {
+ ln -s "${S}" "${WORKDIR}"/"$1" || die
+ tar \
+ --dereference \
+ --directory="${WORKDIR}" \
+ --exclude="$1"/bundled/Juicy.Pixels/tests \
+ -zcvvf \
+ "${WORKDIR}"/"$1".tar.gz "$1"/ || die
+}
+
+# As of 2016-09-10 QuickFuzz forks a few hackage packages
+# without renames:
+# - asn1-encoding: stabilised handling of corrupterd data
+# - hogg: more functions are exported directly
+# - juicypixels: more functions and modules are exported,
+# unsafe functions are changed to safe
+# - svg-tree: upstream, build agains patched juicypixels
+# - x509: stabilised handling of corrupterd data
+# - megadeth: not a fork but has no releases
+# - ttasm: cabalised, renamed module
+
+src_unpack() {
+ git-r3_src_unpack
+
+ cd "${S}"
+
+ local forked_repos=(
+ Juicy.Pixels
+ hogg
+ hs-asn1-encoding
+ hs-certificate-x509
+ ttasm
+
+ # not exactly fork. just unreleased upstream library
+ megadeth
+ )
+ local repo_name
+ local repo_subdir=${S}/bundled
+
+ mkdir "${repo_subdir}/" || die
+ for repo_name in "${forked_repos[@]}"; do
+ git-r3_fetch https://github.com/CIFASIS/${repo_name}.git
+ git-r3_checkout https://github.com/CIFASIS/${repo_name}.git "${repo_subdir}/${repo_name}"
+ done
+
+ git-r3_fetch https://github.com/Twinside/svg-tree.git
+ git-r3_checkout https://github.com/Twinside/svg-tree.git "${repo_subdir}/svg-tree"
+
+ make_snapshot quickfuzz-0.1_p$(date "+%Y%m%d")
+}
+
+src_prepare() {
+ default
+
+ # inline dependencies of bundled dependencies
+ cabal_chdeps \
+ 'JuicyPixels' 'memory' \
+ 'asn1-encoding' 'hourglass' \
+ 'hogg' 'array' \
+ 'megadeth' 'base' \
+ 'svg-tree' 'attoparsec, lens, scientific, thyme' \
+ 'ttasm' 'bitwise, mtl, monad-loops' \
+ 'x509' 'asn1-parse, cryptonite, hourglass, memory' \
+ \
+ 'hs-source-dirs: src' 'hs-source-dirs: src, bundled/Juicy.Pixels/src, bundled/hogg, bundled/hs-asn1-encoding, bundled/hs-certificate-x509, bundled/megadeth, bundled/svg-tree/src, bundled/ttasm'
+}
+
+src_configure() {
+ haskell-cabal_src_configure \
+ $(cabal_flag archs archs) \
+ $(cabal_flag codes codes) \
+ $(cabal_flag docs docs) \
+ $(cabal_flag imgs imgs) \
+ $(cabal_flag media media) \
+ $(cabal_flag net net) \
+ $(cabal_flag pki pki)
+}