diff options
Diffstat (limited to 'app-forensics/quickfuzz')
7 files changed, 394 insertions, 0 deletions
diff --git a/app-forensics/quickfuzz/Manifest b/app-forensics/quickfuzz/Manifest new file mode 100644 index 000000000000..763f33b46394 --- /dev/null +++ b/app-forensics/quickfuzz/Manifest @@ -0,0 +1,8 @@ +AUX quickfuzz-0.1_p20160920-derive-2.6.patch 663 SHA256 4df070290c76890c3981b07f1befe40fa5342933f6afe99fc4c1f48924c82af5 SHA512 c604134457566e226d0254451988c848cb10d5ec5a8ea6ae5387ad7813eadacc31fbf72e1072ec57ff650c813d0656a7bbdabb65c1e69d125cbd858258baff72 WHIRLPOOL b758f407b1fec1b9f1d0131b35e48a7e6099cbf887289d0edd8d3277ba32619958ede7f57670418ee07ea5d7e2be9f743526e9beb0ca7d707d325d07682eac9c +AUX quickfuzz-0.1_p20160920-directory-1.3.patch 267 SHA256 882647f1fcea623095b5a21cb2bd9335148cb13278d9d3274a83f5822676c1ab SHA512 cd1cbe40b93c324caf8a687742ffb8fc9e5caab4dbfc18a3292d392e6b8fa74b30c3f9ef40342047c9cf8cca29de11ffa1121b6dbed3ec0495fd5706a8e6a0c5 WHIRLPOOL 4bb017d69f73129e00517b5745d0b24d17e8a3ec3a1ad6fda1f3ff6fccbc907121a110833a60944d313a84247b2358fc4b51ef248b218c61de0561a231c4a0c4 +AUX quickfuzz-0.1_p20160920-ghc-8.0.2_rc1.patch 250 SHA256 d7eea96e36b9f54d14db2b7f1129871c450e8ad4a4ec33bf33fecc3999d16d9c SHA512 f1eab2915fc5175b35b6f4d92ed9a04d215058b5f131f43f9b584d80613a2cf59a701688433871c9a165dfdce21577e9c6ebbbaba5b0bcd4a6a1b13ff789a3ca WHIRLPOOL f67c2c3dab9d3586cdb2ca7205174403d5fa1bf30117c385e436ea85df47c34cf6bcfc7bd7176d30fc1e66b9b8df9c640ddc0eb3749044be56a039aebbf1a7c2 +DIST quickfuzz-0.1_p20160920.tar.gz 1073894 SHA256 141d50c58f104ff9a35c649a7fa21fb18b4501a81bed1e56551067af8f7fedb7 SHA512 52068c35cef580e4719f1b7128ae069a80581f176adc4a2abbbdfc7fc48849e4ff1c228d342b7eaddc780e5b50eabb285b398c334753fca0dc70d3d3ec9f55f8 WHIRLPOOL a60fadaeb3e5e1ac8664865ea797dafe539e053370a30973a0ab785ee3401d6c5d5e40ecdef7cf85a1842f190bc0f7770cf9f0f1ef8c659444ad815e878d634a +EBUILD quickfuzz-0.1_p20160920.ebuild 4188 SHA256 72d38e51216a280e1a90851fc0a4e9bc6a040a3a772531a5994b268a07d80d35 SHA512 d49800f4b9bb9a527af576f5b1d3e5485b52a1ac9cba167ffef623eea7f74c654c1e8cdaf76cad4e31633ba2fcbfb1bae6fbf1df1ac6ab0ae7681c63bbd8a79c WHIRLPOOL a54003b18230d88b49434d7efdece2f8c576d5b3e1f4f6ed5d6ab1145e359056cf93307658be49829056852e3054bb2f5e4443352a8b0a563440b8cf064f2609 +EBUILD quickfuzz-9999.ebuild 4726 SHA256 69365b6c10ae989a010e74a43246824c6e48e3a979273608125d5ea05ab9ef02 SHA512 cd8523998adee21241edbc8aa3db85530d76cfd19f25ba6987c83da12f38889b8edd26dd4fc25c0ff6b6fed5ed70aa1c467838c828138b343f37e116ffc95940 WHIRLPOOL f9d3c842ffdfc459ece0c78a09c0ad2bd9eed8de2b6085a1f8ee64897c052deebfe76bd19d5e4428c8a9720b9b794840280659172d67013f32675b91b7da43cd +MISC ChangeLog 2988 SHA256 9422f375638e3d7d50e2d7be07f6050c1507474c22dc351f2369065ccef3bbf9 SHA512 e455e0bff07d6297bc7d1facc4bddd6fc843b14b1db4125be9a867b420dd955cade2923cf150f6ac25cd9ac5876c8d63339ef852b7b76b93c2963ffdad4a0a39 WHIRLPOOL f3353dd0c0cc9aeb64fc39a8a9cccef90f077653a12a32f5c0b6278cbe9d9de962fac70f7cd1e9c5e079f49872fadb4cab33ac4195dba639cde8e050445e14fa +MISC metadata.xml 805 SHA256 7f05a960ffc599ef6d029c19c20e96cdf506ed94db72e69a43e985286478ed8d SHA512 c0546197822adc83a8339312fcbf88d3f81effe6689508d4b1bbe34c42a91b407be5539713599ba087985d6780db4788f328a7f7a3d4925fe7d4ca03ec115989 WHIRLPOOL 83bf15c6097e654a16530a8517d6d4abcdab83b00e69c42fca40b1448dbf2b2f1e2eba02b3de7d93d88dab2e63acc457a3d2c2da089cf2aa2e980366a254fbf8 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) +} |