diff --git a/conanfile.py b/conanfile.py index cef604a86db0177c6a5d6366d1ad4c23a06ff063..0f61c2bfdbcf3aed62dde93995b0b74f6e70c81c 100644 --- a/conanfile.py +++ b/conanfile.py @@ -22,6 +22,8 @@ class OpenGeoSysConan(ConanFile): self.copy(pattern="*.dll", dst="bin", src="bin") self.copy(pattern="*.dylib*", dst="bin", src="lib") self.copy(pattern="*.framework*", dst="bin", src="lib") + self.copy(pattern="*.dll", dst="bin/platforms", src="plugins/platforms") + self.copy(pattern="*.dylib*", dst="bin/platforms", src="plugins/platforms") def build(self): cmake = CMake(self.settings) diff --git a/scripts/cmake/packaging/Pack.cmake b/scripts/cmake/packaging/Pack.cmake index f20fb855c6a13e4a1a9acb52eb12a5761bb82ab0..a7f56030c7f9d53a782e405e7ebbc0c25513e70d 100644 --- a/scripts/cmake/packaging/Pack.cmake +++ b/scripts/cmake/packaging/Pack.cmake @@ -102,15 +102,18 @@ cpack_add_component(ogs_docs GROUP Utilities ) +if(USE_CONAN) + # Install shared libraries, copied to bin-dir + foreach(PATTERN "*.dll" "*.dylib") + file(GLOB MATCHED_FILES ${EXECUTABLE_OUTPUT_PATH}/${PATTERN}) + install(FILES ${MATCHED_FILES} DESTINATION bin) + endforeach() -# Install shared libraries, copied to bin-dir from e.g Conan -foreach(PATTERN "*.dll" "*.dylib") - file(GLOB MATCHED_FILES ${EXECUTABLE_OUTPUT_PATH}/${PATTERN}) - # message(STATUS ${MATCHED_FILES}) - install(FILES ${MATCHED_FILES} DESTINATION bin) -endforeach() + # macOS frameworks are directories, exclude header files + file(GLOB MATCHED_DIRECTORIES "${EXECUTABLE_OUTPUT_PATH}/*.framework") + install(DIRECTORY ${MATCHED_DIRECTORIES} DESTINATION bin + PATTERN "Headers" EXCLUDE) -# macOS frameworks are directories, exclude header files -file(GLOB MATCHED_DIRECTORIES "${EXECUTABLE_OUTPUT_PATH}/*.framework") -install(DIRECTORY ${MATCHED_DIRECTORIES} DESTINATION bin - PATTERN "Headers" EXCLUDE) + # Install Qt platform shared libraries + install(DIRECTORY ${EXECUTABLE_OUTPUT_PATH}/platforms DESTINATION bin OPTIONAL) +endif()