aboutsummaryrefslogtreecommitdiffstats
path: root/cmake
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2020-05-12 14:53:48 +0200
committerEike Ziller <eike.ziller@qt.io>2020-05-13 10:37:12 +0000
commit172833bb1e5268f78b740037cbcf5e32b109cd97 (patch)
treef103147be1d34a5da6a9e6c04e4e899ac40969ed /cmake
parent95475156e334ec44b26d105070a6c8faadea5472 (diff)
CMake build: Allow files with relative paths in qtc_copy_to_builddir
Files with absolute paths still go directly into DESTINATION directory. Follow-up of a9aa5612345bcfae9a5562e135dec9de8c3b8a8f Change-Id: I558616f78b3e49a8b3be4372791281f5ca9138c9 Reviewed-by: Alexis Murzeau <amubtdx@gmail.com> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/QtCreatorAPI.cmake10
1 files changed, 8 insertions, 2 deletions
diff --git a/cmake/QtCreatorAPI.cmake b/cmake/QtCreatorAPI.cmake
index 4351c897f7..d9e9c4130a 100644
--- a/cmake/QtCreatorAPI.cmake
+++ b/cmake/QtCreatorAPI.cmake
@@ -1167,9 +1167,15 @@ function(qtc_copy_to_builddir custom_target_name)
set(destinationTimestampFileName "${CMAKE_CURRENT_BINARY_DIR}/.${destinationTimestampFilePart}_timestamp")
list(APPEND timestampFiles "${destinationTimestampFileName}")
+ if (IS_ABSOLUTE "${srcFile}")
+ set(srcPath "")
+ else()
+ get_filename_component(srcPath "${srcFile}" DIRECTORY)
+ endif()
+
add_custom_command(OUTPUT "${destinationTimestampFileName}"
- COMMAND "${CMAKE_COMMAND}" -E make_directory "${_output_binary_dir}/${_arg_DESTINATION}"
- COMMAND "${CMAKE_COMMAND}" -E copy "${srcFile}" "${_output_binary_dir}/${_arg_DESTINATION}"
+ COMMAND "${CMAKE_COMMAND}" -E make_directory "${_output_binary_dir}/${_arg_DESTINATION}/${srcPath}"
+ COMMAND "${CMAKE_COMMAND}" -E copy "${srcFile}" "${_output_binary_dir}/${_arg_DESTINATION}/${srcPath}"
COMMAND "${CMAKE_COMMAND}" -E touch "${destinationTimestampFileName}"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
COMMENT "Copy ${srcFile} into build directory"