diff --git a/.envrc b/.envrc index bdad7ec..bcdccba 100644 --- a/.envrc +++ b/.envrc @@ -3,6 +3,8 @@ if [ $distro == "CentOS" ]; then . /opt/rh/devtoolset-8/enable . /opt/rh/llvm-toolset-7/enable . /opt/rh/rh-python38/enable +elif [ $distro == "Rocky" ]; then + . /opt/rh/gcc-toolset-11/enable fi module load ./Modulefile layout python3 diff --git a/.gitignore b/.gitignore index cec994f..9dbfbf8 100644 --- a/.gitignore +++ b/.gitignore @@ -19,5 +19,5 @@ CMakeSettings.json /src-gen/ /*.json /cfg.yaml -/.direnv -/.cache \ No newline at end of file +/.direnv/ +/.envrc.eyck diff --git a/CMakeLists.txt b/CMakeLists.txt index 877621e..a0bfce7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -80,9 +80,6 @@ set(CONAN_PACKAGE_LIST set(CONAN_PACKAGE_OPTIONS fmt:header_only=True ${CONAN_BOOST_OPTIONS}) if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux" AND WITH_TCC) list(APPEND CONAN_PACKAGE_LIST seasocks/1.4.4) - if(WITH_TCC) - list(APPEND CONAN_PACKAGE_LIST tcc/0.9.27) - endif() list(APPEND CONAN_PACKAGE_OPTIONS lua:compile_as_cpp=False ) endif() if(WITH_LLVM) @@ -90,7 +87,7 @@ if(WITH_LLVM) list(APPEND CONAN_PACKAGE_OPTIONS libiconv:shared=False) endif() if(WITH_ASMJIT) - list(APPEND CONAN_PACKAGE_LIST asmjit/cci.20230325) + list(APPEND CONAN_PACKAGE_LIST asmjit/cci.20240531) list(APPEND CONAN_PACKAGE_OPTIONS asmjit:shared=False) endif() if(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/tgc-iss/dbt-rise-plugins) @@ -100,12 +97,9 @@ endif() if(NOT USE_CWR_SYSTEMC AND NOT USE_NCSC_SYSTEMC AND NOT DEFINED ENV{SYSTEMC_HOME}) set(CONAN_PACKAGE_LIST ${CONAN_PACKAGE_LIST} - systemc/2.3.3 - systemc-cci/1.0.0 - ) + systemc/2.3.4) set(CONAN_PACKAGE_OPTIONS ${CONAN_PACKAGE_OPTIONS} systemc:shared=${SHARED_FLAG} - systemc-cci:shared=${SHARED_FLAG} systemc:disable_virtual_bind=False) endif() @@ -195,7 +189,7 @@ if(FW_BUILD) if(NOT riscvfw_POPULATED) FetchContent_Populate(riscvfw) endif() - set(BOARD tgc-vp) + set(BOARD tgc_vp) add_subdirectory(${riscvfw_SOURCE_DIR}) endif() diff --git a/README.md b/README.md index 325fddc..51496b6 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,6 @@ Using gitpod you can run the VP in the cloud. Just visit [Gitpod.io](https://www and follow the instructions. After the build finished you can run ``` - build/src/tgc-vp -f fw/hello-world/prebuilt/hello.elf ``` @@ -20,7 +19,6 @@ build/src/tgc-vp -f fw/hello-world/prebuilt/hello.elf or use ctest: ``` - cd build ctest @@ -38,61 +36,39 @@ You will see on console the prints of the hello world firmware at fw/hello-world * install conan.io (see also http://docs.conan.io/en/latest/installation.html): ``` - - pip3 install --user conan - + pip3 install --user 'conan<2.0' ``` - It is advised to use conan version 1.36 or newer. In case of an older version please run - - ```sh - - pip3 install --user --upgrade conan - - ``` - Installing conan for the first time you need to create a profile: ``` - conan profile create default --detect - ``` * checkout source from git ```sh - git clone --recursive -b develop https://github.com/Minres/TGC-VP.git - ``` * start an out-of-source build: ``` - cd TGC-VP - mkdir build - cd build - cmake .. - make -j tgc-vp - + cmake -S . -B build + cmake --build build -j tgc-vp ``` * run the VP with pre-built firmware ``` - ctest - ``` or ``` - - src/tgc-vp -f ../fw/hello-world/prebuild/hello.elf - + src/tgc-vp -f fw/hello-world/prebuild/hello.elf ``` To rebuild the firmware you need to install a RISC-V toolchain like https://github.com/riscv/riscv-tools. @@ -107,8 +83,6 @@ You need to have to following installed: * Visual Studio 2019 (community edition is sufficient) with C/C++ support * Python 3.6 or newer -* SystemC 2.3.3 and SystemC-CCI 1.0.0. Both should be installed into the same location and the - environment variable SYSTEMC_HOME should point to it * Conan (https://conan.io/) version 1.36 or newer. If python is installed this can be installed using pip (see above in [Quick start](#quick-start)) @@ -117,9 +91,7 @@ You need to have to following installed: Create a project at the location of the git workarea. This can be done ``` - devenv - ``` The build steps are as described in the VS documentation for CMake based projects. diff --git a/fw/bsp b/fw/bsp deleted file mode 160000 index 71c7fd6..0000000 --- a/fw/bsp +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 71c7fd698176a45313b50428905837b444050aa9 diff --git a/requirements.txt b/requirements.txt index ec2cd9c..5cbe7e7 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1 @@ -conan<2.0 \ No newline at end of file +conan==1.59 diff --git a/scc b/scc index aa3769f..59d07fb 160000 --- a/scc +++ b/scc @@ -1 +1 @@ -Subproject commit aa3769fd5b313bdfd1ac66b94710c5b2b834e9a4 +Subproject commit 59d07fbc6678f5676dc508925ed1982007e350f1 diff --git a/tgc-iss/dbt-rise-core b/tgc-iss/dbt-rise-core index 039aad4..b725ff3 160000 --- a/tgc-iss/dbt-rise-core +++ b/tgc-iss/dbt-rise-core @@ -1 +1 @@ -Subproject commit 039aad46939353ed31cd801f978853835a4f6c6d +Subproject commit b725ff307be15ae274b5b4e97bcb73856212b1b4 diff --git a/tgc-iss/dbt-rise-tgc b/tgc-iss/dbt-rise-tgc index f4f90c5..fd303c8 160000 --- a/tgc-iss/dbt-rise-tgc +++ b/tgc-iss/dbt-rise-tgc @@ -1 +1 @@ -Subproject commit f4f90c5e65573d3bc979f447e3f78f794499d36e +Subproject commit fd303c83436fabe397af73686abd0d1158de27a3 diff --git a/vpvper b/vpvper index 899316d..c7453a4 160000 --- a/vpvper +++ b/vpvper @@ -1 +1 @@ -Subproject commit 899316db7ec527a46c968199a9c0e0f64e48fc2b +Subproject commit c7453a4fc3e7eb1e9c52a168f847e36c625fe7cc