Fix setup to create bundle for MacOS X

This commit is contained in:
Cédric Krier committed 2009-04-11 18:58:39 +02:00
1 parent 5a6e6689dc
commit 4ea0f7fdb4
3 files changed
+36 -3

No files matched your search

+25 -3
View File
@@ -1,14 +1,36 @@
#!/bin/sh
VERSION=`python -c "import os; execfile(os.path.join('tryton', 'version.py')); print VERSION"`
GTK_INST_DIR=~/gtk/inst
GTK_VERSION=2.10.0
PANGO_VERSION=1.6.0
for i in dist/tryton.app/Contents/Resources/share/pixmaps/tryton/*.svg; do
rsvg-convert $i -o ${i/svg/png};
mkdir -p dist/tryton.app/Contents/Resources/lib/pango/${PANGO_VERSION}/modules
cp -r ${GTK_INST_DIR}/lib/pango/${PANGO_VERSION}/modules/*.so dist/tryton.app/Contents/Resources/lib/pango/${PANGO_VERSION}/modules/
pango-querymodules | sed -e "s#${GTK_INST_DIR}#@executable_path/../Resources#" >dist/tryton.app/Contents/Resources/pango.modules
echo -e "[Pango]\nModuleFiles=./pango.modules\n" >dist/tryton.app/Contents/Resources/pangorc
mkdir -p dist/tryton.app/Contents/Resources/lib/gtk-2.0/${GTK_VERSION}/loaders/
cp -r ${GTK_INST_DIR}/lib/gtk-2.0/${GTK_VERSION}/loaders/*.so dist/tryton.app/Contents/Resources/lib/gtk-2.0/${GTK_VERSION}/loaders/
gdk-pixbuf-query-loaders | sed -e "s#${GTK_INST_DIR}#@executable_path/../Resources#" >dist/tryton.app/Contents/Resources/gdk-pixbuf.loaders
for library in dist/tryton.app/Contents/Resources/lib/gtk-2.0/${GTK_VERSION}/loaders/*.so dist/tryton.app/Contents/Resources/lib/pango/${PANGO_VERSION}/modules/*.so; do
libs="`otool -L $library 2>/dev/null | fgrep compatibility | cut -d\( -f1 | grep ${GTK_INST_DIR} | sort | uniq`"
for lib in $libs; do
fixed=`echo $lib | sed -e s,\${GTK_INST_DIR}/lib,@executable_path/../Frameworks,`
install_name_tool -change $lib $fixed $library
done
done
rm -f dist/tryton.app/Contents/Resources/share/pixmaps/tryton/*.svg
for i in CHANGELOG COPYRIGHT LICENSE README TODO; do
cp ${i} dist/${i}.txt
done
if [[ -e tryton-${VERSION}.dmg ]]; then
rm tryton-${VERSION}.dmg
fi
hdiutil create tryton-${VERSION}.dmg -volname "Tryton Client ${VERSION}" -fs HFS+ -srcfolder dist
+1
View File
@@ -88,6 +88,7 @@ elif os.name == 'mac' \
'includes': 'pygtk, gtk, glib, cairo, pango, pangocairo, atk, ' \
'gobject, gio, gtk.keysyms',
'resources': 'tryton/plugins',
'frameworks': 'librsvg-2.2.dylib',
'plist': {
'CFBundleIdentifier': 'org.tryton',
},
+10
View File
@@ -15,6 +15,16 @@ if os.name == 'nt':
os.environ['PATH'] = os.path.join(os.getcwd(), os.path.dirname(sys.argv[0]),
'GTK\\lib') + ';' + os.environ['PATH']
elif os.name == 'mac' or \
(hasattr(os, 'uname') and os.uname()[0] == 'Darwin'):
resources = os.path.join(os.path.dirname(sys.argv[0]), '..', 'Resources')
pixbuf_loader = os.path.join(resources, 'gdk-pixbuf.loaders')
if os.path.isfile(pixbuf_loader):
os.environ['GDK_PIXBUF_MODULE_FILE'] = pixbuf_loader
pangorc = os.path.join(resources, 'pangorc')
if os.path.isfile(pangorc):
os.environ['PANGO_RC_FILE'] = pangorc
import pygtk
pygtk.require('2.0')
import gtk