forked from qt-creator/qt-creator
CMake build: Make errors of execute_process fail the build
Instead of silenty failing and resulting in broken builds/packages. The property is only available since CMake 3.19, so limit the feature to that. Change-Id: I82b06e78540e81a809f7fdfe130648becfc9672e Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
This commit is contained in:
@@ -64,6 +64,7 @@ function(create_python_xy PythonExe PythonZipFilePath)
|
||||
set(ENV{PYTHONOPTIMIZE} "2")
|
||||
execute_process(
|
||||
COMMAND "${PythonExe}" -OO -m compileall "${CMAKE_CURRENT_BINARY_DIR}/python-lib" -b
|
||||
${QTC_COMMAND_ERROR_IS_FATAL}
|
||||
)
|
||||
|
||||
file(GLOB_RECURSE python_lib_files "${CMAKE_CURRENT_BINARY_DIR}/python-lib/*.py")
|
||||
@@ -75,5 +76,6 @@ function(create_python_xy PythonExe PythonZipFilePath)
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar cf "${PythonZipFilePath}" . --format=zip
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/python-lib/"
|
||||
${QTC_COMMAND_ERROR_IS_FATAL}
|
||||
)
|
||||
endfunction()
|
||||
|
@@ -778,14 +778,14 @@ function(add_qtc_executable name)
|
||||
set(_code "${_code}
|
||||
execute_process(COMMAND \"${CMAKE_INSTALL_NAME_TOOL}\"
|
||||
-delete_rpath \"${_rpath}\"
|
||||
\"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${_EXECUTABLE_FILE_PATH}\")"
|
||||
\"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${_EXECUTABLE_FILE_PATH}\" ${QTC_COMMAND_ERROR_IS_FATAL})"
|
||||
)
|
||||
endforeach()
|
||||
foreach(_rpath ${install_rpath})
|
||||
set(_code "${_code}
|
||||
execute_process(COMMAND \"${CMAKE_INSTALL_NAME_TOOL}\"
|
||||
-add_rpath \"${_rpath}\"
|
||||
\"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${_EXECUTABLE_FILE_PATH}\")"
|
||||
\"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${_EXECUTABLE_FILE_PATH}\" ${QTC_COMMAND_ERROR_IS_FATAL})"
|
||||
)
|
||||
endforeach()
|
||||
install(CODE "${_code}")
|
||||
|
@@ -1,3 +1,7 @@
|
||||
if (CMAKE_VERSION GREATER_EQUAL 3.19)
|
||||
set(QTC_COMMAND_ERROR_IS_FATAL COMMAND_ERROR_IS_FATAL ANY)
|
||||
endif()
|
||||
|
||||
if (CMAKE_VERSION VERSION_LESS 3.18)
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL GNU)
|
||||
set(BUILD_WITH_PCH OFF CACHE BOOL "" FORCE)
|
||||
|
@@ -22,7 +22,8 @@ function(qt5_query_qmake)
|
||||
TIMEOUT 10
|
||||
RESULT_VARIABLE _qmake_result
|
||||
OUTPUT_VARIABLE _qmake_stdout
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
${QTC_COMMAND_ERROR_IS_FATAL})
|
||||
|
||||
if (NOT "${_qmake_result}" STREQUAL "0")
|
||||
message(FATAL_ERROR "Qmake did not execute successfully: ${_qmake_result}.")
|
||||
|
@@ -47,6 +47,7 @@ function(setup_dependencies_component)
|
||||
\"\${_ide_app_target}\"
|
||||
\"${_qmake_binary}\"
|
||||
COMMAND_ECHO STDOUT
|
||||
\${QTC_COMMAND_ERROR_IS_FATAL}
|
||||
)
|
||||
"
|
||||
COMPONENT Dependencies
|
||||
|
@@ -86,10 +86,10 @@ function(get_and_add_as_subdirectory name repository git_tag build_dir source_di
|
||||
)
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" "${build_dir}/${name}"
|
||||
WORKING_DIRECTORY "${build_dir}/${name}"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
${QTC_COMMAND_ERROR_IS_FATAL}
|
||||
)
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" --build "${build_dir}/${name}"
|
||||
COMMAND_ERROR_IS_FATAL ANY
|
||||
${QTC_COMMAND_ERROR_IS_FATAL}
|
||||
)
|
||||
add_subdirectory(${source_dir}/${name}/${source_subdir} ${name})
|
||||
endfunction()
|
||||
|
@@ -43,7 +43,7 @@ function(download_jdk)
|
||||
|
||||
message("Downloading: ${jdk_url}")
|
||||
file(DOWNLOAD ${jdk_url} ./jdk.zip SHOW_PROGRESS)
|
||||
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf ./jdk.zip)
|
||||
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf ./jdk.zip COMMAND_ERROR_IS_FATAL ANY)
|
||||
endfunction()
|
||||
|
||||
function(download_android_commandline)
|
||||
@@ -61,7 +61,7 @@ function(download_android_commandline)
|
||||
file(DOWNLOAD ${android_cmdtools_url} ./android_commandline_tools.zip SHOW_PROGRESS)
|
||||
file(MAKE_DIRECTORY android-sdk)
|
||||
file(MAKE_DIRECTORY android-cmdlinetools)
|
||||
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf ../android_commandline_tools.zip WORKING_DIRECTORY android-cmdlinetools)
|
||||
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xf ../android_commandline_tools.zip WORKING_DIRECTORY android-cmdlinetools COMMAND_ERROR_IS_FATAL ANY)
|
||||
endfunction()
|
||||
|
||||
function(setup_android)
|
||||
@@ -78,9 +78,11 @@ function(setup_android)
|
||||
file(WRITE ${CMAKE_CURRENT_LIST_DIR}/accept_license.txt "y\ny\ny\ny\ny\ny\ny\ny\ny\ny\n")
|
||||
execute_process(
|
||||
INPUT_FILE ${CMAKE_CURRENT_LIST_DIR}/accept_license.txt
|
||||
COMMAND ${sdkmanager} --licenses --sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk)
|
||||
COMMAND ${sdkmanager} --licenses --sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk
|
||||
COMMAND_ERROR_IS_FATAL ANY)
|
||||
execute_process(
|
||||
COMMAND ${sdkmanager} --update --sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk)
|
||||
COMMAND ${sdkmanager} --update --sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk
|
||||
COMMAND_ERROR_IS_FATAL ANY)
|
||||
execute_process(
|
||||
COMMAND ${sdkmanager}
|
||||
"platforms;${ANDROID_PLATFORM}"
|
||||
@@ -90,13 +92,15 @@ function(setup_android)
|
||||
"cmdline-tools;latest"
|
||||
"tools"
|
||||
"emulator"
|
||||
"ndk-bundle" --sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk)
|
||||
"ndk-bundle" --sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk
|
||||
COMMAND_ERROR_IS_FATAL ANY)
|
||||
|
||||
if (WIN32)
|
||||
execute_process(
|
||||
COMMAND ${sdkmanager}
|
||||
"extras;google;usb_driver"
|
||||
--sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk)
|
||||
--sdk_root=${CMAKE_CURRENT_LIST_DIR}/android-sdk
|
||||
COMMAND_ERROR_IS_FATAL ANY)
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
|
Reference in New Issue
Block a user