summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2013-01-06 23:04:26 +0000
committerMike Frysinger <vapier@gentoo.org>2013-01-06 23:04:26 +0000
commit558ac4d6661580d0bd963b5a4cd77ecd06ff8f75 (patch)
treede7957ecd29bc6e9d8d360b6fb23c0f597543f7f /sys-process/numactl
parentVersion bump #450618 by Agostino Sarubbo. (diff)
downloadgentoo-2-558ac4d6661580d0bd963b5a4cd77ecd06ff8f75.tar.gz
gentoo-2-558ac4d6661580d0bd963b5a4cd77ecd06ff8f75.tar.bz2
gentoo-2-558ac4d6661580d0bd963b5a4cd77ecd06ff8f75.zip
Version bump #450626 by Agostino Sarubbo.
(Portage version: 2.2.0_alpha144/cvs/Linux x86_64, signed Manifest commit with key FB7C4156)
Diffstat (limited to 'sys-process/numactl')
-rw-r--r--sys-process/numactl/ChangeLog11
-rw-r--r--sys-process/numactl/files/numactl-2.0.8-static_libs.patch86
-rw-r--r--sys-process/numactl/numactl-2.0.8.ebuild55
3 files changed, 149 insertions, 3 deletions
diff --git a/sys-process/numactl/ChangeLog b/sys-process/numactl/ChangeLog
index 8e8374150b73..a77c91572bac 100644
--- a/sys-process/numactl/ChangeLog
+++ b/sys-process/numactl/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-process/numactl
-# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-process/numactl/ChangeLog,v 1.25 2012/06/29 07:15:55 jdhore Exp $
+# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-process/numactl/ChangeLog,v 1.26 2013/01/06 23:04:26 vapier Exp $
+
+*numactl-2.0.8 (06 Jan 2013)
+
+ 06 Jan 2013; Mike Frysinger <vapier@gentoo.org>
+ +files/numactl-2.0.8-static_libs.patch, +numactl-2.0.8.ebuild:
+ Version bump #450626 by Agostino Sarubbo.
29 Jun 2012; Jeff Horelick <jdhore@gentoo.org> numactl-2.0.7-r2.ebuild:
marked x86 per bug 422237
@@ -106,4 +112,3 @@
+numactl-0.9.8.ebuild:
Initial commit, based on ebuild submitted in bug #114686, thanks to Philippe
Troin <phil@fifi.org>.
-
diff --git a/sys-process/numactl/files/numactl-2.0.8-static_libs.patch b/sys-process/numactl/files/numactl-2.0.8-static_libs.patch
new file mode 100644
index 000000000000..efb84ff6240a
--- /dev/null
+++ b/sys-process/numactl/files/numactl-2.0.8-static_libs.patch
@@ -0,0 +1,86 @@
+Build static libs without -fPIC and only if BUILD_STATIC=yes
+
+https://bugs.gentoo.org/379849
+
+Patch written by Kacper Kowalik <xarthisius@gentoo.org>
+--- a/Makefile
++++ b/Makefile
+@@ -7,6 +7,8 @@
+ # for compatibility with old releases
+ CFLAGS += ${OPT_CFLAGS}
+ override CFLAGS += -I.
++# build static libraries by default
++BUILD_STATIC ?= yes
+
+ # find out if compiler supports __thread
+ THREAD_SUPPORT := $(shell if $(CC) $(CFLAGS) threadtest.c -o threadtest \
+@@ -24,6 +26,7 @@
+
+ CLEANFILES := numactl.o libnuma.o numactl numademo numademo.o distance.o \
+ memhog libnuma.so libnuma.so.1 numamon numamon.o syscall.o bitops.o \
++ distance.pic.o libnuma.pic.o syscall.pic.o \
+ memhog.o util.o stream_main.o stream_lib.o shm.o stream clearcache.o \
+ test/pagesize test/tshared test/mynode.o test/tshared.o mt.o empty.o empty.c \
+ test/mynode test/ftok test/prefered test/randmap \
+@@ -40,11 +43,16 @@
+ libdir := ${prefix}/$(shell ./getlibdir)
+ docdir := ${prefix}/share/doc
+
++NUMA_LIBS = libnuma.so
++ifeq ($(BUILD_STATIC),yes)
++NUMA_LIBS+= libnuma.a
++endif
++
+ all: numactl migratepages migspeed libnuma.so numademo numamon memhog \
+ test/tshared stream test/mynode test/pagesize test/ftok test/prefered \
+ test/randmap test/nodemap test/distance test/tbitmap test/move_pages \
+ test/mbind_mig_pages test/migrate_pages test/realloc_test libnuma.a \
+- test/node-parse numastat
++ test/node-parse numastat ${NUMA_LIBS}
+
+ numactl: numactl.o util.o shm.o bitops.o libnuma.so
+
+@@ -81,13 +89,14 @@
+
+ libnuma.so.1: versions.ldscript
+
+-libnuma.so.1: libnuma.o syscall.o distance.o affinity.o sysfs.o rtnetlink.o
++libnuma.so.1: libnuma.pic.o syscall.pic.o distance.pic.o affinity.pic.o sysfs.pic.o rtnetlink.pic.o
+ ${CC} ${LDFLAGS} -shared -Wl,-soname=libnuma.so.1 -Wl,--version-script,versions.ldscript -Wl,-init,numa_init -Wl,-fini,numa_fini -o libnuma.so.1 $(filter-out versions.ldscript,$^)
+
+ libnuma.so: libnuma.so.1
+ ln -sf libnuma.so.1 libnuma.so
+
+-libnuma.o : CFLAGS += -fPIC
++%.pic.o: %.c
++ ${CC} -fPIC ${CPPFLAGS} ${CFLAGS} -c $< -o $@
+
+ AR ?= ar
+ RANLIB ?= ranlib
+@@ -95,16 +104,6 @@
+ $(AR) rc $@ $^
+ $(RANLIB) $@
+
+-distance.o : CFLAGS += -fPIC
+-
+-syscall.o : CFLAGS += -fPIC
+-
+-affinity.o : CFLAGS += -fPIC
+-
+-sysfs.o : CFLAGS += -fPIC
+-
+-rtnetlink.o : CFLAGS += -fPIC
+-
+ test/tshared: test/tshared.o libnuma.so
+
+ test/mynode: test/mynode.o libnuma.so
+@@ -143,7 +148,9 @@
+ mkdir -p ${libdir}
+ install -m 0755 libnuma.so.1 ${libdir}
+ cd ${libdir} ; ln -sf libnuma.so.1 libnuma.so
++ifeq ($(BUILD_STATIC),yes)
+ install -m 0644 libnuma.a ${libdir}
++endif
+ mkdir -p ${prefix}/include
+ install -m 0644 numa.h numaif.h numacompat1.h ${prefix}/include
+ install -m 0755 numastat ${prefix}/bin
diff --git a/sys-process/numactl/numactl-2.0.8.ebuild b/sys-process/numactl/numactl-2.0.8.ebuild
new file mode 100644
index 000000000000..e471d21731f0
--- /dev/null
+++ b/sys-process/numactl/numactl-2.0.8.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-process/numactl/numactl-2.0.8.ebuild,v 1.1 2013/01/06 23:04:26 vapier Exp $
+
+EAPI="4"
+
+inherit eutils toolchain-funcs multilib
+
+DESCRIPTION="Utilities and libraries for NUMA systems"
+HOMEPAGE="http://oss.sgi.com/projects/libnuma/"
+SRC_URI="ftp://oss.sgi.com/www/projects/libnuma/download/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux"
+IUSE="perl static-libs"
+
+RDEPEND="perl? ( dev-lang/perl )"
+
+src_prepare() {
+ echo "printf $(get_libdir)" > getlibdir
+ epatch "${FILESDIR}"/${PN}-2.0.8-static_libs.patch
+}
+
+src_compile() {
+ emake \
+ AR="$(tc-getAR)" \
+ CC="$(tc-getCC)" \
+ RANLIB="$(tc-getRANLIB)" \
+ CFLAGS="${CFLAGS}" \
+ BENCH_CFLAGS="" \
+ BUILD_STATIC=$(usex static-libs)
+}
+
+src_test() {
+ if [ -d /sys/devices/system/node ]; then
+ einfo "The only generically safe test is regress2."
+ einfo "The other test cases require 2 NUMA nodes."
+ cd test
+ ./regress2 || die "regress2 failed!"
+ else
+ ewarn "You do not have baseline NUMA support in your kernel, skipping tests."
+ fi
+}
+
+src_install() {
+ emake install prefix="${ED}/usr" BUILD_STATIC=$(usex static-libs)
+ # delete man pages provided by the man-pages package #238805
+ rm -rf "${ED}"/usr/share/man/man[25]
+ doman *.8 # makefile doesnt get them all
+ dodoc README TODO CHANGES DESIGN
+ if ! use perl ; then
+ rm "${ED}"/usr/bin/numastat "${ED}"/usr/share/man/man8/numastat.8 || die
+ fi
+}