yggdrasil/ports/meta-port-scripts/toolchain-riscv64.cmake

23 lines
847 B
CMake

if (NOT DEFINED ENV{Y_HOST_PREFIX})
message(FATAL_ERROR "Y_HOST_PREFIX=... must be specified.")
endif()
set(CROSS_TOOLCHAIN_PREFIX "$ENV{Y_HOST_PREFIX}")
set(CMAKE_SYSTEM_NAME yggdrasil)
set(CMAKE_C_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang")
set(CMAKE_CXX_COMPILER "${CROSS_TOOLCHAIN_PREFIX}/bin/clang++")
# Specify the target triple for your custom OS.
set(CMAKE_C_COMPILER_TARGET "riscv64-unknown-yggdrasil")
set(CMAKE_ASM_COMPILER_TARGET "riscv64-unknown-yggdrasil")
# Disable default system libraries
# set(CMAKE_EXE_LINKER_FLAGS "-nostdlib")
# set(CMAKE_SHARED_LINKER_FLAGS "-v")
set(CMAKE_C_FLAGS "--target=riscv64-unknown-yggdrasil -fPIC")
set(CMAKE_CXX_FLAGS "--target=riscv64-unknown-yggdrasil -march=rv64gc -nostdlib++ -fPIC -D_LIBCPP_HAS_NO_TREE_BARRIER")
# Specify any additional include paths or linker flags as needed