| 
									
										
										
										
											2017-05-15 12:32:16 +02:00
										 |  |  | #!/bin/bash
 | 
					
						
							| 
									
										
										
										
											2019-01-01 15:30:20 +01:00
										 |  |  | SDRANGEL_VERSION="4.3.2" | 
					
						
							| 
									
										
										
										
											2018-12-28 12:30:21 +01:00
										 |  |  | QT_VERSION="5.12.0" | 
					
						
							|  |  |  | QT_HOME="/Applications/Qt/${QT_VERSION}" | 
					
						
							| 
									
										
										
										
											2017-05-15 12:32:16 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | # Run from build directory after build | 
					
						
							| 
									
										
										
										
											2018-12-28 12:30:21 +01:00
										 |  |  | APP_PATH="app/SDRangel.app" | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | test -d "${APP_PATH}/Contents" || { echo "Please build first or chdir to proper folder!"; exit 1; } | 
					
						
							| 
									
										
										
										
											2017-05-15 12:32:16 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | APP_LIB="${APP_PATH}/Contents/Frameworks" | 
					
						
							| 
									
										
										
										
											2017-05-15 12:32:16 +02:00
										 |  |  | APP_PLUGINS="${APP_LIB}/plugins" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | mkdir -p $APP_PLUGINS | 
					
						
							| 
									
										
										
										
											2017-05-15 12:32:16 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | dply_lib() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	cp -f $1 $APP_LIB | 
					
						
							|  |  |  | 	echo "DeployLIB: `basename $1` to ${APP_LIB}" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | dply_plugin() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	tmp=`dirname $1` | 
					
						
							|  |  |  | 	tmp=`dirname $tmp` | 
					
						
							|  |  |  | 	plugin_type=`basename $tmp` | 
					
						
							|  |  |  | 	plugin_path="${APP_PLUGINS}/${plugin_type}" | 
					
						
							|  |  |  | 	mkdir -p $plugin_path | 
					
						
							|  |  |  | 	cp -f $1 $plugin_path | 
					
						
							|  |  |  | 	echo "DeployPLUGIN: `basename $1` to ${plugin_path}" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-01-01 15:30:20 +01:00
										 |  |  | add_dmg_entry() | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	cp -fv $1 "${DMG_MPATH}/${2}" | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | # 1st-pass: Gather libs & plugins | 
					
						
							|  |  |  | for i in `find . -name '*.dylib' -type f -not -path "./${APP_PATH}/*"`; do  | 
					
						
							|  |  |  | 	if [[ $i == *"plugins/"* ]]; then | 
					
						
							|  |  |  | 		dply_plugin $i | 
					
						
							|  |  |  | 	else | 
					
						
							|  |  |  | 		dply_lib $i | 
					
						
							|  |  |  | 	fi | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # 2nd-pass: Symlink libs | 
					
						
							| 
									
										
										
										
											2017-05-15 12:32:16 +02:00
										 |  |  | cd $APP_LIB | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | for i in `find . -name '*.1.0.0.dylib' -type f -not -path "./plugins/*"`; do | 
					
						
							|  |  |  | 	ln -sf $i "${i/.1.0.0.dylib/.1.0.dylib}" | 
					
						
							|  |  |  | 	ln -sf $i "${i/.1.0.0.dylib/.1.dylib}" | 
					
						
							|  |  |  | 	ln -sf $i "${i/.1.0.0.dylib/.dylib}" | 
					
						
							|  |  |  | done | 
					
						
							|  |  |  | cd ../../.. | 
					
						
							|  |  |  | pwd | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Deploy DMG | 
					
						
							| 
									
										
										
										
											2018-12-28 12:30:21 +01:00
										 |  |  | "${QT_HOME}/clang_64/bin/macdeployqt" ./SDRangel.app \
 | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | 	-always-overwrite \
 | 
					
						
							|  |  |  | 	-dmg \
 | 
					
						
							| 
									
										
										
										
											2018-12-28 12:30:21 +01:00
										 |  |  | 	-libpath=SDRangel.app/Contents/Frameworks \
 | 
					
						
							| 
									
										
										
										
											2018-12-27 09:48:30 +01:00
										 |  |  | 	-verbose=1 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-01-01 15:30:20 +01:00
										 |  |  | # Add other files to DMG | 
					
						
							|  |  |  | DMG_SRC="SDRangel.dmg" | 
					
						
							|  |  |  | DMG_RW_SRC=${DMG_SRC/.dmg/.rw.dmg} | 
					
						
							|  |  |  | DMG_TMP_A="/tmp/_dmg-attach" | 
					
						
							|  |  |  | hdiutil pmap $DMG_SRC | 
					
						
							|  |  |  | hdiutil convert $DMG_SRC -format UDRW -o $DMG_RW_SRC | 
					
						
							|  |  |  | #hdiutil resize -limits $DMG_RW_SRC | 
					
						
							|  |  |  | hdiutil attach $DMG_RW_SRC > $DMG_TMP_A | 
					
						
							|  |  |  | DMG_MPATH=`cat $DMG_TMP_A | grep Volumes | awk '{ print $3 }'` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | # Append files into filesystem | 
					
						
							|  |  |  | add_dmg_entry ../../../libiio/build/libiio-0.14.g17b73d3.pkg | 
					
						
							|  |  |  | add_dmg_entry ../../sdrangel/ReadmeMacOS.md | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | hdiutil detach $DMG_MPATH | 
					
						
							|  |  |  | # Publish version | 
					
						
							|  |  |  | VERIMAGIC="-v${SDRANGEL_VERSION}_`date +%Y%m%d_%H%M%S`-Qt${QT_VERSION}" | 
					
						
							|  |  |  | DMG_DEPLOY=${DMG_SRC/.dmg/${VERIMAGIC}.dmg} | 
					
						
							|  |  |  | hdiutil convert $DMG_RW_SRC -format UDRW -o $DMG_DEPLOY | 
					
						
							|  |  |  | rm -f $DMG_RW_SRC | 
					
						
							| 
									
										
										
										
											2018-12-28 12:30:21 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-01-01 15:30:20 +01:00
										 |  |  | echo "DeployedDMG: ${DMG_DEPLOY}" | 
					
						
							|  |  |  | exit 0 |