summary refs log tree commit diff stats
path: root/build_all.sh
diff options
context:
space:
mode:
authorTimothee Cour <timothee.cour2@gmail.com>2021-04-23 02:28:42 -0700
committerGitHub <noreply@github.com>2021-04-23 11:28:42 +0200
commitdce0b3b002fcbac716bada039bed4a02eb501744 (patch)
treeb71db24a91382626d6821542807f1723c4b93e70 /build_all.sh
parentdbb053492a3c64236f7e8f9358b9c7f297ba241a (diff)
downloadNim-dce0b3b002fcbac716bada039bed4a02eb501744.tar.gz
refactor all code that builds csources (#17815)
* refactor all code that builds csources
* fixup
* nim_csourcesDir_v0 + nim_csourcesDir
* remove deprecated, unused scripts from ci/
* reuse nimCsourcesHash in ci
* simplify CI pipelines by reusing nimBuildCsourcesIfNeeded
* simplify ci_docs.yml by reusing nimBuildCsourcesIfNeeded
* cleanup
* use csources_v1 as destination dir
* fixup
* remove pushCsources
* address comment: remove build.sh support for now
* fixup
Diffstat (limited to 'build_all.sh')
-rwxr-xr-xbuild_all.sh46
1 files changed, 5 insertions, 41 deletions
diff --git a/build_all.sh b/build_all.sh
index c3c6e68b7..49504c8fe 100755
--- a/build_all.sh
+++ b/build_all.sh
@@ -1,52 +1,16 @@
 #! /bin/sh
 
 # build development version of the compiler; can be rerun safely.
-# arguments can be passed, e.g. `--os freebsd`
+# arguments can be passed, e.g.:
+# CC=gcc ucpu=amd64 uos=darwin
 
 set -u # error on undefined variables
 set -e # exit on first error
 
-echo_run(){
-  echo "$*"
-  "$@"
-}
+. ci/funs.sh
+nimBuildCsourcesIfNeeded "$@"
 
-[ -d csources ] || echo_run git clone -q --depth 1 https://github.com/nim-lang/csources.git
-
-nim_csources=bin/nim_csources
-
-build_nim_csources_via_script(){
-  echo_run cd csources
-  echo_run sh build.sh "$@"
-}
-
-build_nim_csources(){
-  # avoid changing dir in case of failure
-  (
-    if [ $# -ne 0 ]; then
-      # some args were passed (e.g.: `--cpu i386`), need to call build.sh
-      build_nim_csources_via_script "$@"
-    else
-      # no args, use multiple Make jobs (5X faster on 16 cores: 10s instead of 50s)
-      makeX=make
-      unamestr=$(uname)
-      if [ "$unamestr" = 'FreeBSD' ]; then
-        makeX=gmake
-      fi
-      nCPU=$(nproc 2>/dev/null || sysctl -n hw.logicalcpu 2>/dev/null || getconf _NPROCESSORS_ONLN 2>/dev/null || 1)
-      which $makeX && echo_run $makeX -C csources -j $((nCPU + 2)) -l $nCPU || build_nim_csources_via_script
-    fi
-  )
-  # 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 "$@"
-
-# Note: if fails, may need to `cd csources && git pull`
+# Note: if fails, may need to update csourcesAny manually
 echo_run bin/nim c --skipUserCfg --skipParentCfg koch
-
 echo_run ./koch boot -d:release --skipUserCfg --skipParentCfg
 echo_run ./koch tools --skipUserCfg --skipParentCfg # Compile Nimble and other tools.
-