diff options
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | .gitignore | 3 | ||||
-rwxr-xr-x | PKGBUILD | 30 | ||||
-rwxr-xr-x | imcp | 118 | ||||
-rwxr-xr-x | imglob | 120 | ||||
-rwxr-xr-x | immv | 117 |
6 files changed, 393 insertions, 13 deletions
@@ -1,7 +1,7 @@ pkgbase = fsl pkgdesc = A comprehensive library of analysis tools for FMRI, MRI and DTI brain imaging data - pkgver = 5.0.10 - pkgrel = 3 + pkgver = 5.0.11 + pkgrel = 1 url = http://www.fmrib.ox.ac.uk/fsl/ arch = i686 arch = x86_64 @@ -24,16 +24,22 @@ pkgbase = fsl depends = vtk6 depends = sqlite optdepends = cuda - source = http://www.fmrib.ox.ac.uk/fsldownloads/fsl-5.0.10-sources.tar.gz - source = http://www.fmrib.ox.ac.uk/fsldownloads/fsl-5.0.10-feeds.tar.gz + source = http://www.fmrib.ox.ac.uk/fsldownloads/fsl-5.0.11-sources.tar.gz + source = http://www.fmrib.ox.ac.uk/fsldownloads/fsl-5.0.11-feeds.tar.gz source = systemvars.mk source = externallibs.mk source = fsl_exec.patch - sha1sums = 1b68ab3e1bc10755de1aa249e829e5fc4937c6b3 - sha1sums = eaea714f2430f85226a5c938ba19dcadb7adb5bf + source = imcp + source = imglob + source = immv + sha1sums = 4e80fce7b9626c351766966ba3be5d428e1c27cc + sha1sums = 7f9d1289887f6ff684599ce3d7a260f3d81011f2 sha1sums = 679c65c90e79b7f748ad1c2d4b5abeebebf05dfd sha1sums = db514c2eaa48ae924cb1c26d8b0b25d47a812876 sha1sums = 2df550b126a6ec6022a164a18dddffe4e59962f9 + sha1sums = e2d4cc873a23eedcea093715b49ace41fc6f6e1c + sha1sums = f6d6d0177561b0f036a7e1fae4443332becd134b + sha1sums = efb997fbaaffb5129eca2ea9388b45421e6e6de4 pkgname = fsl diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..87df2afd25e2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +src +pkg +*.pkg.* @@ -1,8 +1,13 @@ -# Contributor: cornholio <vigo.the.unholy.carpathian@gmail.com> +# Contributor: fishburn <frankthefishburn@gmail.com> + +# Note: As of 5.0.11 certain key scripts (imcp, imglob, immv) are no longer shipped by upstream +# Their recommendation is to install fslpython, but this requires running an opaque installer and +# doubles the package size with no additional obvious benefit than these 3 tiny scripts. So I +# have decided to just bundle the scripts from 5.0.10 with the package from now on. pkgname=fsl -pkgver=5.0.10 -pkgrel=3 +pkgver=5.0.11 +pkgrel=1 pkgdesc="A comprehensive library of analysis tools for FMRI, MRI and DTI brain imaging data" arch=("i686" "x86_64") url="http://www.fmrib.ox.ac.uk/fsl/" @@ -10,17 +15,23 @@ license=(custom) depends=(gd libxml2 libxml++2.6 gsl libpng nlopt newmat tcl tk zlib python glu boost-libs vtk6 sqlite) makedepends=(boost fftw) optdepends=(cuda) -sha1sums=('1b68ab3e1bc10755de1aa249e829e5fc4937c6b3' - 'eaea714f2430f85226a5c938ba19dcadb7adb5bf' +sha1sums=('4e80fce7b9626c351766966ba3be5d428e1c27cc' + '7f9d1289887f6ff684599ce3d7a260f3d81011f2' '679c65c90e79b7f748ad1c2d4b5abeebebf05dfd' 'db514c2eaa48ae924cb1c26d8b0b25d47a812876' - '2df550b126a6ec6022a164a18dddffe4e59962f9') + '2df550b126a6ec6022a164a18dddffe4e59962f9' + 'e2d4cc873a23eedcea093715b49ace41fc6f6e1c' + 'f6d6d0177561b0f036a7e1fae4443332becd134b' + 'efb997fbaaffb5129eca2ea9388b45421e6e6de4') source=("http://www.fmrib.ox.ac.uk/fsldownloads/fsl-${pkgver}-sources.tar.gz" "http://www.fmrib.ox.ac.uk/fsldownloads/fsl-${pkgver}-feeds.tar.gz" "systemvars.mk" "externallibs.mk" - "fsl_exec.patch") + "fsl_exec.patch" + "imcp" + "imglob" + "immv") prepare() { @@ -84,6 +95,9 @@ prepare() { # Fix fsl_exec.tcl session issue (https://www.jiscmail.ac.uk/cgi-bin/webadmin?A2=fsl;e8fa48c1.1501) patch -p0 < fsl_exec.patch + + # Fix missing library path in Eddy makefile + sed -i 's^USRLDFLAGS=-L${LIB_NEWMAT}^USRLDFLAGS=-L${LIB_PROB} -L${LIB_NEWMAT}^g' "${FSLDIR}/src/eddy/Makefile" } @@ -92,6 +106,8 @@ build() { export FSLDIR="${srcdir}/fsl" cd "${FSLDIR}" ./build + + cp -v "${srcdir}"/{imcp,imglob,immv} "${srcdir}/fsl/bin" } check() { @@ -0,0 +1,118 @@ +#!/bin/sh + +# imcp - copy image files +# +# Stephen Smith and Mark Jenkinson, FMRIB Image Analysis Group +# +# Copyright (C) 1999-2004 University of Oxford +# +# Part of FSL - FMRIB's Software Library +# http://www.fmrib.ox.ac.uk/fsl +# fsl@fmrib.ox.ac.uk +# +# Developed at FMRIB (Oxford Centre for Functional Magnetic Resonance +# Imaging of the Brain), Department of Clinical Neurology, Oxford +# University, Oxford, UK +# +# +# LICENCE +# +# FMRIB Software Library, Release 5.0 (c) 2012, The University of +# Oxford (the "Software") +# +# The Software remains the property of the University of Oxford ("the +# University"). +# +# The Software is distributed "AS IS" under this Licence solely for +# non-commercial use in the hope that it will be useful, but in order +# that the University as a charitable foundation protects its assets for +# the benefit of its educational and research purposes, the University +# makes clear that no condition is made or to be implied, nor is any +# warranty given or to be implied, as to the accuracy of the Software, +# or that it will be suitable for any particular purpose or for use +# under any specific conditions. Furthermore, the University disclaims +# all responsibility for the use which is made of the Software. It +# further disclaims any liability for the outcomes arising from using +# the Software. +# +# The Licensee agrees to indemnify the University and hold the +# University harmless from and against any and all claims, damages and +# liabilities asserted by third parties (including claims for +# negligence) which arise directly or indirectly from the use of the +# Software or the sale of any products based on the Software. +# +# No part of the Software may be reproduced, modified, transmitted or +# transferred in any form or by any means, electronic or mechanical, +# without the express permission of the University. The permission of +# the University is not required if the said reproduction, modification, +# transmission or transference is done without financial return, the +# conditions of this Licence are imposed upon the receiver of the +# product, and all original and amended source code is included in any +# transmitted product. You may be held legally responsible for any +# copyright infringement that is caused or encouraged by your failure to +# abide by these terms and conditions. +# +# You are not permitted under this Licence to use this Software +# commercially. Use for which any financial return is received shall be +# defined as commercial use, and includes (1) integration of all or part +# of the source code or the Software into a product for sale or license +# by or on behalf of Licensee to third parties or (2) use of the +# Software or any derivative of it for research with the final aim of +# developing software products for sale or license to a third party or +# (3) use of the Software or any derivative of it for research with the +# final aim of developing non-software products for sale or license to a +# third party, or (4) use of the Software to provide any service to an +# external organisation for which payment is received. If you are +# interested in using the Software commercially, please contact Oxford +# University Innovation ("OUI"), the technology transfer company of the +# University, to negotiate a licence. Contact details are: +# Innovation@innovation.ox.ac.uk quoting reference DE/9564. +export LC_ALL=C + +if [ $# -lt 2 ] ; then + echo "Usage: $0 <file1> <file2>" + echo "Usage: $0 <file1> <file2> ... <fileN> <directory>" + echo " Copies images from file1 to file2 (including all extensions)" + echo " NB: filenames can be basenames or include an extension" + exit 1; +fi + +if [ $# -eq 2 -a ! -d $2 ] ; then + f1=`${FSLDIR}/bin/remove_ext $1`; + f2=`${FSLDIR}/bin/remove_ext $2`; + # do the copies + if [ -f ${f1}.hdr ] ; then /bin/cp ${f1}.hdr ${f2}.hdr ; fi + if [ -f ${f1}.hdr.gz ] ; then /bin/cp ${f1}.hdr.gz ${f2}.hdr.gz ; fi + if [ -f ${f1}.img ] ; then /bin/cp ${f1}.img ${f2}.img ; fi + if [ -f ${f1}.img.gz ] ; then /bin/cp ${f1}.img.gz ${f2}.img.gz ; fi + if [ -f ${f1}.nii ] ; then /bin/cp ${f1}.nii ${f2}.nii ; fi + if [ -f ${f1}.nii.gz ] ; then /bin/cp ${f1}.nii.gz ${f2}.nii.gz ; fi + if [ -f ${f1}.mnc ] ; then /bin/cp ${f1}.mnc ${f2}.mnc ; fi + if [ -f ${f1}.mnc.gz ] ; then /bin/cp ${f1}.mnc.gz ${f2}.mnc.gz ; fi +fi + +if [ $# -gt 2 -o -d $2 ] ; then + for nm in $@ ; do + dir=$nm; + done + if [ ! -d $dir ] ; then + echo "When using multiple arguments, last name must be a directory" + exit 1; + fi + # remove directory from list of files + flist="echo $@ | sed s/$dir \*\$//"; + for fn in $flist ; do + f1=`${FSLDIR}/bin/remove_ext $fn`; + # do the copies + if [ -f ${f1}.hdr ] ; then /bin/cp ${f1}.hdr ${dir} ; fi + if [ -f ${f1}.hdr.gz ] ; then /bin/cp ${f1}.hdr.gz ${dir} ; fi + if [ -f ${f1}.img ] ; then /bin/cp ${f1}.img ${dir} ; fi + if [ -f ${f1}.img.gz ] ; then /bin/cp ${f1}.img.gz ${dir} ; fi + if [ -f ${f1}.nii ] ; then /bin/cp ${f1}.nii ${dir} ; fi + if [ -f ${f1}.nii.gz ] ; then /bin/cp ${f1}.nii.gz ${dir} ; fi + if [ -f ${f1}.mnc ] ; then /bin/cp ${f1}.mnc ${dir} ; fi + if [ -f ${f1}.mnc.gz ] ; then /bin/cp ${f1}.mnc.gz ${dir} ; fi + done +fi + + diff --git a/imglob b/imglob new file mode 100755 index 000000000000..8f7a06127c4c --- /dev/null +++ b/imglob @@ -0,0 +1,120 @@ +#!/usr/bin/env python +# imglob - expand list of image filenames +# Stephen Smith, Mark Jenkinson and Matthew Webster FMRIB Image Analysis Group +# Copyright (C) 2009 University of Oxford +# Part of FSL - FMRIB's Software Library +# http://www.fmrib.ox.ac.uk/fsl +# fsl@fmrib.ox.ac.uk +# +# Developed at FMRIB (Oxford Centre for Functional Magnetic Resonance +# Imaging of the Brain), Department of Clinical Neurology, Oxford +# University, Oxford, UK +# +# +# LICENCE +# +# FMRIB Software Library, Release 5.0 (c) 2012, The University of +# Oxford (the "Software") +# +# The Software remains the property of the University of Oxford ("the +# University"). +# +# The Software is distributed "AS IS" under this Licence solely for +# non-commercial use in the hope that it will be useful, but in order +# that the University as a charitable foundation protects its assets for +# the benefit of its educational and research purposes, the University +# makes clear that no condition is made or to be implied, nor is any +# warranty given or to be implied, as to the accuracy of the Software, +# or that it will be suitable for any particular purpose or for use +# under any specific conditions. Furthermore, the University disclaims +# all responsibility for the use which is made of the Software. It +# further disclaims any liability for the outcomes arising from using +# the Software. +# +# The Licensee agrees to indemnify the University and hold the +# University harmless from and against any and all claims, damages and +# liabilities asserted by third parties (including claims for +# negligence) which arise directly or indirectly from the use of the +# Software or the sale of any products based on the Software. +# +# No part of the Software may be reproduced, modified, transmitted or +# transferred in any form or by any means, electronic or mechanical, +# without the express permission of the University. The permission of +# the University is not required if the said reproduction, modification, +# transmission or transference is done without financial return, the +# conditions of this Licence are imposed upon the receiver of the +# product, and all original and amended source code is included in any +# transmitted product. You may be held legally responsible for any +# copyright infringement that is caused or encouraged by your failure to +# abide by these terms and conditions. +# +# You are not permitted under this Licence to use this Software +# commercially. Use for which any financial return is received shall be +# defined as commercial use, and includes (1) integration of all or part +# of the source code or the Software into a product for sale or license +# by or on behalf of Licensee to third parties or (2) use of the +# Software or any derivative of it for research with the final aim of +# developing software products for sale or license to a third party or +# (3) use of the Software or any derivative of it for research with the +# final aim of developing non-software products for sale or license to a +# third party, or (4) use of the Software to provide any service to an +# external organisation for which payment is received. If you are +# interested in using the Software commercially, please contact Oxford +# University Innovation ("OUI"), the technology transfer company of the +# University, to negotiate a licence. Contact details are: +# Innovation@innovation.ox.ac.uk quoting reference DE/9564. + +from __future__ import print_function +import sys +import os +import glob + +def usage(): + print("Usage: $0 [-extension/extensions] <list of names>") + print(" -extension for one image with full extension") + print(" -extensions for image list with full extensions") + sys.exit(1) + +def isImage(input,allExtensions): #Returns whether an input filename has an image extension ( and the basename and extension pair ) + for extension in allExtensions: + if input[-len(extension):] == extension: + return True, input[:-len(extension)], extension + return False, input, '' + +def removeImageExtension(input,allExtensions): + return isImage(input,allExtensions)[1] + +if len(sys.argv) <= 1: + usage() + +deleteExtensions=True +primaryExtensions=['.nii.gz', '.nii', '.hdr.gz', '.hdr'] +secondaryExtensions=['.img.gz', '.img'] +allExtensions=primaryExtensions+secondaryExtensions +validExtensions=primaryExtensions +startingArg=1 + +if sys.argv[1] == "-extensions": + validExtensions=allExtensions + deleteExtensions=False + startingArg=2 +if sys.argv[1] == "-extension": + deleteExtensions=False + startingArg=2 + +filelist=[] +for arg in range(startingArg, len(sys.argv)): +# if isImage(sys.argv[arg],allExtensions)[0]: #These enable a "pedantic" style mode currently not used +# filelist.extend(glob.glob(sys.argv[arg])) +# else: +# for currentExtension in validExtensions: +# filelist.extend(glob.glob(sys.argv[arg]+currentExtension)) + for currentExtension in validExtensions: + filelist.extend(glob.glob(removeImageExtension(sys.argv[arg],allExtensions)+currentExtension)) + +if deleteExtensions: + filelist = [ removeImageExtension(file,allExtensions) for file in filelist ] +filelist=list(set(filelist)) +filelist.sort() +if len(filelist) > 0: + print(' '.join(filelist)) @@ -0,0 +1,117 @@ +#!/bin/sh + +# immv - rename/move image files +# +# Stephen Smith and Mark Jenkinson, FMRIB Image Analysis Group +# +# Copyright (C) 1999-2004 University of Oxford +# +# Part of FSL - FMRIB's Software Library +# http://www.fmrib.ox.ac.uk/fsl +# fsl@fmrib.ox.ac.uk +# +# Developed at FMRIB (Oxford Centre for Functional Magnetic Resonance +# Imaging of the Brain), Department of Clinical Neurology, Oxford +# University, Oxford, UK +# +# +# LICENCE +# +# FMRIB Software Library, Release 5.0 (c) 2012, The University of +# Oxford (the "Software") +# +# The Software remains the property of the University of Oxford ("the +# University"). +# +# The Software is distributed "AS IS" under this Licence solely for +# non-commercial use in the hope that it will be useful, but in order +# that the University as a charitable foundation protects its assets for +# the benefit of its educational and research purposes, the University +# makes clear that no condition is made or to be implied, nor is any +# warranty given or to be implied, as to the accuracy of the Software, +# or that it will be suitable for any particular purpose or for use +# under any specific conditions. Furthermore, the University disclaims +# all responsibility for the use which is made of the Software. It +# further disclaims any liability for the outcomes arising from using +# the Software. +# +# The Licensee agrees to indemnify the University and hold the +# University harmless from and against any and all claims, damages and +# liabilities asserted by third parties (including claims for +# negligence) which arise directly or indirectly from the use of the +# Software or the sale of any products based on the Software. +# +# No part of the Software may be reproduced, modified, transmitted or +# transferred in any form or by any means, electronic or mechanical, +# without the express permission of the University. The permission of +# the University is not required if the said reproduction, modification, +# transmission or transference is done without financial return, the +# conditions of this Licence are imposed upon the receiver of the +# product, and all original and amended source code is included in any +# transmitted product. You may be held legally responsible for any +# copyright infringement that is caused or encouraged by your failure to +# abide by these terms and conditions. +# +# You are not permitted under this Licence to use this Software +# commercially. Use for which any financial return is received shall be +# defined as commercial use, and includes (1) integration of all or part +# of the source code or the Software into a product for sale or license +# by or on behalf of Licensee to third parties or (2) use of the +# Software or any derivative of it for research with the final aim of +# developing software products for sale or license to a third party or +# (3) use of the Software or any derivative of it for research with the +# final aim of developing non-software products for sale or license to a +# third party, or (4) use of the Software to provide any service to an +# external organisation for which payment is received. If you are +# interested in using the Software commercially, please contact Oxford +# University Innovation ("OUI"), the technology transfer company of the +# University, to negotiate a licence. Contact details are: +# Innovation@innovation.ox.ac.uk quoting reference DE/9564. +export LC_ALL=C + +if [ $# -lt 1 ] ; then + echo "Usage: $0 <file1> <file2>" + echo " Moves images from file1 to file2 (including all extensions)" + echo " NB: filenames can be basenames or include an extension" + exit 1; +fi + +if [ $# -eq 2 -a ! -d $2 ] ; then + f1=`${FSLDIR}/bin/remove_ext $1`; + f2=`${FSLDIR}/bin/remove_ext $2`; + # do the moves + if [ -f ${f1}.hdr ] ; then /bin/mv ${f1}.hdr ${f2}.hdr ; fi + if [ -f ${f1}.hdr.gz ] ; then /bin/mv ${f1}.hdr.gz ${f2}.hdr.gz ; fi + if [ -f ${f1}.img ] ; then /bin/mv ${f1}.img ${f2}.img ; fi + if [ -f ${f1}.img.gz ] ; then /bin/mv ${f1}.img.gz ${f2}.img.gz ; fi + if [ -f ${f1}.nii ] ; then /bin/mv ${f1}.nii ${f2}.nii ; fi + if [ -f ${f1}.nii.gz ] ; then /bin/mv ${f1}.nii.gz ${f2}.nii.gz ; fi + if [ -f ${f1}.mnc ] ; then /bin/mv ${f1}.mnc ${f2}.mnc ; fi + if [ -f ${f1}.mnc.gz ] ; then /bin/mv ${f1}.mnc.gz ${f2}.mnc.gz ; fi +fi + +if [ $# -gt 2 -o -d $2 ] ; then + for nm in $@ ; do + dir=$nm; + done + if [ ! -d $dir ] ; then + echo "When using multiple arguments, last name must be a directory" + exit 1; + fi + # remove directory from list of files + flist="echo $@ | sed s/$dir \*\$//"; + for fn in $flist ; do + f1=`${FSLDIR}/bin/remove_ext $fn`; + # do the copies + if [ -f ${f1}.hdr ] ; then /bin/mv ${f1}.hdr ${dir} ; fi + if [ -f ${f1}.hdr.gz ] ; then /bin/mv ${f1}.hdr.gz ${dir} ; fi + if [ -f ${f1}.img ] ; then /bin/mv ${f1}.img ${dir} ; fi + if [ -f ${f1}.img.gz ] ; then /bin/mv ${f1}.img.gz ${dir} ; fi + if [ -f ${f1}.nii ] ; then /bin/mv ${f1}.nii ${dir} ; fi + if [ -f ${f1}.nii.gz ] ; then /bin/mv ${f1}.nii.gz ${dir} ; fi + if [ -f ${f1}.mnc ] ; then /bin/mv ${f1}.mnc ${dir} ; fi + if [ -f ${f1}.mnc.gz ] ; then /bin/mv ${f1}.mnc.gz ${dir} ; fi + done +fi + + |