#!/bin/bash # Usage: # - mac_packager.sh plugin1 plugin2 ... pluginN # or # - mac_packager.sh path_to_plugins/* # To build a stand-alone mac version of the application, do the following: # 1. build medInria # 2. build medInria-plugins as well as your desired own plugins # 3. chmod u+x mac_pacakger.sh # 4. run mac_pacakger.sh with each argument being a script to package your plugins, e.g. : ./mac_packager.sh /mac_visages_plugins_packager.sh # The bundle medInria.app will contain all plugins and will be standalone, packaged into MedINRIA.dmg in the install dir cd /Volumes/Data/workspace/med-macos-weekly/build/medInria-build/bin \rm -fr TmpInstall mkdir TmpInstall cp -r medInria.app TmpInstall cd TmpInstall /Volumes/Data/Qt5.15/5.15.2/clang_64/lib/cmake/Qt5/../../../bin/macdeployqt medInria.app -appstore-compliant #Run sub-packagers injectDirs='' for i in $*; do echo $i injectDirs="$injectDirs -inject-dir=$i" done /Volumes/Data/workspace/med-macos-weekly/build/ExtProjs/dtk/bin/dtkDeploy medInria.app $injectDirs &>/dev/null /usr/local/Cellar/cmake/3.30.3/bin/cmake --install /Volumes/Data/workspace/med-macos-weekly/build/ExtProjs/pyncpp --prefix . --component Runtime mkdir medInria.app/Contents/Resources/lib mv lib/python3.10 medInria.app/Contents/Resources/lib #Run fancy packaging apple script \cp -f /Volumes/Data/workspace/med-macos-weekly/src/utils/osx_packaging/BaseMedinriaPackage.sparseimage.gz /Volumes/Data/workspace/med-macos-weekly/build/MedinriaPackage.sparseimage.gz cd /Volumes/Data/workspace/med-macos-weekly/build gunzip -f MedinriaPackage.sparseimage.gz devName=`hdiutil attach -readwrite -noverify -noautoopen MedinriaPackage.sparseimage | egrep '^/dev/' | sed 1q | awk '{print $1}'` diskutil rename "medInria base" "medInria 5.0.0" \cp -rf /Volumes/Data/workspace/med-macos-weekly/build/medInria-build/bin/TmpInstall/medInria.app /Volumes/"medInria 5.0.0"/ sync hdiutil detach $devName hdiutil convert MedinriaPackage.sparseimage -format UDZO -imagekey zlib-level=9 -o "medInria-5.0.0.dmg" 1>/dev/null 2>/dev/null \rm -fr MedinriaPackage.sparseimage /Volumes/Data/workspace/med-macos-weekly/build/medInria-build/bin/TmpInstall