diff options
Diffstat (limited to 'sci-biology/fsl/files')
24 files changed, 1488 insertions, 1933 deletions
diff --git a/sci-biology/fsl/files/fsl-5.0.11-setup.patch b/sci-biology/fsl/files/fsl-5.0.11-setup.patch deleted file mode 100644 index cf9cb785d..000000000 --- a/sci-biology/fsl/files/fsl-5.0.11-setup.patch +++ /dev/null @@ -1,158 +0,0 @@ -diff --git a/build b/build -index 6827443..19b2002 100755 ---- a/build -+++ b/build -@@ -3,7 +3,7 @@ - if [ $# -ge 1 ] ; then - PROJECTS="$@"; - else -- MASTERPROJECTS="CiftiLib-master utils znzlib NewNifti niftiio fslio giftiio miscmaths newimage libhfunc libvis first_lib \ -+ MASTERPROJECTS="utils znzlib NewNifti niftiio fslio giftiio miscmaths newimage libhfunc libvis first_lib \ - meshclass fslvtkio misc_tcl basisfield warpfns bint shapeModel MVdisc fslvtkconv fslsurface libmeshutils newmesh \ - DiscreteOpt FastPDlib MSMRegLib \ - misc_c avwutils basil bet2 cluster dpm copain tissue fast4 feat5 film filmbabe flirt fabber baycest \ -@@ -25,8 +25,8 @@ flameo oxford_asl relax qboot topup ptx2 lesions eddy dwssfp verbena MSM bianca - done - fi - --echo "Building projects - see build.log file for progress..." --./config/common/buildproj $PROJECTS > ./build.log 2>&1 -+echo "Building projects" -+./config/common/buildproj $PROJECTS - finalStatus=$? - if [ $finalStatus -eq 0 ]; then - echo "Build completed successfully."; -diff --git a/config/common/buildproj b/config/common/buildproj -index 3450bda..ec3edc1 100755 ---- a/config/common/buildproj -+++ b/config/common/buildproj -@@ -11,10 +11,10 @@ if [ X$1 = X-strict ] ; then - fi - PROJECTS="$@" ; export PROJECTS ; - --FSLDIR=`pwd` -+#FSLDIR=`pwd` - FSLDEVDIR=${FSLDIR} - FSLCONFDIR=${FSLDIR}/config --FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` -+#FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` - export FSLDIR FSLDEVDIR FSLCONFDIR FSLMACHTYPE - - buildmessages="" ; export buildmessages ; -@@ -66,7 +66,7 @@ for projname in $PROJECTS; do - if [ -x ./fslconfig ] ; then - . ./fslconfig ; - fi -- if ${MAKE} -k ${MAKEOPTIONS} ; then -+ if ${MAKE} ${MAKEOPTIONS} ${MAKEOPTS} ; then - if ${MAKE} ${MAKEOPTIONS} install ; then - installok=true; - # Clean up after ourselves -@@ -81,6 +81,7 @@ for projname in $PROJECTS; do - if [ $installok = false ] ; then - echo " " - echo "ERROR::Could not install $projname successfully" ; -+ exit 1 - fi - else - echo " " -@@ -89,6 +90,7 @@ for projname in $PROJECTS; do - echo " " - echo " " - errorprojs="$errorprojs $projname" ; export errorprojs ; -+ exit 1 - fi - fi - done -diff --git a/config/common/vars.mk b/config/common/vars.mk -index 53754be..ff7a117 100755 ---- a/config/common/vars.mk -+++ b/config/common/vars.mk -@@ -24,15 +24,15 @@ USRINCFLAGS = - USRCFLAGS = - USRCXXFLAGS = - --LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} -+LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} ${USERLDFLAGS} - --AccumulatedIncFlags = -I${INC_BOOST} ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} -+AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} ${CPPFLAGS} - - CFLAGS = ${ANSI_FLAGS} ${ANSI_CFLAGS} ${DBGFLAGS} ${USEDCSTATICFLAGS} ${USRCFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+ ${AccumulatedIncFlags} ${USERCFLAGS} - --CXXFLAGS = ${ANSI_FLAGS} ${ANSI_CXXFLAGS} ${DBGFLAGS} ${USEDCXXSTATICFLAGS} ${USRCXXFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+CXXFLAGS = ${ANSI_CXXFLAGS} ${DBGFLAGS} ${USEDCXXSTATICFLAGS} ${USRCXXFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -+ ${AccumulatedIncFlags} ${USERCXXFLAGS} - - HFILES = *.h - AFILES = *.a -diff --git a/config/generic/systemvars.mk b/config/generic/systemvars.mk -index e40e3d6..ddb5bfe 100755 ---- a/config/generic/systemvars.mk -+++ b/config/generic/systemvars.mk -@@ -4,20 +4,20 @@ SHELL = /bin/sh - - # System dependent commands (NB: the first two are the most platform dependent) - --INSTALL = ginstall -p --RANLIB = ranlib -+INSTALL = install -p -+RANLIB = @@GENTOO_RANLIB@@ - - RM = /bin/rm - CP = /bin/cp - MV = /bin/mv - CHMOD = /bin/chmod - MKDIR = /bin/mkdir --TCLSH = ${FSLDIR}/bin/fsltclsh -+TCLSH = tclsh - - # Compiler dependent variables - --CC = gcc --CXX = c++ -+CC = @@GENTOO_CC@@ -+CXX = @@GENTOO_CXX@@ - CSTATICFLAGS = -static - CXXSTATICFLAGS = -static - -@@ -25,7 +25,7 @@ ARCHFLAGS = - - DEPENDFLAGS = -MM - --OPTFLAGS = -O3 -fexpensive-optimizations ${ARCHFLAGS} -+OPTFLAGS = - MACHDBGFLAGS = - GNU_ANSI_FLAGS = -Wall -ansi -pedantic - SGI_ANSI_FLAGS = -ansi -fullwarn -diff --git a/extras/build b/extras/build -index 6133a1b..caeae2d 100755 ---- a/extras/build -+++ b/extras/build -@@ -104,8 +104,8 @@ PROJECTS="${PROJECTS} libpng" - if [ ${BUILDICONV} -eq 1 ]; then - PROJECTS="${PROJECTS} libiconv" - fi --PROJECTS="${PROJECTS} libgd libgdc libprob libcprob newmat cprob newran fftw" --PROJECTS="${PROJECTS} boost libxml2-2.9.2 libxml++-2.34.0 libsqlite libnlopt ../include/armawrap/dummy_newmat" -+PROJECTS="libgdc libprob libcprob newmat cprob newran" -+PROJECTS="${PROJECTS} ../include/armawrap/dummy_newmat" - for projname in $PROJECTS; do - if [ -d $FSLESRCDIR/$projname ] ; then - buildIt $FSLESRCDIR $projname 1 -diff --git a/src/mist-clean/Makefile b/src/mist-clean/Makefile -index b3a32fc..e949ba1 100755 ---- a/src/mist-clean/Makefile -+++ b/src/mist-clean/Makefile -@@ -52,7 +52,7 @@ installpython: - cp -r python/* ${DESTDIR}/python/mist - - clean: -- rm ${OBJS} mist/mist.o mist/mist -+ rm -f ${OBJS} mist/mist.o mist/mist || echo "CLEAN could not locate some files scheduled for deletion." - - .PHONY: all clean installdata - diff --git a/sci-biology/fsl/files/fsl-5.0.4-headers.patch b/sci-biology/fsl/files/fsl-5.0.4-headers.patch deleted file mode 100644 index 803151bb7..000000000 --- a/sci-biology/fsl/files/fsl-5.0.4-headers.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- src/avwutils/fslmaths.cc.orig 2013-10-19 00:17:44.765129309 +1300 -+++ src/avwutils/fslmaths.cc 2013-10-19 00:18:02.975157728 +1300 -@@ -71,7 +71,7 @@ - #include "newimage/newimageall.h" - #include "miscmaths/miscmaths.h" - #include "utils/fsl_isfinite.h" --#include "libprob/libprob.h" -+#include "libprob.h" - - using namespace MISCMATHS; - using namespace NEWIMAGE; ---- src/miscvis/writepng.c.orig 2013-10-19 00:18:32.415203592 +1300 -+++ src/miscvis/writepng.c 2013-10-19 00:19:05.414255132 +1300 -@@ -32,6 +32,7 @@ - - #include <stdlib.h> /* for exit() prototype */ - -+#include "zlib.h" - #include "png.h" /* libpng header; includes zlib.h and setjmp.h */ - #include "writepng.h" /* typedefs, common macros, public prototypes */ - ---- src/ptx2/surfmaths.cc.orig 2013-10-19 00:19:51.595327317 +1300 -+++ src/ptx2/surfmaths.cc 2013-10-19 00:20:09.284354805 +1300 -@@ -72,7 +72,7 @@ - #include "csv_mesh.h" - #include "miscmaths/miscmaths.h" - #include "utils/fsl_isfinite.h" --#include "libprob/libprob.h" -+#include "libprob.h" - - using namespace MISCMATHS; - diff --git a/sci-biology/fsl/files/fsl-5.0.4-setup.patch b/sci-biology/fsl/files/fsl-5.0.4-setup.patch deleted file mode 100644 index 0b961492a..000000000 --- a/sci-biology/fsl/files/fsl-5.0.4-setup.patch +++ /dev/null @@ -1,110 +0,0 @@ ---- extras/build.orig 2013-10-18 21:37:53.533939550 +1300 -+++ extras/build 2013-10-18 21:40:42.283158471 +1300 -@@ -41,7 +41,7 @@ - - errorprojs="" ; export errorprojs ; - --PROJECTS="tcl tk zlib libpng libiconv libgd libgdc libprob libcprob newmat cprob newran cephes fftw" -+PROJECTS="libgdc libprob libcprob newmat cprob newran cephes" - - for projname in $PROJECTS; do - ---- build.orig 2013-10-18 22:24:22.312777248 +1300 -+++ build 2013-10-18 22:24:59.161835107 +1300 -@@ -11,8 +11,7 @@ - ifit load_varian load_dicom misc_scripts fdt first possum sgeutils flameo oxford_asl relax qboot topup ptx2 lesions eddy dwssfp"; - fi - --echo "Building projects - see build.log file for progress..." --./config/common/buildproj $PROJECTS > ./build.log 2>&1 --echo "Finished build : end of log file shows ..." --tail -10 build.log -+echo "Building projects" -+./config/common/buildproj $PROJECTS -+echo "Finished build" - ---- config/common/buildproj.orig 2013-10-18 22:28:40.683182435 +1300 -+++ config/common/buildproj 2013-10-18 22:29:09.612227825 +1300 -@@ -11,10 +11,10 @@ - fi - PROJECTS="$@" ; export PROJECTS ; - --FSLDIR=`pwd` -+#FSLDIR=`pwd` - FSLDEVDIR=${FSLDIR} - FSLCONFDIR=${FSLDIR}/config --FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` -+#FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` - export FSLDIR FSLDEVDIR FSLCONFDIR FSLMACHTYPE - - buildmessages="" ; export buildmessages ; ---- config/generic/systemvars.mk.orig 2007-07-13 23:00:20.000000000 +1200 -+++ config/generic/systemvars.mk 2013-10-18 23:13:06.472693414 +1300 -@@ -4,20 +4,20 @@ - - # System dependent commands (NB: the first two are the most platform dependent) - --INSTALL = ginstall -p --RANLIB = ranlib -+INSTALL = install -p -+RANLIB = @@GENTOO_RANLIB@@ - - RM = /bin/rm - CP = /bin/cp - MV = /bin/mv - CHMOD = /bin/chmod - MKDIR = /bin/mkdir --TCLSH = ${FSLDIR}/bin/fsltclsh -+TCLSH = tclsh - - # Compiler dependent variables - --CC = gcc --CXX = c++ -+CC = @@GENTOO_CC@@ -+CXX = @@GENTOO_CXX@@ - CSTATICFLAGS = -static - CXXSTATICFLAGS = -static - -@@ -25,7 +25,7 @@ - - DEPENDFLAGS = -MM - --OPTFLAGS = -O3 -fexpensive-optimizations ${ARCHFLAGS} -+OPTFLAGS = - MACHDBGFLAGS = - GNU_ANSI_FLAGS = -Wall -ansi -pedantic - SGI_ANSI_FLAGS = -ansi -fullwarn ---- config/common/vars.mk.orig 2013-10-18 23:39:26.384029157 +1300 -+++ config/common/vars.mk 2013-10-18 23:40:49.489145387 +1300 -@@ -24,15 +24,15 @@ - USRCFLAGS = - USRCXXFLAGS = - --LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} -+LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} ${USERLDFLAGS} - --AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} -+AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} ${CPPFLAGS} - - CFLAGS = ${ANSI_FLAGS} ${DBGFLAGS} ${USEDCSTATICFLAGS} ${USRCFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+ ${AccumulatedIncFlags} ${USERCFLAGS} - - CXXFLAGS = ${ANSI_FLAGS} ${DBGFLAGS} ${USEDCXXSTATICFLAGS} ${USRCXXFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+ ${AccumulatedIncFlags} ${USERCXXFLAGS} - - HFILES = *.h - AFILES = *.a ---- config/common/buildproj.orig 2013-10-19 23:27:10.477238469 +1300 -+++ config/common/buildproj 2013-10-19 23:28:32.207370622 +1300 -@@ -66,7 +66,7 @@ - if [ -x fslconfig ] ; then - ./fslconfig ; - fi -- if ${MAKE} -k ${MAKEOPTIONS} ; then -+ if ${MAKE} ${MAKEOPTIONS} ${MAKEOPTS} ; then - if ${MAKE} install ; then - installok=true; - # Clean up after ourselves diff --git a/sci-biology/fsl/files/fsl-5.0.6-fsldir_redux.patch b/sci-biology/fsl/files/fsl-5.0.6-fsldir_redux.patch deleted file mode 100644 index a4fff260f..000000000 --- a/sci-biology/fsl/files/fsl-5.0.6-fsldir_redux.patch +++ /dev/null @@ -1,456 +0,0 @@ ---- src/fast4/fast_two.cc.orig 2013-10-19 23:45:02.636971888 +1300 -+++ src/fast4/fast_two.cc 2013-10-19 23:46:45.436138299 +1300 -@@ -166,7 +166,7 @@ - string csfPriorName, grayPriorName, whitePriorName; - if(alternatePriors.unset()) - { -- string priorRootName=string(getenv("FSLDIR")) + "/data/standard/tissuepriors/avg152T1_"; -+ string priorRootName="@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/tissuepriors/avg152T1_"; - csfPriorName = priorRootName+"csf"; - grayPriorName = priorRootName+"gray"; - whitePriorName = priorRootName+"white"; -@@ -215,15 +215,15 @@ - if(bapused>0) - { - char reg[1024]; -- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str()); -+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str()); - if(verbose.value()) - cout<<reg<<endl; - system(reg); -- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str()); -+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str()); - if(verbose.value()) - cout<<reg<<endl; - system(reg); -- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str()); -+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str()); - if(verbose.value()) - cout << reg << endl; - system(reg); ---- src/feat5/tsplot.cc.orig 2013-10-19 23:48:08.997273362 +1300 -+++ src/feat5/tsplot.cc 2013-10-19 23:50:59.376548902 +1300 -@@ -293,7 +293,7 @@ - ofstream outputFile; - int numEVs, npts, numContrasts=1, nftests=0, GRPHSIZE(600), PSSIZE(600); - vector<double> normalisedContrasts, model, triggers; -- string fmriFileName, fslPath, featdir, vType, indexText; -+ string fmriFileName, featdir, vType, indexText; - ColumnVector NewimageVoxCoord(4),NiftiVoxCoord(4); - bool outputText(true), useCoordinate(false), prewhiten(false), useTriggers(false), customMask(false), modelFree(false), isHigherLevel(false), outputDataOnly(false); - bool zWeightClusters(true); -@@ -307,7 +307,6 @@ - if (argc<2) usage(""); - featdir=string(argv[1]); - fmriFileName=featdir+"/filtered_func_data"; -- fslPath=string(getenv("FSLDIR")); - - string outputName(featdir); - -@@ -725,7 +724,7 @@ - cerr << "Can't open output report file " << outputName << endl; - exit(1); - } -- outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< fslPath <<"/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText; -+ outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText; - if (useTriggers) outputFile << "\n<hr><b>Peristimulus plots</b><p>\n"<< peristimulusText <<"\n<HR></BODY></HTML>\n\n"; - else outputFile << "\n</BODY></HTML>\n\n"; - outputFile.close(); -@@ -740,7 +739,7 @@ - cerr << "Can't open output report file " << outputName << endl; - exit(1); - } -- outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << fslPath << "/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl; -+ outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl; - outputFile.close(); - - /* now output same thing without start and end, for inclusion in feat report */ ---- src/feat5/feat_model.cc.orig 2013-10-19 23:52:13.456668655 +1300 -+++ src/feat5/feat_model.cc 2013-10-19 23:53:31.655795065 +1300 -@@ -734,7 +734,6 @@ - vector<int> G; - vector<string> titles; - float tr, mult, trmult, nltffwhm=0, maxconvwin=0; -- char fl[10000], *FSLDIR; - string fn, filename; - FONT_DATA *font_data = new FONT_DATA[1]; - -@@ -753,8 +752,6 @@ - if (argc==3) - motionparams=remmean(read_ascii_matrix(argv[2])); - -- FSLDIR=getenv("FSLDIR"); -- - fn = string(argv[1])+".fsf"; - - level = atoi(find_line(fn, "fmri(level)", fl)); -@@ -1479,7 +1476,7 @@ - writeCovarianceImage(string(argv[1])+"_cov.ppm", contrasts, F, nftests, realDesign, level, evs.eigenvals, font_data, contrasts.RE); - writeImagePreview(string(argv[1])+".ppm", contrasts, F, nftests, realDesign, level, evs, font_data, titles, tr, nltffwhm, nTimepoints, G); - -- filename=string(getenv("FSLDIR"))+"/bin/wpng -q -overwrite "+string(argv[1])+".ppm "; -+ filename="wpng -q -overwrite "+string(argv[1])+".ppm "; - system(filename.c_str()); - - return(0); -@@ -2122,6 +2119,6 @@ - - fclose(outputfile); - -- filename=string(getenv("FSLDIR")) + "/bin/wpng -q -overwrite " + filename; -+ filename="wpng -q -overwrite " + filename; - system(filename.c_str()); - } ---- src/first/first_utils.cc.orig 2013-10-19 23:54:30.375890034 +1300 -+++ src/first/first_utils.cc 2013-10-19 23:59:11.706344887 +1300 -@@ -1954,8 +1954,8 @@ - if (!surfaceVAout.value()) { - // do not output on the surface, instead do the new default of outputting a volume with the scalar normal dot product values (for use with randomise) - volume<float> refim; -- if (useReconMNI.value()) { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); } -- else { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); } -+ if (useReconMNI.value()) { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); } -+ else { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); } - volume<float> maskvol(refim); - maskvol=0.0f; - volume4D<float> volnormals; ---- src/fnirt/fnirtfns.cpp.orig 2013-10-20 00:00:18.106452166 +1300 -+++ src/fnirt/fnirtfns.cpp 2013-10-20 00:04:56.005901533 +1300 -@@ -1203,8 +1203,7 @@ - return(string(ref_fname)); - } - else { -- const char *fsldir_ptr = getenv("FSLDIR"); -- string eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname; -+ string eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname; - if (NEWIMAGE::fsl_imageexists(eref_fname)) return(eref_fname); - else return(string("")); - } -@@ -1230,9 +1229,8 @@ - NEWIMAGE::read_volume_hdr_only(vref,ref_fname); // Throws if file dont exist - eref_fname = ref_fname; - } -- catch(...) { // Didn't exist in current directory, try in ${FSLDIR}/data/standard -- const char *fsldir_ptr = getenv("FSLDIR"); -- eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname; -+ catch(...) { // Didn't exist in current directory, try in .../data/standard -+ eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname; - try { - cout << "Could not find " << ref_fname << ", now checking " << eref_fname << endl; - NEWIMAGE::read_volume_hdr_only(vref,eref_fname); // Throws if file dont exist -@@ -1267,8 +1265,7 @@ - if (check_exist(ecfname)) return(ecfname); - } - if (!FNIRT::path(cfname).length()) { // If no path explicitly given -- const char *fsldir_ptr = getenv("FSLDIR"); -- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname; -+ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname; - if (check_exist(ecfname)) return(ecfname); - else if (!FNIRT::extension(ecfname).length()) { // If no path _and_ no extension given - ecfname += string(".cnf"); ---- src/fslsurface/fslsurface_first.cc.orig 2013-10-20 00:05:35.495965454 +1300 -+++ src/fslsurface/fslsurface_first.cc 2013-10-20 00:06:54.346092913 +1300 -@@ -500,8 +500,7 @@ - - volume<float>* immni = new volume<float>(); - -- char* fsldir = getenv("FSLDIR"); -- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm"); -+ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); - - //read_volume_hdr_only(*immni, template_name); - -@@ -699,8 +698,7 @@ - - volume<float>* immni = new volume<float>(); - -- char* fsldir = getenv("FSLDIR"); -- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm"); -+ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); - - //read_volume_hdr_only(*immni, template_name); - ---- src/fslsurface/fslsurfacemaths.cpp.orig 2013-10-20 00:07:39.457165850 +1300 -+++ src/fslsurface/fslsurfacemaths.cpp 2013-10-20 00:09:28.396341998 +1300 -@@ -598,12 +598,6 @@ - - }else if (command == "-reconFromBvars"){ - cout<<"do recon "<<endl; -- char* fsldir = getenv("FSLDIR"); -- if (fsldir == NULL) -- { -- cerr<<"FSLDIR has not been set. "<<endl; -- exit(EXIT_FAILURE); -- } - //file.bvars,mni_template.nii.gz - // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm"; - reconSurface_from_bvars( surf, string(argv[i_arg+1])); -@@ -612,12 +606,6 @@ - - }else if (command == "-reconAllFromBvarsAndSave"){ - cout<<"do recon+save "<<argc<<" "<<i_arg<<endl; -- char* fsldir = getenv("FSLDIR"); -- if (fsldir == NULL) -- { -- cerr<<"FSLDIR has not been set. "<<endl; -- exit(EXIT_FAILURE); -- } - //file.bvars,mni_template.nii.gz - // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm"; - cout<<"recon "<< string(argv[i_arg+1])<<endl; ---- src/libvis/miscpic.h.orig 2013-10-20 00:11:03.706496109 +1300 -+++ src/libvis/miscpic.h 2013-10-20 00:12:24.515626764 +1300 -@@ -89,12 +89,7 @@ - LR_label_flag = true; - trans= -10; - edgethresh = 0.0; -- if(getenv("FSLDIR")!=0){ -- lutbase = string(getenv("FSLDIR")) + "/etc/luts/"; -- } -- else{ -- lutbase = string("/"); -- } -+ lutbase = "@GENTOO_PORTAGE_EPREFIX@/etc/luts/"; - title = string(""); - cbartype = string(""); - cbarptr = NULL; ---- src/melodic/melreport.cc.orig 2013-10-20 00:13:01.475686492 +1300 -+++ src/melodic/melreport.cc 2013-10-20 00:15:02.795882687 +1300 -@@ -85,7 +85,7 @@ - - {//start IC page - IChtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + -- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl -+ "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl - << "<style type=\"text/css\">OBJECT { width: 100% }</style>" - << "<TITLE>FSL</TITLE></HEAD>" << endl - << "<IFRAME height=" << int(melodat.get_numfiles()/30 + 1)*50 -@@ -488,7 +488,7 @@ - {//start IC2 page - IChtml2.setDir(report.getDir(),mmodel.get_prefix()+"_MM.html"); - IChtml2 << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + -- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl -+ "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl - << "<style type=\"text/css\">OBJECT { width: 100% }</style>" - << "<TITLE>FSL</TITLE></HEAD>" << endl - << "<IFRAME height="<< int(melodat.get_numfiles()/30 + 1)*50 -@@ -666,8 +666,8 @@ - IChtml << "<HTML> " << endl - << "<TITLE>MELODIC Component " << num2str(cnum) - << "</TITLE>" << endl -- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR") -- << "/doc/images/fsl-bg.jpg\">" << endl -+ << "<BODY BACKGROUND=\"file:" -+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl - << "<hr><CENTER><H1>MELODIC Component " << num2str(cnum) - << "</H1>"<< endl; - ---- src/melodic/meloptions.cc.orig 2013-10-20 00:15:46.755953769 +1300 -+++ src/melodic/meloptions.cc 2013-10-20 00:18:26.176211442 +1300 -@@ -93,14 +93,6 @@ - explicitnums = false; - logfname = string("log.txt"); - -- // work out the path to the $FSLDIR/bin directory -- if(getenv("FSLDIR")!=0){ -- binpath = (string) getenv("FSLDIR") + "/bin/"; -- } else{ -- binpath = argv[0]; -- binpath = binpath.substr(0,binpath.length()-7); -- } -- - // parse once to establish log directory name - for(int a = options.parse_command_line(argc, argv); a < argc; a++); - ---- src/melodic/meloptions.h.orig 2013-10-20 00:19:32.176318206 +1300 -+++ src/melodic/meloptions.h 2013-10-20 00:19:53.455352701 +1300 -@@ -93,7 +93,6 @@ - ~MelodicOptions() { delete gopt; } - - string version; -- string binpath; - string logfname; - bool filtermode; - bool explicitnums; ---- src/melodic/meldata.cc.orig 2013-10-20 00:20:45.856437466 +1300 -+++ src/melodic/meldata.cc 2013-10-20 00:21:48.655538924 +1300 -@@ -921,7 +921,7 @@ - void MelodicData::est_smoothness() - { - if(Resels == 0){ -- string SM_path = opts.binpath + "smoothest"; -+ string SM_path = "smoothest"; - string Mask_fname = logger.appendDir("mask"); - - if(opts.segment.value().length()>0){ -@@ -1086,7 +1086,7 @@ - // set up all strings - string BET_outputfname = string(Mean_fname)+"_brain"; - -- string BET_path = opts.binpath + "bet"; -+ string BET_path = "bet"; - string BET_optarg = "-m -f 0.4"; // see man bet - string Mask_fname = BET_outputfname+"_mask"; - ---- src/melodic/melreport.h.orig 2013-10-20 00:22:41.816624872 +1300 -+++ src/melodic/melreport.h 2013-10-20 00:24:25.555792499 +1300 -@@ -105,20 +105,20 @@ - system(("mkdir "+ logger.appendDir("report") + " 2>/dev/null").c_str()); - report.setDir(logger.appendDir("report"),"00index.html",true,false,ios::out); - report << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + -- (string) getenv("FSLDIR") +"/doc/fsl.css>" -+ "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" - << "<TITLE>MELODIC report</TITLE></HEAD><BODY>" - << endl <<endl; - loghtml.setDir(report.getDir(),"log.html"); - loghtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + -- (string) getenv("FSLDIR") +"/doc/fsl.css>" -+ "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" - << "<TITLE>MELODIC report</TITLE></HEAD><BODY>" - << endl <<endl; - navigator.setDir(report.getDir(),"nav.html"); - head.setDir(report.getDir(),"head.html"); - navigator << "<link REL=stylesheet TYPE=text/css href=file:"+ -- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl; -+ "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl; - head << "<link REL=stylesheet TYPE=text/css href=file:"+ -- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl; -+ "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl; - head <<"<TABLE BORDER=0><TR>" << endl - <<" <TD ALIGN=CENTER WIDTH=100%>"<< endl - <<"<TABLE BORDER=0>"<< endl -@@ -130,8 +130,8 @@ - << "</tr></table>" << endl - << "<TD ALIGN=RIGHT>" << endl - << "<a href=http://www.fmrib.ox.ac.uk/fsl target=_top>" << endl -- << "<IMG BORDER=0 SRC=file:"<< getenv("FSLDIR") -- << "/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl -+ << "<IMG BORDER=0 SRC=file:" -+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl - << "</TD>"<<endl<<"</TR></TABLE> <hr>"<<endl; - if(opts.guireport.value()==""){ - report <<"<OBJECT data=head.html></OBJECT>" << endl; ---- src/mm/mixture_model.cc.orig 2013-10-20 00:25:00.355848878 +1300 -+++ src/mm/mixture_model.cc 2013-10-20 00:25:32.185900186 +1300 -@@ -2224,8 +2224,8 @@ - - htmllog << "<HTML> " << endl - << "<TITLE>Mixture Model fit for" << data_name << "</TITLE>" << endl -- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR") -- << "/doc/images/fsl-bg.jpg\">" << endl -+ << "<BODY BACKGROUND=\"file:" -+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl - << "<hr><CENTER><H1>Mixture Model fit for<br>" << data_name << " </H1>"<< endl; - - htmllog << "<hr><p>" << endl; ---- src/siena/siena_diff.cc.orig 2013-10-20 00:26:13.215966685 +1300 -+++ src/siena/siena_diff.cc 2013-10-20 00:28:03.925145734 +1300 -@@ -107,7 +107,7 @@ - { - // {{{ vars - --char thestring[10000], segoptions[10000], fsldir[10000]; -+char thestring[10000], segoptions[10000]; - int x_size, y_size, z_size, size, x, y, z, i, count, - seg2=0, ignore_z=0, ignore_top_slices=0, //erode_mask=0, - ignore_bottom_slices=0, debug=0, flow_output=1, edge_masking=0; -@@ -124,8 +124,6 @@ - - string argv1(argv[1]), argv2(argv[2]); - --sprintf(fsldir,"%s",getenv("FSLDIR")); -- - for (i = 3; i < argc; i++) { - if (!strcmp(argv[i], "-i")) - ignore_z=1; -@@ -209,26 +207,26 @@ - // }}} - // {{{ transform images and masks - --sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", -- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); -+sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", -+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); - printf("%s\n",thestring); system(thestring); - --sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", -- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); -+sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", -+ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); - printf("%s\n",thestring); system(thestring); - --sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", -- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); -+sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", -+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); - printf("%s\n",thestring); system(thestring); - --sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", -- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); -+sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", -+ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); - printf("%s\n",thestring); system(thestring); - - if (edge_masking) - { -- sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s", -- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); -+ sprintf(thestring,"flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s", -+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); - printf("%s\n",thestring); system(thestring); - } - -@@ -287,8 +285,8 @@ - cout << "saving image 1 to disk prior to segmentation" << endl; - save_volume(in1,argv1+"_halfwayto_"+argv2+"_brain"); - in1.destroy(); -- sprintf(thestring,"%s/bin/fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1", -- fsldir,segtype,segoptions,argv[1],argv[2],argv[1],argv[2]); -+ sprintf(thestring,"fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1", -+ segtype,segoptions,argv[1],argv[2],argv[1],argv[2]); - cout << thestring << endl; - system(thestring); - } ---- src/topup/topupfns.cpp.orig 2013-10-20 00:28:36.456198320 +1300 -+++ src/topup/topupfns.cpp 2013-10-20 00:29:37.905297565 +1300 -@@ -463,8 +463,7 @@ - if (TOPUP::check_exist(ecfname)) return(ecfname); - } - if (!TOPUP::path(cfname).length()) { // If no path explicitly given -- const char *fsldir_ptr = getenv("FSLDIR"); -- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname; -+ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname; - if (TOPUP::check_exist(ecfname)) return(ecfname); - else if (!TOPUP::extension(ecfname).length()) { // If no path _and_ no extension given - ecfname += string(".cnf"); ---- etc/matlab/call_fsl.m.orig 2013-10-20 23:17:58.626045346 +1300 -+++ etc/matlab/call_fsl.m 2013-10-20 23:20:06.556252150 +1300 -@@ -8,7 +8,7 @@ - % Debian/Ubuntu users should uncomment as - % indicated - --fsldir=getenv('FSLDIR'); -+%fsldir=getenv('FSLDIR'); - - % Debian/Ubuntu - uncomment the following - %fsllibdir=sprintf('%s/%s', fsldir, 'bin'); ---- etc/js/label-div.html.orig 2013-10-20 23:22:04.906443685 +1300 -+++ etc/js/label-div.html 2013-10-20 23:23:35.006589232 +1300 -@@ -2,12 +2,12 @@ - <head> - <title>label-div</title> - <!--[if IE]> -- <script type="text/javascript" src="FSLDIR/etc/js/excanvas.js"></script> -+ <script type="text/javascript" src="@GENTOO_PORTAGE_EPREFIX@/etc/js/excanvas.js"></script> - <![endif]--> -- <script type="text/javascript" src="FSLDIR/etc/js/strftime-min.js"></script> -- <script type="text/javascript" src="FSLDIR/etc/js/rgbcolor.js"></script> -- <script type="text/javascript" src="FSLDIR/etc/js/dygraph-canvas.js"></script> -- <script type="text/javascript" src="FSLDIR/etc/js/dygraph.js"></script> -+ <script type="text/javascript" src="@GENTOO_PORTAGE_EPREFIX@/etc/js/strftime-min.js"></script> -+ <script type="text/javascript" src="@GENTOO_PORTAGE_EPREFIX@/etc/js/rgbcolor.js"></script> -+ <script type="text/javascript" src="@GENTOO_PORTAGE_EPREFIX@/etc/js/dygraph-canvas.js"></script> -+ <script type="text/javascript" src="@GENTOO_PORTAGE_EPREFIX@/etc/js/dygraph.js"></script> - <script type="text/javascript" src="PNMDATA.js"></script> - </head> - <body> diff --git a/sci-biology/fsl/files/fsl-5.0.8-fsldir_redux.patch b/sci-biology/fsl/files/fsl-5.0.8-fsldir_redux.patch deleted file mode 100644 index 593c1c807..000000000 --- a/sci-biology/fsl/files/fsl-5.0.8-fsldir_redux.patch +++ /dev/null @@ -1,452 +0,0 @@ -diff -Naur src.orig/fast4/fast_two.cc src/fast4/fast_two.cc
---- src.orig/fast4/fast_two.cc 2015-03-30 11:54:10.522550233 +1300
-+++ src/fast4/fast_two.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -166,7 +166,7 @@
- string csfPriorName, grayPriorName, whitePriorName;
- if(alternatePriors.unset())
- {
-- string priorRootName=string(getenv("FSLDIR")) + "/data/standard/tissuepriors/avg152T1_";
-+ string priorRootName="@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/tissuepriors/avg152T1_";
- csfPriorName = priorRootName+"csf";
- grayPriorName = priorRootName+"gray";
- whitePriorName = priorRootName+"white";
-@@ -215,15 +215,15 @@
- if(bapused>0)
- {
- char reg[1024];
-- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str());
-+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str());
- if(verbose.value())
- cout<<reg<<endl;
- system(reg);
-- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str());
-+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str());
- if(verbose.value())
- cout<<reg<<endl;
- system(reg);
-- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str());
-+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str());
- if(verbose.value())
- cout << reg << endl;
- system(reg);
-diff -Naur src.orig/feat5/feat_model.cc src/feat5/feat_model.cc
---- src.orig/feat5/feat_model.cc 2015-03-30 11:54:10.502550183 +1300
-+++ src/feat5/feat_model.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -741,7 +741,7 @@
- vector<int> G;
- vector<string> titles;
- float tr, mult, trmult, nltffwhm=0, maxconvwin=0;
-- char fl[10000], *FSLDIR;
-+ char fl[10000];
- string fn, filename;
- FONT_DATA *font_data = new FONT_DATA[1];
-
-@@ -760,8 +760,6 @@
- if (argc==3)
- motionparams=remmean(read_ascii_matrix(argv[2]));
-
-- FSLDIR=getenv("FSLDIR");
--
- fn = string(argv[1])+".fsf";
-
- level = atoi(find_line(fn, "fmri(level)", fl));
-@@ -1491,7 +1489,7 @@
- writeCovarianceImage(string(argv[1])+"_cov.ppm", contrasts, F, nftests, realDesign, level, evs.eigenvals, font_data, contrasts.RE);
- writeImagePreview(string(argv[1])+".ppm", contrasts, F, nftests, realDesign, level, evs, font_data, titles, tr, nltffwhm, nTimepoints, G);
-
-- filename=string(getenv("FSLDIR"))+"/bin/wpng -q -overwrite "+string(argv[1])+".ppm ";
-+ filename="wpng -q -overwrite "+string(argv[1])+".ppm ";
- system(filename.c_str());
-
- return(0);
-@@ -2134,6 +2132,6 @@
-
- fclose(outputfile);
-
-- filename=string(getenv("FSLDIR")) + "/bin/wpng -q -overwrite " + filename;
-+ filename="wpng -q -overwrite " + filename;
- system(filename.c_str());
- }
-diff -Naur src.orig/feat5/tsplot.cc src/feat5/tsplot.cc
---- src.orig/feat5/tsplot.cc 2015-03-30 11:54:10.502550183 +1300
-+++ src/feat5/tsplot.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -293,7 +293,7 @@
- ofstream outputFile;
- int numEVs, npts, numContrasts=1, nftests=0, GRPHSIZE(600), PSSIZE(600);
- vector<double> normalisedContrasts, model, triggers;
-- string fmriFileName, fslPath, featdir, vType, indexText;
-+ string fmriFileName, featdir, vType, indexText;
- ColumnVector NewimageVoxCoord(4),NiftiVoxCoord(4);
- bool outputText(true), useCoordinate(false), prewhiten(false), useTriggers(false), customMask(false), modelFree(false), isHigherLevel(false), outputDataOnly(false);
- bool zWeightClusters(true);
-@@ -307,7 +307,6 @@
- if (argc<2) usage("");
- featdir=string(argv[1]);
- fmriFileName=featdir+"/filtered_func_data";
-- fslPath=string(getenv("FSLDIR"));
-
- string outputName(featdir);
-
-@@ -725,7 +724,7 @@
- cerr << "Can't open output report file " << outputName << endl;
- exit(1);
- }
-- outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< fslPath <<"/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText;
-+ outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText;
- if (useTriggers) outputFile << "\n<hr><b>Peristimulus plots</b><p>\n"<< peristimulusText <<"\n<HR></BODY></HTML>\n\n";
- else outputFile << "\n</BODY></HTML>\n\n";
- outputFile.close();
-@@ -740,7 +739,7 @@
- cerr << "Can't open output report file " << outputName << endl;
- exit(1);
- }
-- outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << fslPath << "/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl;
-+ outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl;
- outputFile.close();
-
- /* now output same thing without start and end, for inclusion in feat report */
-diff -Naur src.orig/first/first_utils.cc src/first/first_utils.cc
---- src.orig/first/first_utils.cc 2015-03-30 11:54:10.482550135 +1300
-+++ src/first/first_utils.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -1954,8 +1954,8 @@
- if (!surfaceVAout.value()) {
- // do not output on the surface, instead do the new default of outputting a volume with the scalar normal dot product values (for use with randomise)
- volume<float> refim;
-- if (useReconMNI.value()) { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); }
-- else { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); }
-+ if (useReconMNI.value()) { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); }
-+ else { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); }
- volume<float> maskvol(refim);
- maskvol=0.0f;
- volume4D<float> volnormals;
-diff -Naur src.orig/fnirt/fnirtfns.cpp src/fnirt/fnirtfns.cpp
---- src.orig/fnirt/fnirtfns.cpp 2015-03-30 11:54:10.522550233 +1300
-+++ src/fnirt/fnirtfns.cpp 2015-03-30 11:54:18.412569892 +1300
-@@ -1203,8 +1203,7 @@
- return(string(ref_fname));
- }
- else {
-- const char *fsldir_ptr = getenv("FSLDIR");
-- string eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname;
-+ string eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname;
- if (NEWIMAGE::fsl_imageexists(eref_fname)) return(eref_fname);
- else return(string(""));
- }
-@@ -1230,9 +1229,8 @@
- NEWIMAGE::read_volume_hdr_only(vref,ref_fname); // Throws if file dont exist
- eref_fname = ref_fname;
- }
-- catch(...) { // Didn't exist in current directory, try in ${FSLDIR}/data/standard
-- const char *fsldir_ptr = getenv("FSLDIR");
-- eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname;
-+ catch(...) { // Didn't exist in current directory, try in .../data/standard
-+ eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname;
- try {
- cout << "Could not find " << ref_fname << ", now checking " << eref_fname << endl;
- NEWIMAGE::read_volume_hdr_only(vref,eref_fname); // Throws if file dont exist
-@@ -1267,8 +1265,7 @@
- if (check_exist(ecfname)) return(ecfname);
- }
- if (!FNIRT::path(cfname).length()) { // If no path explicitly given
-- const char *fsldir_ptr = getenv("FSLDIR");
-- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname;
-+ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname;
- if (check_exist(ecfname)) return(ecfname);
- else if (!FNIRT::extension(ecfname).length()) { // If no path _and_ no extension given
- ecfname += string(".cnf");
-diff -Naur src.orig/fslsurface/fslsurface_first.cc src/fslsurface/fslsurface_first.cc
---- src.orig/fslsurface/fslsurface_first.cc 2015-03-30 11:54:10.522550233 +1300
-+++ src/fslsurface/fslsurface_first.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -500,8 +500,7 @@
-
- volume<float>* immni = new volume<float>();
-
-- char* fsldir = getenv("FSLDIR");
-- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm");
-+ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm");
-
- //read_volume_hdr_only(*immni, template_name);
-
-@@ -699,8 +698,7 @@
-
- volume<float>* immni = new volume<float>();
-
-- char* fsldir = getenv("FSLDIR");
-- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm");
-+ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm");
-
- //read_volume_hdr_only(*immni, template_name);
-
-diff -Naur src.orig/fslsurface/fslsurfacemaths.cpp src/fslsurface/fslsurfacemaths.cpp
---- src.orig/fslsurface/fslsurfacemaths.cpp 2015-03-30 11:54:10.522550233 +1300
-+++ src/fslsurface/fslsurfacemaths.cpp 2015-03-30 11:54:18.412569892 +1300
-@@ -598,12 +598,6 @@
-
- }else if (command == "-reconFromBvars"){
- cout<<"do recon "<<endl;
-- char* fsldir = getenv("FSLDIR");
-- if (fsldir == NULL)
-- {
-- cerr<<"FSLDIR has not been set. "<<endl;
-- exit(EXIT_FAILURE);
-- }
- //file.bvars,mni_template.nii.gz
- // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm";
- reconSurface_from_bvars( surf, string(argv[i_arg+1]));
-@@ -612,12 +606,6 @@
-
- }else if (command == "-reconAllFromBvarsAndSave"){
- cout<<"do recon+save "<<argc<<" "<<i_arg<<endl;
-- char* fsldir = getenv("FSLDIR");
-- if (fsldir == NULL)
-- {
-- cerr<<"FSLDIR has not been set. "<<endl;
-- exit(EXIT_FAILURE);
-- }
- //file.bvars,mni_template.nii.gz
- // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm";
- cout<<"recon "<< string(argv[i_arg+1])<<endl;
-diff -Naur src.orig/libvis/miscpic.h src/libvis/miscpic.h
---- src.orig/libvis/miscpic.h 2015-03-30 11:54:10.482550135 +1300
-+++ src/libvis/miscpic.h 2015-03-30 11:54:18.412569892 +1300
-@@ -89,12 +89,7 @@
- LR_label_flag = true;
- trans= -10;
- edgethresh = 0.0;
-- if(getenv("FSLDIR")!=0){
-- lutbase = string(getenv("FSLDIR")) + "/etc/luts/";
-- }
-- else{
-- lutbase = string("/");
-- }
-+ lutbase = "@GENTOO_PORTAGE_EPREFIX@/etc/luts/";
- title = string("");
- cbartype = string("");
- cbarptr = NULL;
-diff -Naur src.orig/melodic/meldata.cc src/melodic/meldata.cc
---- src.orig/melodic/meldata.cc 2015-03-30 11:54:10.502550183 +1300
-+++ src/melodic/meldata.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -971,7 +971,7 @@
- void MelodicData::est_smoothness()
- {
- if(Resels == 0){
-- string SM_path = opts.binpath + "smoothest";
-+ string SM_path = "smoothest";
- string Mask_fname = logger.appendDir("mask");
-
- if(opts.segment.value().length()>0){
-@@ -1136,7 +1136,7 @@
- // set up all strings
- string BET_outputfname = string(Mean_fname)+"_brain";
-
-- string BET_path = opts.binpath + "bet";
-+ string BET_path = "bet";
- string BET_optarg = "-m -f 0.4"; // see man bet
- string Mask_fname = BET_outputfname+"_mask";
-
-diff -Naur src.orig/melodic/meloptions.cc src/melodic/meloptions.cc
---- src.orig/melodic/meloptions.cc 2015-03-30 11:54:10.502550183 +1300
-+++ src/melodic/meloptions.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -93,14 +93,6 @@
- explicitnums = false;
- logfname = string("log.txt");
-
-- // work out the path to the $FSLDIR/bin directory
-- if(getenv("FSLDIR")!=0){
-- binpath = (string) getenv("FSLDIR") + "/bin/";
-- } else{
-- binpath = argv[0];
-- binpath = binpath.substr(0,binpath.length()-7);
-- }
--
- // parse once to establish log directory name
- for(int a = options.parse_command_line(argc, argv); a < argc; a++);
-
-diff -Naur src.orig/melodic/meloptions.h src/melodic/meloptions.h
---- src.orig/melodic/meloptions.h 2015-03-30 11:54:10.502550183 +1300
-+++ src/melodic/meloptions.h 2015-03-30 11:54:18.412569892 +1300
-@@ -93,7 +93,6 @@
- ~MelodicOptions() { delete gopt; }
-
- string version;
-- string binpath;
- string logfname;
- bool filtermode;
- bool explicitnums;
-diff -Naur src.orig/melodic/melreport.cc src/melodic/melreport.cc
---- src.orig/melodic/melreport.cc 2015-03-30 11:54:10.502550183 +1300
-+++ src/melodic/melreport.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -84,8 +84,8 @@
- IChtml.setDir(report.getDir(),mmodel.get_prefix()+".html");
-
- {//start IC page
-- IChtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl
-+ IChtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl
- << "<style type=\"text/css\">OBJECT { width: 100% }</style>"
- << "<TITLE>FSL</TITLE></HEAD>" << endl
- << "<IFRAME height=" << int(melodat.get_numfiles()/30 + 1)*50
-@@ -487,8 +487,8 @@
-
- {//start IC2 page
- IChtml2.setDir(report.getDir(),mmodel.get_prefix()+"_MM.html");
-- IChtml2 << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl
-+ IChtml2 << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl
- << "<style type=\"text/css\">OBJECT { width: 100% }</style>"
- << "<TITLE>FSL</TITLE></HEAD>" << endl
- << "<IFRAME height="<< int(melodat.get_numfiles()/30 + 1)*50
-@@ -666,8 +666,8 @@
- IChtml << "<HTML> " << endl
- << "<TITLE>MELODIC Component " << num2str(cnum)
- << "</TITLE>" << endl
-- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR")
-- << "/doc/images/fsl-bg.jpg\">" << endl
-+ << "<BODY BACKGROUND=\"file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl
- << "<hr><CENTER><H1>MELODIC Component " << num2str(cnum)
- << "</H1>"<< endl;
-
-diff -Naur src.orig/melodic/melreport.h src/melodic/melreport.h
---- src.orig/melodic/melreport.h 2015-03-30 11:54:10.502550183 +1300
-+++ src/melodic/melreport.h 2015-03-30 12:11:17.995116883 +1300
-@@ -104,21 +104,21 @@
- const time_t tmptime = time(NULL);
- system(("mkdir "+ logger.appendDir("report") + " 2>/dev/null").c_str());
- report.setDir(logger.appendDir("report"),"00index.html",true,false,ios::out);
-- report << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>"
-+ report << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>"
- << "<TITLE>MELODIC report</TITLE></HEAD><BODY>"
- << endl <<endl;
- loghtml.setDir(report.getDir(),"log.html");
-- loghtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>"
-+ loghtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>"
- << "<TITLE>MELODIC report</TITLE></HEAD><BODY>"
- << endl <<endl;
- navigator.setDir(report.getDir(),"nav.html");
- head.setDir(report.getDir(),"head.html");
-- navigator << "<link REL=stylesheet TYPE=text/css href=file:"+
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl;
-- head << "<link REL=stylesheet TYPE=text/css href=file:"+
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl;
-+ navigator << "<link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl;
-+ head << "<link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl;
- head <<"<TABLE BORDER=0><TR>" << endl
- <<" <TD ALIGN=CENTER WIDTH=100%>"<< endl
- <<"<TABLE BORDER=0>"<< endl
-@@ -130,8 +130,8 @@
- << "</tr></table>" << endl
- << "<TD ALIGN=RIGHT>" << endl
- << "<a href=http://www.fmrib.ox.ac.uk/fsl target=_top>" << endl
-- << "<IMG BORDER=0 SRC=file:"<< getenv("FSLDIR")
-- << "/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl
-+ << "<IMG BORDER=0 SRC=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl
- << "</TD>"<<endl<<"</TR></TABLE> <hr>"<<endl;
- if(opts.guireport.value()==""){
- report <<"<OBJECT data=head.html></OBJECT>" << endl;
-diff -Naur src.orig/mm/mixture_model.cc src/mm/mixture_model.cc
---- src.orig/mm/mixture_model.cc 2015-03-30 11:54:10.522550233 +1300
-+++ src/mm/mixture_model.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -2224,8 +2224,8 @@
-
- htmllog << "<HTML> " << endl
- << "<TITLE>Mixture Model fit for" << data_name << "</TITLE>" << endl
-- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR")
-- << "/doc/images/fsl-bg.jpg\">" << endl
-+ << "<BODY BACKGROUND=\"file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl
- << "<hr><CENTER><H1>Mixture Model fit for<br>" << data_name << " </H1>"<< endl;
-
- htmllog << "<hr><p>" << endl;
-diff -Naur src.orig/siena/siena_diff.cc src/siena/siena_diff.cc
---- src.orig/siena/siena_diff.cc 2015-03-30 11:54:10.482550135 +1300
-+++ src/siena/siena_diff.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -107,7 +107,7 @@
- {
- // {{{ vars
-
--char thestring[10000], segoptions[10000], fsldir[10000];
-+char thestring[10000], segoptions[10000];
- int x_size, y_size, z_size, size, x, y, z, i, count,
- seg2=0, ignore_z=0, ignore_top_slices=0, //erode_mask=0,
- ignore_bottom_slices=0, debug=0, flow_output=1, edge_masking=0;
-@@ -124,8 +124,6 @@
-
- string argv1(argv[1]), argv2(argv[2]);
-
--sprintf(fsldir,"%s",getenv("FSLDIR"));
--
- for (i = 3; i < argc; i++) {
- if (!strcmp(argv[i], "-i"))
- ignore_z=1;
-@@ -209,26 +207,26 @@
- // }}}
- // {{{ transform images and masks
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
- printf("%s\n",thestring); system(thestring);
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-+ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
- printf("%s\n",thestring); system(thestring);
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
- printf("%s\n",thestring); system(thestring);
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-+ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
- printf("%s\n",thestring); system(thestring);
-
- if (edge_masking)
- {
-- sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s",
-- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
-+ sprintf(thestring,"flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s",
-+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
- printf("%s\n",thestring); system(thestring);
- }
-
-@@ -287,8 +285,8 @@
- cout << "saving image 1 to disk prior to segmentation" << endl;
- save_volume(in1,argv1+"_halfwayto_"+argv2+"_brain");
- in1.destroy();
-- sprintf(thestring,"%s/bin/fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1",
-- fsldir,segtype,segoptions,argv[1],argv[2],argv[1],argv[2]);
-+ sprintf(thestring,"fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1",
-+ segtype,segoptions,argv[1],argv[2],argv[1],argv[2]);
- cout << thestring << endl;
- system(thestring);
- }
-diff -Naur src.orig/topup/topupfns.cpp src/topup/topupfns.cpp
---- src.orig/topup/topupfns.cpp 2015-03-30 11:54:10.522550233 +1300
-+++ src/topup/topupfns.cpp 2015-03-30 11:54:18.412569892 +1300
-@@ -463,8 +463,7 @@
- if (TOPUP::check_exist(ecfname)) return(ecfname);
- }
- if (!TOPUP::path(cfname).length()) { // If no path explicitly given
-- const char *fsldir_ptr = getenv("FSLDIR");
-- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname;
-+ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname;
- if (TOPUP::check_exist(ecfname)) return(ecfname);
- else if (!TOPUP::extension(ecfname).length()) { // If no path _and_ no extension given
- ecfname += string(".cnf");
-
diff --git a/sci-biology/fsl/files/fsl-5.0.8-headers.patch b/sci-biology/fsl/files/fsl-5.0.8-headers.patch deleted file mode 100644 index ab2ab3da3..000000000 --- a/sci-biology/fsl/files/fsl-5.0.8-headers.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- src/miscvis/writepng.c.orig 2013-10-19 00:18:32.415203592 +1300 -+++ src/miscvis/writepng.c 2013-10-19 00:19:05.414255132 +1300 -@@ -32,6 +32,7 @@ - - #include <stdlib.h> /* for exit() prototype */ - -+#include "zlib.h" - #include "png.h" /* libpng header; includes zlib.h and setjmp.h */ - #include "writepng.h" /* typedefs, common macros, public prototypes */ - ---- src/ptx2/surfmaths.cc.orig 2013-10-19 00:19:51.595327317 +1300 -+++ src/ptx2/surfmaths.cc 2013-10-19 00:20:09.284354805 +1300 -@@ -72,7 +72,7 @@ - #include "csv_mesh.h" - #include "miscmaths/miscmaths.h" - #include "utils/fsl_isfinite.h" --#include "libprob/libprob.h" -+#include "libprob.h" - - using namespace MISCMATHS; - diff --git a/sci-biology/fsl/files/fsl-5.0.8-setup.patch b/sci-biology/fsl/files/fsl-5.0.8-setup.patch deleted file mode 100644 index 0cbda5d5c..000000000 --- a/sci-biology/fsl/files/fsl-5.0.8-setup.patch +++ /dev/null @@ -1,113 +0,0 @@ -diff -Naur fsl.orig/build fsl/build ---- fsl.orig/build 2015-03-29 00:10:39.845936000 +1300 -+++ fsl/build 2015-03-29 00:12:37.160487000 +1300 -@@ -11,8 +11,7 @@ - ifit load_varian load_dicom misc_scripts fdt first possum sgeutils flameo oxford_asl relax qboot topup ptx2 lesions eddy dwssfp"; - fi - --echo "Building projects - see build.log file for progress..." --./config/common/buildproj $PROJECTS > ./build.log 2>&1 --echo "Finished build : end of log file shows ..." --tail -10 build.log -+echo "Building projects" -+./config/common/buildproj $PROJECTS -+echo "Finished build" - -diff -Naur fsl.orig/config/common/buildproj fsl/config/common/buildproj ---- fsl.orig/config/common/buildproj 2015-03-29 00:11:47.130998000 +1300 -+++ fsl/config/common/buildproj 2015-03-29 00:12:37.164319000 +1300 -@@ -11,10 +11,10 @@ - fi - PROJECTS="$@" ; export PROJECTS ; - --FSLDIR=`pwd` -+#FSLDIR=`pwd` - FSLDEVDIR=${FSLDIR} - FSLCONFDIR=${FSLDIR}/config --FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` -+#FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` - export FSLDIR FSLDEVDIR FSLCONFDIR FSLMACHTYPE - - buildmessages="" ; export buildmessages ; -@@ -66,7 +66,7 @@ - if [ -x fslconfig ] ; then - ./fslconfig ; - fi -- if ${MAKE} -k ${MAKEOPTIONS} ; then -+ if ${MAKE} ${MAKEOPTIONS} ${MAKEOPTS} ; then - if ${MAKE} install ; then - installok=true; - # Clean up after ourselves -diff -Naur fsl.orig/config/common/vars.mk fsl/config/common/vars.mk ---- fsl.orig/config/common/vars.mk 2015-03-29 00:11:47.183520000 +1300 -+++ fsl/config/common/vars.mk 2015-03-29 00:18:53.151222000 +1300 -@@ -24,15 +24,15 @@ - USRCFLAGS = - USRCXXFLAGS = - --LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} -+LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} ${USERLDFLAGS} - --AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} -+AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} ${CPPFLAGS} - - CFLAGS = ${ANSI_FLAGS} ${ANSI_CFLAGS} ${DBGFLAGS} ${USEDCSTATICFLAGS} ${USRCFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+ ${AccumulatedIncFlags} ${USERCFLAGS} - - CXXFLAGS = ${ANSI_FLAGS} ${ANSI_CXXFLAGS} ${DBGFLAGS} ${USEDCXXSTATICFLAGS} ${USRCXXFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+ ${AccumulatedIncFlags} ${USERCXXFLAGS} - - HFILES = *.h - AFILES = *.a -diff -Naur fsl.orig/config/generic/systemvars.mk fsl/config/generic/systemvars.mk ---- fsl.orig/config/generic/systemvars.mk 2015-03-29 00:11:47.534246000 +1300 -+++ fsl/config/generic/systemvars.mk 2015-03-29 00:12:37.162129000 +1300 -@@ -4,20 +4,20 @@ - - # System dependent commands (NB: the first two are the most platform dependent) - --INSTALL = ginstall -p --RANLIB = ranlib -+INSTALL = install -p -+RANLIB = @@GENTOO_RANLIB@@ - - RM = /bin/rm - CP = /bin/cp - MV = /bin/mv - CHMOD = /bin/chmod - MKDIR = /bin/mkdir --TCLSH = ${FSLDIR}/bin/fsltclsh -+TCLSH = tclsh - - # Compiler dependent variables - --CC = gcc --CXX = c++ -+CC = @@GENTOO_CC@@ -+CXX = @@GENTOO_CXX@@ - CSTATICFLAGS = -static - CXXSTATICFLAGS = -static - -@@ -25,7 +25,7 @@ - - DEPENDFLAGS = -MM - --OPTFLAGS = -O3 -fexpensive-optimizations ${ARCHFLAGS} -+OPTFLAGS = - MACHDBGFLAGS = - GNU_ANSI_FLAGS = -Wall -ansi -pedantic - SGI_ANSI_FLAGS = -ansi -fullwarn -diff -Naur fsl.orig/extras/build fsl/extras/build ---- fsl.orig/extras/build 2015-03-29 00:11:15.080236000 +1300 -+++ fsl/extras/build 2015-03-29 00:15:53.170496000 +1300 -@@ -60,7 +60,7 @@ - if [ ${BUILDICONV} -eq 1 ]; then - PROJECTS="${PROJECTS} libiconv" - fi --PROJECTS="${PROJECTS} libgd libgdc libprob libcprob newmat cprob newran fftw" -+PROJECTS="libgdc libprob libcprob newmat cprob newran" - for projname in $PROJECTS; do - - if [ -d $FSLESRCDIR/$projname ] ; then diff --git a/sci-biology/fsl/files/fsl-5.0.9-fsldir_redux.patch b/sci-biology/fsl/files/fsl-5.0.9-fsldir_redux.patch deleted file mode 100644 index c28fabe42..000000000 --- a/sci-biology/fsl/files/fsl-5.0.9-fsldir_redux.patch +++ /dev/null @@ -1,456 +0,0 @@ -# Adapt hard-coded paths to the directory structure of Gentoo (including Prefix)
-# From: Francois Bissey <frp.bissey@gmail.com>
-# Signed-off-by: Horea Christian <horea.christ@gmail.com>
-
-diff -Naur fsl.orig/src/fast4/fast_two.cc fsl/src/fast4/fast_two.cc
---- fsl.orig/src/fast4/fast_two.cc 2015-03-30 11:54:10.522550233 +1300
-+++ fsl/src/fast4/fast_two.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -166,7 +166,7 @@
- string csfPriorName, grayPriorName, whitePriorName;
- if(alternatePriors.unset())
- {
-- string priorRootName=string(getenv("FSLDIR")) + "/data/standard/tissuepriors/avg152T1_";
-+ string priorRootName="@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/tissuepriors/avg152T1_";
- csfPriorName = priorRootName+"csf";
- grayPriorName = priorRootName+"gray";
- whitePriorName = priorRootName+"white";
-@@ -215,15 +215,15 @@
- if(bapused>0)
- {
- char reg[1024];
-- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str());
-+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str());
- if(verbose.value())
- cout<<reg<<endl;
- system(reg);
-- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str());
-+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str());
- if(verbose.value())
- cout<<reg<<endl;
- system(reg);
-- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str());
-+ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str());
- if(verbose.value())
- cout << reg << endl;
- system(reg);
-diff -Naur fsl.orig/src/feat5/feat_model.cc fsl/src/feat5/feat_model.cc
---- fsl.orig/src/feat5/feat_model.cc 2015-03-30 11:54:10.502550183 +1300
-+++ fsl/src/feat5/feat_model.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -741,7 +741,7 @@
- vector<int> G;
- vector<string> titles;
- float tr, mult, trmult, nltffwhm=0, maxconvwin=0;
-- char fl[10000], *FSLDIR;
-+ char fl[10000];
- string fn, filename;
- FONT_DATA *font_data = new FONT_DATA[1];
-
-@@ -760,8 +760,6 @@
- if (argc==3)
- motionparams=remmean(read_ascii_matrix(argv[2]));
-
-- FSLDIR=getenv("FSLDIR");
--
- fn = string(argv[1])+".fsf";
-
- level = atoi(find_line(fn, "fmri(level)", fl));
-@@ -1491,7 +1489,7 @@
- writeCovarianceImage(string(argv[1])+"_cov.ppm", contrasts, F, nftests, realDesign, level, evs.eigenvals, font_data, contrasts.RE);
- writeImagePreview(string(argv[1])+".ppm", contrasts, F, nftests, realDesign, level, evs, font_data, titles, tr, nltffwhm, nTimepoints, G);
-
-- filename=string(getenv("FSLDIR"))+"/bin/wpng -q -overwrite "+string(argv[1])+".ppm ";
-+ filename="wpng -q -overwrite "+string(argv[1])+".ppm ";
- system(filename.c_str());
-
- return(0);
-@@ -2134,6 +2132,6 @@
-
- fclose(outputfile);
-
-- filename=string(getenv("FSLDIR")) + "/bin/wpng -q -overwrite " + filename;
-+ filename="wpng -q -overwrite " + filename;
- system(filename.c_str());
- }
-diff -Naur fsl.orig/src/feat5/tsplot.cc fsl/src/feat5/tsplot.cc
---- fsl.orig/src/feat5/tsplot.cc 2015-03-30 11:54:10.502550183 +1300
-+++ fsl/src/feat5/tsplot.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -293,7 +293,7 @@
- ofstream outputFile;
- int numEVs, npts, numContrasts=1, nftests=0, GRPHSIZE(600), PSSIZE(600);
- vector<double> normalisedContrasts, model, triggers;
-- string fmriFileName, fslPath, featdir, vType, indexText;
-+ string fmriFileName, featdir, vType, indexText;
- ColumnVector NewimageVoxCoord(4),NiftiVoxCoord(4);
- bool outputText(true), useCoordinate(false), prewhiten(false), useTriggers(false), customMask(false), modelFree(false), isHigherLevel(false), outputDataOnly(false);
- bool zWeightClusters(true);
-@@ -307,7 +307,6 @@
- if (argc<2) usage("");
- featdir=string(argv[1]);
- fmriFileName=featdir+"/filtered_func_data";
-- fslPath=string(getenv("FSLDIR"));
-
- string outputName(featdir);
-
-@@ -725,7 +724,7 @@
- cerr << "Can't open output report file " << outputName << endl;
- exit(1);
- }
-- outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< fslPath <<"/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText;
-+ outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText;
- if (useTriggers) outputFile << "\n<hr><b>Peristimulus plots</b><p>\n"<< peristimulusText <<"\n<HR></BODY></HTML>\n\n";
- else outputFile << "\n</BODY></HTML>\n\n";
- outputFile.close();
-@@ -740,7 +739,7 @@
- cerr << "Can't open output report file " << outputName << endl;
- exit(1);
- }
-- outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << fslPath << "/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl;
-+ outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl;
- outputFile.close();
-
- /* now output same thing without start and end, for inclusion in feat report */
-diff -Naur fsl.orig/src/first/first_utils.cc fsl/src/first/first_utils.cc
---- fsl.orig/src/first/first_utils.cc 2015-03-30 11:54:10.482550135 +1300
-+++ fsl/src/first/first_utils.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -1954,8 +1954,8 @@
- if (!surfaceVAout.value()) {
- // do not output on the surface, instead do the new default of outputting a volume with the scalar normal dot product values (for use with randomise)
- volume<float> refim;
-- if (useReconMNI.value()) { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); }
-- else { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); }
-+ if (useReconMNI.value()) { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); }
-+ else { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); }
- volume<float> maskvol(refim);
- maskvol=0.0f;
- volume4D<float> volnormals;
-diff -Naur fsl.orig/src/fnirt/fnirtfns.cpp fsl/src/fnirt/fnirtfns.cpp
---- fsl.orig/src/fnirt/fnirtfns.cpp 2015-03-30 11:54:10.522550233 +1300
-+++ fsl/src/fnirt/fnirtfns.cpp 2015-03-30 11:54:18.412569892 +1300
-@@ -1203,8 +1203,7 @@
- return(string(ref_fname));
- }
- else {
-- const char *fsldir_ptr = getenv("FSLDIR");
-- string eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname;
-+ string eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname;
- if (NEWIMAGE::fsl_imageexists(eref_fname)) return(eref_fname);
- else return(string(""));
- }
-@@ -1230,9 +1229,8 @@
- NEWIMAGE::read_volume_hdr_only(vref,ref_fname); // Throws if file dont exist
- eref_fname = ref_fname;
- }
-- catch(...) { // Didn't exist in current directory, try in ${FSLDIR}/data/standard
-- const char *fsldir_ptr = getenv("FSLDIR");
-- eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname;
-+ catch(...) { // Didn't exist in current directory, try in .../data/standard
-+ eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname;
- try {
- cout << "Could not find " << ref_fname << ", now checking " << eref_fname << endl;
- NEWIMAGE::read_volume_hdr_only(vref,eref_fname); // Throws if file dont exist
-@@ -1267,8 +1265,7 @@
- if (check_exist(ecfname)) return(ecfname);
- }
- if (!FNIRT::path(cfname).length()) { // If no path explicitly given
-- const char *fsldir_ptr = getenv("FSLDIR");
-- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname;
-+ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname;
- if (check_exist(ecfname)) return(ecfname);
- else if (!FNIRT::extension(ecfname).length()) { // If no path _and_ no extension given
- ecfname += string(".cnf");
-diff -Naur fsl.orig/src/fslsurface/fslsurface_first.cc fsl/src/fslsurface/fslsurface_first.cc
---- fsl.orig/src/fslsurface/fslsurface_first.cc 2015-03-30 11:54:10.522550233 +1300
-+++ fsl/src/fslsurface/fslsurface_first.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -500,8 +500,7 @@
-
- volume<float>* immni = new volume<float>();
-
-- char* fsldir = getenv("FSLDIR");
-- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm");
-+ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm");
-
- //read_volume_hdr_only(*immni, template_name);
-
-@@ -699,8 +698,7 @@
-
- volume<float>* immni = new volume<float>();
-
-- char* fsldir = getenv("FSLDIR");
-- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm");
-+ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm");
-
- //read_volume_hdr_only(*immni, template_name);
-
-diff -Naur fsl.orig/src/fslsurface/fslsurfacemaths.cpp fsl/src/fslsurface/fslsurfacemaths.cpp
---- fsl.orig/src/fslsurface/fslsurfacemaths.cpp 2015-03-30 11:54:10.522550233 +1300
-+++ fsl/src/fslsurface/fslsurfacemaths.cpp 2015-03-30 11:54:18.412569892 +1300
-@@ -598,12 +598,6 @@
-
- }else if (command == "-reconFromBvars"){
- cout<<"do recon "<<endl;
-- char* fsldir = getenv("FSLDIR");
-- if (fsldir == NULL)
-- {
-- cerr<<"FSLDIR has not been set. "<<endl;
-- exit(EXIT_FAILURE);
-- }
- //file.bvars,mni_template.nii.gz
- // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm";
- reconSurface_from_bvars( surf, string(argv[i_arg+1]));
-@@ -612,12 +606,6 @@
-
- }else if (command == "-reconAllFromBvarsAndSave"){
- cout<<"do recon+save "<<argc<<" "<<i_arg<<endl;
-- char* fsldir = getenv("FSLDIR");
-- if (fsldir == NULL)
-- {
-- cerr<<"FSLDIR has not been set. "<<endl;
-- exit(EXIT_FAILURE);
-- }
- //file.bvars,mni_template.nii.gz
- // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm";
- cout<<"recon "<< string(argv[i_arg+1])<<endl;
-diff -Naur fsl.orig/src/libvis/miscpic.h fsl/src/libvis/miscpic.h
---- fsl.orig/src/libvis/miscpic.h 2015-03-30 11:54:10.482550135 +1300
-+++ fsl/src/libvis/miscpic.h 2015-03-30 11:54:18.412569892 +1300
-@@ -89,12 +89,7 @@
- LR_label_flag = true;
- trans= -10;
- edgethresh = 0.0;
-- if(getenv("FSLDIR")!=0){
-- lutbase = string(getenv("FSLDIR")) + "/etc/luts/";
-- }
-- else{
-- lutbase = string("/");
-- }
-+ lutbase = "@GENTOO_PORTAGE_EPREFIX@/etc/luts/";
- title = string("");
- cbartype = string("");
- cbarptr = NULL;
-diff -Naur fsl.orig/src/melodic/meldata.cc fsl/src/melodic/meldata.cc
---- fsl.orig/src/melodic/meldata.cc 2015-03-30 11:54:10.502550183 +1300
-+++ fsl/src/melodic/meldata.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -971,7 +971,7 @@
- void MelodicData::est_smoothness()
- {
- if(Resels == 0){
-- string SM_path = opts.binpath + "smoothest";
-+ string SM_path = "smoothest";
- string Mask_fname = logger.appendDir("mask");
-
- if(opts.segment.value().length()>0){
-@@ -1136,7 +1136,7 @@
- // set up all strings
- string BET_outputfname = string(Mean_fname)+"_brain";
-
-- string BET_path = opts.binpath + "bet";
-+ string BET_path = "bet";
- string BET_optarg = "-m -f 0.4"; // see man bet
- string Mask_fname = BET_outputfname+"_mask";
-
-diff -Naur fsl.orig/src/melodic/meloptions.cc fsl/src/melodic/meloptions.cc
---- fsl.orig/src/melodic/meloptions.cc 2015-03-30 11:54:10.502550183 +1300
-+++ fsl/src/melodic/meloptions.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -93,14 +93,6 @@
- explicitnums = false;
- logfname = string("log.txt");
-
-- // work out the path to the $FSLDIR/bin directory
-- if(getenv("FSLDIR")!=0){
-- binpath = (string) getenv("FSLDIR") + "/bin/";
-- } else{
-- binpath = argv[0];
-- binpath = binpath.substr(0,binpath.length()-7);
-- }
--
- // parse once to establish log directory name
- for(int a = options.parse_command_line(argc, argv); a < argc; a++);
-
-diff -Naur fsl.orig/src/melodic/meloptions.h fsl/src/melodic/meloptions.h
---- fsl.orig/src/melodic/meloptions.h 2015-03-30 11:54:10.502550183 +1300
-+++ fsl/src/melodic/meloptions.h 2015-03-30 11:54:18.412569892 +1300
-@@ -93,7 +93,6 @@
- ~MelodicOptions() { delete gopt; }
-
- string version;
-- string binpath;
- string logfname;
- bool filtermode;
- bool explicitnums;
-diff -Naur fsl.orig/src/melodic/melreport.cc fsl/src/melodic/melreport.cc
---- fsl.orig/src/melodic/melreport.cc 2015-03-30 11:54:10.502550183 +1300
-+++ fsl/src/melodic/melreport.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -84,8 +84,8 @@
- IChtml.setDir(report.getDir(),mmodel.get_prefix()+".html");
-
- {//start IC page
-- IChtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl
-+ IChtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl
- << "<style type=\"text/css\">OBJECT { width: 100% }</style>"
- << "<TITLE>FSL</TITLE></HEAD>" << endl
- << "<IFRAME height=" << int(melodat.get_numfiles()/30 + 1)*50
-@@ -487,8 +487,8 @@
-
- {//start IC2 page
- IChtml2.setDir(report.getDir(),mmodel.get_prefix()+"_MM.html");
-- IChtml2 << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl
-+ IChtml2 << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl
- << "<style type=\"text/css\">OBJECT { width: 100% }</style>"
- << "<TITLE>FSL</TITLE></HEAD>" << endl
- << "<IFRAME height="<< int(melodat.get_numfiles()/30 + 1)*50
-@@ -666,8 +666,8 @@
- IChtml << "<HTML> " << endl
- << "<TITLE>MELODIC Component " << num2str(cnum)
- << "</TITLE>" << endl
-- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR")
-- << "/doc/images/fsl-bg.jpg\">" << endl
-+ << "<BODY BACKGROUND=\"file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl
- << "<hr><CENTER><H1>MELODIC Component " << num2str(cnum)
- << "</H1>"<< endl;
-
-diff -Naur fsl.orig/src/melodic/melreport.h fsl/src/melodic/melreport.h
---- fsl.orig/src/melodic/melreport.h 2015-03-30 11:54:10.502550183 +1300
-+++ fsl/src/melodic/melreport.h 2015-03-30 12:11:17.995116883 +1300
-@@ -104,21 +104,21 @@
- const time_t tmptime = time(NULL);
- system(("mkdir "+ logger.appendDir("report") + " 2>/dev/null").c_str());
- report.setDir(logger.appendDir("report"),"00index.html",true,false,ios::out);
-- report << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>"
-+ report << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>"
- << "<TITLE>MELODIC report</TITLE></HEAD><BODY>"
- << endl <<endl;
- loghtml.setDir(report.getDir(),"log.html");
-- loghtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" +
-- (string) getenv("FSLDIR") +"/doc/fsl.css>"
-+ loghtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>"
- << "<TITLE>MELODIC report</TITLE></HEAD><BODY>"
- << endl <<endl;
- navigator.setDir(report.getDir(),"nav.html");
- head.setDir(report.getDir(),"head.html");
-- navigator << "<link REL=stylesheet TYPE=text/css href=file:"+
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl;
-- head << "<link REL=stylesheet TYPE=text/css href=file:"+
-- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl;
-+ navigator << "<link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl;
-+ head << "<link REL=stylesheet TYPE=text/css href=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl;
- head <<"<TABLE BORDER=0><TR>" << endl
- <<" <TD ALIGN=CENTER WIDTH=100%>"<< endl
- <<"<TABLE BORDER=0>"<< endl
-@@ -130,8 +130,8 @@
- << "</tr></table>" << endl
- << "<TD ALIGN=RIGHT>" << endl
- << "<a href=http://www.fmrib.ox.ac.uk/fsl target=_top>" << endl
-- << "<IMG BORDER=0 SRC=file:"<< getenv("FSLDIR")
-- << "/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl
-+ << "<IMG BORDER=0 SRC=file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl
- << "</TD>"<<endl<<"</TR></TABLE> <hr>"<<endl;
- if(opts.guireport.value()==""){
- report <<"<OBJECT data=head.html></OBJECT>" << endl;
-diff -Naur fsl.orig/src/mm/mixture_model.cc fsl/src/mm/mixture_model.cc
---- fsl.orig/src/mm/mixture_model.cc 2015-03-30 11:54:10.522550233 +1300
-+++ fsl/src/mm/mixture_model.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -2224,8 +2224,8 @@
-
- htmllog << "<HTML> " << endl
- << "<TITLE>Mixture Model fit for" << data_name << "</TITLE>" << endl
-- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR")
-- << "/doc/images/fsl-bg.jpg\">" << endl
-+ << "<BODY BACKGROUND=\"file:"
-+ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl
- << "<hr><CENTER><H1>Mixture Model fit for<br>" << data_name << " </H1>"<< endl;
-
- htmllog << "<hr><p>" << endl;
-diff -Naur fsl.orig/src/siena/siena_diff.cc fsl/src/siena/siena_diff.cc
---- fsl.orig/src/siena/siena_diff.cc 2015-03-30 11:54:10.482550135 +1300
-+++ fsl/src/siena/siena_diff.cc 2015-03-30 11:54:18.412569892 +1300
-@@ -107,7 +107,7 @@
- {
- // {{{ vars
-
--char thestring[10000], segoptions[10000], fsldir[10000];
-+char thestring[10000], segoptions[10000];
- int x_size, y_size, z_size, size, x, y, z, i, count,
- seg2=0, ignore_z=0, ignore_top_slices=0, //erode_mask=0,
- ignore_bottom_slices=0, debug=0, flow_output=1, edge_masking=0;
-@@ -124,8 +124,6 @@
-
- string argv1(argv[1]), argv2(argv[2]);
-
--sprintf(fsldir,"%s",getenv("FSLDIR"));
--
- for (i = 3; i < argc; i++) {
- if (!strcmp(argv[i], "-i"))
- ignore_z=1;
-@@ -209,26 +207,26 @@
- // }}}
- // {{{ transform images and masks
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
- printf("%s\n",thestring); system(thestring);
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s",
-+ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
- printf("%s\n",thestring); system(thestring);
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]);
- printf("%s\n",thestring); system(thestring);
-
--sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
-+sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask",
-+ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
- printf("%s\n",thestring); system(thestring);
-
- if (edge_masking)
- {
-- sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s",
-- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
-+ sprintf(thestring,"flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s",
-+ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]);
- printf("%s\n",thestring); system(thestring);
- }
-
-@@ -287,8 +285,8 @@
- cout << "saving image 1 to disk prior to segmentation" << endl;
- save_volume(in1,argv1+"_halfwayto_"+argv2+"_brain");
- in1.destroy();
-- sprintf(thestring,"%s/bin/fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1",
-- fsldir,segtype,segoptions,argv[1],argv[2],argv[1],argv[2]);
-+ sprintf(thestring,"fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1",
-+ segtype,segoptions,argv[1],argv[2],argv[1],argv[2]);
- cout << thestring << endl;
- system(thestring);
- }
-diff -Naur fsl.orig/src/topup/topupfns.cpp fsl/src/topup/topupfns.cpp
---- fsl.orig/src/topup/topupfns.cpp 2015-03-30 11:54:10.522550233 +1300
-+++ fsl/src/topup/topupfns.cpp 2015-03-30 11:54:18.412569892 +1300
-@@ -463,8 +463,7 @@
- if (TOPUP::check_exist(ecfname)) return(ecfname);
- }
- if (!TOPUP::path(cfname).length()) { // If no path explicitly given
-- const char *fsldir_ptr = getenv("FSLDIR");
-- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname;
-+ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname;
- if (TOPUP::check_exist(ecfname)) return(ecfname);
- else if (!TOPUP::extension(ecfname).length()) { // If no path _and_ no extension given
- ecfname += string(".cnf");
-
diff --git a/sci-biology/fsl/files/fsl-5.0.9-headers.patch b/sci-biology/fsl/files/fsl-5.0.9-headers.patch index 663dc565c..f4da2bb50 100644 --- a/sci-biology/fsl/files/fsl-5.0.9-headers.patch +++ b/sci-biology/fsl/files/fsl-5.0.9-headers.patch @@ -1,6 +1,6 @@ # Include zlib header directly. # From: Francois Bissey <frp.bissey@gmail.com> -# Signed-off-by: Horea Christian <horea.christ@gmail.com> +# Signed-off-by: Horea Christian <gentoo@chymera.eu> # Submitted upstream: https://www.jiscmail.ac.uk/cgi-bin/webadmin?A2=ind1709&L=FSL&F=&S=&X=95C10F0B7D62EAAE7A&P=169254 --- fsl/src/miscvis/writepng.c.orig 2013-10-19 00:18:32.415203592 +1300 diff --git a/sci-biology/fsl/files/fsl-5.0.9-setup.patch b/sci-biology/fsl/files/fsl-5.0.9-setup.patch deleted file mode 100644 index c688cd6e8..000000000 --- a/sci-biology/fsl/files/fsl-5.0.9-setup.patch +++ /dev/null @@ -1,115 +0,0 @@ -diff -Naur fsl.orig/build fsl/build ---- fsl.orig/build 2015-03-29 00:10:39.845936000 +1300 -+++ fsl/build 2015-03-29 00:12:37.160487000 +1300 -@@ -11,9 +11,8 @@ - ifit load_varian load_dicom misc_scripts fdt first possum sgeutils \ - flameo oxford_asl relax qboot topup ptx2 lesions eddy dwssfp verbena"; - fi - --echo "Building projects - see build.log file for progress..." --./config/common/buildproj $PROJECTS > ./build.log 2>&1 --echo "Finished build : end of log file shows ..." --tail -10 build.log -+echo "Building projects" -+./config/common/buildproj $PROJECTS -+echo "Finished build" - -diff -Naur fsl.orig/config/common/buildproj fsl/config/common/buildproj ---- fsl.orig/config/common/buildproj 2015-03-29 00:11:47.130998000 +1300 -+++ fsl/config/common/buildproj 2015-03-29 00:12:37.164319000 +1300 -@@ -11,10 +11,10 @@ - fi - PROJECTS="$@" ; export PROJECTS ; - --FSLDIR=`pwd` -+#FSLDIR=`pwd` - FSLDEVDIR=${FSLDIR} - FSLCONFDIR=${FSLDIR}/config --FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` -+#FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` - export FSLDIR FSLDEVDIR FSLCONFDIR FSLMACHTYPE - - buildmessages="" ; export buildmessages ; -@@ -66,7 +66,7 @@ - if [ -x fslconfig ] ; then - ./fslconfig ; - fi -- if ${MAKE} -k ${MAKEOPTIONS} ; then -+ if ${MAKE} ${MAKEOPTIONS} ${MAKEOPTS} ; then - if ${MAKE} install ; then - installok=true; - # Clean up after ourselves -diff -Naur fsl.orig/config/common/vars.mk fsl/config/common/vars.mk ---- fsl.orig/config/common/vars.mk 2015-03-29 00:11:47.183520000 +1300 -+++ fsl/config/common/vars.mk 2015-03-29 00:18:53.151222000 +1300 -@@ -24,15 +24,15 @@ - USRCFLAGS = - USRCXXFLAGS = - --LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} -+LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} ${USERLDFLAGS} - --AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} -+AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} ${CPPFLAGS} - - CFLAGS = ${ANSI_FLAGS} ${ANSI_CFLAGS} ${DBGFLAGS} ${USEDCSTATICFLAGS} ${USRCFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+ ${AccumulatedIncFlags} ${USERCFLAGS} - - CXXFLAGS = ${ANSI_FLAGS} ${ANSI_CXXFLAGS} ${DBGFLAGS} ${USEDCXXSTATICFLAGS} ${USRCXXFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ -- ${AccumulatedIncFlags} -+ ${AccumulatedIncFlags} ${USERCXXFLAGS} - - HFILES = *.h - AFILES = *.a -diff -Naur fsl.orig/config/generic/systemvars.mk fsl/config/generic/systemvars.mk ---- fsl.orig/config/generic/systemvars.mk 2015-03-29 00:11:47.534246000 +1300 -+++ fsl/config/generic/systemvars.mk 2015-03-29 00:12:37.162129000 +1300 -@@ -4,20 +4,20 @@ - - # System dependent commands (NB: the first two are the most platform dependent) - --INSTALL = ginstall -p --RANLIB = ranlib -+INSTALL = install -p -+RANLIB = @@GENTOO_RANLIB@@ - - RM = /bin/rm - CP = /bin/cp - MV = /bin/mv - CHMOD = /bin/chmod - MKDIR = /bin/mkdir --TCLSH = ${FSLDIR}/bin/fsltclsh -+TCLSH = tclsh - - # Compiler dependent variables - --CC = gcc --CXX = c++ -+CC = @@GENTOO_CC@@ -+CXX = @@GENTOO_CXX@@ - CSTATICFLAGS = -static - CXXSTATICFLAGS = -static - -@@ -25,7 +25,7 @@ - - DEPENDFLAGS = -MM - --OPTFLAGS = -O3 -fexpensive-optimizations ${ARCHFLAGS} -+OPTFLAGS = - MACHDBGFLAGS = - GNU_ANSI_FLAGS = -Wall -ansi -pedantic - SGI_ANSI_FLAGS = -ansi -fullwarn -diff -Naur fsl.orig/extras/build fsl/extras/build ---- fsl.orig/extras/build 2015-03-29 00:11:15.080236000 +1300 -+++ fsl/extras/build 2015-03-29 00:15:53.170496000 +1300 -@@ -104,8 +104,8 @@ - if [ ${BUILDICONV} -eq 1 ]; then - PROJECTS="${PROJECTS} libiconv" - fi --PROJECTS="${PROJECTS} libgd libgdc libprob libcprob newmat cprob newran fftw" -+PROJECTS="libgdc libprob libcprob newmat cprob newran" - PROJECTS="${PROJECTS} boost libxml2-2.9.2 libxml++-2.34.0" - for projname in $PROJECTS; do - - if [ -d $FSLESRCDIR/$projname ] ; then diff --git a/sci-biology/fsl/files/fsl-5.0.11-no_xmlpp.patch b/sci-biology/fsl/files/fsl-6.0.2-no_xmlpp.patch index bccf0e238..6eccc4370 100644 --- a/sci-biology/fsl/files/fsl-5.0.11-no_xmlpp.patch +++ b/sci-biology/fsl/files/fsl-6.0.2-no_xmlpp.patch @@ -1,5 +1,16 @@ +From 9de29e5141afa43c06f347ca158b67168fbb0031 Mon Sep 17 00:00:00 2001 +From: François Bissey <frp.bissey@gmail.com> +Date: Mon, 20 Jan 2020 11:46:52 +1300 +Subject: [PATCH] Build without xmlpp since we use an external ciftilib that + doesnt require it. Replace it and other ciftilib flags with CIFTICFLAGS. + +--- + src/flameo/Makefile | 4 ++-- + src/melodic/Makefile | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + diff --git a/src/flameo/Makefile b/src/flameo/Makefile -index 5389e2f..52785c3 100644 +index d22eb965..e967e682 100644 --- a/src/flameo/Makefile +++ b/src/flameo/Makefile @@ -2,7 +2,7 @@ include ${FSLCONFDIR}/default.mk @@ -15,13 +26,13 @@ index 5389e2f..52785c3 100644 LIBS = -liconv endif --LIBS += -lutils -lnewimage -lmiscmaths -lm -lnewmat -lfslio -lniftiio -lcifti -lxml++-2.6 -lxml2 -lboost_filesystem -lboost_system -lznz -lprob -lz -+LIBS += -lutils -lnewimage -lmiscmaths -lm -lnewmat -lfslio -lniftiio ${CIFTILIBS} -lboost_filesystem -lboost_system -lznz -lprob -lz +-LIBS += -lutils -lnewimage -lmiscmaths -lm -lnewmat -lNewNifti -lcifti -lxml++-2.6 -lxml2 -lboost_filesystem -lboost_system -lznz -lprob -lz ++LIBS += -lutils -lnewimage -lmiscmaths -lm -lnewmat -lNewNifti ${CIFTILIBS} -lboost_filesystem -lboost_system -lznz -lprob -lz XFILES = flameo diff --git a/src/melodic/Makefile b/src/melodic/Makefile -index 53b951a..803c39e 100644 +index 50666517..0c356a2d 100644 --- a/src/melodic/Makefile +++ b/src/melodic/Makefile @@ -7,7 +7,7 @@ OPTFLAGS_alphaev6-dec-osf5.0-gcc2.95.2 = -O3 -mieee -mfp-trap-mode=sui @@ -37,8 +48,11 @@ index 53b951a..803c39e 100644 LIBS = -liconv endif --LIBS += -lutils -lnewimage -lmiscplot -lmiscpic -lmiscmaths -lfslio -lniftiio -lcifti -lxml++-2.6 -lxml2 -lboost_filesystem -lboost_system -lznz -lnewmat -lprob -lm -lgdc -lgd -lpng -lz -+LIBS += -lutils -lnewimage -lmiscplot -lmiscpic -lmiscmaths -lfslio -lniftiio ${CIFTILIBS} -lboost_filesystem -lboost_system -lznz -lnewmat -lprob -lm -lgdc -lgd -lpng -lz +-LIBS += -lutils -lnewimage -lmiscplot -lmiscpic -lmiscmaths -lNewNifti -lcifti -lxml++-2.6 -lxml2 -lboost_filesystem -lboost_system -lznz -lnewmat -lprob -lm -lgdc -lgd -lpng -lz ++LIBS += -lutils -lnewimage -lmiscplot -lmiscpic -lmiscmaths -lNewNifti ${CIFTILIBS} -lboost_filesystem -lboost_system -lznz -lnewmat -lprob -lm -lgdc -lgd -lpng -lz TEST_OBJS = test.o +-- +2.24.1 + diff --git a/sci-biology/fsl/files/fsl-5.0.11-qstring_compat.patch b/sci-biology/fsl/files/fsl-6.0.2-qstring_compat.patch index 78aa020c6..9e6682a48 100644 --- a/sci-biology/fsl/files/fsl-5.0.11-qstring_compat.patch +++ b/sci-biology/fsl/files/fsl-6.0.2-qstring_compat.patch @@ -1,8 +1,8 @@ -From bbd60f634cdcdfbbb3eb8f3b6d00f366d9f34bf9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Fran=C3=A7ois=20Bissey?= <frp.bissey@gmail.com> -Date: Thu, 18 Oct 2018 11:21:05 +1300 -Subject: [PATCH] Basic compatibility between for AString built with either - glib ustring or QString +From 5a5ab3c80eaaea1fe9a43659e2ea5b773b587bb0 Mon Sep 17 00:00:00 2001 +From: François Bissey <frp.bissey@gmail.com> +Date: Mon, 20 Jan 2020 11:51:52 +1300 +Subject: [PATCH] Because we use qstrings in ciftilib, calls to ciftilib file + function have to be made into compatible c strings. --- src/flameo/gsa.cc | 4 ++-- @@ -11,15 +11,15 @@ Subject: [PATCH] Basic compatibility between for AString built with either 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/flameo/gsa.cc b/src/flameo/gsa.cc -index 6a477f9..0860d46 100644 +index 70f8f385..16167abe 100644 --- a/src/flameo/gsa.cc +++ b/src/flameo/gsa.cc @@ -74,7 +74,7 @@ namespace GSA { sourceType=mode; if ( sourceType.compare("CIFTI") == 0 ) { cifti::CiftiFile inputCifti; -- inputCifti.openFile(fslbasename(filename)+".nii"); -+ inputCifti.openFile((fslbasename(filename)+".nii").c_str()); +- inputCifti.openFile(make_basename(filename)+".nii"); ++ inputCifti.openFile((make_basename(filename)+".nii").c_str()); ciftiExemplar=inputCifti.getCiftiXML(); cerr << "ndim " << ciftiExemplar.getNumberOfDimensions() << endl; cerr << "type1 " << ciftiExemplar.getMappingType(0) << endl; @@ -27,13 +27,13 @@ index 6a477f9..0860d46 100644 scalarsMap.setLength(data.Nrows()); ciftiExemplar.setMap(0, scalarsMap); CiftiFile outputFile; -- outputFile.setWritingFile(fslbasename(filename)+extension+".nii");//sets up on-disk writing with default writing version -+ outputFile.setWritingFile((fslbasename(filename)+extension+".nii").c_str());//sets up on-disk writing with default writing version +- outputFile.setWritingFile(make_basename(filename)+extension+".nii");//sets up on-disk writing with default writing version ++ outputFile.setWritingFile((make_basename(filename)+extension+".nii").c_str());//sets up on-disk writing with default writing version outputFile.setCiftiXML(ciftiExemplar,false); vector<float> scratchRow(data.Nrows());//read/write a row at a time for (int64_t row=0;row<data.Ncols();row++) { diff --git a/src/melodic/meldata.cc b/src/melodic/meldata.cc -index f310dc7..5e9bc18 100644 +index c4ad2349..1515e702 100644 --- a/src/melodic/meldata.cc +++ b/src/melodic/meldata.cc @@ -118,7 +118,7 @@ namespace Melodic{ @@ -46,7 +46,7 @@ index f310dc7..5e9bc18 100644 tmpData.ReSize(dims[0],dims[1]); //swapped compared to cifti vector<float> scratchRow(dims[0]);//read/write a row at a time diff --git a/src/melodic/meldata.h b/src/melodic/meldata.h -index 1e1adfc..d898152 100644 +index 49774003..f5326bdd 100644 --- a/src/melodic/meldata.h +++ b/src/melodic/meldata.h @@ -109,7 +109,7 @@ namespace Melodic{ @@ -59,5 +59,5 @@ index 1e1adfc..d898152 100644 cifti::CiftiScalarsMap scalarsMap; std::vector<char> foo = xml.writeXMLToVector(); -- -2.18.1 +2.24.1 diff --git a/sci-biology/fsl/files/fsl-6.0.2-template.patch b/sci-biology/fsl/files/fsl-6.0.2-template.patch new file mode 100644 index 000000000..597241a3b --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.2-template.patch @@ -0,0 +1,55 @@ +Subject: as discussed in https://github.com/gentoo/sci/issues/963 + +--- a/src/newimage/generalio.cc 2019-09-11 09:24:32.000000000 -0400 ++++ b/src/newimage/generalio.cc §2020-08-07 20:30:20.037494201 -0400 +@@ -308,6 +308,41 @@ + return 0; + } + ++template ++int readGeneralVolume<double>(volume<double>& target, const string& filename, ++ short& dtype, const bool swap2radiological, ++ int64_t x0, int64_t y0, int64_t z0, int64_t t0, int64_t d50, int64_t d60, int64_t d70, ++ int64_t x1, int64_t y1, int64_t z1, int64_t t1, int64_t d51, int64_t d61, int64_t d71, ++ const bool readAs4D); ++ ++template ++int readGeneralVolume<float>(volume<float>& target, const string& filename, ++ short& dtype, const bool swap2radiological, ++ int64_t x0, int64_t y0, int64_t z0, int64_t t0, int64_t d50, int64_t d60, int64_t d70, ++ int64_t x1, int64_t y1, int64_t z1, int64_t t1, int64_t d51, int64_t d61, int64_t d71, ++ const bool readAs4D); ++ ++template ++int readGeneralVolume<short>(volume<short>& target, const string& filename, ++ short& dtype, const bool swap2radiological, ++ int64_t x0, int64_t y0, int64_t z0, int64_t t0, int64_t d50, int64_t d60, int64_t d70, ++ int64_t x1, int64_t y1, int64_t z1, int64_t t1, int64_t d51, int64_t d61, int64_t d71, ++ const bool readAs4D); ++ ++template ++int readGeneralVolume<char>(volume<char>& target, const string& filename, ++ short& dtype, const bool swap2radiological, ++ int64_t x0, int64_t y0, int64_t z0, int64_t t0, int64_t d50, int64_t d60, int64_t d70, ++ int64_t x1, int64_t y1, int64_t z1, int64_t t1, int64_t d51, int64_t d61, int64_t d71, ++ const bool readAs4D); ++ ++template ++int readGeneralVolume<int>(volume<int>& target, const string& filename, ++ short& dtype, const bool swap2radiological, ++ int64_t x0, int64_t y0, int64_t z0, int64_t t0, int64_t d50, int64_t d60, int64_t d70, ++ int64_t x1, int64_t y1, int64_t z1, int64_t t1, int64_t d51, int64_t d61, int64_t d71, ++ const bool readAs4D); ++ + template int read_volumeROI(volume<char>& target, const string& filename, + short& dtype, + int64_t x0, int64_t y0, int64_t z0, int64_t t0, + +--- a/src/fslsurface/fslsurfaceio.cc 2019-09-11 09:23:11.000000000 -0400 ++++ b/src/fslsurface/fslsurfaceio.cc 2020-08-08 04:17:55.917387550 -0400 +@@ -1055,6 +1055,7 @@ + return 0; + } + ++ template int readGIFTI<float, unsigned int>( fslSurface<float, unsigned int> & surf, const string & filename); + template int writeGIFTI<float, unsigned int>( const fslSurface<float, unsigned int> & surf, const std::string & filename, int enc); diff --git a/sci-biology/fsl/files/fsl-6.0.4-cuda_buildsettings.patch b/sci-biology/fsl/files/fsl-6.0.4-cuda_buildsettings.patch new file mode 100644 index 000000000..749e80623 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-cuda_buildsettings.patch @@ -0,0 +1,12 @@ +diff -Naur fsl.orig/config/buildSettings.mk fsl/config/buildSettings.mk +--- fsl.orig/config/buildSettings.mk 2020-12-02 16:22:57.999912865 -0500 ++++ fsl/config/buildSettings.mk 2020-12-02 16:24:15.332915270 -0500 +@@ -144,7 +144,7 @@ + # CUDA development environment + CUDAVER := $(or $(CUDAVER),9.1) + #$(info $$CUDAVER is [${CUDAVER}]) +-CUDA_INSTALLATION = /opt/cuda-${CUDAVER} ++CUDA_INSTALLATION = /opt/cuda + ifdef SINGULARITY_NAME + CUDA_INSTALLATION = /usr/local/cuda-${CUDAVER} + endif diff --git a/sci-biology/fsl/files/fsl-6.0.4-eddy_cuda.patch b/sci-biology/fsl/files/fsl-6.0.4-eddy_cuda.patch new file mode 100644 index 000000000..ad118c39a --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-eddy_cuda.patch @@ -0,0 +1,21 @@ +diff -Naur fsl.orig/src/eddy/Makefile fsl/src/eddy/Makefile +--- fsl.orig/src/eddy/Makefile 2020-12-02 16:07:47.327884548 -0500 ++++ fsl/src/eddy/Makefile 2020-12-02 16:11:21.149891196 -0500 +@@ -29,6 +29,8 @@ + TMPCXXFLAGS_2= + TMPNAME_1= + TMPNAME_2= ++cuda=1 ++cpu=1 + TOPUP_DIR=../topup + + ifndef cuda +@@ -74,7 +75,7 @@ + ifdef NVCC11 + NVCC=${NVCC11} + endif +-NVCCFLAGS=-c -DCOMPILE_GPU -O3 -m 64 -std=c++11 ++NVCCFLAGS=-c -DCOMPILE_GPU -O3 -m 64 -std=c++11 @@GENTOO_NVCC_FLAGS@@ + ifeq ($(CLOBBER_CLANG),1) + NVCCFLAGS+= -DCLOBBER_CLANG + endif diff --git a/sci-biology/fsl/files/fsl-6.0.4-fdt_cuda.patch b/sci-biology/fsl/files/fsl-6.0.4-fdt_cuda.patch new file mode 100644 index 000000000..7f322027b --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-fdt_cuda.patch @@ -0,0 +1,14 @@ +diff -Naur fsl.orig/src/fdt/Makefile fsl/src/fdt/Makefile +--- fsl.orig/src/fdt/Makefile 2020-12-02 19:06:55.826218772 -0500 ++++ fsl/src/fdt/Makefile 2020-12-02 19:08:02.883220858 -0500 +@@ -6,7 +6,9 @@ + $(eval $($(PROJNAME)_MASTERBUILD)) + endif + +-ifeq ($(COMPILE_GPU), 1) ++# disable CUDA support for fdt ++#ifeq ($(COMPILE_GPU), 1) ++ifeq (0, 1) + COMPILE_WITH_GPU=libbedpostx_cuda.so merge_parts_gpu xfibres_gpu CUDA/split_parts_gpu + SCRIPTS_GPU=CUDA/bedpostx_gpu CUDA/bedpostx_postproc_gpu.sh + endif diff --git a/sci-biology/fsl/files/fsl-6.0.4-flameo_std.patch b/sci-biology/fsl/files/fsl-6.0.4-flameo_std.patch new file mode 100644 index 000000000..a991f1ed3 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-flameo_std.patch @@ -0,0 +1,11 @@ +diff -Naur fsl.orig/src/flameo/Makefile fsl/src/flameo/Makefile +--- fsl.orig/src/flameo/Makefile 2021-01-06 14:04:35.728274475 -0500 ++++ fsl/src/flameo/Makefile 2021-01-06 14:08:18.204269285 -0500 +@@ -4,6 +4,7 @@ + + USRINCFLAGS = -I${INC_NEWMAT} -I${INC_PROB} -I${INC_ZLIB} -DCIFTILIB_USE_XMLPP -I${FSLEXTINC} -I${INC_XML2} -I${INC_XML++} -I${INC_XML++CONF} -I${INC_BOOST} -I${FSLDIR}/include/ciftiio + USRLDFLAGS = -L${LIB_NEWMAT} -L${LIB_PROB} -L${LIB_ZLIB} ++USRCXXFLAGS = -std=c++11 + + UNAME := $(shell uname) + ifeq (${UNAME},Darwin) diff --git a/sci-biology/fsl/files/fsl-6.0.4-fsldir_redux-p1.patch b/sci-biology/fsl/files/fsl-6.0.4-fsldir_redux-p1.patch new file mode 100644 index 000000000..ca3945442 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-fsldir_redux-p1.patch @@ -0,0 +1,240 @@ +From 2bc4be1f55b27a733e1e624b34bc570187ba95e1 Mon Sep 17 00:00:00 2001 +From: François Bissey <frp.bissey@gmail.com> +Date: Mon, 20 Jan 2020 11:40:53 +1300 +Subject: [PATCH] Making sure fsl code and executable can find other executable + and data in standard location. + +--- + src/fast4/fast_two.cc | 8 ++++---- + src/feat5/feat_model.cc | 8 +++----- + src/feat5/tsplot.cc | 7 +++---- + src/first/first_utils.cc | 4 ++-- + src/fnirt/fnirtfns.cpp | 11 ++++------- + src/fslsurface/fslsurface_first.cc | 6 ++---- + src/fslsurface/fslsurfacemaths.cpp | 12 ------------ + src/libvis/miscpic.h | 7 +------ + src/melodic/meldata.cc | 4 ++-- + src/melodic/meloptions.cc | 8 -------- + src/melodic/meloptions.h | 1 - + src/melodic/melreport.cc | 12 ++++++------ + src/melodic/melreport.h | 20 ++++++++++---------- + src/mm/mixture_model.cc | 4 ++-- + src/siena/siena_diff.cc | 28 +++++++++++++--------------- + src/topup/topupfns.cpp | 3 +-- + 16 files changed, 53 insertions(+), 90 deletions(-) + +diff --git a/src/fast4/fast_two.cc b/src/fast4/fast_two.cc +index 592b5df..b525444 100644 +--- a/src/fast4/fast_two.cc ++++ b/src/fast4/fast_two.cc +@@ -166,7 +166,7 @@ int prior_registration(string inname, string main_prior_vol, NEWIMAGE::volume<fl + string csfPriorName, grayPriorName, whitePriorName; + if(alternatePriors.unset()) + { +- string priorRootName=string(getenv("FSLDIR")) + "/data/standard/tissuepriors/avg152T1_"; ++ string priorRootName="@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/tissuepriors/avg152T1_"; + csfPriorName = priorRootName+"csf"; + grayPriorName = priorRootName+"gray"; + whitePriorName = priorRootName+"white"; +@@ -215,15 +215,15 @@ string csfPriorName, grayPriorName, whitePriorName; + if(bapused>0) + { + char reg[1024]; +- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str()); ++ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), csfPriorName.c_str(), (main_prior_vol+"_csf_stdspace").c_str(), bapriori.value().c_str()); + if(verbose.value()) + cout<<reg<<endl; + system(reg); +- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str()); ++ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), grayPriorName.c_str(), (main_prior_vol+"_gm_stdspace").c_str(), bapriori.value().c_str()); + if(verbose.value()) + cout<<reg<<endl; + system(reg); +- sprintf(reg, "%s/bin/flirt -ref %s -in %s -out %s -applyxfm -init %s", getenv("FSLDIR"), inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str()); ++ sprintf(reg, "flirt -ref %s -in %s -out %s -applyxfm -init %s", inname.c_str(), whitePriorName.c_str(), (main_prior_vol+"_wm_stdspace").c_str(), bapriori.value().c_str()); + if(verbose.value()) + cout << reg << endl; + system(reg); +diff --git a/src/feat5/feat_model.cc b/src/feat5/feat_model.cc +index 399a13e..e15e43c 100644 +--- a/src/feat5/feat_model.cc ++++ b/src/feat5/feat_model.cc +@@ -744,7 +744,7 @@ int main(int argc, char **argv) + vector<int> G; + vector<string> titles; + float tr, mult, trmult, nltffwhm=0, maxconvwin=0; +- char fl[10000], *FSLDIR; ++ char fl[10000]; + string fn, filename; + FONT_DATA *font_data = new FONT_DATA[1]; + +@@ -763,8 +763,6 @@ int main(int argc, char **argv) + if (argc==3) + motionparams=remmean(read_ascii_matrix(argv[2])); + +- FSLDIR=getenv("FSLDIR"); +- + fn = string(argv[1])+".fsf"; + + level = atoi(find_line(fn, "fmri(level)", fl)); +@@ -1510,7 +1508,7 @@ int main(int argc, char **argv) + writeCovarianceImage(string(argv[1])+"_cov.ppm", contrasts, F, nftests, realDesign, level, evs.eigenvals, font_data, contrasts.RE); + writeImagePreview(string(argv[1])+".ppm", contrasts, F, nftests, realDesign, level, evs, font_data, titles, tr, nltffwhm, nTimepoints, G); + +- filename=string(getenv("FSLDIR"))+"/bin/wpng -q -overwrite "+string(argv[1])+".ppm "; ++ filename="wpng -q -overwrite "+string(argv[1])+".ppm "; + system(filename.c_str()); + + return(0); +@@ -2161,6 +2159,6 @@ char the_string[10000]; + + fclose(outputfile); + +- filename=string(getenv("FSLDIR")) + "/bin/wpng -q -overwrite " + filename; ++ filename="wpng -q -overwrite " + filename; + system(filename.c_str()); + } +diff --git a/src/feat5/tsplot.cc b/src/feat5/tsplot.cc +index ae191fd..3a02b55 100644 +--- a/src/feat5/tsplot.cc ++++ b/src/feat5/tsplot.cc +@@ -293,7 +293,7 @@ int main(int argc, char **argv) + ofstream outputFile; + int numEVs, npts, numContrasts=1, nftests=0, GRPHSIZE(600), PSSIZE(600); + vector<double> normalisedContrasts, model, triggers; +- string fmriFileName, fslPath, featdir, vType, indexText; ++ string fmriFileName, featdir, vType, indexText; + ColumnVector NewimageVoxCoord(4),NiftiVoxCoord(4); + bool outputText(true), useCoordinate(false), prewhiten(false), useTriggers(false), customMask(false), modelFree(false), isHigherLevel(false), outputDataOnly(false); + bool zWeightClusters(true); +@@ -307,7 +307,6 @@ volume<float> immask; + if (argc<2) usage(""); + featdir=string(argv[1]); + fmriFileName=featdir+"/filtered_func_data"; +- fslPath=string(getenv("FSLDIR")); + + string outputName(featdir); + +@@ -753,7 +752,7 @@ volume4D<float> acs; + cerr << "Can't open output report file " << outputName << endl; + exit(1); + } +- outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< fslPath <<"/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText; ++ outputFile << "<HTML>\n<TITLE>"<< statType << num2str(i) <<"</TITLE>\n<BODY BACKGROUND=\"file:"<< "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report - "<< statType << num2str(i) <<"</H1>\n</CENTER>\n<hr><b>Full plots</b><p>\n"<< graphText; + if (useTriggers) outputFile << "\n<hr><b>Peristimulus plots</b><p>\n"<< peristimulusText <<"\n<HR></BODY></HTML>\n\n"; + else outputFile << "\n</BODY></HTML>\n\n"; + outputFile.close(); +@@ -768,7 +767,7 @@ volume4D<float> acs; + cerr << "Can't open output report file " << outputName << endl; + exit(1); + } +- outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << fslPath << "/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl; ++ outputFile << "<HTML>\n<TITLE>FEAT Time Series Report</TITLE>\n<BODY BACKGROUND=\"file:" << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">\n<hr><CENTER>\n<H1>FEAT Time Series Report</H1>\n</CENTER>\n<hr>" << indexText << "<HR></BODY></HTML>" << endl << endl; + outputFile.close(); + + /* now output same thing without start and end, for inclusion in feat report */ +diff --git a/src/first/first_utils.cc b/src/first/first_utils.cc +index 68be44b..85960f4 100644 +--- a/src/first/first_utils.cc ++++ b/src/first/first_utils.cc +@@ -1954,8 +1954,8 @@ void do_work_bvars(){ + if (!surfaceVAout.value()) { + // do not output on the surface, instead do the new default of outputting a volume with the scalar normal dot product values (for use with randomise) + volume<float> refim; +- if (useReconMNI.value()) { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); } +- else { read_volume(refim,string(getenv("FSLDIR")) + "/data/standard/MNI152_T1_1mm"); } ++ if (useReconMNI.value()) { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); } ++ else { read_volume(refim,"@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); } + volume<float> maskvol(refim); + maskvol=0.0f; + volume4D<float> volnormals; +diff --git a/src/fnirt/fnirtfns.cpp b/src/fnirt/fnirtfns.cpp +index 24e26fd..77899e7 100644 +--- a/src/fnirt/fnirtfns.cpp ++++ b/src/fnirt/fnirtfns.cpp +@@ -1203,8 +1203,7 @@ string existing_ref_fname(const string& ref_fname) + return(string(ref_fname)); + } + else { +- const char *fsldir_ptr = getenv("FSLDIR"); +- string eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname; ++ string eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname; + if (NEWIMAGE::FslFileExists(eref_fname)) return(eref_fname); + else return(string("")); + } +@@ -1230,9 +1229,8 @@ string existing_ref_fname(const string& ref_fname) + NEWIMAGE::read_volume_hdr_only(vref,ref_fname); // Throws if file dont exist + eref_fname = ref_fname; + } +- catch(...) { // Didn't exist in current directory, try in ${FSLDIR}/data/standard +- const char *fsldir_ptr = getenv("FSLDIR"); +- eref_fname = string(fsldir_ptr) + string("/data/standard/") + ref_fname; ++ catch(...) { // Didn't exist in current directory, try in .../data/standard ++ eref_fname = string("@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/") + ref_fname; + try { + cout << "Could not find " << ref_fname << ", now checking " << eref_fname << endl; + NEWIMAGE::read_volume_hdr_only(vref,eref_fname); // Throws if file dont exist +@@ -1267,8 +1265,7 @@ string existing_conf_file(const string& cfname) + if (check_exist(ecfname)) return(ecfname); + } + if (!FNIRT::path(cfname).length()) { // If no path explicitly given +- const char *fsldir_ptr = getenv("FSLDIR"); +- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname; ++ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname; + if (check_exist(ecfname)) return(ecfname); + else if (!FNIRT::extension(ecfname).length()) { // If no path _and_ no extension given + ecfname += string(".cnf"); +diff --git a/src/fslsurface/fslsurface_first.cc b/src/fslsurface/fslsurface_first.cc +index faec642..b2ef794 100644 +--- a/src/fslsurface/fslsurface_first.cc ++++ b/src/fslsurface/fslsurface_first.cc +@@ -500,8 +500,7 @@ namespace fslsurface_name { + + volume<float>* immni = new volume<float>(); + +- char* fsldir = getenv("FSLDIR"); +- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm"); ++ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); + + //read_volume_hdr_only(*immni, template_name); + +@@ -699,8 +698,7 @@ namespace fslsurface_name { + + volume<float>* immni = new volume<float>(); + +- char* fsldir = getenv("FSLDIR"); +- read_volume_hdr_only(*immni, string(fsldir) + "/data/standard/MNI152_T1_1mm"); ++ read_volume_hdr_only(*immni, "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/data/standard/MNI152_T1_1mm"); + + //read_volume_hdr_only(*immni, template_name); + +diff --git a/src/fslsurface/fslsurfacemaths.cpp b/src/fslsurface/fslsurfacemaths.cpp +index eaf55eb..3dc184d 100644 +--- a/src/fslsurface/fslsurfacemaths.cpp ++++ b/src/fslsurface/fslsurfacemaths.cpp +@@ -598,12 +598,6 @@ int main (int argc, char * argv[]) + + }else if (command == "-reconFromBvars"){ + cout<<"do recon "<<endl; +- char* fsldir = getenv("FSLDIR"); +- if (fsldir == NULL) +- { +- cerr<<"FSLDIR has not been set. "<<endl; +- exit(EXIT_FAILURE); +- } + //file.bvars,mni_template.nii.gz + // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm"; + reconSurface_from_bvars( surf, string(argv[i_arg+1])); +@@ -612,12 +606,6 @@ int main (int argc, char * argv[]) + + }else if (command == "-reconAllFromBvarsAndSave"){ + cout<<"do recon+save "<<argc<<" "<<i_arg<<endl; +- char* fsldir = getenv("FSLDIR"); +- if (fsldir == NULL) +- { +- cerr<<"FSLDIR has not been set. "<<endl; +- exit(EXIT_FAILURE); +- } + //file.bvars,mni_template.nii.gz + // string mni = string(fsldir)+"/data/standard/MNI152_T1_1mm"; + cout<<"recon "<< string(argv[i_arg+1])<<endl; diff --git a/sci-biology/fsl/files/fsl-6.0.4-fsldir_redux-p2.patch b/sci-biology/fsl/files/fsl-6.0.4-fsldir_redux-p2.patch new file mode 100644 index 000000000..af498b400 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-fsldir_redux-p2.patch @@ -0,0 +1,254 @@ +diff --git a/src/libvis/miscpic.h b/src/libvis/miscpic.h +index a2f3855..5f440f2 100644 +--- a/src/libvis/miscpic.h ++++ b/src/libvis/miscpic.h +@@ -90,12 +90,7 @@ namespace MISCPIC{ + markRight=false; + trans= -10; + edgethresh = 0.0; +- if(getenv("FSLDIR")!=0){ +- lutbase = string(getenv("FSLDIR")) + "/etc/luts/"; +- } +- else{ +- lutbase = string("/"); +- } ++ lutbase = "@GENTOO_PORTAGE_EPREFIX@/etc/luts/"; + title = string(""); + cbartype = string(""); + cbarptr = NULL; +diff --git a/src/melodic/meldata.cc b/src/melodic/meldata.cc +index 1749a45..c4ad234 100644 +--- a/src/melodic/meldata.cc ++++ b/src/melodic/meldata.cc +@@ -992,7 +992,7 @@ namespace Melodic{ + void MelodicData::est_smoothness() + { + if(Resels == 0){ +- string SM_path = opts.binpath + "smoothest"; ++ string SM_path = "smoothest"; + string Mask_fname = logger.appendDir("mask"); + + if(opts.segment.value().length()>0){ +@@ -1157,7 +1157,7 @@ namespace Melodic{ + // set up all strings + string BET_outputfname = string(Mean_fname)+"_brain"; + +- string BET_path = opts.binpath + "bet"; ++ string BET_path = "bet"; + string BET_optarg = "-m -f 0.4"; // see man bet + string Mask_fname = BET_outputfname+"_mask"; + +diff --git a/src/melodic/meloptions.cc b/src/melodic/meloptions.cc +index 08170c7..252e72b 100644 +--- a/src/melodic/meloptions.cc ++++ b/src/melodic/meloptions.cc +@@ -93,14 +93,6 @@ MelodicOptions* MelodicOptions::gopt = NULL; + explicitnums = false; + logfname = string("log.txt"); + +- // work out the path to the $FSLDIR/bin directory +- if(getenv("FSLDIR")!=0){ +- binpath = (string) getenv("FSLDIR") + "/bin/"; +- } else{ +- binpath = argv[0]; +- binpath = binpath.substr(0,binpath.length()-7); +- } +- + // parse once to establish log directory name + for(int a = options.parse_command_line(argc, argv); a < argc; a++); + +diff --git a/src/melodic/meloptions.h b/src/melodic/meloptions.h +index f546125..b964b7d 100644 +--- a/src/melodic/meloptions.h ++++ b/src/melodic/meloptions.h +@@ -93,7 +93,6 @@ class MelodicOptions { + ~MelodicOptions() { delete gopt; } + + string version; +- string binpath; + string logfname; + bool filtermode; + bool explicitnums; +diff --git a/src/melodic/melreport.cc b/src/melodic/melreport.cc +index 141b6c2..2625059 100644 +--- a/src/melodic/melreport.cc ++++ b/src/melodic/melreport.cc +@@ -84,8 +84,8 @@ namespace Melodic{ + IChtml.setDir(report.getDir(),mmodel.get_prefix()+".html"); + + {//start IC page +- IChtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + +- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl ++ IChtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl + << "<style type=\"text/css\">OBJECT { width: 100% }</style>" + << "<TITLE>FSL</TITLE></HEAD>" << endl + << "<IFRAME height=" << int(melodat.get_numfiles()/30 + 1)*50 +@@ -486,8 +486,8 @@ namespace Melodic{ + + {//start IC2 page + IChtml2.setDir(report.getDir(),mmodel.get_prefix()+"_MM.html"); +- IChtml2 << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + +- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl ++ IChtml2 << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl + << "<style type=\"text/css\">OBJECT { width: 100% }</style>" + << "<TITLE>FSL</TITLE></HEAD>" << endl + << "<IFRAME height="<< int(melodat.get_numfiles()/30 + 1)*50 +@@ -665,8 +665,8 @@ namespace Melodic{ + IChtml << "<HTML> " << endl + << "<TITLE>MELODIC Component " << num2str(cnum) + << "</TITLE>" << endl +- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR") +- << "/doc/images/fsl-bg.jpg\">" << endl ++ << "<BODY BACKGROUND=\"file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl + << "<hr><CENTER><H1>MELODIC Component " << num2str(cnum) + << "</H1>"<< endl; + +diff --git a/src/melodic/melreport.h b/src/melodic/melreport.h +index 574fc4c..e444681 100644 +--- a/src/melodic/melreport.h ++++ b/src/melodic/melreport.h +@@ -104,21 +104,21 @@ namespace Melodic{ + const time_t tmptime = time(NULL); + system(("mkdir "+ logger.appendDir("report") + " 2>/dev/null").c_str()); + report.setDir(logger.appendDir("report"),"00index.html",true,false,ios::out); +- report << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + +- (string) getenv("FSLDIR") +"/doc/fsl.css>" ++ report << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" + << "<TITLE>MELODIC report</TITLE></HEAD><BODY>" + << endl <<endl; + loghtml.setDir(report.getDir(),"log.html"); +- loghtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" + +- (string) getenv("FSLDIR") +"/doc/fsl.css>" ++ loghtml << "<HTML><HEAD><link REL=stylesheet TYPE=text/css href=file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" + << "<TITLE>MELODIC report</TITLE></HEAD><BODY>" + << endl <<endl; + navigator.setDir(report.getDir(),"nav.html"); + head.setDir(report.getDir(),"head.html"); +- navigator << "<link REL=stylesheet TYPE=text/css href=file:"+ +- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl; +- head << "<link REL=stylesheet TYPE=text/css href=file:"+ +- (string) getenv("FSLDIR") +"/doc/fsl.css>" << endl; ++ navigator << "<link REL=stylesheet TYPE=text/css href=file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl; ++ head << "<link REL=stylesheet TYPE=text/css href=file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/fsl.css>" << endl; + head <<"<TABLE BORDER=0><TR>" << endl + <<" <TD ALIGN=CENTER WIDTH=100%>"<< endl + <<"<TABLE BORDER=0>"<< endl +@@ -130,8 +130,8 @@ namespace Melodic{ + << "</tr></table>" << endl + << "<TD ALIGN=RIGHT>" << endl + << "<a href=http://www.fmrib.ox.ac.uk/fsl target=_top>" << endl +- << "<IMG BORDER=0 SRC=file:"<< getenv("FSLDIR") +- << "/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl ++ << "<IMG BORDER=0 SRC=file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-logo-big.jpg WIDTH=165></a>" << endl + << "</TD>"<<endl<<"</TR></TABLE> <hr>"<<endl; + if(opts.guireport.value()==""){ + report <<"<OBJECT data=head.html></OBJECT>" << endl; +diff --git a/src/mm/mixture_model.cc b/src/mm/mixture_model.cc +index b8e6167..5f00693 100644 +--- a/src/mm/mixture_model.cc ++++ b/src/mm/mixture_model.cc +@@ -2224,8 +2224,8 @@ namespace Mm { + + htmllog << "<HTML> " << endl + << "<TITLE>Mixture Model fit for" << data_name << "</TITLE>" << endl +- << "<BODY BACKGROUND=\"file:" << getenv("FSLDIR") +- << "/doc/images/fsl-bg.jpg\">" << endl ++ << "<BODY BACKGROUND=\"file:" ++ << "@GENTOO_PORTAGE_EPREFIX@/usr/share/fsl/doc/images/fsl-bg.jpg\">" << endl + << "<hr><CENTER><H1>Mixture Model fit for<br>" << data_name << " </H1>"<< endl; + + htmllog << "<hr><p>" << endl; +diff -Naur fsl.orig/src/siena/siena_diff.cc fsl/src/siena/siena_diff.cc +--- fsl.orig/src/siena/siena_diff.cc 2020-12-02 15:52:50.359856656 -0500 ++++ fsl/src/siena/siena_diff.cc 2020-12-02 16:03:25.699876412 -0500 +@@ -107,7 +107,7 @@ + { + // {{{ vars + +-char thestring[10000], segoptions[10000], fsldir[10000]; ++char thestring[10000], segoptions[10000]; + int x_size, y_size, z_size, size, x, y, z, i, count, + seg2=0, ignore_z=0, ignore_top_slices=0, //erode_mask=0, + ignore_bottom_slices=0, debug=0, flow_output=1, edge_masking=0; +@@ -124,8 +124,6 @@ + + string argv1(argv[1]), argv2(argv[2]); + +-sprintf(fsldir,"%s",getenv("FSLDIR")); +- + for (i = 3; i < argc; i++) + { + if (!strcmp(argv[i], "-i")) +@@ -206,26 +204,26 @@ + // }}} + // {{{ transform images and masks + +-sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", +- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); ++sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", ++ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); + printf("%s\n",thestring); system(thestring); + +-sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", +- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); ++sprintf(thestring,"flirt -o %s_halfwayto_%s -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s", ++ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); + printf("%s\n",thestring); system(thestring); + +-sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", +- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); ++sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", ++ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1]); + printf("%s\n",thestring); system(thestring); + +-sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", +- fsldir,argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); ++sprintf(thestring,"flirt -o %s_halfwayto_%s_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_brain_mask", ++ argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); + printf("%s\n",thestring); system(thestring); + + if (edge_masking) + { +- sprintf(thestring,"%s/bin/flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s", +- fsldir,argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); ++ sprintf(thestring,"flirt -o %s_halfwayto_%s_valid_mask -applyisoxfm 1 -paddingsize 0 -init %s_halfwayto_%s.mat -ref %s -in %s_valid_mask_with_%s", ++ argv[1],argv[2],argv[1],argv[2],argv[1],argv[1],argv[2]); + printf("%s\n",thestring); system(thestring); + } + +@@ -284,8 +282,8 @@ + cout << "saving image 1 to disk prior to segmentation" << endl; + save_volume(in1,argv1+"_halfwayto_"+argv2+"_brain"); + in1.destroy(); +- sprintf(thestring,"%s/bin/fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1", +- fsldir,segtype,segoptions,argv[1],argv[2],argv[1],argv[2]); ++ sprintf(thestring,"fast %s %s %s_halfwayto_%s_brain > %s_halfwayto_%s_brain.vol 2>&1", ++ segtype,segoptions,argv[1],argv[2],argv[1],argv[2]); + cout << thestring << endl; + system(thestring); + } +diff --git a/src/topup/topupfns.cpp b/src/topup/topupfns.cpp +index 6873758..9e8b956 100644 +--- a/src/topup/topupfns.cpp ++++ b/src/topup/topupfns.cpp +@@ -463,8 +463,7 @@ string existing_conf_file(const string& cfname) + if (TOPUP::check_exist(ecfname)) return(ecfname); + } + if (!TOPUP::path(cfname).length()) { // If no path explicitly given +- const char *fsldir_ptr = getenv("FSLDIR"); +- ecfname = string(fsldir_ptr) + string("/etc/flirtsch/") + cfname; ++ ecfname = string("@GENTOO_PORTAGE_EPREFIX@/etc/flirtsch/") + cfname; + if (TOPUP::check_exist(ecfname)) return(ecfname); + else if (!TOPUP::extension(ecfname).length()) { // If no path _and_ no extension given + ecfname += string(".cnf"); +-- +2.24.1 + diff --git a/sci-biology/fsl/files/fsl-6.0.4-gcc10_include.patch b/sci-biology/fsl/files/fsl-6.0.4-gcc10_include.patch new file mode 100644 index 000000000..ae836c065 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-gcc10_include.patch @@ -0,0 +1,11 @@ +diff -Naur fsl.orig/src/newimage/newimageio.h fsl/src/newimage/newimageio.h +--- fsl.orig/src/newimage/newimageio.h 2020-12-02 15:15:27.012786899 -0500 ++++ fsl/src/newimage/newimageio.h 2020-12-02 15:19:51.046795110 -0500 +@@ -75,6 +75,7 @@ + #include <iostream> + #include <fstream> + #include <sstream> ++#include <stdexcept> + #include "NewNifti/NewNifti.h" + #include "newmatio.h" + #include "newimage.h" diff --git a/sci-biology/fsl/files/fsl-6.0.4-melodic_std.patch b/sci-biology/fsl/files/fsl-6.0.4-melodic_std.patch new file mode 100644 index 000000000..83b5b9932 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-melodic_std.patch @@ -0,0 +1,11 @@ +diff -Naur fsl.orig/src/melodic/Makefile fsl/src/melodic/Makefile +--- fsl.orig/src/melodic/Makefile 2021-01-06 14:04:35.743274475 -0500 ++++ fsl/src/melodic/Makefile 2021-01-06 14:11:27.924264859 -0500 +@@ -9,6 +9,7 @@ + + USRINCFLAGS = -I${INC_NEWMAT} -I${INC_PROB} -I${INC_GD} -I${INC_GDC} -I${INC_PNG} -I${INC_ZLIB} -DCIFTILIB_USE_XMLPP -I${FSLEXTINC} -I${INC_XML2} -I${INC_XML++} -I${INC_XML++CONF} -I${INC_BOOST} -I${FSLDIR}/include/ciftiio + USRLDFLAGS = -L${LIB_NEWMAT} -L${LIB_PROB} -L${LIB_GD} -L${LIB_GDC} -L${LIB_PNG} -L${LIB_ZLIB} ++USRCXXFLAGS = -std=c++11 + + UNAME := $(shell uname) + ifeq (${UNAME},Darwin) diff --git a/sci-biology/fsl/files/fsl-6.0.4-remove_fslpy_collisions-p1.patch b/sci-biology/fsl/files/fsl-6.0.4-remove_fslpy_collisions-p1.patch new file mode 100644 index 000000000..434dc9cf6 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-remove_fslpy_collisions-p1.patch @@ -0,0 +1,303 @@ +diff -Naur fsl.orig/src/fslio/imln fsl/src/fslio/imln +--- fsl.orig/src/fslio/imln 2021-02-01 15:29:34.842752994 -0500 ++++ fsl/src/fslio/imln 1969-12-31 19:00:00.000000000 -0500 +@@ -1,90 +0,0 @@ +-#!/bin/sh +- +-# imln - make symbolic link(s) to image file(s) +-# +-# 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 6.0 (c) 2018, The University of +-# Oxford (the "Software") +-# +-# The Software remains the property of the Oxford University Innovation +-# ("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: +-# fsl@innovation.ox.ac.uk quoting Reference Project 9564, FSL. +-export LC_ALL=C +- +-if [ $# -lt 2 ] ; then +- echo "Usage: $0 <file1> <file2>" +- echo " Makes a link (called file2) to file1" +- echo " NB: filenames can be basenames or include an extension" +- exit 1; +-fi +- +-f1=`${FSLDIR}/bin/remove_ext $1`; +-f2=`${FSLDIR}/bin/remove_ext $2`; +- +-if [ -f ${f1}.hdr ] ; then ln -fs ${f1}.hdr ${f2}.hdr ; fi +-if [ -f ${f1}.hdr.gz ] ; then ln -fs ${f1}.hdr.gz ${f2}.hdr.gz ; fi +-if [ -f ${f1}.img ] ; then ln -fs ${f1}.img ${f2}.img ; fi +-if [ -f ${f1}.img.gz ] ; then ln -fs ${f1}.img.gz ${f2}.img.gz ; fi +-if [ -f ${f1}.nii ] ; then ln -fs ${f1}.nii ${f2}.nii ; fi +-if [ -f ${f1}.nii.gz ] ; then ln -fs ${f1}.nii.gz ${f2}.nii.gz ; fi +-if [ -f ${f1}.mnc ] ; then ln -fs ${f1}.mnc ${f2}.mnc ; fi +-if [ -f ${f1}.mnc.gz ] ; then ln -fs ${f1}.mnc.gz ${f2}.mnc.gz ; fi +- +diff -Naur fsl.orig/src/fslio/imrm fsl/src/fslio/imrm +--- fsl.orig/src/fslio/imrm 2021-02-01 15:29:34.842752994 -0500 ++++ fsl/src/fslio/imrm 1969-12-31 19:00:00.000000000 -0500 +@@ -1,83 +0,0 @@ +-#!/bin/sh +- +-# imrm - remove 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 6.0 (c) 2018, The University of +-# Oxford (the "Software") +-# +-# The Software remains the property of the Oxford University Innovation +-# ("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: +-# fsl@innovation.ox.ac.uk quoting Reference Project 9564, FSL. +-export LC_ALL=C +- +-if [ $# -lt 1 ] ; then +- echo "Usage: $0 <list of image names to remove>" +- echo "NB: filenames can be basenames or not" +- exit 1; +-fi +- +-for f in $@ ; do +- fn=`${FSLDIR}/bin/remove_ext $f`; +- # do the rm silently +- /bin/rm -f ${fn}.img ${fn}.hdr ${fn}.hdr.gz ${fn}.img.gz ${fn}.nii ${fn}.nii.gz ${fn}.mnc ${fn}.mnc.gz +-done +- +diff -Naur fsl.orig/src/fslio/imtest fsl/src/fslio/imtest +--- fsl.orig/src/fslio/imtest 2021-02-01 15:29:34.842752994 -0500 ++++ fsl/src/fslio/imtest 1969-12-31 19:00:00.000000000 -0500 +@@ -1,118 +0,0 @@ +-#!/bin/sh +- +-# imtest - test to see if a valid image file exists with this name (root) +-# +-# 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 6.0 (c) 2018, The University of +-# Oxford (the "Software") +-# +-# The Software remains the property of the Oxford University Innovation +-# ("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: +-# fsl@innovation.ox.ac.uk quoting Reference Project 9564, FSL. +-export LC_ALL=C +- +-# return 0 if no image exists or 1 if the image exists +- +-if [ $# -lt 1 ] ; then +- echo "0"; +- exit; +-fi +- +-inputfile=$1 +- +- +- +-for i in 1 2 3 4 5 6 7 8 9 10 11 12 +-do +-if [ -h $inputfile ] ; then +-inputfile=`readlink $inputfile`; +-fi +-done +- +-filename=`${FSLDIR}/bin/remove_ext $inputfile`; +- +-if [ -r ${filename}.nii ] || [ -r ${filename}.nii.gz ] ; then +- echo "1"; +- exit; +-fi +- +-if [ -r ${filename}.mnc ] || [ -r ${filename}.mnc.gz ] ; then +- echo "1"; +- exit; +-fi +- +-if [ ! -r ${filename}.hdr ] && [ ! -r ${filename}.hdr.gz ] ; then +- # return 0 here as no header exists and no single image means no image! +- echo "0"; +- exit; +-fi +- +-if [ ! -r ${filename}.img ] && [ ! -r ${filename}.img.gz ] ; then +- # return 0 here as no img file exists and no single image means no image! +- echo "0"; +- exit; +-fi +- +-# only gets to here if there was a hdr and an img file +- +-echo "1"; +-exit; +- diff --git a/sci-biology/fsl/files/fsl-6.0.4-remove_fslpy_collisions-p2.patch b/sci-biology/fsl/files/fsl-6.0.4-remove_fslpy_collisions-p2.patch new file mode 100644 index 000000000..ddb7cfb67 --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-remove_fslpy_collisions-p2.patch @@ -0,0 +1,348 @@ +diff -Naur fsl.orig/src/fslio/Makefile fsl/src/fslio/Makefile +--- fsl.orig/src/fslio/Makefile 2021-02-01 15:29:34.842752994 -0500 ++++ fsl/src/fslio/Makefile 2021-02-01 15:32:19.723761859 -0500 +@@ -6,7 +6,7 @@ + + OBJS=fslio.o + +-SCRIPTS = remove_ext fsloutputtype imtest imglob imcp imln imrm immv ++SCRIPTS = fsloutputtype imglob imcp immv + + all: + +diff -Naur fsl.orig/src/fslio/remove_ext fsl/src/fslio/remove_ext +--- fsl.orig/src/fslio/remove_ext 2021-02-01 15:29:34.842752994 -0500 ++++ fsl/src/fslio/remove_ext 1969-12-31 19:00:00.000000000 -0500 +@@ -1,87 +0,0 @@ +-#!/bin/sh +- +-# remove_ext - remove extension from image filename +-# +-# 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 6.0 (c) 2018, The University of +-# Oxford (the "Software") +-# +-# The Software remains the property of the Oxford University Innovation +-# ("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: +-# fsl@innovation.ox.ac.uk quoting Reference Project 9564, FSL. +-export LC_ALL=C +- +- +-if [ $# -lt 1 ] ; then +- exit 1 +-fi +- +-lst=""; +-for fn in $@ ; do +- # for the ones at the end of the line +- f=`echo "$fn" | sed 's/\.hdr\.gz$//' | sed 's/\.img\.gz$//' | sed 's/\.hdr$//' | sed 's/\.img$//' | sed 's/\.nii.gz$//' | sed 's/\.nii$//' | sed 's/\.mnc.gz$//' | sed 's/\.mnc$//' | sed 's/\.$//'`; +- # for the ones in the middle of the line +- f=`echo "$f" | sed 's/\.hdr\.gz[ ]/ /g' | sed 's/\.img\.gz[ ]/ /g' | sed 's/\.hdr[ ]/ /g' | sed 's/\.img[ ]/ /g' | sed 's/\.nii\.gz[ ]/ /g' | sed 's/\.nii[ ]/ /g' | sed 's/\.mnc\.gz[ ]/ /g' | sed 's/\.mnc[ ]/ /g' |sed 's/\.[ ]/ /g'`; +- lst="$lst $f"; +-done +-echo $lst; +- +- +diff -Naur fsl.orig/src/misc_scripts/fsl_abspath fsl/src/misc_scripts/fsl_abspath +--- fsl.orig/src/misc_scripts/fsl_abspath 2021-02-01 15:29:34.828752994 -0500 ++++ fsl/src/misc_scripts/fsl_abspath 1969-12-31 19:00:00.000000000 -0500 +@@ -1,71 +0,0 @@ +-#!/usr/bin/env fslpython +-# fsl_abspath - return true file path +-# 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 6.0 (c) 2018, The University of +-# Oxford (the "Software") +-# +-# The Software remains the property of the Oxford University Innovation +-# ("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: +-# fsl@innovation.ox.ac.uk quoting Reference Project 9564, FSL. +-from __future__ import print_function +-import sys +-import os +- +-print (os.path.realpath(sys.argv[1])) +-sys.exit(0) +diff -Naur fsl.orig/src/misc_scripts/Makefile fsl/src/misc_scripts/Makefile +--- fsl.orig/src/misc_scripts/Makefile 2021-02-01 15:29:34.828752994 -0500 ++++ fsl/src/misc_scripts/Makefile 2021-02-01 15:32:56.027763811 -0500 +@@ -2,6 +2,6 @@ + + PROJNAME = misc_scripts + +-SCRIPTS = fslecho regscript remove_vols replace_and_average_fmrib linkbedpost ocmr_preproc correct_and_average eddy_correct Text2Vest Vest2Text AnatomicalAverage fsl_abspath fsl_anat fslFixText ++SCRIPTS = fslecho regscript remove_vols replace_and_average_fmrib linkbedpost ocmr_preproc correct_and_average eddy_correct AnatomicalAverage fsl_anat fslFixText + + all: +diff -Naur fsl.orig/src/misc_scripts/Text2Vest fsl/src/misc_scripts/Text2Vest +--- fsl.orig/src/misc_scripts/Text2Vest 2021-02-01 15:29:34.828752994 -0500 ++++ fsl/src/misc_scripts/Text2Vest 1969-12-31 19:00:00.000000000 -0500 +@@ -1,80 +0,0 @@ +-#!/bin/sh +-# Copyright (C) 2012 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 6.0 (c) 2018, The University of +-# Oxford (the "Software") +-# +-# The Software remains the property of the Oxford University Innovation +-# ("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: +-# fsl@innovation.ox.ac.uk quoting Reference Project 9564, FSL. +-export LC_ALL=C +-if [ $# -lt 2 ] ; then +- echo "`basename $0` <text file> <vest file>" +- exit 0 +-fi +- +-NumPoints=`grep -cve '^\s*$' $1` +-NumWaves=`wc $1 | awk '{ print $2 }'` +-NumWaves=`expr $NumWaves / $NumPoints` +- +-echo /NumWaves $NumWaves > $2 +-echo /NumPoints $NumPoints >> $2 +-echo /Matrix >> $2 +- +-cat $1 >> $2 +- +diff -Naur fsl.orig/src/misc_scripts/Vest2Text fsl/src/misc_scripts/Vest2Text +--- fsl.orig/src/misc_scripts/Vest2Text 2021-02-01 15:29:34.828752994 -0500 ++++ fsl/src/misc_scripts/Vest2Text 1969-12-31 19:00:00.000000000 -0500 +@@ -1,71 +0,0 @@ +-#!/bin/sh +-# Copyright (C) 2012 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 6.0 (c) 2018, The University of +-# Oxford (the "Software") +-# +-# The Software remains the property of the Oxford University Innovation +-# ("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: +-# fsl@innovation.ox.ac.uk quoting Reference Project 9564, FSL. +-export LC_ALL=C +-if [ $# -lt 2 ] ; then +- echo "`basename $0` <vest file> <text file>" +- exit 0 +-fi +-sed -e "/\//d" $1 | sed '/^$/d' > $2 +- diff --git a/sci-biology/fsl/files/fsl-6.0.4-setup.patch b/sci-biology/fsl/files/fsl-6.0.4-setup.patch new file mode 100644 index 000000000..061e1a22a --- /dev/null +++ b/sci-biology/fsl/files/fsl-6.0.4-setup.patch @@ -0,0 +1,174 @@ +diff -Naur fsl.orig/build fsl/build +--- fsl.orig/build 2020-12-02 15:29:12.180812558 -0500 ++++ fsl/build 2020-12-02 15:34:03.854821628 -0500 +@@ -28,7 +28,6 @@ + # The build order for MASTERLIBS is very important, and should not be modified unless you know what + # you are doing. + MASTERLIBS=" +- CiftiLib-master \ + utils \ + znzlib \ + NewNifti \ +@@ -157,8 +156,8 @@ + done #project (MASTERPROJECTS) + fi #full build + +-echo "Building projects - see build.log file for progress..." +-./config/common/buildproj $PROJECTS > ./build.log 2>&1 ++echo "Building projects" ++./config/common/buildproj $PROJECTS + finalStatus=$? + if [ $finalStatus -eq 0 ]; then + echo "Build completed successfully."; +diff -Naur fsl.orig/config/buildSettings.mk fsl/config/buildSettings.mk +--- fsl.orig/config/buildSettings.mk 2020-12-02 15:29:11.993812552 -0500 ++++ fsl/config/buildSettings.mk 2020-12-02 15:39:37.269831995 -0500 +@@ -18,7 +18,7 @@ + CHMOD = /bin/chmod + MKDIR = /bin/mkdir + INSTALL = install -p +-TCLSH = ${FSLDIR}/bin/fsltclsh ++TCLSH = tclsh + DEPENDFLAGS = -MM + MACHDBGFLAGS = -g + ##################################################################### +@@ -127,19 +127,19 @@ + ##################################################################### + ifeq ($(SYSTYPE), Linux) + ############### System Vars ##################################### +-CC = gcc +-CXX = c++ +-CXX11 = c++ ++CC = @@GENTOO_CC@@ ++CXX = @@GENTOO_CXX@@ ++CXX11 = @@GENTOO_CXX@@ + CSTATICFLAGS = -static + CXXSTATICFLAGS = -static +-ARCHFLAGS = -m64 +-ARCHLDFLAGS = -Wl,-rpath,'$$ORIGIN/../lib' ++ARCHFLAGS = ++ARCHLDFLAGS = + PARALLELFLAGS = -fopenmp +-OPTFLAGS = -g -O3 -fexpensive-optimizations ${ARCHFLAGS} ++OPTFLAGS = + GNU_ANSI_FLAGS = -Wall -ansi -pedantic -Wno-long-long + SGI_ANSI_FLAGS = -ansi -fullwarn + ANSI_FLAGS = ${GNU_ANSI_FLAGS} +-RANLIB = echo ++RANLIB = @@GENTOO_RANLIB@@ + FSLML = ${FSLDIR}/bin/fslml + # CUDA development environment + CUDAVER := $(or $(CUDAVER),9.1) +@@ -158,8 +158,8 @@ + NVCC = ${CUDA_INSTALLATION}/bin/nvcc + ############### External Libs ##################################### + # ZLIB library +-LIB_ZLIB = ${FSLEXTLIB} +-INC_ZLIB = ${FSLEXTINC} ++#LIB_ZLIB = ${FSLEXTLIB} ++#INC_ZLIB = ${FSLEXTINC} + # QT library + QTDIR = /usr/lib/qt3 + LIB_QT = ${QTDIR}/lib +diff -Naur fsl.orig/config/common/buildproj fsl/config/common/buildproj +--- fsl.orig/config/common/buildproj 2020-12-02 15:29:11.993812552 -0500 ++++ fsl/config/common/buildproj 2020-12-02 15:41:25.579835363 -0500 +@@ -11,10 +11,10 @@ + fi + PROJECTS="$@" ; export PROJECTS ; + +-FSLDIR=`pwd` ++#FSLDIR=`pwd` + FSLDEVDIR=${FSLDIR} + FSLCONFDIR=${FSLDIR}/config +-FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` ++#FSLMACHTYPE=`${FSLDIR}/etc/fslconf/fslmachtype.sh` + FSLMASTERBUILD=1 + export FSLDIR FSLDEVDIR FSLCONFDIR FSLMACHTYPE FSLMASTERBUILD + +@@ -67,7 +67,7 @@ + if [ -x ./fslconfig ] ; then + . ./fslconfig ; + fi +- if ${MAKE} -k ${MAKEOPTIONS} ; then ++ if ${MAKE} ${MAKEOPTIONS} ; then + if ${MAKE} ${MAKEOPTIONS} install ; then + installok=true; + # Clean up after ourselves +@@ -82,6 +82,7 @@ + if [ $installok = false ] ; then + echo " " + echo "ERROR::Could not install $projname successfully" ; ++ exit 1 + fi + else + echo " " +@@ -90,6 +91,7 @@ + echo " " + echo " " + errorprojs="$errorprojs $projname" ; export errorprojs ; ++ exit 1 + fi + fi + done +diff -Naur fsl.orig/config/common/vars.mk fsl/config/common/vars.mk +--- fsl.orig/config/common/vars.mk 2020-12-02 15:29:11.993812552 -0500 ++++ fsl/config/common/vars.mk 2020-12-02 15:43:00.602838318 -0500 +@@ -24,15 +24,15 @@ + USRCFLAGS = + USRCXXFLAGS = + +-LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} ++LDFLAGS = ${ARCHLDFLAGS} ${USRLDFLAGS} -L. -L${DEVLIBDIR} -L${LIBDIR} ${USERLDFLAGS} + +-AccumulatedIncFlags = -I${INC_BOOST} ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} ++AccumulatedIncFlags = ${USRINCFLAGS} -I. -I${DEVINCDIR} -I${INCDIR} ${CPPFLAGS} + + CFLAGS = ${ANSI_FLAGS} ${ANSI_CFLAGS} ${DBGFLAGS} ${USEDCSTATICFLAGS} ${USRCFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ +- ${AccumulatedIncFlags} ++ ${AccumulatedIncFlags} ${USERCFLAGS} + +-CXXFLAGS = ${ANSI_FLAGS} ${ANSI_CXXFLAGS} ${DBGFLAGS} ${USEDCXXSTATICFLAGS} ${USRCXXFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ +- ${AccumulatedIncFlags} ++CXXFLAGS = ${ANSI_CXXFLAGS} ${DBGFLAGS} ${USEDCXXSTATICFLAGS} ${USRCXXFLAGS} ${ARCHFLAGS} ${OPTFLAGS} \ ++ ${AccumulatedIncFlags} ${USERCXXFLAGS} + + HFILES = *.h + AFILES = *.a +diff -Naur fsl.orig/extras/build fsl/extras/build +--- fsl.orig/extras/build 2020-12-02 15:29:12.404812565 -0500 ++++ fsl/extras/build 2020-12-02 15:44:06.906840380 -0500 +@@ -96,16 +96,16 @@ + BUILDICONV=1 + fi + fi +-PROJECTS="tcl tk" ++#PROJECTS="tcl tk" + if [ ${BUILDZLIB} -eq 1 ]; then + PROJECTS="${PROJECTS} zlib" + fi +-PROJECTS="${PROJECTS} libpng" ++#PROJECTS="${PROJECTS} libpng" + if [ ${BUILDICONV} -eq 1 ]; then + PROJECTS="${PROJECTS} libiconv" + fi +-PROJECTS="${PROJECTS} libgd libgdc libprob libcprob newmat cprob newran fftw" +-PROJECTS="${PROJECTS} boost libxml2-2.9.2 libxmlpp libsqlite libnlopt ../include/armawrap/dummy_newmat" ++PROJECTS="${PROJECTS} libgdc libprob libcprob newmat cprob newran" ++PROJECTS="${PROJECTS} ../include/armawrap/dummy_newmat" + for projname in $PROJECTS; do + if [ -d $FSLESRCDIR/$projname ] ; then + buildIt $FSLESRCDIR $projname 1 +diff -Naur fsl.orig/src/mist/Makefile fsl/src/mist/Makefile +--- fsl.orig/src/mist/Makefile 2020-12-02 15:29:12.875812580 -0500 ++++ fsl/src/mist/Makefile 2020-12-02 15:45:09.805842335 -0500 +@@ -52,6 +52,8 @@ + cp -r python/* ${DESTDIR}/python/mist + + clean: +- rm -f ${OBJS} mist/mist.o mist/mist ++ rm -f ${OBJS} mist/mist.o mist/mist || echo "CLEAN could not locate some files scheduled for deletion." ++ ++ + + .PHONY: all clean installdata |