summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Weber <xmw@gentoo.org>2013-05-04 04:27:52 +0000
committerMichael Weber <xmw@gentoo.org>2013-05-04 04:27:52 +0000
commit0e7b1f4ab884d0551bb5e055cc8f8bbdf54e8d03 (patch)
tree19d26c434f08b3dbc0fcc933d005eb673b62c54f /dev-util/exmap
parentversion bump (diff)
downloadgentoo-2-0e7b1f4ab884d0551bb5e055cc8f8bbdf54e8d03.tar.gz
gentoo-2-0e7b1f4ab884d0551bb5e055cc8f8bbdf54e8d03.tar.bz2
gentoo-2-0e7b1f4ab884d0551bb5e055cc8f8bbdf54e8d03.zip
Remove -Werror, thanks patrick and dirtyepic, bug 468246.
(Portage version: 2.2.0_alpha173/cvs/Linux x86_64, signed Manifest commit with key 62EEF090)
Diffstat (limited to 'dev-util/exmap')
-rw-r--r--dev-util/exmap/ChangeLog10
-rw-r--r--dev-util/exmap/exmap-0.10-r1.ebuild80
-rw-r--r--dev-util/exmap/files/exmap-0.10-r1-makefiles.patch115
3 files changed, 203 insertions, 2 deletions
diff --git a/dev-util/exmap/ChangeLog b/dev-util/exmap/ChangeLog
index 648f95d6586f..819e33f927a3 100644
--- a/dev-util/exmap/ChangeLog
+++ b/dev-util/exmap/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for dev-util/exmap
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/exmap/ChangeLog,v 1.5 2012/09/19 08:58:36 xmw Exp $
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/exmap/ChangeLog,v 1.6 2013/05/04 04:27:52 xmw Exp $
+
+*exmap-0.10-r1 (04 May 2013)
+
+ 04 May 2013; Michael Weber <xmw@gentoo.org> +exmap-0.10-r1.ebuild,
+ +files/exmap-0.10-r1-makefiles.patch:
+ Remove -Werror, thanks patrick and dirtyepic, bug 468246.
19 Sep 2012; Michael Weber <xmw@gentoo.org>
+files/exmap-0.10-kernel-3.5.patch, exmap-0.10.ebuild:
diff --git a/dev-util/exmap/exmap-0.10-r1.ebuild b/dev-util/exmap/exmap-0.10-r1.ebuild
new file mode 100644
index 000000000000..76039facc422
--- /dev/null
+++ b/dev-util/exmap/exmap-0.10-r1.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/exmap/exmap-0.10-r1.ebuild,v 1.1 2013/05/04 04:27:52 xmw Exp $
+
+EAPI=2
+
+inherit eutils linux-mod
+
+DESCRIPTION="A memory analysis kernel module with userland tool"
+HOMEPAGE="http://www.berthels.co.uk/exmap/"
+SRC_URI="http://www.berthels.co.uk/${PN}/download/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="gtk"
+
+RDEPEND="dev-libs/libpcre
+ gtk? ( dev-cpp/gtkmm:2.4
+ x11-libs/gtk+:2 )"
+DEPEND="${RDEPEND}
+ dev-libs/boost
+ virtual/pkgconfig"
+
+MODULE_NAMES="exmap(misc:${S}/kernel)"
+BUILD_TARGETS="clean kernel_modules"
+
+src_prepare() {
+ # patch find_task_by_pid to pid_task and &proc_root to NULL
+ epatch "${FILESDIR}/${P}-kernel.patch"
+
+ # use $(MAKE), remove -g on CXXFLAGS, clean up CXX/LD invocations
+ # remove -Werror, bug 468246
+ epatch "${FILESDIR}/${PF}-makefiles.patch"
+
+ # somthing strange between linux-mod supplied ARCH and old kernels
+ # which leads to arch/x86/Makefile: file/dir x86 not found
+ if kernel_is lt 2 6 25 ; then
+ sed -i -e 's:\$(MAKE):unset ARCH ; \$(MAKE):' kernel/Makefile || die
+ fi
+
+ # new gcc include behavior
+ epatch "${FILESDIR}/${P}-gcc.patch"
+
+ # gcc4.5 fails on return false as std::string
+ epatch "${FILESDIR}/${P}-gcc45.patch"
+
+ # fix for 64bit from http://www.kdedevelopers.org/node/4166
+ epatch "${FILESDIR}/${P}-fix64bit.patch"
+
+ # fix underlinking with -Wl,--as-needed
+ epatch "${FILESDIR}/${P}-as-needed.patch"
+
+ # no longer call make clean in kernel source dir
+ epatch "${FILESDIR}/${P}-kernel-3.5.patch"
+
+ rm -v src/{*.so,munged-ls-threeloads,prelinked-amule} || die
+}
+
+src_compile() {
+ export KERNEL_DIR
+ linux-mod_src_compile
+
+ emake CXX="$(tc-getCXX)" LD="$(tc-getLD)" -C jutil || die
+ emake CXX="$(tc-getCXX)" LD="$(tc-getLD)" -C src $(use gtk || echo exmtool) || die
+}
+
+src_install() {
+ linux-mod_src_install
+
+ dobin src/exmtool || die
+ use gtk && { dobin src/gexmap || die ; }
+ dodoc TODO README || die
+}
+
+pkg_postinst() {
+ linux-mod_pkg_postinst
+
+ elog "Please load the exmap kernel module before running exmtool or gexmap."
+}
diff --git a/dev-util/exmap/files/exmap-0.10-r1-makefiles.patch b/dev-util/exmap/files/exmap-0.10-r1-makefiles.patch
new file mode 100644
index 000000000000..4c971454bc74
--- /dev/null
+++ b/dev-util/exmap/files/exmap-0.10-r1-makefiles.patch
@@ -0,0 +1,115 @@
+diff -ru exmap-0.10.orig/work/exmap-0.10/jutil/Makefile exmap-0.10/work/exmap-0.10/jutil/Makefile
+--- jutil/Makefile 2006-09-28 18:52:25.000000000 +0200
++++ jutil/Makefile 2010-02-17 17:31:56.000000000 +0100
+@@ -12,21 +12,20 @@
+ OBJ += $(ETOBJ)
+ EXES += egtest
+
+-CXX=g++
+-CXXFLAGS=-Wall -Werror -g -I.
+-LD=g++
+-LDFLAGS=-lpcre
++CXX = g++
++CXXFLAGS += -Wall -I.
++LD = ld
+
+ build: $(LIBS) $(EXES)
+
+ trun: $(TROBJ) $(JLIB)
+- $(LD) $(TROBJ) -o trun $(LDFLAGS) -ljutil -L.
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(TROBJ) -o trun -ljutil -lpcre -L.
+
+ $(JLIB): $(JOBJ)
+ ar rs $(JLIB) $(JOBJ)
+
+ egtest: $(ETOBJ)
+- $(LD) $(ETOBJ) -o egtest $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(ETOBJ) -o egtest $(LDFLAGS)
+
+ clean:
+ rm -f $(OBJ) $(EXES) $(JLIB) *~
+diff -ru exmap-0.10.orig/work/exmap-0.10/kernel/Makefile exmap-0.10/work/exmap-0.10/kernel/Makefile
+--- kernel/Makefile 2006-09-28 18:52:25.000000000 +0200
++++ kernel/Makefile 2010-02-17 17:30:06.000000000 +0100
+@@ -7,7 +7,7 @@
+ build: kernel_modules
+
+ kernel_modules:
+- make -C /lib/modules/$(shell uname -r)/build M=$(CURDIR) modules
++ $(MAKE) -C ${KERNEL_DIR} M=$(CURDIR) modules
+
+ clean:
+- make -C /lib/modules/$(shell uname -r)/build M=$(CURDIR) clean
++ $(MAKE) -C ${KERNEL_DIR} M=$(CURDIR) clean
+Only in exmap-0.10/work/exmap-0.10/kernel/.tmp_versions: exmap.mod
+diff -ru exmap-0.10.orig/work/exmap-0.10/src/Makefile exmap-0.10/work/exmap-0.10/src/Makefile
+--- src/Makefile 2006-09-28 18:52:25.000000000 +0200
++++ src/Makefile 2010-02-17 17:33:38.000000000 +0100
+@@ -1,5 +1,5 @@
+ CXX=g++
+-LD=g++
++LD=ld
+ JUTILDIR=../jutil
+
+ #CXXFLAGS += -pg
+@@ -11,11 +11,12 @@
+
+ EXMAP_OBJ=Exmap.o Range.o Elf.o
+
+-CXXFLAGS += -g -Wall -Werror -I$(JUTILDIR)
+-LDFLAGS += -lpcre -ljutil -L$(JUTILDIR)
++CXXFLAGS += -Wall -I$(JUTILDIR)
++LDFLAGS += -L$(JUTILDIR)
++LIBS += -lpcre -ljutil
+
+ GTKCXXFLAGS = `pkg-config --cflags gtkmm-2.4`
+-GTKLDFLAGS = `pkg-config --libs gtkmm-2.4`
++GTKLIBS = `pkg-config --libs gtkmm-2.4`
+
+ # ------------------------------------------------------------
+
+@@ -76,34 +77,34 @@
+ $(JUTILDIR)/trun $(TESTS)
+
+ gexmap: $(GEM_OBJ)
+- $(LD) -o gexmap $(GEM_OBJ) $(LDFLAGS) $(GTKLDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o gexmap $(GEM_OBJ) $(LIBS) $(GTKLIBS)
+
+ gexmap.o: gexmap.cpp
+- $(CC) $(CXXFLAGS) $(GTKCXXFLAGS) -c $<
++ $(CXX) $(CXXFLAGS) $(GTKCXXFLAGS) -c $<
+
+ exmtool: $(CL_OBJ)
+- $(LD) -o exmtool $(CL_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o exmtool $(CL_OBJ) $(LIBS)
+
+ elftool: $(ET_OBJ)
+- $(LD) -o elftool $(ET_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o elftool $(ET_OBJ) $(LIBS)
+
+ showproc: $(SP_OBJ)
+- $(LD) -o showproc $(SP_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o showproc $(SP_OBJ) $(LIBS)
+
+ t_range: $(TR_OBJ)
+- $(LD) -o t_range $(TR_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o t_range $(TR_OBJ) $(LIBS)
+
+ t_elf: $(TE_OBJ)
+- $(LD) -o t_elf $(TE_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o t_elf $(TE_OBJ) $(LIBS)
+
+ t_pcre: $(TP_OBJ)
+- $(LD) -o t_pcre $(TP_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o t_pcre $(TP_OBJ) $(LIBS)
+
+ t_exmap: $(TX_OBJ)
+- $(LD) -o t_exmap $(TX_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o t_exmap $(TX_OBJ) $(LIBS)
+
+ t_artsd: $(TA_OBJ)
+- $(LD) -o t_artsd $(TA_OBJ) $(LDFLAGS)
++ $(CXX) $(CXXFLAGS) $(LDFLAGS) -o t_artsd $(TA_OBJ) $(LIBS)
+
+ clean: cleantags cleandoc
+ rm -f $(OBJS) $(EXES) $(SHLIBS) $(EXTRA_DEL_FILES)