CMake build: Fix copying & installation of resources

- just copy & install whole directories, like the qmake build (basically)
- copy & install scripts/ only on macOS
- do not copy or install welcomescreen/ which is no longer used

Fixes: QTCREATORBUG-23907
Fixes: QTCREATORBUG-23909
Fixes: QTCREATORBUG-23911
Change-Id: I0f9016848d15b214c40f454f39c5560d1faa4f32
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
Eike Ziller
2020-04-27 10:10:25 +02:00
parent 7982c440d5
commit fc94174bf7

View File

@@ -1,25 +1,42 @@
set(template_directories android cplusplus debugger glsl modeleditor qml qmldesigner
qmlicons qml-type-descriptions schemes scripts snippets styles templates themes welcomescreen)
set(resource_directories
android
cplusplus
debugger
glsl
indexer_preincludes
modeleditor
qml
qmldesigner
qmlicons
qml-type-descriptions
schemes
snippets
styles
templates
themes
)
if (APPLE)
set(resource_directories ${resource_directories} scripts)
endif()
add_custom_target(copy_share_to_builddir ALL
COMMENT Copy files into build directory
VERBATIM
)
foreach(dir IN ITEMS ${template_directories})
# copy resource directories during build
foreach(dir IN ITEMS ${resource_directories})
add_custom_command(TARGET copy_share_to_builddir POST_BUILD
COMMAND "${CMAKE_COMMAND}" -E copy_directory "${dir}"
"${PROJECT_BINARY_DIR}/${IDE_DATA_PATH}/${dir}"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
COMMENT Copy files into build directory
COMMENT Copy resource directories into build directory
VERBATIM
)
endforeach()
install(DIRECTORY ${template_directories} DESTINATION "${IDE_DATA_PATH}")
install(
FILES indexer_preincludes/qglobal.h indexer_preincludes/windows.h
DESTINATION "${IDE_DATA_PATH}/indexer_preincludes"
)
# create install rule for resource directories
install(DIRECTORY ${resource_directories} DESTINATION "${IDE_DATA_PATH}")
add_subdirectory(translations)