aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/create_macosx_bundle.sh
diff options
context:
space:
mode:
Diffstat (limited to 'SQLiteStudio3/create_macosx_bundle.sh')
-rwxr-xr-xSQLiteStudio3/create_macosx_bundle.sh120
1 files changed, 68 insertions, 52 deletions
diff --git a/SQLiteStudio3/create_macosx_bundle.sh b/SQLiteStudio3/create_macosx_bundle.sh
index f5c595b..b6cdd3a 100755
--- a/SQLiteStudio3/create_macosx_bundle.sh
+++ b/SQLiteStudio3/create_macosx_bundle.sh
@@ -33,6 +33,9 @@ mkdir SQLiteStudio.app/Contents/Frameworks
cp -RP plugins SQLiteStudio.app/Contents
mv SQLiteStudio.app/Contents/plugins SQLiteStudio.app/Contents/PlugIns
+mkdir -p SQLiteStudio.app/Contents/PlugIns/styles
+cp -RP styles/* SQLiteStudio.app/Contents/PlugIns/styles
+
cp -RP lib*SQLiteStudio*.dylib SQLiteStudio.app/Contents/Frameworks
# CLI paths
@@ -49,18 +52,46 @@ install_name_tool -change libguiSQLiteStudio.1.dylib "@rpath/libguiSQLiteStudio.
# Lib paths
install_name_tool -change libcoreSQLiteStudio.1.dylib "@rpath/libcoreSQLiteStudio.1.dylib" SQLiteStudio.app/Contents/Frameworks/libguiSQLiteStudio.1.dylib
+install_name_tool -change libsqlite3.0.dylib "@rpath/libsqlite3.0.dylib" SQLiteStudio.app/Contents/Frameworks/libcoreSQLiteStudio.1.dylib
+
+cdir=`pwd`
+cd ../../../lib/
+libdir=`pwd`
+cd $cdir
+
+echo "lib:"
+ls -l ../../../lib/
-cp -RP ../../../lib/*.dylib SQLiteStudio.app/Contents/Frameworks
+echo "in frameworks - 1:"
+ls -l SQLiteStudio.app/Contents/Frameworks
+
+cp -RP ../../../lib/libsqlite3.0.dylib SQLiteStudio.app/Contents/Frameworks
+cd SQLiteStudio.app/Contents/Frameworks
+ln -s libsqlite3.0.dylib libsqlite3.dylib
+cd ../../..
+
+echo "in frameworks - 2:"
+ls -l SQLiteStudio.app/Contents/Frameworks
# Plugin paths
-for f in `ls SQLiteStudio.app/Contents/PlugIns`
-do
- PLUGIN_FILE=SQLiteStudio.app/Contents/PlugIns/$f
- install_name_tool -change libcoreSQLiteStudio.1.dylib "@rpath/libcoreSQLiteStudio.1.dylib" $PLUGIN_FILE
- install_name_tool -change libguiSQLiteStudio.1.dylib "@rpath/libguiSQLiteStudio.1.dylib" $PLUGIN_FILE
-done
+function fixPluginPaths() {
+ for f in `ls $1`
+ do
+ PLUGIN_FILE=$1/$f
+ if [ -f $PLUGIN_FILE ]; then
+ echo "Fixing paths for plugin $PLUGIN_FILE"
+ install_name_tool -change libcoreSQLiteStudio.1.dylib "@rpath/libcoreSQLiteStudio.1.dylib" $PLUGIN_FILE
+ install_name_tool -change libguiSQLiteStudio.1.dylib "@rpath/libguiSQLiteStudio.1.dylib" $PLUGIN_FILE
+ fi
+ if [ -d $PLUGIN_FILE ]; then
+ fixPluginPaths $PLUGIN_FILE
+ fi
+ done
+}
+fixPluginPaths SQLiteStudio.app/Contents/PlugIns
function replaceInfo() {
+ cdir=`pwd`
echo Replacing Info.plist
cd $1/SQLiteStudio
VERSION=`SQLiteStudio.app/Contents/MacOS/sqlitestudiocli -v | awk '{print $2}'`
@@ -71,58 +102,43 @@ function replaceInfo() {
echo "New plist:"
cat Info.plist.new
mv Info.plist.new Info.plist
+ cd $cdir
}
if [ "$3" == "dmg" ]; then
- $qt_deploy_bin SQLiteStudio.app -dmg
replaceInfo $1
-elif [ "$3" == "dist" ] || [ "$3" == "dist_plugins" ] || [ "$3" == "dist_full" ]; then
- if [ "$3" == "dist" ] || [ "$3" == "dist_full" ]; then
- $qt_deploy_bin SQLiteStudio.app -dmg -executable=SQLiteStudio.app/Contents/MacOS/SQLiteStudio -always-overwrite -verbose=3 2> /tmp/log.txt
- replaceInfo $1
-
- cd $1/SQLiteStudio
- VERSION=`SQLiteStudio.app/Contents/MacOS/sqlitestudiocli -v | awk '{print $2}'`
-
- mv SQLiteStudio.dmg sqlitestudio-$VERSION.dmg
-
- # App
- echo "Building incremental update package: sqlitestudio-$VERSION.zip"
- cp -R SQLiteStudio.app app
- cd app/Contents
- if [ "$3" == "dist" ]; then
- rm -rf PlugIns
- rm -rf Frameworks/Qt*.framework
- fi
- find Frameworks -type l -exec rm -f {} \;
- cd ..
- zip -r sqlitestudio-$VERSION.zip *
- mv sqlitestudio-$VERSION.zip ..
- cd ..
- rm -rf app
- else
- $qt_deploy_bin SQLiteStudio.app
+ $qt_deploy_bin SQLiteStudio.app -dmg
+elif [ "$3" == "dist" ]; then
replaceInfo $1
- fi
-
- # Plugins
- mkdir Contents Contents/PlugIns
- SQLiteStudio.app/Contents/MacOS/SQLiteStudio --list-plugins | while read line
- do
- PLUGIN=`echo $line | awk '{print $1}'`
- PLUGIN_VER=`echo $line | awk '{print $2}'`
- PLUGIN_FILE=SQLiteStudio.app/Contents/PlugIns/lib$PLUGIN.dylib
- if [ -f $PLUGIN_FILE ]; then
- echo "Building plugin package: $PLUGIN-$PLUGIN_VER.tar.gz"
- cp SQLiteStudio.app/Contents/PlugIns/lib$PLUGIN.dylib Contents/PlugIns
- zip -r $PLUGIN\-$PLUGIN_VER.zip Contents
- fi
- rm -f Contents/PlugIns/*
- done
- rm -rf Contents
+
+ $qt_deploy_bin SQLiteStudio.app -dmg -executable=SQLiteStudio.app/Contents/MacOS/SQLiteStudio -always-overwrite -verbose=3
+
+ cd $1/SQLiteStudio
+ VERSION=`SQLiteStudio.app/Contents/MacOS/sqlitestudiocli -v | awk '{print $2}'`
+
+ mv SQLiteStudio.dmg sqlitestudio-$VERSION.dmg
+ hdiutil attach sqlitestudio-$VERSION.dmg
+
+ hdiutil detach /Volumes/SQLiteStudio
+
+ hdiutil convert sqlitestudio-$VERSION.dmg -format UDRW -o sqlitestudio-rw-$VERSION.dmg
+ hdiutil attach -readwrite sqlitestudio-rw-$VERSION.dmg
+ cp -RPf $libdir/libsqlite3.0.dylib /Volumes/SQLiteStudio/SQLiteStudio.app/Contents/Frameworks/
+ hdiutil detach /Volumes/SQLiteStudio
+ hdiutil compact sqlitestudio-rw-$VERSION.dmg
+
+ rm -f sqlitestudio-$VERSION.dmg
+ hdiutil convert sqlitestudio-rw-$VERSION.dmg -format UDZO -o sqlitestudio-$VERSION.dmg
+ rm -f sqlitestudio-rw-$VERSION.dmg
+
+ echo "Verifying contents of new image:"
+ hdiutil attach sqlitestudio-$VERSION.dmg
+ ls -l /Volumes/SQLiteStudio/SQLiteStudio.app/Contents/Frameworks
+ hdiutil detach /Volumes/SQLiteStudio
+
echo "Done."
else
- $qt_deploy_bin SQLiteStudio.app
replaceInfo $1
+ $qt_deploy_bin SQLiteStudio.app
fi