]> Creatis software - clitk.git/blobdiff - fast_make.sh
move clitkConfiguration.h out of clitkCommon to avoid costly recompilations
[clitk.git] / fast_make.sh
index 38d94a187816b9820e034c420a9a910976b88886..0ee2e4fa360a2dc857998abbd70c8158bfdd733a 100755 (executable)
@@ -35,39 +35,39 @@ nice -n12 ionice -c3 make -j ${cpus} $@ &
 make_pid=$(jobs -p %nice)
 
 #watch memory use to avoid crashes
-#while ps $make_pid >>/dev/null 
-#do
-#    if [ x"$(ps aux | grep cc1plus | grep -v grep | wc -l)" != x0 ]
-#    then
-#        ps ax -o vsize,comm | grep cc1plus | grep -o "\<[0-9]*\>" > mem_use
-#        used_mem=$(awk 'BEGIN {sum=0;} {sum+=$1;} END {print sum;}' mem_use)
-#        if (( "$used_mem"> ($available_mem - 300) ))
-#        then
-#            touch memory_exhausted_lock
-#            echo "Stopping due to exagerated memory use ( $used_mem )"
-#            handle_exit
-#        elif (( "$used_mem"> ($available_mem/2) ))
-#        then
-#            if [ x$high_mem != xtrue ]
-#            then
-#                echo "Warning, high memory use, not spawning any more compilation jobs... ( $used_mem )"
-#                killall -s SIGSTOP make
-#                killall -s SIGCONT cc1plus
-#                high_mem="true"
-#                date_mem=$(date +%s)
-#            fi
-#            echo mem $used_mem / $available_mem
-#        elif [ x$high_mem = xtrue ] && (( $(date +%s) > ( $date_mem + 5 ) ))
-#        then
-#            echo "Memory use back to normal"
-#            high_mem=""
-#            killall -s SIGCONT make
-#        fi
-#        rm mem_use
-#    fi
-#    sleep 1
-#done
-#rm memory_exhausted_lock 2>>/dev/null
+while ps $make_pid >>/dev/null 
+do
+    if [ x"$(ps aux | grep cc1plus | grep -v grep | wc -l)" != x0 ]
+    then
+        ps ax -o vsize,comm | grep cc1plus | grep -o "\<[0-9]*\>" > mem_use
+        used_mem=$(awk 'BEGIN {sum=0;} {sum+=$1;} END {print sum;}' mem_use)
+        if (( "$used_mem"> ($available_mem - 300) ))
+        then
+            touch memory_exhausted_lock
+            echo "Stopping due to exagerated memory use ( $used_mem )"
+            handle_exit
+        elif (( "$used_mem"> ($available_mem/2) ))
+        then
+            if [ x$high_mem != xtrue ]
+            then
+                echo "Warning, high memory use, not spawning any more compilation jobs... ( $used_mem )"
+                killall -s SIGSTOP make
+                killall -s SIGCONT cc1plus
+                high_mem="true"
+                date_mem=$(date +%s)
+            fi
+            echo mem $used_mem / $available_mem
+        elif [ x$high_mem = xtrue ] && (( $(date +%s) > ( $date_mem + 5 ) ))
+        then
+            echo "Memory use back to normal"
+            high_mem=""
+            killall -s SIGCONT make
+        fi
+        rm mem_use
+    fi
+    sleep 1
+done
+rm memory_exhausted_lock 2>>/dev/null
 wait
 echo Done!
 echo