diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /sci-libs/djbfft | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sci-libs/djbfft')
-rw-r--r-- | sci-libs/djbfft/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/djbfft/djbfft-0.76-r2.ebuild | 68 | ||||
-rw-r--r-- | sci-libs/djbfft/files/djbfft-0.76-gcc3.patch | 37 | ||||
-rw-r--r-- | sci-libs/djbfft/files/djbfft-0.76-headers.patch | 38 | ||||
-rw-r--r-- | sci-libs/djbfft/files/djbfft-0.76-shared.patch | 133 | ||||
-rw-r--r-- | sci-libs/djbfft/metadata.xml | 15 |
6 files changed, 292 insertions, 0 deletions
diff --git a/sci-libs/djbfft/Manifest b/sci-libs/djbfft/Manifest new file mode 100644 index 000000000000..1791a2c9ca59 --- /dev/null +++ b/sci-libs/djbfft/Manifest @@ -0,0 +1 @@ +DIST djbfft-0.76.tar.gz 80092 SHA256 799d929c3631a77ef0e16a2449e4fc11af8540b62359f8733ac2899fca2b394c SHA512 f23e5f80d2737476feea4ed65d7d022c4ca74748a2ff7b3b9338fdea4f72b4009d1c5909325382647feab837bec078231eddc3fc3bd0b5ae3346690e5edef530 WHIRLPOOL 710c694eeb92f4baf37e8ebb2658c2d8757a129354a240a47aff3891bd68f0d955caaa3b20524df259fcb415b6d7d40db8d60dd6d657b36397c1007569396058 diff --git a/sci-libs/djbfft/djbfft-0.76-r2.ebuild b/sci-libs/djbfft/djbfft-0.76-r2.ebuild new file mode 100644 index 000000000000..82052a6daf94 --- /dev/null +++ b/sci-libs/djbfft/djbfft-0.76-r2.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils flag-o-matic toolchain-funcs multilib multilib-minimal + +DESCRIPTION="Extremely fast library for floating-point convolution" +HOMEPAGE="http://cr.yp.to/djbfft.html" +SRC_URI="http://cr.yp.to/djbfft/${P}.tar.gz" + +LICENSE="public-domain" +SLOT="0" +KEYWORDS="alpha amd64 arm ~hppa ppc ppc64 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux" +IUSE="" +DOCS=( CHANGES README TODO VERSION ) + +src_prepare() { + SOVER="${PV:0:1}.${PV:2:1}.${PV:3:1}" # a.bc -> a.b.c + # mask out everything, which is not suggested by the author (RTFM)! + ALLOWED_FLAGS="-fstack-protector -march -mcpu -pipe -mpreferred-stack-boundary -ffast-math" + strip-flags + + SONAME="libdjbfft.so.${SOVER}" + + epatch \ + "${FILESDIR}"/${P}-gcc3.patch \ + "${FILESDIR}"/${P}-shared.patch \ + "${FILESDIR}"/${P}-headers.patch + multilib_copy_sources +} + +multilib_src_configure() { + [[ ${ABI} == x86* ]] && append-cflags -malign-double + + sed -i -e "s:\"lib\":\"$(get_libdir)\":" hier.c || die + echo "$(tc-getCC) ${CFLAGS} -fPIC" > "conf-cc" + echo "$(tc-getCC) ${LDFLAGS}" > "conf-ld" + echo "${ED}usr" > "conf-home" + einfo "conf-cc: $(<conf-cc)" +} + +multilib_src_compile() { + emake \ + LIBDJBFFT=${SONAME} \ + LIBPERMS=0755 \ + ${SONAME} + echo "the compile function was:" + cat ./compile + echo "the conf-ld function was:" + cat ./conf-ld +} + +multilib_src_test() { + local t + for t in accuracy accuracy2 speed; do + emake ${t} + einfo "Testing ${t}" + LD_LIBRARY_PATH=. ./${t} > ${t}.out || die "test ${t} failed" + done +} + +multilib_src_install() { + emake LIBDJBFFT=${SONAME} install + ./install || die "install failed" + dosym ${SONAME} /usr/$(get_libdir)/libdjbfft.so + dosym ${SONAME} /usr/$(get_libdir)/libdjbfft.so.${SOVER%%.*} +} diff --git a/sci-libs/djbfft/files/djbfft-0.76-gcc3.patch b/sci-libs/djbfft/files/djbfft-0.76-gcc3.patch new file mode 100644 index 000000000000..6f1a677d6583 --- /dev/null +++ b/sci-libs/djbfft/files/djbfft-0.76-gcc3.patch @@ -0,0 +1,37 @@ +--- djbfft-0.76/install.c.orig 2003-04-25 23:31:34.000000000 +0200 ++++ djbfft-0.76/install.c 2003-04-25 23:29:05.000000000 +0200 +@@ -1,3 +1,4 @@ ++#include <errno.h> + #include "substdio.h" + #include "strerr.h" + #include "error.h" +--- djbfft-0.76/instcheck.c.orig 2003-04-25 23:31:34.000000000 +0200 ++++ djbfft-0.76/instcheck.c 2003-04-25 23:28:11.000000000 +0200 +@@ -1,5 +1,6 @@ + #include <sys/types.h> + #include <sys/stat.h> ++#include <errno.h> + #include "strerr.h" + #include "error.h" + #include "readwrite.h" +--- djbfft-0.76/strerr_sys.c.orig 2003-04-25 23:31:34.000000000 +0200 ++++ djbfft-0.76/strerr_sys.c 2003-04-25 23:28:32.000000000 +0200 +@@ -1,3 +1,4 @@ ++#include <errno.h> + #include "error.h" + #include "strerr.h" + +--- djbfft-0.76/substdi.c.orig 2003-04-25 23:31:34.000000000 +0200 ++++ djbfft-0.76/substdi.c 2003-04-25 23:28:41.000000000 +0200 +@@ -1,3 +1,4 @@ ++#include <errno.h> + #include "substdio.h" + #include "byte.h" + #include "error.h" +--- djbfft-0.76/substdo.c.orig 2003-04-25 23:31:34.000000000 +0200 ++++ djbfft-0.76/substdo.c 2003-04-25 23:28:47.000000000 +0200 +@@ -1,3 +1,4 @@ ++#include <errno.h> + #include "substdio.h" + #include "str.h" + #include "byte.h" diff --git a/sci-libs/djbfft/files/djbfft-0.76-headers.patch b/sci-libs/djbfft/files/djbfft-0.76-headers.patch new file mode 100644 index 000000000000..39fb623f10ef --- /dev/null +++ b/sci-libs/djbfft/files/djbfft-0.76-headers.patch @@ -0,0 +1,38 @@ +--- strerr.h.orig 1999-09-30 23:25:58.000000000 +0300 ++++ strerr.h 2008-09-13 22:14:09.000000000 +0300 +@@ -1,3 +1,5 @@ ++#include <errno.h> ++ + #ifndef STRERR_H + #define STRERR_H + +--- substdio.h.orig 1999-09-30 23:25:58.000000000 +0300 ++++ substdio.h 2008-09-13 22:13:41.000000000 +0300 +@@ -1,3 +1,5 @@ ++#include <errno.h> ++ + #ifndef SUBSTDIO_H + #define SUBSTDIO_H + +--- speed.c.orig 1999-09-30 23:25:58.000000000 +0300 ++++ speed.c 2008-09-13 19:16:20.352525481 +0300 +@@ -1,4 +1,5 @@ + #include <stdio.h> ++#include <stdlib.h> + #include "fftr4.h" + #include "fftr8.h" + #include "fftc4.h" +--- accuracy2.c.orig 2008-10-10 20:51:06.000000000 +0100 ++++ accuracy2.c 2008-10-10 20:51:55.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdlib.h> + #include <stdio.h> + #include <math.h> + #include "fftc4.h" +--- accuracy.c.orig 2008-10-10 21:03:30.000000000 +0100 ++++ accuracy.c 2008-10-10 21:03:43.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdlib.h> + #include <stdio.h> + #include <math.h> + #include "fftc4.h" diff --git a/sci-libs/djbfft/files/djbfft-0.76-shared.patch b/sci-libs/djbfft/files/djbfft-0.76-shared.patch new file mode 100644 index 000000000000..53ce9af6b7a2 --- /dev/null +++ b/sci-libs/djbfft/files/djbfft-0.76-shared.patch @@ -0,0 +1,133 @@ +--- djbfft-0.76/Makefile.orig 1999-09-30 22:25:58.000000000 +0200 ++++ djbfft-0.76/Makefile 2004-01-17 17:21:37.236669242 +0100 +@@ -2,6 +2,9 @@ + + SHELL=/bin/sh + ++LIBPERMS=0644 ++LIBDJBFFT=djbfft.a ++ + default: it + + 4c0.c: \ +@@ -569,8 +572,8 @@ + ./compile 8v5.c + + accuracy: \ +-load accuracy.o djbfft.a math.lib +- ./load accuracy djbfft.a `cat math.lib` ++load accuracy.o $(LIBDJBFFT) math.lib ++ ./load accuracy $(LIBDJBFFT) `cat math.lib` + + accuracy.o: \ + compile accuracy.c fftc4.h complex4.h real4.h fftc8.h complex8.h \ +@@ -578,8 +581,8 @@ + ./compile accuracy.c + + accuracy2: \ +-load accuracy2.o djbfft.a math.lib +- ./load accuracy2 djbfft.a `cat math.lib` ++load accuracy2.o $(LIBDJBFFT) math.lib ++ ./load accuracy2 $(LIBDJBFFT) `cat math.lib` + + accuracy2.o: \ + compile accuracy2.c fftc4.h complex4.h real4.h fftc8.h complex8.h \ +@@ -649,7 +652,7 @@ + ) > compilebase + chmod 755 compilebase + +-djbfft.a: \ ++$(LIBDJBFFT): \ + makelib 8sc.o 8u5.o 8u4.o 8u3.o 8u2.o 8u1.o 8u0.o 8mc.o 8c0.o 8c1.o \ + 8c2.o 8c3.o 8c4.o 8c5.o 8d0.o 8d1.o 8d2.o 8d3.o 8d4.o 8d5.o 8v5.o \ + 8v4.o 8v3.o 8v2.o 8v1.o 8v0.o 8mr.o 8r0.o 8r1.o 8r2.o 8r3.o 8r4.o \ +@@ -657,7 +660,7 @@ + 4c1.o 4c2.o 4c3.o 4c4.o 4c5.o 4d0.o 4d1.o 4d2.o 4d3.o 4d4.o 4d5.o \ + 4v5.o 4v4.o 4v3.o 4v2.o 4v1.o 4v0.o 4mr.o 4r0.o 4r1.o 4r2.o 4r3.o \ + 4r4.o 4r5.o 4sr.o fftfreq.o +- ./makelib djbfft.a 8sc.o 8u5.o 8u4.o 8u3.o 8u2.o 8u1.o \ ++ ./makelib $(LIBDJBFFT) 8sc.o 8u5.o 8u4.o 8u3.o 8u2.o 8u1.o \ + 8u0.o 8mc.o 8c0.o 8c1.o 8c2.o 8c3.o 8c4.o 8c5.o 8d0.o 8d1.o \ + 8d2.o 8d3.o 8d4.o 8d5.o 8v5.o 8v4.o 8v3.o 8v2.o 8v1.o 8v0.o \ + 8mr.o 8r0.o 8r1.o 8r2.o 8r3.o 8r4.o 8r5.o 8sr.o 4sc.o 4u5.o \ +@@ -692,7 +695,7 @@ + + hier.o: \ + compile hier.c auto_home.h +- ./compile hier.c ++ ./compile -DLIBDJBFFT=\"$(LIBDJBFFT)\" -DLIBPERMS=$(LIBPERMS) hier.c + + install: \ + load install.o hier.o auto_home.o strerr.a substdio.a open.a error.a \ +@@ -731,7 +734,9 @@ + ( cat warn-auto.sh; \ + echo 'main="$$1"; shift'; \ + echo 'rm -f "$$main"'; \ +- echo 'ar cr "$$main" $${1+"$$@"}'; \ ++ echo 'if [ "$${main##*.}" = "a" ]'; \ ++ echo 'then'; \ ++ echo ' ar cr "$$main" $${1+"$$@"}'; \ + case "`cat systype`" in \ + sunos-5.*) ;; \ + unix_sv*) ;; \ +@@ -740,8 +745,11 @@ + dgux-*) ;; \ + hp-ux-*) ;; \ + sco*) ;; \ +- *) echo 'ranlib "$$main"' ;; \ +- esac \ ++ *) echo ' ranlib "$$main"' ;; \ ++ esac; \ ++ echo 'else'; \ ++ echo ' exec `head -1 conf-ld` -shared -Wl,-soname,libdjbfft.so.0.7.6 -o "$$main" $${1+"$$@"}'; \ ++ echo 'fi'; \ + ) > makelib + chmod 755 makelib + +@@ -758,15 +766,15 @@ + ./compile open_trunc.c + + prog: \ +-djbfft.a accuracy accuracy2 speed speed.out ++$(LIBDJBFFT) accuracy accuracy2 speed speed.out + + setup: \ + it install + ./install + + speed: \ +-load speed.o djbfft.a math.lib +- ./load speed djbfft.a `cat math.lib` ++load speed.o $(LIBDJBFFT) math.lib ++ ./load speed $(LIBDJBFFT) `cat math.lib` + + speed.o: \ + compile speed.c fftr4.h real4.h fftr8.h real8.h fftc4.h complex4.h \ +@@ -775,7 +783,7 @@ + + speed.out: \ + speed +- ./speed > speed.out ++ LD_LIBRARY_PATH=".:$$LD_LIBRARY_PATH" ./speed > speed.out + + str.a: \ + makelib byte_copy.o byte_cr.o str_len.o +--- djbfft-0.76/hier.c.orig 1999-09-30 22:25:58.000000000 +0200 ++++ djbfft-0.76/hier.c 2004-01-17 16:39:21.312774411 +0100 +@@ -2,12 +2,12 @@ + + void hier() + { +- h(auto_home,-1,-1,02755); ++ h(auto_home,-1,-1,0755); + +- d(auto_home,"lib",-1,-1,02755); +- c(auto_home,"lib","djbfft.a",-1,-1,0644); ++ d(auto_home,"lib",-1,-1,0755); ++ c(auto_home,"lib",LIBDJBFFT,-1,-1,LIBPERMS); + +- d(auto_home,"include",-1,-1,02755); ++ d(auto_home,"include",-1,-1,0755); + c(auto_home,"include","real4.h",-1,-1,0644); + c(auto_home,"include","real8.h",-1,-1,0644); + c(auto_home,"include","complex4.h",-1,-1,0644); diff --git a/sci-libs/djbfft/metadata.xml b/sci-libs/djbfft/metadata.xml new file mode 100644 index 000000000000..acca8fb6c86a --- /dev/null +++ b/sci-libs/djbfft/metadata.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> + <herd>video</herd> + <longdescription lang="en"> + D.J. Bernstein Fast Fourier Transform (djbfft) is an extremely + fast library for floating-point convolution. The current version + holds most of the speed records for double-precision FFTs on + general-purpose computers. + djbfft provides power-of-2 complex FFTs, real FFTs at twice the speed, + and fast multiplication of complex arrays. Single precision and double + precision are equally supported. +</longdescription> +</pkgmetadata> |