mirror of
https://github.com/lucaspalomodevelop/meshlab.git
synced 2026-03-13 16:14:38 +00:00
65 lines
2.0 KiB
Bash
Executable File
65 lines
2.0 KiB
Bash
Executable File
#!/bin/bash
|
|
# this is a script shell for setting up the application DMG for MacOS.
|
|
# Requires a properly built and deployed meshlab (requires to run the
|
|
# macos_deploy.sh script first).
|
|
#
|
|
# Without given arguments, meshlab.app will be looked for in meshlab/distrib
|
|
# folder. MeshLab DMG will be placed in the same directory of meshlab.app.
|
|
#
|
|
# You can give as argument the DISTRIB_PATH containing meshlab.app.
|
|
|
|
#realpath function
|
|
realpath() {
|
|
[[ $1 = /* ]] && echo "$1" || echo "$PWD/${1#./}"
|
|
}
|
|
|
|
SCRIPTS_PATH=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
|
|
INSTALL_PATH=$SCRIPTS_PATH/../../src/install
|
|
ML_VERSION=$(cat $SCRIPTS_PATH/../../ML_VERSION)
|
|
|
|
#checking for parameters
|
|
for i in "$@"
|
|
do
|
|
case $i in
|
|
-i=*|--install_path=*)
|
|
INSTALL_PATH="${i#*=}"
|
|
shift # past argument=value
|
|
;;
|
|
*)
|
|
# unknown option
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if ! [ -e $INSTALL_PATH/meshlab.app -a -d $INSTALL_PATH/meshlab.app ]
|
|
then
|
|
echo "Started in the wrong dir: I have not found the meshlab.app"
|
|
exit -1
|
|
fi
|
|
|
|
#get version
|
|
IFS=' ' #space delimiter
|
|
STR_VERSION=$($INSTALL_PATH/meshlab.app/Contents/MacOS/meshlab --version)
|
|
read -a strarr <<< "$STR_VERSION"
|
|
ML_VERSION=${strarr[1]} #get the meshlab version from the string
|
|
|
|
SOURCE_PATH=$SCRIPTS_PATH/../../src
|
|
|
|
# final step create the dmg using appdmg
|
|
# appdmg is installed with 'npm install -g appdmg'",
|
|
sed "s%DISTRIB_PATH%$INSTALL_PATH%g" $SCRIPTS_PATH/resources/meshlab_dmg_latest.json > $SCRIPTS_PATH/resources/meshlab_dmg_final.json
|
|
sed -i '' "s%ML_VERSION%$ML_VERSION%g" $SCRIPTS_PATH/resources/meshlab_dmg_final.json
|
|
sed -i '' "s%SOURCE_PATH%$SOURCE_PATH%g" $SCRIPTS_PATH/resources/meshlab_dmg_final.json
|
|
|
|
rm -f $INSTALL_PATH/*.dmg
|
|
|
|
mv $INSTALL_PATH/meshlab.app $INSTALL_PATH/MeshLab$ML_VERSION.app
|
|
|
|
echo "Running appdmg"
|
|
appdmg $SCRIPTS_PATH/resources/meshlab_dmg_final.json $INSTALL_PATH/MeshLab$ML_VERSION-macos.dmg
|
|
|
|
rm $SCRIPTS_PATH/resources/meshlab_dmg_final.json
|
|
|
|
#at this point, distrib folder contains a DMG MeshLab file
|
|
echo "distrib folder now contains a DMG file"
|