summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-apps/likwid/ChangeLog11
-rw-r--r--sys-apps/likwid/Manifest6
-rw-r--r--sys-apps/likwid/files/likwid-3.1.3-Makefile.patch42
-rw-r--r--sys-apps/likwid/files/likwid-3.1.3-fix-gnustack.patch32
-rw-r--r--sys-apps/likwid/likwid-3.1.3.ebuild67
-rw-r--r--sys-apps/likwid/metadata.xml10
6 files changed, 168 insertions, 0 deletions
diff --git a/sys-apps/likwid/ChangeLog b/sys-apps/likwid/ChangeLog
new file mode 100644
index 000000000000..92c56034a70f
--- /dev/null
+++ b/sys-apps/likwid/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for sys-apps/likwid
+# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/likwid/ChangeLog,v 1.1 2015/03/06 14:54:27 dlan Exp $
+
+*likwid-3.1.3 (06 Mar 2015)
+
+ 06 Mar 2015; Yixun Lan <dlan@gentoo.org> +likwid-3.1.3.ebuild,
+ +files/likwid-3.1.3-Makefile.patch, +files/likwid-3.1.3-fix-gnustack.patch,
+ +metadata.xml:
+ initial ebuild, contributed by Brendan Horan, bug 373607
+
diff --git a/sys-apps/likwid/Manifest b/sys-apps/likwid/Manifest
new file mode 100644
index 000000000000..29859776ab39
--- /dev/null
+++ b/sys-apps/likwid/Manifest
@@ -0,0 +1,6 @@
+AUX likwid-3.1.3-Makefile.patch 2832 SHA256 5711cc68f6e44f64ae864e7e7f772a767416336b9a8caec26ac316260c1897d7 SHA512 8a8a9594c0ca1e9154f49ed7b65a49fcc4cab51f07de0372952753965da960fc0dc296a4ba33613186848901f783852c1dccbbf36c6cf1bb34b908e4f11f5eb0 WHIRLPOOL d25404b98acda314789560502b3391f4db40dc4765ca022b5b2a3a19ec67451d4e0119a64c7245c212028f1493b0c5c1143c4c25bb300e6699d00f544fed0da9
+AUX likwid-3.1.3-fix-gnustack.patch 933 SHA256 342cdec17b690451231c89e43ec73ce53fa8fc50b95025ccbf5d58d1a6e7292a SHA512 e14e133eff0abc0d0a4b64843e7e29518de23651d2a599ac8740f6838c5faf7565e5dc0543b6ec9c1bbc273284f481c1048c70c09f19e908c2b620a8bff7502e WHIRLPOOL c7129e714ddae380548cdbcb52d0d0bcbc5416692d418348766f7448a18e61a7d7cc834802957f2235eb4f19982b879272dcc701892429a7d7904760d02f25dd
+DIST likwid-3.1.3.tar.gz 605675 SHA256 05078ec55dce3d4cf1c94832bd289ccbcaee7bdee9a1ea9f6681ccd3f59ece5b SHA512 e31b4498e702d4ddf61e3c123d43f0804ef4cef149bb3732b61e3894aa9d76feb7a2654bbb0467dd30323031122ea01cf17e4f01a33f193e750cdbdfc09741d7 WHIRLPOOL bccfcc68e792f09a66eab99affa81250fbe34d4759a81a4e0bd0af2535e5bb09229bee4bc165986559d14101183e5be9a933273ec9f1a7c5c8da3f97f07f9e8e
+EBUILD likwid-3.1.3.ebuild 1666 SHA256 ef1e5b681c6173d0da60f00d516a82bfc99d7e5140f38f6762ba9ed4ba38456e SHA512 78607452e63c805c9bb9c13df854f367552f287bf5339b9740046804afad1fc0a6ad50051a84bb91d4fd232a27fc8b5e9fef4a94eba88544417142c000de4cc1 WHIRLPOOL bf539996ee6ede9e67ea3c18e5d1e79a01e649e2611cc4a9a72d6fcf01af08e212ee01adb04a457fe47c8458a1e569d6c29844b59dd21dc2dbe64f16eb792646
+MISC ChangeLog 365 SHA256 425d2109bd4eb7a9c92c4ed7c2f31c0e69746e97681018da2a946afb096f66f7 SHA512 33c5561f49ade4e84ddd99ab7aab4b9b257578e99950a46f3cc2ce6ec0d4389929e670f7a6bdcd2d22538838e228334a2aa0a7264db8d6c189f4f6952d1902cc WHIRLPOOL 7a0c32dae2729dcc0ed1c07a36a4b6dd793f833365c9c83b7667d67b90808d9d0c13f4f186cbaa57799c4564cf8f0a076a4d2d071ed85baa25790d754f159589
+MISC metadata.xml 331 SHA256 241272ef41daea2c77277e3fef08e7468921439e23f8d5ba884bfa7c48c85df5 SHA512 5dad170f48d4704810153f6424db796d5719885d5cc8b25a6178f68265703a7073f640560a700014dc5230e456e60996cb012889becba65cdbd4e0a6488b71e2 WHIRLPOOL f104eff5dbdb1839a9685ce4aa5bd86db4098b2adbadd2dbd95b912a32c4f6f4be480e1a0f0858a80c0d4aa4faeb773fc3fc692b9f649b367686daec57c14799
diff --git a/sys-apps/likwid/files/likwid-3.1.3-Makefile.patch b/sys-apps/likwid/files/likwid-3.1.3-Makefile.patch
new file mode 100644
index 000000000000..a40d0c3262a2
--- /dev/null
+++ b/sys-apps/likwid/files/likwid-3.1.3-Makefile.patch
@@ -0,0 +1,42 @@
+--- Makefile.org 2015-03-04 16:25:59.942213571 +0800
++++ Makefile 2015-03-04 16:46:05.640278082 +0800
+@@ -87,7 +87,7 @@
+
+ LIKWID_LIB = liblikwid
+ ifeq ($(SHARED_LIBRARY),true)
+-CFLAGS += $(SHARED_CFLAGS) -ggdb
++CFLAGS += $(SHARED_CFLAGS) -g -Wa,--noexecstack
+ DYNAMIC_TARGET_LIB := $(LIKWID_LIB).so
+ TARGET_LIB := $(DYNAMIC_TARGET_LIB)
+ LIBS += -L. -llikwid
+@@ -307,28 +307,8 @@
+ echo "Only root can adjust the privileges of the daemon applications in $(PREFIX)/sbin"; \
+ fi; \
+ done
+- @echo "===> INSTALL man pages to $(MANPREFIX)/man1"
+- @mkdir -p $(MANPREFIX)/man1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-topology.1 > $(MANPREFIX)/man1/likwid-topology.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-features.1 > $(MANPREFIX)/man1/likwid-features.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-perfctr.1 > $(MANPREFIX)/man1/likwid-perfctr.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-powermeter.1 > $(MANPREFIX)/man1/likwid-powermeter.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-pin.1 > $(MANPREFIX)/man1/likwid-pin.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-setFrequencies.1 > $(MANPREFIX)/man1/likwid-setFrequencies.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-bench.1 > $(MANPREFIX)/man1/likwid-bench.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/feedGnuplot.1 > $(MANPREFIX)/man1/feedGnuplot.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-accessD.1 > $(MANPREFIX)/man1/likwid-accessD.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-genCfg.1 > $(MANPREFIX)/man1/likwid-genCfg.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-memsweeper.1 > $(MANPREFIX)/man1/likwid-memsweeper.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-mpirun.1 > $(MANPREFIX)/man1/likwid-mpirun.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-perfscope.1 > $(MANPREFIX)/man1/likwid-perfscope.1
+- @sed -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" < $(DOC_DIR)/likwid-setFreq.1 > $(MANPREFIX)/man1/likwid-setFreq.1
+- @chmod 644 $(MANPREFIX)/man1/likwid-*
+- @echo "===> INSTALL headers to $(PREFIX)/include"
+- @mkdir -p $(PREFIX)/include/likwid
+- @cp -f src/includes/likwid*.h $(PREFIX)/include/
+- @cp -f src/includes/* $(PREFIX)/include/likwid
+- @cp -f GCC/perfmon_group_types.h $(PREFIX)/include/likwid
++ @echo "===> INSTALL man pages"
++ @mkdir -p $(PREFIX)/include/
+ $(FORTRAN_INSTALL)
+ @echo "===> INSTALL libraries to $(PREFIX)/lib"
+ @mkdir -p $(PREFIX)/lib
diff --git a/sys-apps/likwid/files/likwid-3.1.3-fix-gnustack.patch b/sys-apps/likwid/files/likwid-3.1.3-fix-gnustack.patch
new file mode 100644
index 000000000000..6ee4149dd5d7
--- /dev/null
+++ b/sys-apps/likwid/files/likwid-3.1.3-fix-gnustack.patch
@@ -0,0 +1,32 @@
+diff --git a/Makefile b/Makefile
+index eecd4e9..34eee7c 100644
+--- a/Makefile
++++ b/Makefile
+@@ -259,6 +259,7 @@ $(BUILD_DIR)/%.h: $(SRC_DIR)/includes/%.txt
+ $(BUILD_DIR)/%.o: $(BUILD_DIR)/%.pas
+ @echo "===> ASSEMBLE $@"
+ $(Q)$(PAS) -i $(PASFLAGS) -o $(BUILD_DIR)/$*.s $< '$(DEFINES)'
++ @cat fix_gnustack.txt >> $(BUILD_DIR)/$*.s
+ $(Q)$(AS) $(ASFLAGS) $(BUILD_DIR)/$*.s -o $@
+
+ ifeq ($(findstring $(MAKECMDGOALS),clean),)
+diff --git a/fix_gnustack.txt b/fix_gnustack.txt
+new file mode 100644
+index 0000000..965af94
+--- /dev/null
++++ b/fix_gnustack.txt
+@@ -0,0 +1,3 @@
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+diff --git a/src/loadData.s b/src/loadData.s
+index e176c53..9934f7d 100644
+--- a/src/loadData.s
++++ b/src/loadData.s
+@@ -20,3 +20,6 @@ ret
+ .size _loadData, .-_loadData
+
+
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
diff --git a/sys-apps/likwid/likwid-3.1.3.ebuild b/sys-apps/likwid/likwid-3.1.3.ebuild
new file mode 100644
index 000000000000..1b3a1157694e
--- /dev/null
+++ b/sys-apps/likwid/likwid-3.1.3.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/likwid/likwid-3.1.3.ebuild,v 1.1 2015/03/06 14:54:27 dlan Exp $
+
+EAPI=5
+
+inherit eutils fcaps linux-info multilib
+
+DESCRIPTION="A lightweight performance-oriented tool suite for x86 multicore environments"
+HOMEPAGE="https://code.google.com/p/likwid/"
+SRC_URI="http://ftp.fau.de/pub/likwid/likwid-${PV}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="-fortran"
+
+RDEPEND="dev-lang/perl
+ fortran? ( sys-devel/gcc:*[fortran] )"
+
+DEPEND="${RDEPEND}
+ sys-apps/sed"
+
+CONFIG_CHECK="~X86_MSR"
+
+FILECAPS=(
+ cap_sys_rawio usr/sbin/likwid-accessD --
+ cap_sys_rawio usr/bin/likwid-{perfctr,bench,powermeter}
+)
+
+src_prepare() {
+ sed -e 's:^PREFIX = .*:PREFIX = '${D}'/usr:' \
+ -e "/^LIBLIKWIDPIN/s|lib/|$(get_libdir)/|" \
+ -i config.mk || die
+ sed -e "s:\$(PREFIX)/lib:\$(PREFIX)/$(get_libdir):" \
+ -i Makefile || die
+
+ sed -e '/LIBS/aSHARED_LFLAGS += -Wl,-soname,$@' \
+ -i make/include_GCC.mk || die
+ sed -e '/^Q/d' -i Makefile || die
+ sed -e 's/<DATE>/12.02.2014/g' \
+ -e "s/VERSION/${PV}/g" \
+ -i doc/* || die
+ sed -e "/exeprog/s|TOSTRING(ACCESSDAEMON)|\"/usr/sbin/likwid-accessD\"|" \
+ -i src/accessClient.c || die
+
+ epatch "${FILESDIR}/${P}-Makefile.patch"
+ epatch "${FILESDIR}/${P}-fix-gnustack.patch"
+}
+
+src_configure() {
+ if use fortran; then
+ sed -i 's:^FORTRAN_INTERFACE = false:FORTRAN_INTERFACE = likwid.mod:' config.mk || die
+ sed -i 's:^FC = ifort:FC = gfortran:' make/include_GCC.mk || die
+ sed -i '/^FCFLAGS/c\FCFLAGS = -J ./ -fsyntax-only' make/include_GCC.mk || die
+ fi
+}
+
+src_install () {
+ default
+ if use fortran; then
+ insinto /usr/include
+ doins likwid.mod
+ fi
+
+ doman doc/*
+}
diff --git a/sys-apps/likwid/metadata.xml b/sys-apps/likwid/metadata.xml
new file mode 100644
index 000000000000..fa053a36fa48
--- /dev/null
+++ b/sys-apps/likwid/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>brendan@horan.hk</email>
+ <name>Brendan Horan</name>
+ <description>Proxy - Maintainer. Assign bugs to him</description>
+ </maintainer>
+</pkgmetadata>