Skip to content

Commit

Permalink
Merge pull request #112 from cristian64/svg_plugin_windows
Browse files Browse the repository at this point in the history
Configure CMake to install Qt6Svg.dll and qsvg.dll in build.
  • Loading branch information
dreamsyntax authored Mar 9, 2024
2 parents 541258a + 7ff7848 commit dc271b9
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 18 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ jobs:
- name: Install Dependencies
run: |
sudo apt-get update
sudo apt install cmake libevdev-dev qt6-base-private-dev libqt6svg6 libgl1-mesa-dev libfuse2
sudo apt install cmake libevdev-dev qt6-base-private-dev libqt6svg6 libqt6svg6-dev libgl1-mesa-dev libfuse2
shell: bash

- name: Install GCC 10 and G++ 10
Expand Down
54 changes: 37 additions & 17 deletions Source/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_package(Qt6Widgets REQUIRED)
find_package(Qt6Core REQUIRED)
find_package(Qt6Gui REQUIRED)
if (NOT APPLE)
find_package(Qt6Svg REQUIRED)
endif ()

set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
Expand All @@ -61,45 +64,62 @@ add_executable(dolphin-memory-engine ${GUI_TYPE} ${SRCS})
target_link_libraries(dolphin-memory-engine Qt6::Widgets)
target_link_libraries(dolphin-memory-engine Qt6::Gui)
target_link_libraries(dolphin-memory-engine Qt6::Core)
if (NOT APPLE)
target_link_libraries(dolphin-memory-engine Qt6::Svg)
endif ()

if(WIN32)
set_target_properties(dolphin-memory-engine PROPERTIES OUTPUT_NAME DolphinMemoryEngine)
if($<CONFIG:Debug>)
get_target_property(WIDGETDLL Qt6::Widgets IMPORTED_LOCATION_DEBUG)
get_target_property(COREDLL Qt6::Widgets IMPORTED_LOCATION_DEBUG)
get_target_property(GUIDLL Qt6::Widgets IMPORTED_LOCATION_DEBUG)
get_target_property(COREDLL Qt6::Widgets IMPORTED_LOCATION_DEBUG)
get_target_property(GUIDLL Qt6::Widgets IMPORTED_LOCATION_DEBUG)
get_target_property(SVGDLL Qt6::Widgets IMPORTED_LOCATION_DEBUG)
else($<CONFIG:Debug>)
get_target_property(WIDGETDLL Qt6::Widgets IMPORTED_LOCATION_RELEASE)
get_target_property(COREDLL Qt6::Widgets IMPORTED_LOCATION_RELEASE)
get_target_property(GUIDLL Qt6::Widgets IMPORTED_LOCATION_RELEASE)
get_target_property(COREDLL Qt6::Widgets IMPORTED_LOCATION_RELEASE)
get_target_property(GUIDLL Qt6::Widgets IMPORTED_LOCATION_RELEASE)
get_target_property(SVGDLL Qt6::Widgets IMPORTED_LOCATION_RELEASE)
endif($<CONFIG:Debug>)
add_custom_command(
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::Widgets>
$<TARGET_FILE_DIR:dolphin-memory-engine>
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::Core>
$<TARGET_FILE_DIR:dolphin-memory-engine>
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::Gui>
$<TARGET_FILE_DIR:dolphin-memory-engine>
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::Widgets>
$<TARGET_FILE_DIR:dolphin-memory-engine>
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::Core>
$<TARGET_FILE_DIR:dolphin-memory-engine>
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::Gui>
$<TARGET_FILE_DIR:dolphin-memory-engine>
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::Svg>
$<TARGET_FILE_DIR:dolphin-memory-engine>
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E make_directory
$<TARGET_FILE_DIR:dolphin-memory-engine>/imageformats
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::QSvgPlugin>
$<TARGET_FILE_DIR:dolphin-memory-engine>/imageformats
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E make_directory
$<TARGET_FILE_DIR:dolphin-memory-engine>/platforms
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::QWindowsIntegrationPlugin>
$<TARGET_FILE_DIR:dolphin-memory-engine>/platforms
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E make_directory
$<TARGET_FILE_DIR:dolphin-memory-engine>/styles
TARGET dolphin-memory-engine POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:Qt6::QWindowsVistaStylePlugin>
$<TARGET_FILE_DIR:dolphin-memory-engine>/styles
)
)
endif(WIN32)

if(APPLE)
Expand Down

0 comments on commit dc271b9

Please sign in to comment.