diff --git a/science/mathematics/djbfft/actions.py b/science/mathematics/djbfft/actions.py new file mode 100644 index 0000000000..1a79702a9a --- /dev/null +++ b/science/mathematics/djbfft/actions.py @@ -0,0 +1,35 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/licenses/gpl.txt + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools +from pisi.actionsapi import get + +lib_version=get.srcVERSION()[0] + "." + get.srcVERSION()[2] + "." + get.srcVERSION()[3] + +def setup(): + # FIXME: shelltools.echo() appends to the end of the file by default so clear them first + shelltools.unlink('conf-cc') + shelltools.unlink('conf-ld') + shelltools.unlink('conf-home') + + shelltools.echo('conf-cc', "%s %s -malign-double -fPIC -DPIC" % (get.CC(), get.CFLAGS().replace("-D_FORTIFY_SOURCE=2", "").replace("-fomit-frame-pointer", ""))) + shelltools.echo('conf-ld', "%s %s" % (get.CC(), get.LDFLAGS())) + shelltools.echo('conf-home', "%s/usr" % get.installDIR()) + +def build(): + autotools.make('LIBDJBFFT="libdjbfft.so.%s" LIBPERMS="0755"' % lib_version) + +def install(): + pisitools.dolib("libdjbfft.so.%s" % lib_version) + pisitools.dosym("/usr/lib/libdjbfft.so.%s" % lib_version,"/usr/lib/libdjbfft.so") + pisitools.dosym("/usr/lib/libdjbfft.so.%s" % lib_version,"/usr/lib/libdjbfft.so.0") + + for header in ["fftc4.h", "complex4.h", "real4.h"]: + pisitools.insinto("/usr/include", header) + + pisitools.dodoc("CHANGES","README","TODO") diff --git a/science/mathematics/djbfft/files/gcc3.patch b/science/mathematics/djbfft/files/gcc3.patch new file mode 100644 index 0000000000..6f1a677d65 --- /dev/null +++ b/science/mathematics/djbfft/files/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 + #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 + #include ++#include + #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 + #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 + #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 + #include "substdio.h" + #include "str.h" + #include "byte.h" diff --git a/science/mathematics/djbfft/files/headers.patch b/science/mathematics/djbfft/files/headers.patch new file mode 100644 index 0000000000..39fb623f10 --- /dev/null +++ b/science/mathematics/djbfft/files/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 ++ + #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 ++ + #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 ++#include + #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 + #include + #include + #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 + #include + #include + #include "fftc4.h" diff --git a/science/mathematics/djbfft/files/shared.patch b/science/mathematics/djbfft/files/shared.patch new file mode 100644 index 0000000000..2caae2d9c9 --- /dev/null +++ b/science/mathematics/djbfft/files/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 -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/science/mathematics/djbfft/pspec.xml b/science/mathematics/djbfft/pspec.xml new file mode 100644 index 0000000000..ad1afa8dc7 --- /dev/null +++ b/science/mathematics/djbfft/pspec.xml @@ -0,0 +1,65 @@ + + + + + djbfft + http://cr.yp.to/djbfft.html + + PisiLinux Community + admins@pisilinux.org + + public-domain + library + Fast float library + An extremely fast library for floating-point convolution. + http://cr.yp.to/djbfft/djbfft-0.76.tar.gz + + gcc3.patch + shared.patch + headers.patch + + + + + djbfft + + /usr/lib + /usr/share/doc + + + + + djbfft-devel + Development files for djbfft + + djbfft + + + /usr/include + + + + + + 2014-05-20 + 0.76 + Rebuild. + Serdar Soytetir + kaptan@pisilinux.org + + + 2014-01-22 + 0.76 + Rebuild + Stefan Gronewold(groni) + groni@pisilinux.org + + + 2010-10-13 + 0.76 + First release + Pisi Linux Admins + admins@pisilinux.org + + + diff --git a/science/mathematics/djbfft/translations.xml b/science/mathematics/djbfft/translations.xml new file mode 100644 index 0000000000..4c28828cf7 --- /dev/null +++ b/science/mathematics/djbfft/translations.xml @@ -0,0 +1,13 @@ + + + + djbfft + Hızlı küsürlü sayı kitaplığı + djbfft çok hızlı küsürlü sayı bükülme kitaplığıdır. + + + + djbfft-devel + djbfft için geliştirme dosyaları + +