From 284660fb6cbff963dcb11a6379fce4442ac15f64 Mon Sep 17 00:00:00 2001 From: Maksim Shabunin Date: Mon, 10 Feb 2025 18:43:09 +0300 Subject: [PATCH] RISC-V: error message in the toolchain file when compiler is not found --- platforms/linux/riscv-gnu.toolchain.cmake | 32 +++++++++-------------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/platforms/linux/riscv-gnu.toolchain.cmake b/platforms/linux/riscv-gnu.toolchain.cmake index 1657bd1681..ea4994c363 100644 --- a/platforms/linux/riscv-gnu.toolchain.cmake +++ b/platforms/linux/riscv-gnu.toolchain.cmake @@ -24,25 +24,19 @@ if(NOT DEFINED TOOLCHAIN_COMPILER_LOCATION_HINT) set(TOOLCHAIN_COMPILER_LOCATION_HINT PATHS /opt/riscv/bin ENV PATH) endif() -if(NOT DEFINED CMAKE_C_COMPILER) - find_program(CMAKE_C_COMPILER NAMES ${GNU_MACHINE}-gcc${__GCC_VER_SUFFIX} PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) -else() - #message(WARNING "CMAKE_C_COMPILER=${CMAKE_C_COMPILER} is defined") -endif() -if(NOT DEFINED CMAKE_CXX_COMPILER) - find_program(CMAKE_CXX_COMPILER NAMES ${GNU_MACHINE}-g++${__GCC_VER_SUFFIX} PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) -else() - #message(WARNING "CMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} is defined") -endif() -if(NOT DEFINED CMAKE_LINKER) - find_program(CMAKE_LINKER NAMES ${GNU_MACHINE}-ld${__GCC_VER_SUFFIX} ${GNU_MACHINE}-ld PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) -else() - #message(WARNING "CMAKE_LINKER=${CMAKE_LINKER} is defined") -endif() -if(NOT DEFINED CMAKE_AR) - find_program(CMAKE_AR NAMES ${GNU_MACHINE}-ar${__GCC_VER_SUFFIX} ${GNU_MACHINE}-ar PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) -else() - #message(WARNING "CMAKE_AR=${CMAKE_AR} is defined") +find_program(CMAKE_C_COMPILER NAMES ${GNU_MACHINE}-gcc${__GCC_VER_SUFFIX} PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) +find_program(CMAKE_CXX_COMPILER NAMES ${GNU_MACHINE}-g++${__GCC_VER_SUFFIX} PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) +find_program(CMAKE_LINKER NAMES ${GNU_MACHINE}-ld${__GCC_VER_SUFFIX} ${GNU_MACHINE}-ld PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) +find_program(CMAKE_AR NAMES ${GNU_MACHINE}-ar${__GCC_VER_SUFFIX} ${GNU_MACHINE}-ar PATHS ${TOOLCHAIN_COMPILER_LOCATION_HINT}) + +if(NOT CMAKE_C_COMPILER OR NOT CMAKE_CXX_COMPILER OR NOT CMAKE_LINKER OR NOT CMAKE_AR) + message(FATAL_ERROR "\ + One of RISC-V toolchain components have not been found: + CMAKE_C_COMPILER=${CMAKE_C_COMPILER} + CMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} + CMAKE_LINKER=${CMAKE_LINKER} + CMAKE_AR=${CMAKE_AR} + Use PATH environment variable and/or GNU_MACHINE, TOOLCHAIN_COMPILER_LOCATION_HINT and others cmake variables to help CMake find them.") endif() if(NOT DEFINED RISCV_SYSROOT)