resolve qt svg location
This commit is contained in:
parent
f1f935e359
commit
5038f086a9
@ -1,3 +1,4 @@
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/QSkinnyTargets.cmake")
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/QSkinnyTools.cmake" OPTIONAL)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/QSkinnyToolsTargets.cmake" OPTIONAL)
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/QSkinnyQmlExportTargets.cmake" OPTIONAL)
|
||||
|
@ -8,11 +8,18 @@
|
||||
function(qsk_svg2qvg SVG_FILENAME QVG_FILENAME)
|
||||
get_filename_component(QVG_FILENAME ${QVG_FILENAME} ABSOLUTE)
|
||||
get_filename_component(SVG_FILENAME ${SVG_FILENAME} ABSOLUTE)
|
||||
|
||||
if(TARGET Qt6::Svg)
|
||||
set(QtSvgTarget Qt6::Svg)
|
||||
elseif(TARGET Qt5::Svg)
|
||||
set(QtSvgTarget Qt5::Svg)
|
||||
endif()
|
||||
|
||||
add_custom_command(
|
||||
COMMAND svg2qvg ${SVG_FILENAME} ${QVG_FILENAME}
|
||||
COMMAND Qsk::Svg2Qvg ${SVG_FILENAME} ${QVG_FILENAME}
|
||||
OUTPUT ${QVG_FILENAME}
|
||||
DEPENDS ${SVG_FILENAME}
|
||||
WORKING_DIRECTORY $<TARGET_FILE_DIR:Qt${QT_VERSION_MAJOR}::Svg>
|
||||
WORKING_DIRECTORY $<TARGET_FILE_DIR:${QtSvgTarget}>
|
||||
COMMENT "Compiling ${SVG_FILENAME} to ${QVG_FILENAME}")
|
||||
endfunction()
|
||||
|
||||
|
@ -45,3 +45,13 @@ add_subdirectory(../iotdashboard ${CMAKE_CURRENT_BINARY_DIR}/../iotdashboard)
|
||||
get_target_property(iotdashboard_COMPILE_DEFINITIONS iotdashboard COMPILE_DEFINITIONS)
|
||||
list(FILTER iotdashboard_COMPILE_DEFINITIONS EXCLUDE REGEX [[^USE_SHORTCUTS=1$]])
|
||||
set_property(TARGET iotdashboard PROPERTY COMPILE_DEFINITIONS ${iotdashboard_COMPILE_DEFINITIONS})
|
||||
|
||||
# generate qvg consuming dummy target
|
||||
qsk_svg2qvg(
|
||||
../iotdashboard/images/ac.svg
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ac.qvg)
|
||||
|
||||
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/main.cpp "int main(){}")
|
||||
add_executable(test_svg_qgv
|
||||
${CMAKE_CURRENT_BINARY_DIR}/main.cpp
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ac.qvg)
|
@ -46,3 +46,27 @@ target_link_libraries(${target} PRIVATE Qt::Svg)
|
||||
set_target_properties(${target} PROPERTIES FOLDER tools)
|
||||
|
||||
install(TARGETS ${target})
|
||||
|
||||
# packaging
|
||||
set(PACKAGE_TARGET_FILENAME QSkinnyToolsTargets.cmake)
|
||||
|
||||
set_target_properties(${target} PROPERTIES EXPORT_NAME Svg2Qvg)
|
||||
|
||||
install(TARGETS ${target} EXPORT ${PACKAGE_TARGET_FILENAME})
|
||||
|
||||
export(EXPORT ${PACKAGE_TARGET_FILENAME}
|
||||
NAMESPACE ${PACKAGE_NAMESPACE})
|
||||
|
||||
install(EXPORT ${PACKAGE_TARGET_FILENAME}
|
||||
FILE
|
||||
${PACKAGE_TARGET_FILENAME}
|
||||
NAMESPACE
|
||||
${PACKAGE_NAMESPACE}
|
||||
DESTINATION
|
||||
${PACKAGE_LOCATION})
|
||||
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
|
||||
install(FILES $<TARGET_PDB_FILE:${target}>
|
||||
DESTINATION
|
||||
${CMAKE_INSTALL_BINDIR} OPTIONAL)
|
||||
endif()
|
Loading…
x
Reference in New Issue
Block a user