-
jcfr authored
* Disable CMAKE_INSTALL_NAME_TOOL when packaging extension, that way all installed library will contain the full path to their direct dependencies provided by the extension itself. Doing so will allow the to properly fix all libraries. * Copy SlicerCompleteBundle.cmake.in into SlicerExtensionCompleteBundle.cmake.in, also copy function "get_bundle_keys" and "fixup_bundle" from BundleUtilities.cmake and respectively rename them into "get_extension_keys" and "fixup_extension". This has been motivated by the fact there is no executable available within the "Slicer.app/Contents/MacOS" directory. It means we have to "fake" it by commenting the function which was explicitly checking for the existence of an executable. For instance, "get_bundle_and_executable" has been commented out. The variable "exepath" is now explicitly set within the function "fixup_extension" and "get_extension_keys" * To speed up the "fixup" process, "get_prerequisites" is called with "recurse" parameter set to "0". * Note also that since all the libraries available under the Slicer superbuild directory have already been fixed up, the "fixup_extension" function check if a given item is located within a sub directory of "Slicer_SUPERBUILD_DIR". If it's the case, the item will be skipped. * The install directory being different within the bundle, the CMake block "SlicerBlockUploadExtensionPrerequisites" has been updated to "patch" the *MODULES_*_DIR" variable with "Slicer_BUNDLE_EXTENSIONS_LOCATION". git-svn-id: http://svn.slicer.org/Slicer4/trunk@19644 3bd1e089-480b-0410-8dfb-8563597acbee
ac842fee