initial ebuild, contributed by Brendan Horan, bug 373607
authorYixun Lan <dlan@gentoo.org>
Fri, 6 Mar 2015 14:54:39 +0000 (14:54 +0000)
committerYixun Lan <dlan@gentoo.org>
Fri, 6 Mar 2015 14:54:39 +0000 (14:54 +0000)
Package-Manager: portage-2.2.17/cvs/Linux x86_64
Manifest-Sign-Key: 0xAABEFD55

sys-apps/likwid/Manifest
sys-apps/likwid/files/likwid-3.1.3-Makefile.patch [new file with mode: 0644]
sys-apps/likwid/files/likwid-3.1.3-fix-gnustack.patch [new file with mode: 0644]
sys-apps/likwid/likwid-3.1.3.ebuild [new file with mode: 0644]
sys-apps/likwid/metadata.xml [new file with mode: 0644]

index 29859776ab3972da5a78aec404473db6f29b9bba..690d83ff96305c4cdccff5cc24722890716470f4 100644 (file)
@@ -1,6 +1,26 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA256
+
 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
+EBUILD likwid-3.1.3.ebuild 1761 SHA256 81dcd4da9c89103ab0a7730de5e065b72fa6c5ab8167e0843941ab2edde6a419 SHA512 75a4c1bdbadf98b0a6d68717b741292bc793f837f7d09abca7775a49d0edac61ea7a01deaa94c1d102d5b62d9ccd1e2c7f59cf3ff735bd84e208dae5e37f751a WHIRLPOOL 8f3c497bf41655f94a8f61b41c5e693247d83a396d690465b40644ee4b028acb0a6938b148c48330c89f7935cd88683115ed4ffee2f8686f0ea93653a774be17
+MISC ChangeLog 450 SHA256 f6f6b9ac0c9ca78c62611bff538388c6ec396a477dcb80dd2b0ad2b06499acc8 SHA512 fe923c0ae336d8a35a7179a8603d41c78e9710b2595e499cd6538726b72432232fce976066099f4383cbc6249dda1298968190fe61fd714b3efe1f17244136f2 WHIRLPOOL 2b49f5165ecf385d3ab463462bf08337141e2199077c6371859c72d500fc300cdde7aed4337e6fdc00e3865997c34cc8d6ab44b7c9c375c6d31affc3387006c7
 MISC metadata.xml 331 SHA256 241272ef41daea2c77277e3fef08e7468921439e23f8d5ba884bfa7c48c85df5 SHA512 5dad170f48d4704810153f6424db796d5719885d5cc8b25a6178f68265703a7073f640560a700014dc5230e456e60996cb012889becba65cdbd4e0a6488b71e2 WHIRLPOOL f104eff5dbdb1839a9685ce4aa5bd86db4098b2adbadd2dbd95b912a32c4f6f4be480e1a0f0858a80c0d4aa4faeb773fc3fc692b9f649b367686daec57c14799
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAEBCAAGBQJU+b+uAAoJEJIMDbyqvv1Vx54QAPAT9W4XBxNnTK7XdmWgaMOW
+9kqRoVlGzsG5dB+Z37e0n+Eo90o5xqJCEjFcx+Da3LKzmrkCHpopEk4bkhlPX1Tk
+WRSvO6oDXZSUX9lhtFuV+wVLEHc4VI4Yk9ICgtklC9LGuBA8rPcMybq4WMV1WNtA
+51UjVkYJVHKZ+ABJL67B/NF35PJtPcA4V8xC2FVRuG2Q0WuXaITUwzjTm9jQqcI2
+r49HONRs36hCK5uFHsnm4Ef4j2wE3fjZAt1E52ljxhvLpXn1pLfJis/QM8NFhFSy
+HstkWb6MN8REsvtB3ev5BQsf2W/sgYimDRJWyO7MT2MVhb/AtIy/nQIwP/HQ6Wft
+j/WWl99kJzqJdCE/hzVSPRWUiOY3nyYtex3DK8xOSiBPjpetXrcyME+nKhOmrxjQ
+VaQ6Yjm1M6hfi83uP/QMjIWjOT77Ib8OhbLjOdsEOZjdjYsubfpHrgqbZ7h68UAO
+6/kDp1jbK9pvrnxohXJu/9FL+C4Wz1Tswuy6dBQLMMHWpWjMJyTLW6nEujMza4Bv
+mtdCgE6mPGLIizEYeVlh9jVLTJ0FfZf/kloJdwOIButlj58Xjjbie8FUMdK38mu8
+QhcvAXc4FXeNtsNQSalSi2Ds6+ONnCayBqMhkjfWoMimFUIz32u/skC/VYvYVC4V
+jyJQe3Wo8hP2TJJRfIKD
+=pGJK
+-----END PGP SIGNATURE-----
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 (file)
index 0000000..a40d0c3
--- /dev/null
@@ -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 (file)
index 0000000..6ee4149
--- /dev/null
@@ -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 (file)
index 0000000..1b3a115
--- /dev/null
@@ -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 (file)
index 0000000..fa053a3
--- /dev/null
@@ -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>