diff --git a/.ci/riscv-tests.sh b/.ci/riscv-tests.sh index ef1ee2c5..90688d9a 100755 --- a/.ci/riscv-tests.sh +++ b/.ci/riscv-tests.sh @@ -3,7 +3,7 @@ set -e -u -o pipefail # Install RISCOF -pip3 install git+https://github.com/riscv/riscof.git@d38859f85fe407bcacddd2efcd355ada4683aee4 +pip3 install -r requirements.txt set -x diff --git a/.ci/riscv-toolchain-install.sh b/.ci/riscv-toolchain-install.sh index 3fb935e0..f5e07e0e 100755 --- a/.ci/riscv-toolchain-install.sh +++ b/.ci/riscv-toolchain-install.sh @@ -24,4 +24,4 @@ else TOOLCHAIN_URL=${TOOLCHAIN_REPO}/releases/download/${GCC_VER}/riscv32-elf-ubuntu-${UBUNTU_VER}-gcc-nightly-${GCC_VER}-nightly.tar.xz fi -wget -q ${TOOLCHAIN_URL} -O- | tar -C toolchain --strip-components=1 -xz +wget ${TOOLCHAIN_URL} -O- | tar -xz --strip-components=1 -C toolchain diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fcb6cbb3..95e862c3 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -266,8 +266,8 @@ jobs: githubToken: ${{ github.token }} # No 'sudo' is available install: | - apt-get update -q=2 - apt-get install -q=2 make git clang python3 python3-pip python3-venv libsdl2-dev libsdl2-mixer-dev lsb-release wget software-properties-common gnupg bc + apt update -qq + apt install -yqq make git clang libsdl2-dev libsdl2-mixer-dev lsb-release wget software-properties-common gnupg bc git config --global --add safe.directory ${{ github.workspace }} git config --global --add safe.directory ${{ github.workspace }}/src/softfloat git config --global --add safe.directory ${{ github.workspace }}/src/mini-gdbstub @@ -286,10 +286,6 @@ jobs: make ENABLE_JIT=1 clean && make ENABLE_EXT_A=0 ENABLE_JIT=1 check -j$(nproc) make ENABLE_JIT=1 clean && make ENABLE_EXT_F=0 ENABLE_JIT=1 check -j$(nproc) make ENABLE_JIT=1 clean && make ENABLE_EXT_C=0 ENABLE_JIT=1 check -j$(nproc) - .ci/riscv-toolchain-install.sh && export PATH=$PWD/toolchain/bin:$PATH - python3 -m venv venv - . venv/bin/activate - .ci/riscv-tests.sh coding-style: needs: [detect-code-related-file-changes] diff --git a/mk/riscv-arch-test.mk b/mk/riscv-arch-test.mk index 8a5e1df1..5ca0941d 100644 --- a/mk/riscv-arch-test.mk +++ b/mk/riscv-arch-test.mk @@ -1,6 +1,6 @@ riscof-check: $(Q)if [ "$(shell pip show riscof 2>&1 | head -n 1 | cut -d' ' -f1)" = "WARNING:" ]; then \ - $(PRINTF) "Run 'pip3 install git+https://github.com/riscv/riscof.git@d38859f85fe407bcacddd2efcd355ada4683aee4' to install RISCOF\n"; \ + $(PRINTF) "Run 'pip3 install -r requirements.txt to install dependencies.\n"; \ exit 1; \ fi; diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 00000000..fba2f442 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,31 @@ +Cerberus==1.3.7 +chardet==5.2.0 +click==8.1.8 +colorlog==6.9.0 +DataProperty==1.1.0 +gitdb==4.0.12 +GitPython==3.1.17 +iniconfig==2.0.0 +Jinja2==3.1.5 +MarkupSafe==3.0.2 +mbstrdecoder==1.1.4 +packaging==24.2 +pathvalidate==3.2.3 +pluggy==1.5.0 +pyelftools==0.26 +pytablewriter==1.2.1 +pytest==8.3.4 +python-dateutil==2.9.0.post0 +pytz==2025.1 +PyYAML==5.2 +riscof @ git+https://github.com/riscv/riscof.git@d38859f85fe407bcacddd2efcd355ada4683aee4 +riscv-config==3.18.3 +riscv-isac==0.18.0 +ruamel.yaml==0.18.10 +ruamel.yaml.clib==0.2.12 +setuptools==75.8.0 +six==1.17.0 +smmap==5.0.2 +tabledata==1.3.4 +tcolorpy==0.1.7 +typepy==1.3.4