summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--build_all.sh17
1 files changed, 13 insertions, 4 deletions
diff --git a/build_all.sh b/build_all.sh
index cd5ea3d59..701d7d204 100644
--- a/build_all.sh
+++ b/build_all.sh
@@ -11,11 +11,20 @@ echo_run(){
 }
 
 [ -d csources ] || echo_run git clone --depth 1 https://github.com/nim-lang/csources.git
-(
+
+nim_csources=bin/nim_csources
+build_nim_csources(){
   ## avoid changing dir in case of failure
-  echo_run cd csources
-  echo_run sh build.sh
-)
+  (
+    echo_run cd csources
+    echo_run sh build.sh
+  )
+  # keep $nim_csources in case needed to investigate bootstrap issues
+  # without having to rebuild from csources
+  echo_run cp bin/nim $nim_csources
+}
+
+[ -f $nim_csources ] || echo_run build_nim_csources
 
 echo_run bin/nim c koch
 echo_run ./koch boot -d:release