From 39c12987799d4ff8a0e11c231d57de0fe1b6eacd Mon Sep 17 00:00:00 2001 From: Rick Vogel Date: Sun, 30 Oct 2022 20:21:06 +0100 Subject: [PATCH] dirty hack for svg2qvg access to qskinny moc files --- src/CMakeLists.txt | 8 +++++++- tools/svg2qvg/CMakeLists.txt | 20 ++++++++++++++++---- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 9fd4deb5..09fd642a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -431,7 +431,13 @@ endif() set_target_properties(${TARGET_NAME} PROPERTIES AUTOMOC ON - AUTORCC ON) + AUTORCC ON + FOLDER libs) + +# TODO hack for standalone qvg2svg +set_target_properties(${TARGET_NAME} + PROPERTIES + AUTOGEN_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/qskinny_autogen/include) install(TARGETS ${TARGET_NAME} DESTINATION ${QSK_INSTALL_LIBS}) install(FILES ${TARGET_HEADERS} DESTINATION ${QSK_INSTALL_HEADERS}) \ No newline at end of file diff --git a/tools/svg2qvg/CMakeLists.txt b/tools/svg2qvg/CMakeLists.txt index 38eedbe0..a760879c 100644 --- a/tools/svg2qvg/CMakeLists.txt +++ b/tools/svg2qvg/CMakeLists.txt @@ -13,17 +13,25 @@ if(BUILD_SVG2QVG_STANDALONE) # E.g. main.cpp -> #include -> #include "moc_QskGraphic.cpp" add_dependencies(${TARGET_NAME} qskinny) + # TODO hack for standalone qvg2svg get_target_property(qskinny_AUTOGEN_DIR qskinny AUTOGEN_BUILD_DIR) - if (EXISTS ${qskinny_AUTOGEN_DIR}) + if (${qskinny_AUTOGEN_DIR} STREQUAL "") + message(FATAL_ERROR "Directory '${qskinny_AUTOGEN_DIR}' doesn't exist") + endif() + + # TODO fix multi configuration generators + if(CMAKE_GENERATOR MATCHES "Visual Studio.*") + add_definitions("/I${qskinny_AUTOGEN_DIR}/include_\$(Configuration)") else() - set(qskinny_AUTOGEN_DIR ${CMAKE_BINARY_DIR}/src/qskinny_autogen/include_$) # TODO + target_include_directories(${TARGET_NAME} + PRIVATE + ${qskinny_AUTOGEN_DIR}) endif() target_include_directories(${TARGET_NAME} PRIVATE ${CMAKE_SOURCE_DIR}/src/common - ${CMAKE_SOURCE_DIR}/src/graphic - ${qskinny_AUTOGEN_DIR}) + ${CMAKE_SOURCE_DIR}/src/graphic) target_compile_definitions(${TARGET_NAME} PRIVATE @@ -41,4 +49,8 @@ else() ${Qt}::Svg) endif() +set_target_properties(${TARGET_NAME} + PROPERTIES + FOLDER tools) + install(TARGETS ${TARGET_NAME} DESTINATION ${TARGET_INSTALL_SUFFIX})