From aacaf7455ab76142773585993c26ce846e74e360 Mon Sep 17 00:00:00 2001 From: disarray2077 <86157825+disarray2077@users.noreply.github.com> Date: Mon, 27 Jun 2022 19:37:16 -0300 Subject: [PATCH] Fail build when execute_process fails --- BeefBoot/CMakeLists.txt | 9 +++++++++ IDEHelper/CMakeLists.txt | 11 ++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/BeefBoot/CMakeLists.txt b/BeefBoot/CMakeLists.txt index e0a3ce14..34ee56c6 100644 --- a/BeefBoot/CMakeLists.txt +++ b/BeefBoot/CMakeLists.txt @@ -137,8 +137,17 @@ execute_process( COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/../extern/llvm_linux_13_0_1/bin/llvm-config --system-libs --link-static OUTPUT_VARIABLE LLVM_SYSTEM_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE EXEC_RESULT ) +if (EXEC_RESULT AND NOT EXEC_RESULT EQUAL 0) + if (EXEC_RESULT MATCHES "^[0-9]+$") + message(FATAL_ERROR "llvm-config exited with code ${EXEC_RESULT}.") + else() + message(FATAL_ERROR "llvm-config couldn't be executed: ${EXEC_RESULT}") + endif() +endif() + if (${APPLE}) set(TARGET_LIBS_OS "") else() diff --git a/IDEHelper/CMakeLists.txt b/IDEHelper/CMakeLists.txt index 32068a31..77366452 100644 --- a/IDEHelper/CMakeLists.txt +++ b/IDEHelper/CMakeLists.txt @@ -195,9 +195,18 @@ add_library(${PROJECT_NAME} SHARED execute_process( COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/../extern/llvm_linux_13_0_1/bin/llvm-config --system-libs --link-static OUTPUT_VARIABLE LLVM_SYSTEM_LIBS - OUTPUT_STRIP_TRAILING_WHITESPACE + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE EXEC_RESULT ) +if (EXEC_RESULT AND NOT EXEC_RESULT EQUAL 0) + if (EXEC_RESULT MATCHES "^[0-9]+$") + message(FATAL_ERROR "llvm-config exited with code ${EXEC_RESULT}.") + else() + message(FATAL_ERROR "llvm-config couldn't be executed: ${EXEC_RESULT}") + endif() +endif() + set(TARGET_LIBS_OS "${LLVM_SYSTEM_LIBS}") if (HAVE_BACKTRACE_HEADERS)