You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

riscv64-unknown-linux-gnu.toolchain.cmake 1.2 kB

1234567891011121314151617181920212223242526272829303132333435
  1. set(CMAKE_SYSTEM_NAME Linux)
  2. set(CMAKE_SYSTEM_PROCESSOR riscv64)
  3. if(DEFINED ENV{RISCV_ROOT_PATH})
  4. file(TO_CMAKE_PATH $ENV{RISCV_ROOT_PATH} RISCV_ROOT_PATH)
  5. else()
  6. message(FATAL_ERROR "RISCV_ROOT_PATH env must be defined")
  7. endif()
  8. set(RISCV_ROOT_PATH ${RISCV_ROOT_PATH} CACHE STRING "root path to riscv toolchain")
  9. set(CMAKE_C_COMPILER "${RISCV_ROOT_PATH}/bin/riscv64-unknown-linux-gnu-gcc")
  10. set(CMAKE_CXX_COMPILER "${RISCV_ROOT_PATH}/bin/riscv64-unknown-linux-gnu-g++")
  11. set(CMAKE_FIND_ROOT_PATH "${RISCV_ROOT_PATH}/riscv64-unknown-linux-gnu")
  12. if(NOT CMAKE_FIND_ROOT_PATH_MODE_PROGRAM)
  13. set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
  14. endif()
  15. if(NOT CMAKE_FIND_ROOT_PATH_MODE_LIBRARY)
  16. set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
  17. endif()
  18. if(NOT CMAKE_FIND_ROOT_PATH_MODE_INCLUDE)
  19. set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
  20. endif()
  21. if(NOT CMAKE_FIND_ROOT_PATH_MODE_PACKAGE)
  22. set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
  23. endif()
  24. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=rv64gc")
  25. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=rv64gc")
  26. # cache flags
  27. set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "c flags")
  28. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" CACHE STRING "c++ flags")