From 6b70dd6d39bc02e328b5ec3e2cdfe9fd963e7a6f Mon Sep 17 00:00:00 2001 From: JL102 Date: Thu, 5 Oct 2023 02:17:25 -0400 Subject: [PATCH 1/5] Added "try-catch" to all build-setup steps This was the only way I knew how to display the step at which the build-setup process failed. I've personally experienced failures at multiple of the build steps, and before I got used to Chipyard, it was hard to figure out which step was the culprit. With this, users should have a bit more info to troubleshoot their issues. For some of the build steps that required multiple lines, I figured it made more sense to put them into a sub-script, rather than putting a && at the end of each line. But for the firesim one for example, since it was two .sh calls, I just put a && after the first one, inside of the try block, to make sure both lines run. --- scripts/build-setup.sh | 110 ++++++++++++------ scripts/build-step-init-conda-environment.sh | 21 ++++ .../build-step-precompile-chipyard-scala.sh | 10 ++ .../build-step-precompile-firesim-scala.sh | 12 ++ scripts/utils.sh | 21 ++++ 5 files changed, 136 insertions(+), 38 deletions(-) create mode 100755 scripts/build-step-init-conda-environment.sh create mode 100644 scripts/build-step-precompile-chipyard-scala.sh create mode 100644 scripts/build-step-precompile-firesim-scala.sh diff --git a/scripts/build-setup.sh b/scripts/build-setup.sh index c95056db..080b79af 100755 --- a/scripts/build-setup.sh +++ b/scripts/build-setup.sh @@ -111,22 +111,13 @@ fi # setup and install conda environment if run_step "1"; then - # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 - CONDA_REQS=$CYDIR/conda-reqs - CONDA_LOCK_REQS=$CONDA_REQS/conda-lock-reqs - # must match with the file generated by generate-conda-lockfile.sh - LOCKFILE=$CONDA_LOCK_REQS/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml - - if [ "$USE_UNPINNED_DEPS" = true ]; then - # auto-gen the lockfiles - $CYDIR/scripts/generate-conda-lockfiles.sh - fi - - # use conda-lock to create env - conda-lock install --conda $(which conda) -p $CYDIR/.conda-env $LOCKFILE - - source $CYDIR/.conda-env/etc/profile.d/conda.sh - conda activate $CYDIR/.conda-env + try; ( + source $CYDIR/scripts/build-step-init-conda-environment.sh + ) + catch || { + echo "Build script exited with exit code $? at step 1: conda environment setup. Check the above logs for more details on the error." + exit $? + } fi if [ -z "$FORCE_FLAG" ]; then @@ -138,7 +129,13 @@ fi # initialize all submodules (without the toolchain submodules) if run_step "2"; then - $CYDIR/scripts/init-submodules-no-riscv-tools.sh $FORCE_FLAG + try; ( + $CYDIR/scripts/init-submodules-no-riscv-tools.sh $FORCE_FLAG + ) + catch || { + echo "Build script exited with exit code $? at step 2: submodule initialization. Check the above logs for more details on the error." + exit $? + } fi # build extra toolchain collateral (i.e. spike, pk, riscv-tests, libgloss) @@ -152,58 +149,95 @@ if run_step "3"; then fi PREFIX=$RISCV fi - $CYDIR/scripts/build-toolchain-extra.sh $TOOLCHAIN_TYPE -p $PREFIX + try; ( + $CYDIR/scripts/build-toolchain-extra.sh $TOOLCHAIN_TYPE -p $PREFIX + ) + catch || { + echo "Build script exited with exit code $? at step 3: toolchain collateral. Check the above logs for more details on the error." + exit $? + } fi # run ctags for code navigation if run_step "4"; then - $CYDIR/scripts/gen-tags.sh + try; ( + $CYDIR/scripts/gen-tags.sh + ) + catch || { + echo "Build script exited with exit code $? at step 4: ctags generation. Check the above logs for more details on the error." + exit $? + } fi # precompile chipyard scala sources if run_step "5"; then - pushd $CYDIR/sims/verilator - make launch-sbt SBT_COMMAND=";project chipyard; compile" - make launch-sbt SBT_COMMAND=";project tapeout; compile" - popd + try; ( + source $CYDIR/scripts/build-step-precompile-chipyard-scala.sh + ) + catch || { + echo "Build script exited with exit code $? at step 5: chipyard pre-compile sources. Check the above logs for more details on the error." + exit $? + } fi # setup firesim if run_step "6"; then - $CYDIR/scripts/firesim-setup.sh - $CYDIR/sims/firesim/gen-tags.sh + try; ( + $CYDIR/scripts/firesim-setup.sh && + $CYDIR/sims/firesim/gen-tags.sh + ) + catch || { + echo "Build script exited with exit code $? at step 6: firesim setup. Check the above logs for more details on the error." + exit $? + } # precompile firesim scala sources if run_step "7"; then - pushd $CYDIR/sims/firesim - ( - echo $CYDIR - source sourceme-manager.sh --skip-ssh-setup - pushd sim - make sbt SBT_COMMAND="project {file:$CYDIR}firechip; compile" TARGET_PROJECT=firesim - popd + try; ( + source $CYDIR/scripts/build-step-precompile-firesim-scala.sh ) - popd + catch || { + echo "Build script exited with exit code $? at step 7: firesim pre-compile sources. Check the above logs for more details on the error." + exit $? + } fi fi # setup firemarshal if run_step "8"; then pushd $CYDIR/software/firemarshal - ./init-submodules.sh + try; ( + ./init-submodules.sh + ) + catch || { + echo "Build script exited with exit code $? at step 8: firemarshal setup. Check the above logs for more details on the error." + exit $? + } # precompile firemarshal buildroot sources if run_step "9"; then - source $CYDIR/scripts/fix-open-files.sh - ./marshal $VERBOSE_FLAG build br-base.json - ./marshal $VERBOSE_FLAG clean br-base.json + try; ( + source $CYDIR/scripts/fix-open-files.sh && + ./marshal $VERBOSE_FLAG build br-base.json && + ./marshal $VERBOSE_FLAG clean br-base.json + ) + catch || { + echo "Build script exited with exit code $? at step 9: firemarshal pre-compile buildroot sources. Check the above logs for more details on the error." + exit $? + } fi popd fi # do misc. cleanup for a "clean" git status if run_step "10"; then - $CYDIR/scripts/repo-clean.sh + try; ( + $CYDIR/scripts/repo-clean.sh + ) + catch || { + echo "Build script exited with exit code $? at step 10: repository cleanup. Check the above logs for more details on the error." + exit $? + } fi cat <> env.sh diff --git a/scripts/build-step-init-conda-environment.sh b/scripts/build-step-init-conda-environment.sh new file mode 100755 index 00000000..2ba4a344 --- /dev/null +++ b/scripts/build-step-init-conda-environment.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +# This script is intended to be used as a sub-step of build-setup.sh. + +# note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 +set -e +CONDA_REQS=$CYDIR/conda-reqs +CONDA_LOCK_REQS=$CONDA_REQS/conda-lock-reqs +# must match with the file generated by generate-conda-lockfile.sh +LOCKFILE=$CONDA_LOCK_REQS/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml + +if [ "$USE_UNPINNED_DEPS" = true ]; then + # auto-gen the lockfiles + $CYDIR/scripts/generate-conda-lockfiles.sh +fi + +# use conda-lock to create env +conda-lock install --conda $(which conda) -p $CYDIR/.conda-env $LOCKFILE + +source $CYDIR/.conda-env/etc/profile.d/conda.sh +conda activate $CYDIR/.conda-env diff --git a/scripts/build-step-precompile-chipyard-scala.sh b/scripts/build-step-precompile-chipyard-scala.sh new file mode 100644 index 00000000..807b6d8a --- /dev/null +++ b/scripts/build-step-precompile-chipyard-scala.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +# This script is intended to be used as a sub-step of build-setup.sh. + +set -e +pushd $CYDIR/sims/verilator +make launch-sbt SBT_COMMAND=";project chipyard; compile" +make launch-sbt SBT_COMMAND=";project tapeout; compile" +popd + diff --git a/scripts/build-step-precompile-firesim-scala.sh b/scripts/build-step-precompile-firesim-scala.sh new file mode 100644 index 00000000..4c9aeb33 --- /dev/null +++ b/scripts/build-step-precompile-firesim-scala.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +# This script is intended to be used as a sub-step of build-setup.sh. +pushd $CYDIR/sims/firesim +( + echo $CYDIR + source sourceme-manager.sh --skip-ssh-setup + pushd sim + make sbt SBT_COMMAND="project {file:$CYDIR}firechip; compile" TARGET_PROJECT=firesim + popd +) +popd diff --git a/scripts/utils.sh b/scripts/utils.sh index 30d3e092..6f0fc5f7 100755 --- a/scripts/utils.sh +++ b/scripts/utils.sh @@ -53,3 +53,24 @@ function restore_bash_options { set +vx; eval "$OLDSTATE" } + +####################################### +# Basic try-catch block implementation +# for bash scripts. +# Usage: try; ( run commands ) +# catch || { handle error } +# Source: https://stackoverflow.com/a/25180186/5121242 +####################################### +function try() +{ + [[ $- = *e* ]]; SAVED_OPT_E=$? + set +e +} + +function catch() +{ + export ex_code=$? + (( $SAVED_OPT_E )) && set +e + return $ex_code +} + From b76ab6b5b014cfc77284adf4920a96ccb10ce6e2 Mon Sep 17 00:00:00 2001 From: JL102 Date: Fri, 6 Oct 2023 18:43:52 -0400 Subject: [PATCH 2/5] Replaced "try-catch" with a more special-purpose set of functions This also fixed the weird issue I was experiencing where the try-catch in step 1 caused step 3 to break --- scripts/build-setup.sh | 150 ++++++++++++++++++++++------------------- scripts/utils.sh | 21 ------ 2 files changed, 80 insertions(+), 91 deletions(-) diff --git a/scripts/build-setup.sh b/scripts/build-setup.sh index 080b79af..c58ddd7b 100755 --- a/scripts/build-setup.sh +++ b/scripts/build-setup.sh @@ -109,15 +109,49 @@ if [ $TOOLCHAIN_TYPE == "esp-tools" ]; then done fi + +####################################### +###### BEGIN STEP-BY-STEP SETUP ####### +####################################### + +# In order to run code on error, we must handle errors manually +set +e; + +function begin_step +{ + thisStepNum=$1; + thisStepDesc=$2; + echo " ========== BEGINNING STEP $thisStepNum: $thisStepDesc ==========" +} +function exit_if_last_command_failed +{ + local exitcode=$?; + if [ $exitcode -ne 0 ]; then + die "Build script failed with exit code $exitcode at step $thisStepNum: $thisStepDesc" $exitcode; + fi +} + # setup and install conda environment if run_step "1"; then - try; ( - source $CYDIR/scripts/build-step-init-conda-environment.sh - ) - catch || { - echo "Build script exited with exit code $? at step 1: conda environment setup. Check the above logs for more details on the error." - exit $? - } + begin_step "1" "Conda environment setup" + # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 + CONDA_REQS=$CYDIR/conda-reqs + CONDA_LOCK_REQS=$CONDA_REQS/conda-lock-reqs + # must match with the file generated by generate-conda-lockfile.sh + LOCKFILE=$CONDA_LOCK_REQS/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml + + if [ "$USE_UNPINNED_DEPS" = true ]; then + # auto-gen the lockfiles + $CYDIR/scripts/generate-conda-lockfiles.sh + exit_if_last_command_failed + fi + + # use conda-lock to create env + conda-lock install --conda $(which conda) -p $CYDIR/.conda-env $LOCKFILE && + + source $CYDIR/.conda-env/etc/profile.d/conda.sh && + conda activate $CYDIR/.conda-env + exit_if_last_command_failed fi if [ -z "$FORCE_FLAG" ]; then @@ -129,17 +163,14 @@ fi # initialize all submodules (without the toolchain submodules) if run_step "2"; then - try; ( - $CYDIR/scripts/init-submodules-no-riscv-tools.sh $FORCE_FLAG - ) - catch || { - echo "Build script exited with exit code $? at step 2: submodule initialization. Check the above logs for more details on the error." - exit $? - } + begin_step "2" "Initializing Chipyard submodules" + $CYDIR/scripts/init-submodules-no-riscv-tools.sh $FORCE_FLAG + exit_if_last_command_failed fi # build extra toolchain collateral (i.e. spike, pk, riscv-tests, libgloss) if run_step "3"; then + begin_step "3" "Building toolchain collateral" if run_step "1"; then PREFIX=$CONDA_PREFIX/$TOOLCHAIN_TYPE else @@ -149,95 +180,74 @@ if run_step "3"; then fi PREFIX=$RISCV fi - try; ( - $CYDIR/scripts/build-toolchain-extra.sh $TOOLCHAIN_TYPE -p $PREFIX - ) - catch || { - echo "Build script exited with exit code $? at step 3: toolchain collateral. Check the above logs for more details on the error." - exit $? - } + $CYDIR/scripts/build-toolchain-extra.sh $TOOLCHAIN_TYPE -p $PREFIX + exit_if_last_command_failed fi # run ctags for code navigation if run_step "4"; then - try; ( + begin_step "4" "Running ctags for code navigation" $CYDIR/scripts/gen-tags.sh - ) - catch || { - echo "Build script exited with exit code $? at step 4: ctags generation. Check the above logs for more details on the error." - exit $? - } + exit_if_last_command_failed fi # precompile chipyard scala sources if run_step "5"; then - try; ( - source $CYDIR/scripts/build-step-precompile-chipyard-scala.sh - ) - catch || { - echo "Build script exited with exit code $? at step 5: chipyard pre-compile sources. Check the above logs for more details on the error." - exit $? - } + begin_step "5" "Pre-compiling Chipyard Scala sources" + pushd $CYDIR/sims/verilator + make launch-sbt SBT_COMMAND=";project chipyard; compile" + make launch-sbt SBT_COMMAND=";project tapeout; compile" + popd + exit_if_last_command_failed fi # setup firesim if run_step "6"; then - try; ( - $CYDIR/scripts/firesim-setup.sh && + begin_step "6" "Setting up FireSim" + $CYDIR/scripts/firesim-setup.sh $CYDIR/sims/firesim/gen-tags.sh - ) - catch || { - echo "Build script exited with exit code $? at step 6: firesim setup. Check the above logs for more details on the error." - exit $? - } + exit_if_last_command_failed # precompile firesim scala sources if run_step "7"; then - try; ( - source $CYDIR/scripts/build-step-precompile-firesim-scala.sh + begin_step "7" "Pre-compiling Firesim Scala sources" + pushd $CYDIR/sims/firesim + ( + set -e # Subshells un-set "set -e" so it must be re enabled + echo $CYDIR + source sourceme-manager.sh --skip-ssh-setup + pushd sim + make sbt SBT_COMMAND="project {file:$CYDIR}firechip; compile" TARGET_PROJECT=firesim + popd ) - catch || { - echo "Build script exited with exit code $? at step 7: firesim pre-compile sources. Check the above logs for more details on the error." - exit $? - } + exit_if_last_command_failed + popd fi fi # setup firemarshal if run_step "8"; then + begin_step "8" "Setting up FireMarshal" pushd $CYDIR/software/firemarshal - try; ( - ./init-submodules.sh - ) - catch || { - echo "Build script exited with exit code $? at step 8: firemarshal setup. Check the above logs for more details on the error." - exit $? - } + ./init-submodules.sh + exit_if_last_command_failed # precompile firemarshal buildroot sources if run_step "9"; then - try; ( - source $CYDIR/scripts/fix-open-files.sh && - ./marshal $VERBOSE_FLAG build br-base.json && - ./marshal $VERBOSE_FLAG clean br-base.json - ) - catch || { - echo "Build script exited with exit code $? at step 9: firemarshal pre-compile buildroot sources. Check the above logs for more details on the error." - exit $? - } + begin_step "9" "Pre-compiling FireMarshal buildroot sources" + source $CYDIR/scripts/fix-open-files.sh && + ./marshal $VERBOSE_FLAG build br-base.json && + ./marshal $VERBOSE_FLAG clean br-base.json + exit_if_last_command_failed fi popd fi # do misc. cleanup for a "clean" git status if run_step "10"; then - try; ( - $CYDIR/scripts/repo-clean.sh - ) - catch || { - echo "Build script exited with exit code $? at step 10: repository cleanup. Check the above logs for more details on the error." - exit $? - } + begin_step "10" "Cleaning up repository" + $CYDIR/scripts/repo-clean.sh + exit_if_last_command_failed fi cat <> env.sh diff --git a/scripts/utils.sh b/scripts/utils.sh index 6f0fc5f7..30d3e092 100755 --- a/scripts/utils.sh +++ b/scripts/utils.sh @@ -53,24 +53,3 @@ function restore_bash_options { set +vx; eval "$OLDSTATE" } - -####################################### -# Basic try-catch block implementation -# for bash scripts. -# Usage: try; ( run commands ) -# catch || { handle error } -# Source: https://stackoverflow.com/a/25180186/5121242 -####################################### -function try() -{ - [[ $- = *e* ]]; SAVED_OPT_E=$? - set +e -} - -function catch() -{ - export ex_code=$? - (( $SAVED_OPT_E )) && set +e - return $ex_code -} - From aded25fee0537d60dd5eb5073f8ef08cf3cffa2b Mon Sep 17 00:00:00 2001 From: JL102 Date: Fri, 6 Oct 2023 18:49:10 -0400 Subject: [PATCH 3/5] Made indentation consistent --- scripts/build-setup.sh | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/scripts/build-setup.sh b/scripts/build-setup.sh index c58ddd7b..35b19a82 100755 --- a/scripts/build-setup.sh +++ b/scripts/build-setup.sh @@ -134,23 +134,23 @@ function exit_if_last_command_failed # setup and install conda environment if run_step "1"; then begin_step "1" "Conda environment setup" - # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 - CONDA_REQS=$CYDIR/conda-reqs - CONDA_LOCK_REQS=$CONDA_REQS/conda-lock-reqs - # must match with the file generated by generate-conda-lockfile.sh - LOCKFILE=$CONDA_LOCK_REQS/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml + # note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 + CONDA_REQS=$CYDIR/conda-reqs + CONDA_LOCK_REQS=$CONDA_REQS/conda-lock-reqs + # must match with the file generated by generate-conda-lockfile.sh + LOCKFILE=$CONDA_LOCK_REQS/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml - if [ "$USE_UNPINNED_DEPS" = true ]; then - # auto-gen the lockfiles - $CYDIR/scripts/generate-conda-lockfiles.sh - exit_if_last_command_failed - fi + if [ "$USE_UNPINNED_DEPS" = true ]; then + # auto-gen the lockfiles + $CYDIR/scripts/generate-conda-lockfiles.sh + exit_if_last_command_failed + fi - # use conda-lock to create env - conda-lock install --conda $(which conda) -p $CYDIR/.conda-env $LOCKFILE && + # use conda-lock to create env + conda-lock install --conda $(which conda) -p $CYDIR/.conda-env $LOCKFILE && - source $CYDIR/.conda-env/etc/profile.d/conda.sh && - conda activate $CYDIR/.conda-env + source $CYDIR/.conda-env/etc/profile.d/conda.sh && + conda activate $CYDIR/.conda-env exit_if_last_command_failed fi @@ -187,25 +187,25 @@ fi # run ctags for code navigation if run_step "4"; then begin_step "4" "Running ctags for code navigation" - $CYDIR/scripts/gen-tags.sh + $CYDIR/scripts/gen-tags.sh exit_if_last_command_failed fi # precompile chipyard scala sources if run_step "5"; then begin_step "5" "Pre-compiling Chipyard Scala sources" - pushd $CYDIR/sims/verilator - make launch-sbt SBT_COMMAND=";project chipyard; compile" - make launch-sbt SBT_COMMAND=";project tapeout; compile" - popd + pushd $CYDIR/sims/verilator + make launch-sbt SBT_COMMAND=";project chipyard; compile" + make launch-sbt SBT_COMMAND=";project tapeout; compile" + popd exit_if_last_command_failed fi # setup firesim if run_step "6"; then begin_step "6" "Setting up FireSim" - $CYDIR/scripts/firesim-setup.sh - $CYDIR/sims/firesim/gen-tags.sh + $CYDIR/scripts/firesim-setup.sh + $CYDIR/sims/firesim/gen-tags.sh exit_if_last_command_failed # precompile firesim scala sources From a7993db08e616f36bb3f9468524a06b60cba5010 Mon Sep 17 00:00:00 2001 From: JL102 Date: Fri, 6 Oct 2023 19:00:11 -0400 Subject: [PATCH 4/5] I think now I put `&&`s everywhere that is necessary --- scripts/build-setup.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/build-setup.sh b/scripts/build-setup.sh index 35b19a82..3624b5e7 100755 --- a/scripts/build-setup.sh +++ b/scripts/build-setup.sh @@ -194,9 +194,9 @@ fi # precompile chipyard scala sources if run_step "5"; then begin_step "5" "Pre-compiling Chipyard Scala sources" - pushd $CYDIR/sims/verilator - make launch-sbt SBT_COMMAND=";project chipyard; compile" - make launch-sbt SBT_COMMAND=";project tapeout; compile" + pushd $CYDIR/sims/verilator && + make launch-sbt SBT_COMMAND=";project chipyard; compile" && + make launch-sbt SBT_COMMAND=";project tapeout; compile" && popd exit_if_last_command_failed fi @@ -204,14 +204,14 @@ fi # setup firesim if run_step "6"; then begin_step "6" "Setting up FireSim" - $CYDIR/scripts/firesim-setup.sh + $CYDIR/scripts/firesim-setup.sh && $CYDIR/sims/firesim/gen-tags.sh exit_if_last_command_failed # precompile firesim scala sources if run_step "7"; then begin_step "7" "Pre-compiling Firesim Scala sources" - pushd $CYDIR/sims/firesim + pushd $CYDIR/sims/firesim && ( set -e # Subshells un-set "set -e" so it must be re enabled echo $CYDIR @@ -228,7 +228,7 @@ fi # setup firemarshal if run_step "8"; then begin_step "8" "Setting up FireMarshal" - pushd $CYDIR/software/firemarshal + pushd $CYDIR/software/firemarshal && ./init-submodules.sh exit_if_last_command_failed From 9b557227a35b65e3930535bded4d50bd08d7ce5c Mon Sep 17 00:00:00 2001 From: JL102 Date: Fri, 6 Oct 2023 19:01:47 -0400 Subject: [PATCH 5/5] Remove now-unused build-step scripts --- scripts/build-step-init-conda-environment.sh | 21 ------------------- .../build-step-precompile-chipyard-scala.sh | 10 --------- .../build-step-precompile-firesim-scala.sh | 12 ----------- 3 files changed, 43 deletions(-) delete mode 100755 scripts/build-step-init-conda-environment.sh delete mode 100644 scripts/build-step-precompile-chipyard-scala.sh delete mode 100644 scripts/build-step-precompile-firesim-scala.sh diff --git a/scripts/build-step-init-conda-environment.sh b/scripts/build-step-init-conda-environment.sh deleted file mode 100755 index 2ba4a344..00000000 --- a/scripts/build-step-init-conda-environment.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env bash - -# This script is intended to be used as a sub-step of build-setup.sh. - -# note: lock file must end in .conda-lock.yml - see https://github.com/conda-incubator/conda-lock/issues/154 -set -e -CONDA_REQS=$CYDIR/conda-reqs -CONDA_LOCK_REQS=$CONDA_REQS/conda-lock-reqs -# must match with the file generated by generate-conda-lockfile.sh -LOCKFILE=$CONDA_LOCK_REQS/conda-requirements-$TOOLCHAIN_TYPE-linux-64.conda-lock.yml - -if [ "$USE_UNPINNED_DEPS" = true ]; then - # auto-gen the lockfiles - $CYDIR/scripts/generate-conda-lockfiles.sh -fi - -# use conda-lock to create env -conda-lock install --conda $(which conda) -p $CYDIR/.conda-env $LOCKFILE - -source $CYDIR/.conda-env/etc/profile.d/conda.sh -conda activate $CYDIR/.conda-env diff --git a/scripts/build-step-precompile-chipyard-scala.sh b/scripts/build-step-precompile-chipyard-scala.sh deleted file mode 100644 index 807b6d8a..00000000 --- a/scripts/build-step-precompile-chipyard-scala.sh +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/env bash - -# This script is intended to be used as a sub-step of build-setup.sh. - -set -e -pushd $CYDIR/sims/verilator -make launch-sbt SBT_COMMAND=";project chipyard; compile" -make launch-sbt SBT_COMMAND=";project tapeout; compile" -popd - diff --git a/scripts/build-step-precompile-firesim-scala.sh b/scripts/build-step-precompile-firesim-scala.sh deleted file mode 100644 index 4c9aeb33..00000000 --- a/scripts/build-step-precompile-firesim-scala.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env bash - -# This script is intended to be used as a sub-step of build-setup.sh. -pushd $CYDIR/sims/firesim -( - echo $CYDIR - source sourceme-manager.sh --skip-ssh-setup - pushd sim - make sbt SBT_COMMAND="project {file:$CYDIR}firechip; compile" TARGET_PROJECT=firesim - popd -) -popd