forked from PennLINC/xcpEngine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
xcpReset
executable file
·155 lines (129 loc) · 5.23 KB
/
xcpReset
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
#!/usr/bin/env bash
###################################################################
# ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ #
###################################################################
###################################################################
# Script resets global settings
###################################################################
###################################################################
# ⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗ #
# Check for existence of all global variables
###################################################################
exitFlag=0
envVars="
XCPEDIR
FSLDIR
AFNI_PATH
C3D_PATH
ANTSPATH
"
for v in ${envVars}
do
if [[ -z ${!v} ]]
then
setVars="${setVars} ${v}"
exitFlag=2
fi
done
if (( ${exitFlag} > 0 ))
then
dirVal=$(dirname $0)
pushd ${dirVal} >>/dev/null
dirVal=$(pwd)
echo \
"
WARNING: GLOBAL VARIABLES NOT RESET.
The following environmental variables are undefined:
${setVars}
These variables must be defined in order to enable
XCP functionality. Undefined variables may be reflective
of uninstalled prerequisites or of missing definitions,
for instance in ~/.bash_profile
Please ensure that these variables are defined in
accordance with the provided example:
export XCPEDIR=${dirVal}
"
exit 2
fi
which R >/dev/null 2>&1
if (( $? > 0 ))
then
echo \
"
WARNING: GLOBAL VARIABLES NOT RESET.
R is not currently in $USER's "'$PATH'"
R must be in the "'$PATH'" in order to enable XCP
functionality.
Please ensure that R is installed and can be executed
from the command line.
"
exit 2
fi
if [[ -z ${JQ_PATH} ]]
then
if [[ $(arch) == x86_64 ]]
then
export JQ_PATH=${XCPEDIR}/thirdparty/jq/jq-linux64
else
export JQ_PATH=${XCPEDIR}/thirdparty/jq/jq-linux32
fi
fi
###################################################################
# Done checking for variables
# ⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗⊗ #
###################################################################
###################################################################
# Write to the global variables file.
###################################################################
rm -rf ${XCPEDIR}/core/global
echo \
"#!/usr/bin/env bash
###################################################################
# ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ ⊗ #
###################################################################
###################################################################
# Pre-clear any globals to ensure the correct settings are applied.
###################################################################
unset XCPEDIR RPATH FSLDIR ANTSPATH AFNI_PATH C3D_PATH NUMOUT
###################################################################
# XCPEDIR stores a path to the top-level directory containing all
# of the ingredients necessary to configure and execute functional
# connectivity pipelines using the XCP Engine.
export XCPEDIR=${XCPEDIR}
###################################################################
###################################################################
# RPATH stores a path to the local installation of R. Dependencies
# may include:
# * ANTsR
# * pracma
# * signal
# * optparse
export RPATH=$(which R)
###################################################################
###################################################################
# FSLDIR stores a path to the local installation of FSL.
export FSLDIR=${FSLDIR}
###################################################################
###################################################################
# ANTSPATH stores a path to the local installation of ANTs.
export ANTSPATH=${ANTSPATH}
###################################################################
###################################################################
# AFNI_PATH stores a path to the local installation of AFNI.
export AFNI_PATH=${AFNI_PATH}
###################################################################
###################################################################
# C3D_PATH stores a path to the local installation of C3D.
export C3D_PATH=${C3D_PATH}
###################################################################
###################################################################
# JQ_PATH stores a path to the local installation of JQ.
export JQ_PATH=${JQ_PATH}
###################################################################
###################################################################
# Outputs of modules may be prepended with an integer indicating
# their context in the pipeline. Set NUMOUT to 1 to enable this.
export NUMOUT=0
###################################################################
" >> ${XCPEDIR}/core/global
chmod 755 ${XCPEDIR}/core/global