summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/wiggle')
-rw-r--r--dev-util/wiggle/Manifest2
-rw-r--r--dev-util/wiggle/files/wiggle-0.8-buffer-overflow.patch11
-rw-r--r--dev-util/wiggle/metadata.xml8
-rw-r--r--dev-util/wiggle/wiggle-0.8-r1.ebuild61
-rw-r--r--dev-util/wiggle/wiggle-0.9.ebuild65
5 files changed, 147 insertions, 0 deletions
diff --git a/dev-util/wiggle/Manifest b/dev-util/wiggle/Manifest
new file mode 100644
index 000000000000..247d26d72794
--- /dev/null
+++ b/dev-util/wiggle/Manifest
@@ -0,0 +1,2 @@
+DIST wiggle-0.8.tar.gz 2097175 SHA256 f8bf7981f5e5811dcf6c519c5e335031a1c9b7833c919a2c5707ac8d5524b94a SHA512 536bfd8ed09decdefcba7ecf49eaa8085b9a88c163079b4a256c6796dc373f25c9947353c28f225b6c25c21b6684acbf973504838fc200e8acf746bb8e16632f WHIRLPOOL c5bc6e06079a8e856ab29e9aad4e2a36a48b618e3fb3277949eedf462668ce7afb3916d849f192cfe8bdd5d324aa7f34241c4269cb3ae5a4538f2aa0bb9fc5a6
+DIST wiggle-0.9.tar.gz 809756 SHA256 fe3dcf05a2cda07f42db2099ae8407acdb4d58bb9cfdc58c72395b7ae4a4e6b5 SHA512 2e3a4977704231f3bd6aa96ffaba8bc733acde425773b86a9649312676b44360c5b85cb48bf944cd383d8e4d0a541d88755f23be7d7a8884213f68a6320c62d9 WHIRLPOOL 95a12f73458abdb999681de7af08c407d9f7c4762c71287eb6e80e38a322459c6e1767f2bec72199cf7d8cb33912981b9fd48fbe95957f854b43e4c148c04c14
diff --git a/dev-util/wiggle/files/wiggle-0.8-buffer-overflow.patch b/dev-util/wiggle/files/wiggle-0.8-buffer-overflow.patch
new file mode 100644
index 000000000000..c0ad9188818b
--- /dev/null
+++ b/dev-util/wiggle/files/wiggle-0.8-buffer-overflow.patch
@@ -0,0 +1,11 @@
+--- wiggle-0.8.orig/vpatch.c
++++ wiggle-0.8/vpatch.c
+@@ -391,7 +391,7 @@
+
+ void draw_one(int row, struct plist *pl, FILE *f, int reverse)
+ {
+- char hdr[10];
++ char hdr[12];
+ hdr[0] = 0;
+
+ if (pl == NULL) {
diff --git a/dev-util/wiggle/metadata.xml b/dev-util/wiggle/metadata.xml
new file mode 100644
index 000000000000..557ca512951a
--- /dev/null
+++ b/dev-util/wiggle/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-util/wiggle/wiggle-0.8-r1.ebuild b/dev-util/wiggle/wiggle-0.8-r1.ebuild
new file mode 100644
index 000000000000..ed270e30e970
--- /dev/null
+++ b/dev-util/wiggle/wiggle-0.8-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+
+inherit eutils fixheadtails toolchain-funcs
+
+DESCRIPTION="program for applying patches that patch cannot apply because of conflicting changes"
+HOMEPAGE="http://neil.brown.name/wiggle http://neil.brown.name/git?p=wiggle"
+SRC_URI="http://neil.brown.name/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+
+# The 'p' tool does support bitkeeper, but I'm against just dumping it in here
+# due to it's size. I've explictly listed every other dependancy here due to
+# the nature of the shell program 'p'
+RDEPEND="dev-util/diffstat
+ dev-util/patchutils
+ sys-apps/diffutils
+ sys-apps/findutils
+ virtual/awk
+ sys-apps/grep
+ sys-apps/less
+ sys-apps/sed
+ sys-apps/coreutils
+ sys-devel/patch"
+DEPEND="${RDEPEND}
+ sys-apps/groff
+ test? ( sys-process/time )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-buffer-overflow.patch"
+
+ # Fix the reference to the help file so `p help' works
+ sed -i "s:\$0.help:${EPREFIX}/usr/share/wiggle/p.help:" p || die "sed failed on p"
+
+ # Don't add Neil Brown's default sign off line to every patch
+ sed -i '/$CERT/,+4s,^,#,' p || die "sed failed on p"
+
+ # Use prefixed time binary
+ sed -i "s:/usr/bin/time:${EPREFIX}/usr/bin/time:" dotest || die "sed failed on dotest"
+
+ ht_fix_file p
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS} -Wall" \
+ wiggle || die "emake wiggle failed."
+}
+
+src_install() {
+ dobin wiggle p || die "failed to install binaries"
+ doman wiggle.1 || die "failed to install man page"
+ dodoc ANNOUNCE INSTALL TODO DOC/diff.ps notes || die "failed to install docs"
+ insinto /usr/share/wiggle
+ doins p.help || die "failed to install help file"
+}
diff --git a/dev-util/wiggle/wiggle-0.9.ebuild b/dev-util/wiggle/wiggle-0.9.ebuild
new file mode 100644
index 000000000000..58f69bd8270d
--- /dev/null
+++ b/dev-util/wiggle/wiggle-0.9.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils fixheadtails flag-o-matic toolchain-funcs
+
+DESCRIPTION="program for applying patches that patch cannot apply because of conflicting changes"
+HOMEPAGE="http://neil.brown.name/wiggle http://neil.brown.name/git?p=wiggle"
+SRC_URI="http://neil.brown.name/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+
+# The 'p' tool does support bitkeeper, but I'm against just dumping it in here
+# due to it's size. I've explictly listed every other dependancy here due to
+# the nature of the shell program 'p'
+RDEPEND="
+ dev-util/diffstat
+ dev-util/patchutils
+ sys-apps/diffutils
+ sys-apps/findutils
+ virtual/awk
+ sys-apps/grep
+ sys-apps/less
+ sys-apps/sed
+ sys-apps/coreutils
+ sys-devel/patch"
+DEPEND="${RDEPEND}
+ sys-apps/groff
+ test? ( sys-process/time )"
+
+src_prepare() {
+ # Fix the reference to the help file so `p help' works
+ sed -i "s:\$0.help:${EPREFIX}/usr/share/wiggle/p.help:" p || die "sed failed on p"
+
+ # Don't add Neil Brown's default sign off line to every patch
+ sed -i '/$CERT/,+4s,^,#,' p || die "sed failed on p"
+
+ # Use prefixed time binary
+ sed -i "s:/usr/bin/time:${EPREFIX}/usr/bin/time:" dotest || die "sed failed on dotest"
+
+ sed \
+ -e "s:-lncurses:$($(tc-getPKG_CONFIG) --libs ncurses):g" \
+ -i Makefile || die
+
+ ht_fix_file p
+
+ append-cppflags -I.
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)" CFLAGS="${CFLAGS} -Wall" ${PN}
+}
+
+src_install() {
+ dobin wiggle p
+ doman wiggle.1
+ dodoc ANNOUNCE INSTALL TODO DOC/diff.ps notes
+ insinto /usr/share/wiggle
+ doins p.help
+}