macOS: Fix vfs suffix plugin paths #7090
authorMarkus Goetz <markus@woboq.com>
Fri, 15 Mar 2019 12:56:11 +0000 (13:56 +0100)
committerKevin Ottens <kevin.ottens@nextcloud.com>
Tue, 15 Dec 2020 09:58:44 +0000 (10:58 +0100)
CMakeLists.txt
src/libsync/vfs/suffix/CMakeLists.txt

index be6b4319a814d4c973dc02ea599da6cac523b2e0..f926c25cfa49d7aef0cc5bb711e90d95cffdcc9f 100644 (file)
@@ -105,7 +105,13 @@ if(WIN32)
 set(DATADIR "share")
 endif(WIN32)
 set(SHAREDIR ${DATADIR})
-set(PLUGINDIR "${CMAKE_INSTALL_FULL_LIBDIR}/${APPLICATION_SHORTNAME}/plugins" CACHE STRING "Extra path to look for Qt plugins like for VFS. May be relative to binary.")
+
+if (NOT APPLE)
+    set(PLUGINDIR "${CMAKE_INSTALL_FULL_LIBDIR}/${APPLICATION_SHORTNAME}/plugins" CACHE STRING "Extra path to look for Qt plugins like for VFS. May be relative to binary.")
+else()
+    # Inside the .app bundle
+    set(PLUGINDIR "../PlugIns" CACHE STRING "Extra path to look for Qt plugins like for VFS. May be relative to binary.")
+endif()
 
 #####
 ## handle BUILD_OWNCLOUD_OSX_BUNDLE
index 28699dccfabe025c02e69f6fe2ced3834da1dd55..3765e028551452978bfc081967da2d010fab033f 100644 (file)
@@ -13,8 +13,22 @@ set_target_properties("${synclib_NAME}_vfs_suffix" PROPERTIES
     AUTOMOC TRUE
 )
 
+if(APPLE)
+    # for being loadable when client run from build dir
+    set(vfs_buildoutputdir "${BIN_OUTPUT_DIRECTORY}/${OWNCLOUD_OSX_BUNDLE}/Contents/PlugIns/")
+    set_target_properties("${synclib_NAME}_vfs_suffix"
+        PROPERTIES
+        LIBRARY_OUTPUT_DIRECTORY ${vfs_buildoutputdir}
+        RUNTIME_OUTPUT_DIRECTORY ${vfs_buildoutputdir}
+    )
+    # For being lodable when client run from install dir (after make macdeployqt)
+    set(vfs_installdir "${LIB_INSTALL_DIR}/../PlugIns")
+else()
+    set(vfs_installdir "${PLUGINDIR}")
+endif()
+
 INSTALL(TARGETS "${synclib_NAME}_vfs_suffix"
-  LIBRARY DESTINATION "${PLUGINDIR}"
-  RUNTIME DESTINATION "${PLUGINDIR}"
+  LIBRARY DESTINATION "${vfs_installdir}"
+  RUNTIME DESTINATION "${vfs_installdir}"
 )