--- /dev/null
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+
+inherit eutils toolchain-funcs
+
+MY_PN=${PN/elf/ELF}-${PV}
+S=${WORKDIR}/${MY_PN}
+
+DESCRIPTION="collection of programs to manipulate ELF files: sstrip, rebind, elfls, elftoc"
+HOMEPAGE="http://www.muppetlabs.com/~breadbox/software/elfkickers.html"
+SRC_URI="http://www.muppetlabs.com/~breadbox/pub/software/${MY_PN}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~hppa ~mips ~sparc ~x86 ~x86-fbsd"
+IUSE="doc"
+
+DEPEND="app-misc/pax-utils"
+RDEPEND=""
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-respect-CFLAGS-LDFLAGS.patch
+ epatch "${FILESDIR}"/${P}-create-destdir-path.patch
+ epatch "${FILESDIR}"/add-freebsd-elf-defs.patch
+ sed -i -e "s:^prefix = /usr/local:prefix = ${D}:" Makefile \
+ || die "sed failed"
+ eapply_user
+}
+
+src_compile() {
+ emake CC=$(tc-getCC) all
+}
--- /dev/null
+diff -Naur ELFkickers-3.1.orig/Makefile ELFkickers-3.1/Makefile
+--- ELFkickers-3.1.orig/Makefile 2015-07-23 13:25:30.000000000 -0400
++++ ELFkickers-3.1/Makefile 2016-11-16 17:17:08.237039268 -0500
+@@ -24,10 +24,9 @@
+ infect: bin/infect doc/infect.1
+
+ install: $(PROGRAMS)
+- mkdir -p $(prefix)/bin
+- cp bin/* $(prefix)/bin/.
+- mkdir -p $(prefix)/share/man/man1
+- cp doc/* $(prefix)/share/man/man1/.
++ install -d $(prefix)/usr/bin $(prefix)/usr/share/man/man1
++ install bin/* $(prefix)/usr/bin
++ install -m 644 doc/* $(prefix)/usr/share/man/man1
+
+ clean:
+ for dir in elfrw $(PROGRAMS) ; do $(MAKE) -C$$dir clean ; done
--- /dev/null
+diff -Naur ELFkickers-3.1.orig/ebfc/Makefile ELFkickers-3.1/ebfc/Makefile
+--- ELFkickers-3.1.orig/ebfc/Makefile 2014-11-17 14:50:34.000000000 -0500
++++ ELFkickers-3.1/ebfc/Makefile 2016-11-16 17:13:53.297033908 -0500
+@@ -1,7 +1,7 @@
+ # Makefile for ebfc
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra -Wno-missing-field-initializers
++CC ?= gcc
++CFLAGS += -Wno-missing-field-initializers
+
+ ebfc: ebfc.o brainfuck.o libelfparts.a
+
+diff -Naur ELFkickers-3.1.orig/elfls/Makefile ELFkickers-3.1/elfls/Makefile
+--- ELFkickers-3.1.orig/elfls/Makefile 2011-05-31 02:53:05.000000000 -0400
++++ ELFkickers-3.1/elfls/Makefile 2016-11-16 17:12:48.885032137 -0500
+@@ -1,7 +1,7 @@
+ # Makefile for elfls
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra -I../elfrw
++CC ?= gcc
++CFLAGS += -I../elfrw
+
+ elfls: elfls.c ../elfrw/libelfrw.a
+
+diff -Naur ELFkickers-3.1.orig/elfrw/Makefile ELFkickers-3.1/elfrw/Makefile
+--- ELFkickers-3.1.orig/elfrw/Makefile 2011-05-22 14:02:12.000000000 -0400
++++ ELFkickers-3.1/elfrw/Makefile 2016-11-16 17:13:06.653032625 -0500
+@@ -1,7 +1,6 @@
+ # Makefile for libelfrw.a
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra -O3
++CC ?= gcc
+
+ LIBOBJS = elfrw.o elfrw_dyn.o elfrw_ehdr.o elfrw_phdr.o elfrw_rel.o \
+ elfrw_shdr.o elfrw_sym.o elfrw_ver.o
+diff -Naur ELFkickers-3.1.orig/elftoc/Makefile ELFkickers-3.1/elftoc/Makefile
+--- ELFkickers-3.1.orig/elftoc/Makefile 2011-05-23 23:30:22.000000000 -0400
++++ ELFkickers-3.1/elftoc/Makefile 2016-11-16 17:12:57.549032375 -0500
+@@ -1,8 +1,6 @@
+ # Makefile for elftoc
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra
+-LDFLAGS = -Wall -Wextra
++CC ?= gcc
+
+ OBJS = gen.o names.o address.o readelf.o shdrtab.o phdrtab.o dynamic.o \
+ pieces.o outbase.o outitems.o outelf64.o outelf32.o out.o elftoc.o
+diff -Naur ELFkickers-3.1.orig/infect/Makefile ELFkickers-3.1/infect/Makefile
+--- ELFkickers-3.1.orig/infect/Makefile 2011-05-31 02:52:27.000000000 -0400
++++ ELFkickers-3.1/infect/Makefile 2016-11-16 17:12:30.617031634 -0500
+@@ -1,7 +1,6 @@
+ # Makefile for infect
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra
++CC ?= gcc
+
+ infect: infect.c
+
+diff -Naur ELFkickers-3.1.orig/objres/Makefile ELFkickers-3.1/objres/Makefile
+--- ELFkickers-3.1.orig/objres/Makefile 2016-11-14 16:46:24.000000000 -0500
++++ ELFkickers-3.1/objres/Makefile 2016-11-16 17:13:40.225033549 -0500
+@@ -1,8 +1,7 @@
+ # Makefile for objres
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra -I../elfrw
+-LDFLAGS = -Wall -Wextra
++CC ?= gcc
++CFLAGS += -I../elfrw
+
+ objres: objres.o ../elfrw/libelfrw.a
+
+diff -Naur ELFkickers-3.1.orig/rebind/Makefile ELFkickers-3.1/rebind/Makefile
+--- ELFkickers-3.1.orig/rebind/Makefile 2011-05-23 23:29:16.000000000 -0400
++++ ELFkickers-3.1/rebind/Makefile 2016-11-16 17:13:17.373032920 -0500
+@@ -1,7 +1,7 @@
+ # Makefile for rebind
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra -I../elfrw
++CC ?= gcc
++CFLAGS += -I../elfrw
+
+ rebind: rebind.c ../elfrw/libelfrw.a
+
+diff -Naur ELFkickers-3.1.orig/sstrip/Makefile ELFkickers-3.1/sstrip/Makefile
+--- ELFkickers-3.1.orig/sstrip/Makefile 2011-05-23 23:29:58.000000000 -0400
++++ ELFkickers-3.1/sstrip/Makefile 2016-11-16 17:14:05.949034256 -0500
+@@ -1,7 +1,7 @@
+ # Makefile for sstrip
+
+-CC = gcc
+-CFLAGS = -Wall -Wextra -I../elfrw
++CC ?= gcc
++CFLAGS += -I../elfrw
+
+ sstrip: sstrip.c ../elfrw/libelfrw.a
+