Meta/Make: optionally use ramdisk while running tests

Junio C Hamano committed Jun 29, 2015 at 14:25 UTC 3135db2b4e7cf18d4aaff0bc3f9e6a5697fe071d
1 file changed +24
Make
+24
@@ -111,6 +111,7 @@ case "$NO_PEDANTIC" in
111 ;;
112 esac
113
114 +testpen=
115 while case $# in 0) break ;; esac
116 do
117 case "$1" in
@@ -129,6 +130,12 @@ do
130 -loose | --loose)
131 PEDANT= Wall=
132 ;;
133 + --memtrash)
134 + testpen=testpen.$$
135 + ;;
136 + --memtrash=*)
137 + testpen=testpen.${1#--memtrash=}
138 + ;;
139 --locale=*)
140 LANG=${1#*=}
141 ;;
@@ -158,6 +165,23 @@ do
165 esac
166 shift
167 done
168 +
169 +if test -n "$testpen"
170 +then
171 + for TRASH in /dev/shm /tmp ""
172 + do
173 + if test -n "$TRASH" &&
174 + mkdir -p "$TRASH/$testpen" 2>/dev/null &&
175 + test -w "$TRASH/$testpen"
176 + then
177 + TRASH="--root=$(cd "$TRASH/$testpen" && /bin/pwd)"
178 + break
179 + fi
180 + done
181 + GIT_TEST_OPTS="$TRASH${GIT_TEST_OPTS+" $GIT_TEST_OPTS"}"
182 + export GIT_TEST_OPTS
183 +fi
184 +
185 O="${PEDANT}${PEDANT:+ }$O"
186
187 test -f /bin/dash || with_dash=