toolchains: Build libraries with medany code model
This enables bare-metal programs to link against newlib and libgcc at addresses above 0x80000000.
This commit is contained in:
@@ -31,14 +31,14 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- run:
|
- run:
|
||||||
name: Building riscv-tools toolchain
|
name: Building riscv-tools toolchain
|
||||||
command: |
|
command: |
|
||||||
.circleci/build-toolchains.sh riscv-tools
|
.circleci/build-toolchains.sh riscv-tools
|
||||||
no_output_timeout: 120m
|
no_output_timeout: 120m
|
||||||
- save_cache:
|
- save_cache:
|
||||||
key: riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
key: riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
paths:
|
paths:
|
||||||
- "/home/riscvuser/riscv-tools-install"
|
- "/home/riscvuser/riscv-tools-install"
|
||||||
install-esp-toolchain:
|
install-esp-toolchain:
|
||||||
@@ -55,14 +55,14 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- esp-tools-installed-v3-{{ checksum "../esp-tools.hash" }}
|
- esp-tools-installed-v4-{{ checksum "../esp-tools.hash" }}
|
||||||
- run:
|
- run:
|
||||||
name: Building esp-tools toolchain
|
name: Building esp-tools toolchain
|
||||||
command: |
|
command: |
|
||||||
.circleci/build-toolchains.sh esp-tools
|
.circleci/build-toolchains.sh esp-tools
|
||||||
no_output_timeout: 120m
|
no_output_timeout: 120m
|
||||||
- save_cache:
|
- save_cache:
|
||||||
key: esp-tools-installed-v3-{{ checksum "../esp-tools.hash" }}
|
key: esp-tools-installed-v4-{{ checksum "../esp-tools.hash" }}
|
||||||
paths:
|
paths:
|
||||||
- "/home/riscvuser/esp-tools-install"
|
- "/home/riscvuser/esp-tools-install"
|
||||||
install-verilator:
|
install-verilator:
|
||||||
@@ -105,7 +105,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- run:
|
- run:
|
||||||
name: Build extra tests
|
name: Build extra tests
|
||||||
command: .circleci/build-extra-tests.sh
|
command: .circleci/build-extra-tests.sh
|
||||||
@@ -131,7 +131,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -160,7 +160,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -189,7 +189,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -218,7 +218,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -247,7 +247,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -276,7 +276,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- esp-tools-installed-v3-{{ checksum "../esp-tools.hash" }}
|
- esp-tools-installed-v4-{{ checksum "../esp-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -305,7 +305,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- esp-tools-installed-v2-{{ checksum "../esp-tools.hash" }}
|
- esp-tools-installed-v4-{{ checksum "../esp-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -334,7 +334,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -363,7 +363,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -392,7 +392,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -418,7 +418,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
- verilator-installed-v3-{{ checksum "sims/verilator/verilator.mk" }}
|
||||||
@@ -439,7 +439,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- example-{{ .Branch }}-{{ .Revision }}
|
- example-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -463,7 +463,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- boomrocketexample-{{ .Branch }}-{{ .Revision }}
|
- boomrocketexample-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -487,7 +487,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- boom-{{ .Branch }}-{{ .Revision }}
|
- boom-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -511,7 +511,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- rocketchip-{{ .Branch }}-{{ .Revision }}
|
- rocketchip-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -535,7 +535,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- esp-tools-installed-v3-{{ checksum "../esp-tools.hash" }}
|
- esp-tools-installed-v4-{{ checksum "../esp-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- hwacha-{{ .Branch }}-{{ .Revision }}
|
- hwacha-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -559,7 +559,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- esp-tools-installed-v2-{{ checksum "../esp-tools.hash" }}
|
- esp-tools-installed-v4-{{ checksum "../esp-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- gemmini-{{ .Branch }}-{{ .Revision }}
|
- gemmini-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -583,7 +583,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- tracegen-{{ .Branch }}-{{ .Revision }}
|
- tracegen-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -607,7 +607,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- firesim-{{ .Branch }}-{{ .Revision }}
|
- firesim-{{ .Branch }}-{{ .Revision }}
|
||||||
@@ -634,7 +634,7 @@ jobs:
|
|||||||
.circleci/create-hash.sh
|
.circleci/create-hash.sh
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- riscv-tools-installed-v3-{{ checksum "../riscv-tools.hash" }}
|
- riscv-tools-installed-v4-{{ checksum "../riscv-tools.hash" }}
|
||||||
- restore_cache:
|
- restore_cache:
|
||||||
keys:
|
keys:
|
||||||
- fireboom-{{ .Branch }}-{{ .Revision }}
|
- fireboom-{{ .Branch }}-{{ .Revision }}
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ else
|
|||||||
esac; ) || die 'obsolete make version; need GNU make 4.x or later'
|
esac; ) || die 'obsolete make version; need GNU make 4.x or later'
|
||||||
|
|
||||||
module_prepare riscv-gnu-toolchain qemu
|
module_prepare riscv-gnu-toolchain qemu
|
||||||
module_build riscv-gnu-toolchain --prefix="${RISCV}"
|
module_build riscv-gnu-toolchain --prefix="${RISCV}" --with-cmodel=medany
|
||||||
echo '==> Building GNU/Linux toolchain'
|
echo '==> Building GNU/Linux toolchain'
|
||||||
module_make riscv-gnu-toolchain linux
|
module_make riscv-gnu-toolchain linux
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user