summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD86
1 files changed, 86 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..6b1900012d2f
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,86 @@
+# Maintainer : eolianoe <eolianoe At GoogleMAIL DoT CoM>
+# Contributor: Michele Mocciola <mickele>
+# Contributor: Guillaume Dollé <dolle dot guillaume at gmail dot com >
+
+pkgname=mumps-seq
+_pkgname=mumps
+_PKGNAME=MUMPS
+pkgver=5.0.0
+pkgrel=1
+pkgdesc="Sparse solver library using Gaussian elimination (sequential version)"
+url="http://mumps.enseeiht.fr"
+license=('custom')
+depends=('gcc-libs' 'blas' 'metis4')
+provides=('mumps')
+conflicts=('mumps')
+arch=('i686' 'x86_64')
+source=("http://mumps.enseeiht.fr/${_PKGNAME}_${pkgver}.tar.gz"
+ "Makefile.seq.inc")
+sha256sums=('191ec4b3ea8c4b5955279a9c03e469be49cb75c9ed672b85fd68623dcef52019'
+ '377e619043715a660763135643b46c1a9e61317c8e54696073f1635e4025ebc0')
+
+prepare(){
+ cd "${srcdir}/${_PKGNAME}_${pkgver}"
+
+ ln -sf "${srcdir}/Makefile.seq.inc" Makefile.inc
+}
+
+build() {
+ cd "${srcdir}/${_PKGNAME}_${pkgver}"
+
+ make -j1 all
+
+ # Convert static libs to shared libs
+ # for mumps libs
+ cd "${srcdir}/${_PKGNAME}_${pkgver}/lib"
+ _libs=$(find . -maxdepth 1 -regex ".*\.a" | xargs | sed "s|\.a||g")
+ for _FILE in ${_libs}; do
+ ld -Bshareable -o ${_FILE}_seq.so.${pkgver} -x -soname ${_FILE}_seq.so --whole-archive ${_FILE}.a
+ done
+ # for mpiseq libs
+ cd "${srcdir}/${_PKGNAME}_${pkgver}/libseq"
+ ld -Bshareable -o libmpiseq.so.${pkgver} -x -soname libmpiseq.so --whole-archive libmpiseq.a
+}
+
+package(){
+ # Install all headers
+ cd "${srcdir}/${_PKGNAME}_${pkgver}/include"
+ install -m 755 -d "${pkgdir}/usr/include/${pkgname}"
+ install -D -m644 -- *.h "${pkgdir}/usr/include/${pkgname}"
+
+ # Install all libraries
+ cd "${srcdir}/${_PKGNAME}_${pkgver}/lib"
+ install -m 755 -d "${pkgdir}/usr/lib"
+ _libs=$(find . -maxdepth 1 -regex ".*\.a" | xargs | sed "s|\.a||g")
+ for _FILE in ${_libs}; do
+ install -m 755 ${_FILE}_seq.so.${pkgver} "${pkgdir}/usr/lib"
+ ln -sf ${_FILE}_seq.so.${pkgver} "${pkgdir}/usr/lib/${_FILE}_seq.so.${pkgver:0:1}"
+ done
+
+ # Install mpiseq headers
+ cd "${srcdir}/${_PKGNAME}_${pkgver}/libseq"
+ install -m 755 -d "${pkgdir}/usr/include/mpiseq"
+ install -D -m644 -- *.h "${pkgdir}/usr/include/mpiseq"
+ # Install mpiseq libraries
+ install -m 755 libmpiseq.so.${pkgver} "${pkgdir}/usr/lib"
+ ln -sf libmpiseq.so.${pkgver} "${pkgdir}/usr/lib/libmpiseq.so.${pkgver:0:1}"
+
+ # Install license
+ install -D -m644 "${srcdir}/${_PKGNAME}_${pkgver}/LICENSE"\
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+
+ # Install doc
+ #install -m 755 -d "${pkgdir}/usr/share/doc/${pkgname}"
+ #install -D -m644 "${srcdir}/${_PKGNAME}_${pkgver}/doc/userguide_${pkgver}.pdf"\
+ #"${pkgdir}/usr/share/doc/${pkgname}/userguide_${pkgver}.pdf"
+
+ # Install examples
+ install -m 755 -d "${pkgdir}/usr/share/doc/${pkgname}/examples"
+ cd "${srcdir}/${_PKGNAME}_${pkgver}/examples"
+ install -m 644 * "${pkgdir}/usr/share/doc/${pkgname}/examples"
+ for _FILE in ssimpletest dsimpletest csimpletest zsimpletest c_example; do
+ chmod 0755 "${pkgdir}/usr/share/doc/${pkgname}/examples/${_FILE}"
+ done
+ rm -- "${pkgdir}/usr/share/doc/${pkgname}/examples/"*.o
+
+}