File indexing completed on 2024-04-21 14:47:30

0001 # Build it on Mac howto in script form
0002 # but be aware, some frameworks need patching to have this working
0003 
0004 # reference: https://cgit.kde.org/kate.git/tree/mac/emerge-deploy.sh
0005 # run in kde/..
0006 
0007 # errors are fatal
0008 set -e
0009 
0010 NAME=labplot2
0011 PNAME=LabPlot2
0012 VERSION=2.8.0
0013 PREFIX=kde/Applications
0014 INPREFIX=$PREFIX/$PNAME.app/Contents
0015 TMPDIR=LabPlot2
0016 SIGNATURE="Stefan Gerlach"
0017 
0018 GCP=/opt/local/libexec/gnubin/cp
0019 
0020 #########################################
0021 
0022 echo "CLEAN UP"
0023 rm -rf $PREFIX/$PNAME.app
0024 
0025 mkdir -pv $INPREFIX/{Frameworks,Resources,MacOS,PlugIns/iconengines,share/appdata,share/applications}
0026 
0027 # application
0028 cp -v labplot/build/src/$NAME.app/Contents/MacOS/$NAME $INPREFIX/MacOS
0029 
0030 echo "Running macdeployqt ..."
0031 # -verbose=3
0032 macdeployqt $PREFIX/$PNAME.app -verbose=2
0033 
0034 #########################################
0035 
0036 echo "install files"
0037 # splash
0038 cp -v kde/share/$NAME/splash.png $INPREFIX/Resources/
0039 # rc-file
0040 # Standardlocation (QSP): ~/Library/Application\ Support/kxmlgui5/labplot2/labplot2ui.rc
0041 # using hardcoded path:
0042 cp -v kde/share/kxmlgui5/$NAME/${NAME}ui.rc $INPREFIX/Resources/
0043 # themes
0044 cp -vr kde/share/$NAME/themes $INPREFIX/Resources/
0045 # gsl_distros, fit_models, colorchooser
0046 cp -vr kde/share/$NAME/pics $INPREFIX/Resources/
0047 # color schemes (needs patched kcolorschememanager.cpp)
0048 cp -vr kde/share/$NAME/color-schemes $INPREFIX/Resources/color-schemes
0049 # appdata
0050 cp -v kde/share/metainfo/org.kde.labplot2.appdata.xml $INPREFIX/share/appdata/
0051 cp -v kde/share/applications/org.kde.$NAME.desktop $INPREFIX/share/applications/
0052 
0053 # cantor
0054 cp -v kde/Applications/cantor.app/Contents/MacOS/cantor $INPREFIX/MacOS
0055 cp -v kde/Applications/cantor_scripteditor.app/Contents/MacOS/cantor_scripteditor $INPREFIX/MacOS
0056 cp -vr kde/plugins/cantor $INPREFIX/PlugIns
0057 cp -v kde/lib/libcantor_config.dylib $INPREFIX/Frameworks/
0058 cp -v kde/lib/libcantor_pythonbackend.dylib $INPREFIX/Frameworks/
0059 
0060 # icons
0061 cp -vf kde/share/icontheme.rcc $INPREFIX/Resources/icontheme.rcc
0062 
0063 # kcharselect data
0064 mkdir -p $INPREFIX/Resources/kf5/kcharselect
0065 cp -v kde/share/kf5/kcharselect/kcharselect-data $INPREFIX/Resources/kf5/kcharselect/
0066 
0067 # misc
0068 cp -v labplot/admin/Info.plist $INPREFIX
0069 cp -v /Applications/KDE/labplot2.app/Contents/Resources/{LABPLOT_ICONS.icns,LML_ICONS.icns} $INPREFIX/Resources
0070 
0071 # translation (locale)
0072 cd kde/share
0073 $GCP -vf --parents locale/*/LC_MESSAGES/labplot2.mo ../../$INPREFIX/Resources
0074 $GCP -vf --parents locale/*/LC_MESSAGES/kconfigwidgets5.mo ../../$INPREFIX/Resources
0075 $GCP -vf --parents locale/*/LC_MESSAGES/kxmlgui5.mo ../../$INPREFIX/Resources
0076 cd ../..
0077 
0078 ### TODO
0079 # package icon
0080 # share/doc
0081 
0082 ##########################################
0083 
0084 # fix for hdf5 lib
0085 # install_name_tool -change /usr/local/Cellar/hdf5/1.8.17/lib/libhdf5.10.dylib /usr/local/opt/hdf5/1.8.17/lib/libhdf5.10.dylib /usr/local/opt/hdf5/1.8.17/lib/libhdf5_hl.10.dylib
0086 
0087 ###############################################
0088 if [ -d ./$TMPDIR ]; then
0089         rm -rf ./$TMPDIR/*
0090 else
0091         mkdir ./$TMPDIR
0092 fi
0093 mv $PREFIX/$PNAME.app ./$TMPDIR 
0094 
0095 ln -s /Applications ./$TMPDIR/Applications
0096 
0097 ## remove stuff we don't need or like
0098 #rm -rf $TMPDIR/$PNAME.app/Contents/Plugins/bearer
0099 
0100 ###############################################
0101 
0102 # create the final disk image
0103 echo "BUILDING PACKAGE"
0104 rm -f ./labplot-$VERSION.dmg
0105 hdiutil create -srcfolder ./$TMPDIR -format UDBZ -fs HFS+ -imagekey zlib-level=9 ./labplot-$VERSION.dmg