initial import

This commit is contained in:
2025-06-22 20:39:04 -05:00
commit f8a70886f0
3428 changed files with 302546 additions and 0 deletions

77
fftw/PKGBUILD Normal file
View File

@@ -0,0 +1,77 @@
# Maintainer: Jesus E. <heckyel@riseup.net>
pkgname=fftw
pkgver=3.3.9
pkgrel=1
pkgdesc="A library for computing the discrete Fourier transform (DFT)"
arch=('i686' 'x86_64')
license=('GPL-2')
url="http://www.fftw.org/"
depends=('bash' 'gcc-libs' 'glibc' 'openmpi')
makedepends=('gcc-fortran')
source=("http://www.fftw.org/${pkgname}-${pkgver}.tar.gz")
sha512sums=('52ebc2a33063a41fd478f6ea2acbf3b511867f736591d273dd57f9dfca5d3e0b0c73157921b3a36f1a7cfd741a8a6bde0fd80de578040ae730ea168b5ba466cf')
prepare() {
cp -av "${pkgname}-${pkgver}" "${pkgname}-${pkgver}-double"
cp -av "${pkgname}-${pkgver}" "${pkgname}-${pkgver}-long-double"
cp -av "${pkgname}-${pkgver}" "${pkgname}-${pkgver}-quad"
}
build() {
export F77='gfortran'
# use upstream default CFLAGS while keeping our -march/-mtune
CFLAGS+=" -O3 -fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math"
# default configure call
_default_configure="./configure --prefix=/usr --enable-shared --enable-threads --enable-mpi --enable-openmp"
# configure single precision
(
cd "${pkgname}-${pkgver}"
${_default_configure} --enable-sse --enable-avx --enable-single
# NOTE: fix overlinking
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
)
# configure double precision
(
cd "${pkgname}-${pkgver}-double"
${_default_configure} --enable-sse2 --enable-avx
# NOTE: fix overlinking
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
)
# configure long-double precission
(
cd "${pkgname}-${pkgver}-long-double"
${_default_configure} --enable-long-double
# NOTE: fix overlinking
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
)
# configure quad precision
(
cd "${pkgname}-${pkgver}-quad"
${_default_configure} --disable-mpi --enable-quad-precision
# NOTE: fix overlinking
sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
)
make -C "${pkgname}-${pkgver}"
make -C "${pkgname}-${pkgver}-double"
make -C "${pkgname}-${pkgver}-long-double"
make -C "${pkgname}-${pkgver}-quad"
}
package() {
make DESTDIR="${pkgdir}" install -C "${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install -C "${pkgname}-${pkgver}-double"
make DESTDIR="${pkgdir}" install -C "${pkgname}-${pkgver}-long-double"
make DESTDIR="${pkgdir}" install -C "${pkgname}-${pkgver}-quad"
cd "${pkgname}-${pkgver}"
install -vDm 644 {AUTHORS,ChangeLog,NEWS,README,TODO} \
-t "${pkgdir}/usr/share/doc/${pkgname}"
install -vDm 644 COPYING \
-t "${pkgdir}/usr/share/licenses/${pkgname}"
}