summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmy Winston <amynka@gentoo.org>2016-07-19 11:38:36 +0200
committerAmy Winston <amynka@gentoo.org>2016-07-19 11:38:36 +0200
commit025b9960bc77949539e5b6f6baf2918ef09b12a2 (patch)
tree3189147ae7e91d942779a797f20d34dd57ed44a6 /sys-apps
parentnet-firewall/ipt_netflow: revision bump (diff)
downloadgentoo-025b9960bc77949539e5b6f6baf2918ef09b12a2.tar.gz
gentoo-025b9960bc77949539e5b6f6baf2918ef09b12a2.tar.bz2
gentoo-025b9960bc77949539e5b6f6baf2918ef09b12a2.zip
sys-apps/likwid: version bump 4.1.1 bug #588830. Brendan Horan
Package-Manager: portage-2.2.28
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/likwid/Manifest1
-rw-r--r--sys-apps/likwid/files/likwid-4.1.1-Makefile.patch19
-rw-r--r--sys-apps/likwid/files/likwid-4.1.1-config.mk.patch43
-rw-r--r--sys-apps/likwid/files/likwid-4.1.1-fix-gnustack.patch31
-rw-r--r--sys-apps/likwid/likwid-4.1.1.ebuild98
5 files changed, 192 insertions, 0 deletions
diff --git a/sys-apps/likwid/Manifest b/sys-apps/likwid/Manifest
index 2b503e55f988..87d5a9bdac67 100644
--- a/sys-apps/likwid/Manifest
+++ b/sys-apps/likwid/Manifest
@@ -1,2 +1,3 @@
DIST likwid-3.1.3.tar.gz 605675 SHA256 05078ec55dce3d4cf1c94832bd289ccbcaee7bdee9a1ea9f6681ccd3f59ece5b SHA512 e31b4498e702d4ddf61e3c123d43f0804ef4cef149bb3732b61e3894aa9d76feb7a2654bbb0467dd30323031122ea01cf17e4f01a33f193e750cdbdfc09741d7 WHIRLPOOL bccfcc68e792f09a66eab99affa81250fbe34d4759a81a4e0bd0af2535e5bb09229bee4bc165986559d14101183e5be9a933273ec9f1a7c5c8da3f97f07f9e8e
DIST likwid-4.0.1.tar.gz 1409079 SHA256 ab384e585d99a7404075c48f78a08e892a75db12c348da6622ed0536a0a05c7f SHA512 f164a244e56afdc4409790b75f3cb4ea49cc91f7a210590de426f429db5717eed9691263580008cf69997be56a63009224012ee48c55f05b112f96cfca81c52e WHIRLPOOL 59392e6a2057fb9f9aa70b7cc0594ca7a665171b8a2302ddd9350930571596f14e5c9753d132eddb750ef8503330b4f456158fae7a99705c36e7aac80afa6bb2
+DIST likwid-4.1.1.tar.gz 1395475 SHA256 805b321c0c88e02ebddf89cd7e0097e40a438846cb033650c05a57d992393d3d SHA512 2561cc8203bf795ebe661a0b2f2e15fb68a164438b2c839482bab67a82babadbcfd78aaf519c4ceab6cfc799a363216023f77fe744e3b302facf5c578d7ab407 WHIRLPOOL 5be6036e726296719effcd3fbd272168cdf5f2581ede0bca0c554098a780018063b6527cd99202a8620dcc705246f2da1ad281c573eacfee8b4310a8dccbd4d7
diff --git a/sys-apps/likwid/files/likwid-4.1.1-Makefile.patch b/sys-apps/likwid/files/likwid-4.1.1-Makefile.patch
new file mode 100644
index 000000000000..cec5d590c4b5
--- /dev/null
+++ b/sys-apps/likwid/files/likwid-4.1.1-Makefile.patch
@@ -0,0 +1,19 @@
+--- likwid-likwid-4.1.1/Makefile.org 2016-07-14 12:09:56.612963529 +0800
++++ likwid-likwid-4.1.1/Makefile 2016-07-14 12:11:24.148645584 +0800
+@@ -51,7 +51,6 @@
+
+ #CONFIGURE BUILD SYSTEM
+ BUILD_DIR = ./$(COMPILER)
+-Q ?= @
+ GENGROUPLOCK = .gengroup
+
+ VPATH = $(SRC_DIR)
+@@ -544,7 +543,7 @@
+ sed -i -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" -e "s/<RELEASE>/$(RELEASE)/g" -e "s+$(PREFIX)/bin/likwid-lua+$(PWD)/ext/lua/lua+" -e "s+$(PREFIX)/share/lua/?.lua+$(PWD)/?.lua+" -e "s+$(PREFIX)/bin/likwid-pin+$(PWD)/likwid-pin+" -e "s+$(PREFIX)/bin/likwid-perfctr+$(PWD)/likwid-perfctr+" $$APP; \
+ chmod +x $$APP; \
+ done
+- @sed -i -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" -e "s/<RELEASE>/$(RELEASE)/g" -e "s+$(PREFIX)/lib+$(PWD)+g" -e "s+$(PREFIX)/share/likwid/perfgroups+$(PWD)/groups+g" likwid.lua;
++ @sed -i -e "s/<VERSION>/$(VERSION)/g" -e "s/<DATE>/$(DATE)/g" -e "s/<RELEASE>/$(RELEASE)/g" -e "s+$(PREFIX)/+$(PWD)+g" -e "s+$(PREFIX)/share/likwid/perfgroups+$(PWD)/groups+g" likwid.lua;
+ @sed -i -e "s+$(PREFIX)/share/likwid/mongroups+$(PWD)/monitoring/groups+g" likwid-agent
+ @ln -sf liblikwid.so liblikwid.so.$(VERSION)
+ @ln -sf ext/hwloc/liblikwid-hwloc.so liblikwid-hwloc.so.$(VERSION)
diff --git a/sys-apps/likwid/files/likwid-4.1.1-config.mk.patch b/sys-apps/likwid/files/likwid-4.1.1-config.mk.patch
new file mode 100644
index 000000000000..36897e542665
--- /dev/null
+++ b/sys-apps/likwid/files/likwid-4.1.1-config.mk.patch
@@ -0,0 +1,43 @@
+--- likwid-likwid-4.1.1/config.mk.org 2016-07-14 12:49:27.791771509 +0800
++++ likwid-likwid-4.1.1/config.mk 2016-07-14 12:51:27.470358158 +0800
+@@ -15,9 +15,9 @@
+ # Common users do not need to change values below this comment! #
+ #################################################################
+
+-MANPREFIX = $(PREFIX)/man#NO SPACE
++MANPREFIX = ${D}/usr/share/man#NO SPACE
+ BINPREFIX = $(PREFIX)/bin#NO SPACE
+-LIBPREFIX = $(PREFIX)/lib#NO SPACE
++LIBPREFIX = $(PREFIX)/$(get_libdir)#NO SPACE
+
+ # These paths are hardcoded into executables and libraries. Usually
+ # they'll be the same as above, but package maintainers may want to
+@@ -26,9 +26,9 @@
+ # Keep in mind that the access and setFreq daemon need enough
+ # privileges that may be deleted when copying the files to
+ # the INTSTALLED_PREFIX
+-INSTALLED_PREFIX = $(PREFIX)#NO SPACE
++INSTALLED_PREFIX=/usr#NO SPACE
+ INSTALLED_BINPREFIX = $(INSTALLED_PREFIX)/bin#NO SPACE
+-INSTALLED_LIBPREFIX = $(INSTALLED_PREFIX)/lib#NO SPACE
++INSTALLED_LIBPREFIX = $(INSTALLED_PREFIX)/$(get_libdir)#NO SPACE
+
+ # chown installed tools to this user/group
+ # if you change anything here, make sure that the user/group can access
+@@ -59,7 +59,7 @@
+ FORTRAN_INTERFACE = false#NO SPACE
+
+ # Instrument likwid-bench for use with likwid-perfctr
+-INSTRUMENT_BENCH = false#NO SPACE
++INSTRUMENT_BENCH = true#NO SPACE
+
+ # Use recommended Portable Hardware Locality (hwloc) instead of CPUID
+ USE_HWLOC = true#NO SPACE
+@@ -80,6 +80,6 @@
+ DATE = 19.05.2016
+
+ RPATHS = -Wl,-rpath=$(INSTALLED_LIBPREFIX)
+-LIBLIKWIDPIN = $(abspath $(INSTALLED_PREFIX)/lib/liblikwidpin.so.$(VERSION).$(RELEASE))
++LIBLIKWIDPIN = $(abspath $(PREFIX)/$(get_libdir)/liblikwidpin.so)
+ LIKWIDFILTERPATH = $(abspath $(INSTALLED_PREFIX)/share/likwid/filter)
+ LIKWIDGROUPPATH = $(abspath $(INSTALLED_PREFIX)/share/likwid/perfgroups)
diff --git a/sys-apps/likwid/files/likwid-4.1.1-fix-gnustack.patch b/sys-apps/likwid/files/likwid-4.1.1-fix-gnustack.patch
new file mode 100644
index 000000000000..a5a046d1f0df
--- /dev/null
+++ b/sys-apps/likwid/files/likwid-4.1.1-fix-gnustack.patch
@@ -0,0 +1,31 @@
+--- likwid-likwid-4.1.1/bench/Makefile.org 2015-08-22 13:56:17.242177531 +0800
++++ likwid-likwid-4.1.1/bench/Makefile 2015-08-22 13:56:46.985086094 +0800
+@@ -118,6 +118,7 @@
+ $(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
++++ likwid-likwid-4.1.1/fix_gnustack.txt
+@@ -0,0 +1,3 @@
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+
+--- likwid-likwid-4.1.1/src/loadData.S.org 2015-08-22 14:26:28.634629884 +0800
++++ likwid-likwid-4.1.1/src/loadData.S 2015-08-22 14:28:42.247210117 +0800
+@@ -41,4 +41,6 @@
+ #endif
+ .size _loadData, .-_loadData
+
+-
++#if defined(__linux__) && defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
diff --git a/sys-apps/likwid/likwid-4.1.1.ebuild b/sys-apps/likwid/likwid-4.1.1.ebuild
new file mode 100644
index 000000000000..c7f11c83f9c3
--- /dev/null
+++ b/sys-apps/likwid/likwid-4.1.1.ebuild
@@ -0,0 +1,98 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+FORTRAN_NEEDED=fortran
+
+inherit eutils fcaps linux-info multilib fortran-2
+
+DESCRIPTION="A performance-oriented tool suite for x86 multicore environments"
+HOMEPAGE="https://github.com/rrze-likwid/likwid"
+SRC_URI="https://github.com/RRZE-HPC/likwid/archive/likwid-4.1.1.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="fortran"
+
+RDEPEND="dev-lang/perl"
+
+DEPEND="${RDEPEND}
+ fortran? ( sys-devel/gcc:*[fortran] )
+ dev-lang/lua:0"
+
+CONFIG_CHECK="~X86_MSR"
+
+FILECAPS=(
+ -M 755 cap_sys_rawio usr/sbin/likwid-accessD --
+ -M 755 cap_sys_rawio usr/bin/likwid-{perfctr,bench,powermeter}
+)
+
+# See Bug 558402
+PATCHES=(
+ "${FILESDIR}/${P}-Makefile.patch"
+ "${FILESDIR}/${P}-fix-gnustack.patch"
+ "${FILESDIR}/${P}-config.mk.patch"
+)
+
+S=${WORKDIR}/likwid-likwid-${PV}
+
+src_prepare() {
+ # Set PREFIX path to include sandbox path
+ sed -e 's:^PREFIX = .*:PREFIX = '${D}'/usr:' -i config.mk || die
+
+ # Set the path to library directory.
+ sed -e 's:$(get_libdir):'$(get_libdir)':' -i config.mk || die "Cannot set library path!"
+
+ # Set correct LDFLAGS
+ sed -e '/LIBS/aSHARED_LFLAGS += -Wl,-soname,$@' \
+ -i make/include_GCC.mk || die
+
+ # Insert date and version info man pages
+ sed -e 's/<DATE>/21.08.2015/g' \
+ -e "s/VERSION/${PV}/g" \
+ -i doc/*.1 || die
+
+ # Set path to the access daemon, once installed into the system
+ sed -e "/exeprog/s|TOSTRING(ACCESSDAEMON)|\"/usr/sbin/likwid-accessD\"|" \
+ -i src/access_client.c || die
+
+ # Ensure we build with a non executable stack
+ sed -e "s:CFLAGS += \$(SHARED_CFLAGS):CFLAGS += \$(SHARED_CFLAGS) -g -Wa,--noexecstack:" \
+ -i make/config_defines.mk || die
+
+ if use fortran; then
+
+ # If fortran USE is enabled, enable the fortran interfaces
+ sed -i 's:^FORTRAN_INTERFACE = false:FORTRAN_INTERFACE = likwid.mod:' config.mk || die
+
+ # Set the correct fortrant compiler for GCC
+ sed -i "s:^FC = ifort:FC = ${FC}:" make/include_GCC.mk || die
+
+ # Set the correct FCFLAGS for gcc fortran
+ sed -i '/^FCFLAGS/c\FCFLAGS = -J ./ -fsyntax-only' make/include_GCC.mk || die
+ fi
+
+ default
+
+}
+
+src_install () {
+ default
+ if use fortran; then
+ insinto /usr/include
+ doins likwid.mod
+ fi
+
+ doman doc/*.1
+}
+
+pkg_postinst() {
+ fcaps_pkg_postinst
+ ewarn "To enable users to access performance counters it is necessary to"
+ ewarn "change the access permissions to /dev/cpu/msr[0]* devices."
+ ewarn "It can be accomplished by adding the following line to file"
+ ewarn "/etc/udev/rules.d/99-myrules.rules: KERNEL==\"msr[0-9]*\" MODE=\"0666\""
+}