summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authoryingchangliu2023-11-10 20:47:46 +0800
committeryingchangliu2023-11-10 20:47:46 +0800
commitbd36aeb4c6517cacb1a9cc9779e090872da5e12e (patch)
tree7bd70d476e9bb6b36ad00064de1c3fde52345217
downloadaur-bd36aeb4c6517cacb1a9cc9779e090872da5e12e.tar.gz
Commit the git version of madagascar
-rw-r--r--.SRCINFO28
-rw-r--r--PKGBUILD80
2 files changed, 108 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..c506f11561f6
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,28 @@
+pkgbase = madagascar-git
+ pkgdesc = Multidimensional data analysis and reproducible computational experiments.
+ pkgver = r15659.d72996857
+ pkgrel = 1
+ url = https://www.reproducibility.org/wiki/Main_Page
+ arch = i686
+ arch = x86_64
+ license = GPL2
+ depends = libtirpc
+ depends = ffmpeg
+ depends = libxaw
+ depends = cairo
+ depends = fftw
+ depends = netpbm
+ depends = gd
+ depends = swig
+ depends = python
+ depends = openmpi
+ depends = glu
+ depends = freeglut
+ depends = suitesparse
+ optdepends = cuda: for nvcc, but not compatible with cuda12
+ optdepends = plplot: scientific plot
+ options = strip
+ source = madagascar::git+https://github.com/ahay/src
+ md5sums = SKIP
+
+pkgname = madagascar-git
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..94ff369c0b69
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,80 @@
+# Contributor: anon at sansorgan.es
+# Contributor: Yingchang Liu
+pkgname=madagascar-git
+pkgver=r15659.d72996857
+pkgrel=1
+pkgdesc="Multidimensional data analysis and reproducible computational experiments."
+url="https://www.reproducibility.org/wiki/Main_Page"
+license=('GPL2')
+arch=('i686' 'x86_64')
+depends=('libtirpc' 'ffmpeg' 'libxaw' 'cairo' 'fftw' 'netpbm' 'gd' 'swig' 'python'
+ 'openmpi' 'glu' 'freeglut' 'suitesparse')
+optdepends=('cuda: for nvcc, but not compatible with cuda12' 'plplot: scientific plot')
+options=('strip')
+source=(madagascar::git+https://github.com/ahay/src)
+md5sums=('SKIP')
+
+pkgver() {
+ cd ${pkgname}
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+
+build() {
+ mkdir -p ${srcdir}/${pkgname}
+ cd ${srcdir}/${pkgname}
+ export RSFROOT=${pkgdir}/opt/${pkgname}
+
+ # fix paths for tirpc in framework/configure.py
+ sed -i '430,433c\
+ (plat['\''distro'\''\] == '\''centos'\'' and int(plat['\''version'\''\][0]) >= 8) or \\\
+ plat['\''distro'\''\] == '\''fedora'\'' or \\\
+ plat['\''distro'\''\] == '\''arch'\'' or \\\
+ (plat['\''distro'\''\] == '\''ubuntu'\'' and int(plat['\''version'\''\][:2]) >= 20): \ \
+ context.env['\''CPPPATH'\''\] = path_get(context,'\''CPPPATH'\'','\''/usr/include/tirpc'\'')' framework/configure.py
+ ./configure
+ make
+}
+
+package() {
+ export RSFROOT=${pkgdir}/opt/${pkgname}
+ mkdir -p ${RSFROOT}/bin/
+ export PATH=${RSFROOT}/bin:$PATH
+ cd ${srcdir}/${pkgname}
+ make install
+
+ cp -r ${srcdir}/${pkgname} ${pkgdir}/opt/${pkgname}/src
+
+ # add a symlink to rsfcodes in /opt, so that it can be compiled by user
+ ln -s ${srcdir}/${pkgname} ${pkgdir}/opt/${pkgname}/rsfcodes
+ chmod 755 ${pkgdir}/opt/${pkgname}/rsfcodes
+
+ # fix paths in in files
+ arr[0]="/share/madagascar/etc/config.py"
+ arr[1]="/share/madagascar/etc/env.sh"
+ arr[2]="/share/madagascar/etc/env.csh"
+ _python_version=$(ls $RSFROOT/lib | grep python)
+ arr[3]="/lib/${_python_version}/site-packages/rsf/prog.py"
+ arr[4]="/src/config.py"
+ arr[5]="/src/env.sh"
+ arr[6]="/src/env.csh"
+
+ echo ${pkgdir}
+ echo ${srcdir}
+ for f in ${arr[@]} ; do
+ sed -i "s|${pkgdir}||g" "${RSFROOT}/$f"
+ sed -i "s|${srcdir}|/opt/${pkgname}/src|g" "${RSFROOT}/$f"
+ done
+
+ install install -dm755 "$pkgdir/usr/share/licenses/$pkgname"
+ install -m644 COPYING.txt "$pkgdir/usr/share/licenses/$pkgname/COPYING.txt"
+ install -dm755 "$pkgdir/etc/profile.d"
+ cat > "$pkgdir/etc/profile.d/${pkgname}.sh" << EOF
+#!/bin/sh
+source /opt/${pkgname}/src/etc/env.sh
+EOF
+ cat > "$pkgdir/etc/profile.d/${pkgname}.csh" << EOF
+#!/bin/csh
+source /opt/${pkgname}/src/etc/env.csh
+EOF
+ chmod 755 "$pkgdir/etc/profile.d/${pkgname}"{.sh,.csh}
+}