+HOSTFILETMP=0
+
+unset pid
+
+smpirun_cleanup()
+{
+ if [ -z "${KEEP}" ] ; then
+ if [ -z "${PLATFORM}" -a -n "$PLATFORMTMP" ]; then
+ rm -f ${PLATFORMTMP}
+ PLATFORMTMP=""
+ fi
+ if [ ${HOSTFILETMP} = 1 -a -n "$HOSTFILE" ] ; then
+ rm -f ${HOSTFILE}
+ HOSTFILE=""
+ fi
+ if [ ${UNROLLEDHOSTFILETMP} = 1 -a -n "$UNROLLEDHOSTFILE" ] ; then
+ rm -f ${UNROLLEDHOSTFILE}
+ UNROLLEDHOSTFILE=""
+ fi
+ if [ -n ${APPLICATIONTMP} ]; then
+ rm -f ${APPLICATIONTMP}
+ APPLICATIONTMP=""
+ fi
+ fi
+}
+
+smpirun_trap() {
+ smpirun_cleanup
+ if ! [ -z "$pid" ]; then
+ kill -TERM $pid
+ fi
+ unset pid
+ trap - HUP INT QUIT ILL ABRT SEGV FPE ALRM TERM USR1 USR2 BUS
+ kill -TERM $$
+ exit 128
+}
+
+trap smpirun_trap HUP INT QUIT ILL ABRT SEGV FPE ALRM TERM USR1 USR2 BUS