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")
|
set(ENV{PYTHONOPTIMIZE} "2")
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND "${PythonExe}" -OO -m compileall "${CMAKE_CURRENT_BINARY_DIR}/python-lib" -b
|
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")
|
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(
|
execute_process(
|
||||||
COMMAND ${CMAKE_COMMAND} -E tar cf "${PythonZipFilePath}" . --format=zip
|
COMMAND ${CMAKE_COMMAND} -E tar cf "${PythonZipFilePath}" . --format=zip
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/python-lib/"
|
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/python-lib/"
|
||||||
|
${QTC_COMMAND_ERROR_IS_FATAL}
|
||||||
)
|
)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
@@ -778,14 +778,14 @@ function(add_qtc_executable name)
|
|||||||
set(_code "${_code}
|
set(_code "${_code}
|
||||||
execute_process(COMMAND \"${CMAKE_INSTALL_NAME_TOOL}\"
|
execute_process(COMMAND \"${CMAKE_INSTALL_NAME_TOOL}\"
|
||||||
-delete_rpath \"${_rpath}\"
|
-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()
|
endforeach()
|
||||||
foreach(_rpath ${install_rpath})
|
foreach(_rpath ${install_rpath})
|
||||||
set(_code "${_code}
|
set(_code "${_code}
|
||||||
execute_process(COMMAND \"${CMAKE_INSTALL_NAME_TOOL}\"
|
execute_process(COMMAND \"${CMAKE_INSTALL_NAME_TOOL}\"
|
||||||
-add_rpath \"${_rpath}\"
|
-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()
|
endforeach()
|
||||||
install(CODE "${_code}")
|
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_VERSION VERSION_LESS 3.18)
|
||||||
if (CMAKE_CXX_COMPILER_ID STREQUAL GNU)
|
if (CMAKE_CXX_COMPILER_ID STREQUAL GNU)
|
||||||
set(BUILD_WITH_PCH OFF CACHE BOOL "" FORCE)
|
set(BUILD_WITH_PCH OFF CACHE BOOL "" FORCE)
|
||||||
|
@@ -22,7 +22,8 @@ function(qt5_query_qmake)
|
|||||||
TIMEOUT 10
|
TIMEOUT 10
|
||||||
RESULT_VARIABLE _qmake_result
|
RESULT_VARIABLE _qmake_result
|
||||||
OUTPUT_VARIABLE _qmake_stdout
|
OUTPUT_VARIABLE _qmake_stdout
|
||||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||||
|
${QTC_COMMAND_ERROR_IS_FATAL})
|
||||||
|
|
||||||
if (NOT "${_qmake_result}" STREQUAL "0")
|
if (NOT "${_qmake_result}" STREQUAL "0")
|
||||||
message(FATAL_ERROR "Qmake did not execute successfully: ${_qmake_result}.")
|
message(FATAL_ERROR "Qmake did not execute successfully: ${_qmake_result}.")
|
||||||
|
@@ -47,6 +47,7 @@ function(setup_dependencies_component)
|
|||||||
\"\${_ide_app_target}\"
|
\"\${_ide_app_target}\"
|
||||||
\"${_qmake_binary}\"
|
\"${_qmake_binary}\"
|
||||||
COMMAND_ECHO STDOUT
|
COMMAND_ECHO STDOUT
|
||||||
|
\${QTC_COMMAND_ERROR_IS_FATAL}
|
||||||
)
|
)
|
||||||
"
|
"
|
||||||
COMPONENT Dependencies
|
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}"
|
execute_process(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" "${build_dir}/${name}"
|
||||||
WORKING_DIRECTORY "${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}"
|
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})
|
add_subdirectory(${source_dir}/${name}/${source_subdir} ${name})
|
||||||
endfunction()
|
endfunction()
|
||||||
|
@@ -43,7 +43,7 @@ function(download_jdk)
|
|||||||
|
|
||||||
message("Downloading: ${jdk_url}")
|
message("Downloading: ${jdk_url}")
|
||||||
file(DOWNLOAD ${jdk_url} ./jdk.zip SHOW_PROGRESS)
|
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()
|
endfunction()
|
||||||
|
|
||||||
function(download_android_commandline)
|
function(download_android_commandline)
|
||||||
@@ -61,7 +61,7 @@ function(download_android_commandline)
|
|||||||
file(DOWNLOAD ${android_cmdtools_url} ./android_commandline_tools.zip SHOW_PROGRESS)
|
file(DOWNLOAD ${android_cmdtools_url} ./android_commandline_tools.zip SHOW_PROGRESS)
|
||||||
file(MAKE_DIRECTORY android-sdk)
|
file(MAKE_DIRECTORY android-sdk)
|
||||||
file(MAKE_DIRECTORY android-cmdlinetools)
|
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()
|
endfunction()
|
||||||
|
|
||||||
function(setup_android)
|
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")
|
file(WRITE ${CMAKE_CURRENT_LIST_DIR}/accept_license.txt "y\ny\ny\ny\ny\ny\ny\ny\ny\ny\n")
|
||||||
execute_process(
|
execute_process(
|
||||||
INPUT_FILE ${CMAKE_CURRENT_LIST_DIR}/accept_license.txt
|
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(
|
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(
|
execute_process(
|
||||||
COMMAND ${sdkmanager}
|
COMMAND ${sdkmanager}
|
||||||
"platforms;${ANDROID_PLATFORM}"
|
"platforms;${ANDROID_PLATFORM}"
|
||||||
@@ -90,13 +92,15 @@ function(setup_android)
|
|||||||
"cmdline-tools;latest"
|
"cmdline-tools;latest"
|
||||||
"tools"
|
"tools"
|
||||||
"emulator"
|
"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)
|
if (WIN32)
|
||||||
execute_process(
|
execute_process(
|
||||||
COMMAND ${sdkmanager}
|
COMMAND ${sdkmanager}
|
||||||
"extras;google;usb_driver"
|
"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()
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user