summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrank Fishburn2017-11-25 16:52:52 -0500
committerFrank Fishburn2017-11-25 16:52:52 -0500
commit4e12e1c1ce5fc95d5ec6df44dbedea3ee129870c (patch)
tree598e6fbf36ab7f4c36703e3de4321fcfaea99777
parent505dbbd893e615528a17f8121cf17bf545a48286 (diff)
downloadaur-4e12e1c1ce5fc95d5ec6df44dbedea3ee129870c.tar.gz
Bump version to 7219, use Github releases, improve matlab autodetection, add octave support
-rw-r--r--.SRCINFO6
-rw-r--r--PKGBUILD89
2 files changed, 69 insertions, 26 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 058b4636f20d..70f23687967e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,14 +1,14 @@
pkgbase = spm12
pkgdesc = A MATLAB toolbox for the analysis of brain imaging data sequences
- pkgver = 6906
+ pkgver = 7219
pkgrel = 1
url = http://www.fil.ion.ucl.ac.uk/spm/
arch = i686
arch = x86_64
license = GPL2
makedepends = make
- source = http://www.fil.ion.ucl.ac.uk/spm/download/restricted/eldorado/spm12.zip
- sha1sums = 5f6016292557593378e0d396c401594e242b4307
+ source = spm12-r7219.tar.gz::https://github.com/spm/spm12/archive/spm12-r7219.tar.gz
+ sha256sums = 421e337c8685b0c2cfb43802459c4edd7cc322749ffbccdf68ee2e99b95ef843
pkgname = spm12
diff --git a/PKGBUILD b/PKGBUILD
index ba0455e9bbb5..503bfe4fe44e 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,55 +1,98 @@
# Maintainer: Frank Fishburn <frankthefishburn@gmail.com>
-#_MATLAB_DIR=/opt/matlab/R2016b
+
+## Configuration
+
+## Specify Matlab path (/opt/matlab/R* will be auto-detected and latest one used if there are multiple)
+#_MATLAB_DIR=
+
+## You can override what gets built, otherwise it builds based on whats installed
+#_BUILD_MATLAB=
+#_BUILD_OCTAVE=
pkgname=spm12
-pkgver=6906
+pkgver=7219
pkgrel=1
pkgdesc="A MATLAB toolbox for the analysis of brain imaging data sequences"
arch=('i686' 'x86_64')
url="http://www.fil.ion.ucl.ac.uk/spm/"
license=('GPL2')
makedepends=(make)
-source=("http://www.fil.ion.ucl.ac.uk/spm/download/restricted/eldorado/spm12.zip")
-sha1sums=('5f6016292557593378e0d396c401594e242b4307')
+source=("${pkgname}-r${pkgver}.tar.gz::https://github.com/spm/${pkgname}/archive/${pkgname}-r${pkgver}.tar.gz")
+sha256sums=('421e337c8685b0c2cfb43802459c4edd7cc322749ffbccdf68ee2e99b95ef843')
prepare() {
- cd "${srcdir}/spm12"
+ cd "${srcdir}/${pkgname}-r${pkgver}"
+ # Try to auto-detect the matlab install directory
if [ -z "${_MATLAB_DIR}" ]; then
- _MEX=$(which mex)
- else
- _MEX=${_MATLAB_DIR}/bin/mex
+ if [ -d "/opt/matlab" ]; then
+ _MATLAB_DIR=$(find /opt/matlab/R*/bin -mindepth 1 -maxdepth 1 -name mex | sort | tail -n 1 | xargs dirname | xargs dirname)
+ fi
+ fi
+
+ # Set _BUILD_MATLAB switch if unset
+ if [ -z "${_BUILD_MATLAB}" ]; then
+ if [ -f "${_MATLAB_DIR}/bin/mex" ]; then
+ _BUILD_MATLAB=true
+ else
+ _BUILD_MATLAB=false
+ fi
fi
- if [ -f "${_MEX}" ]; then
- sed -i "/MEXBIN = mex/c MEXBIN = ${_MEX}" src/Makefile.var
- sed -i "s^largeArrayDims$^& CFLAGS=\"${CFLAGS} -fPIC\" CXXFLAGS=\"${CXXFLAGS} -fPIC\" LDFLAGS=\"${LDFLAGS}\"^g" src/Makefile.var
- find . -type f -name \*.mex\* -delete
+ # Set _BUILD_OCTAVE switch if unset
+ if [ -z "${_BUILD_OCTAVE}" ]; then
+ if [ -f "/usr/bin/octave" ]; then
+ _BUILD_OCTAVE=true
+ else
+ _BUILD_OCTAVE=false
+ fi
fi
+
+ echo "Using Matlab directory: ${_MATLAB_DIR}"
+
+ sed -i "/^MEXBIN/c MEXBIN = ${_MATLAB_DIR}/bin/mex" src/Makefile.var
+ sed -i "s^largeArrayDims$^& CFLAGS=\"${CFLAGS} -fPIC\" CXXFLAGS=\"${CXXFLAGS} -fPIC\" LDFLAGS=\"${LDFLAGS}\"^g" src/Makefile.var
+ find . -type f -name \*.mex\* -delete
}
build() {
+
+ # Build Matlab
+ if [ "${_BUILD_MATLAB}" = true ]; then
+ cd "${srcdir}/${pkgname}-r${pkgver}/src"
+ make clean
+ make all
+ make install
+
+ cd "${srcdir}/${pkgname}-r${pkgver}/external"
+ make clean
+ make all
+ make install
+ fi
- cd "${srcdir}/spm12/src"
- make clean
- make all
- make install
+ # Build Octave
+ if [ "${_BUILD_MATLAB}" = true ]; then
+ cd "${srcdir}/${pkgname}-r${pkgver}/src"
+ make clean
+ PLATFORM=octave make all
+ PLATFORM=octave make install
- cd "${srcdir}/spm12/external"
- make clean
- make all
- make install
+ cd "${srcdir}/${pkgname}-r${pkgver}/external"
+ make clean
+ PLATFORM=octave make all
+ PLATFORM=octave make install
+ fi
}
package() {
- find "${srcdir}/spm12" -type d -name src -prune -exec rm -rv "{}" \;
- find "${srcdir}/spm12" -type f -name Makefile\* -delete
+ find "${srcdir}/${pkgname}-r${pkgver}" -type d -name src -prune -exec rm -rv "{}" \;
+ find "${srcdir}/${pkgname}-r${pkgver}" -type f -name Makefile\* -delete
mkdir "${pkgdir}/opt"
- mv "${srcdir}/spm12" "${pkgdir}/opt/"
+ mv "${srcdir}/${pkgname}-r${pkgver}" "${pkgdir}/opt/${pkgname}"
}