tryton
changeset 1281:2b9610ac9107
Fix setup to create bundle for MacOS X
| author | Cédric Krier <ced@b2ck.com> |
|---|---|
| date | Sat, 11 Apr 2009 18:58:39 +0200 |
| parents | 0e964294340d |
| children | 25dd6cd7a518 |
| files | setup-bundle.sh setup.py tryton/client.py |
| diffstat | 3 files changed, 36 insertions(+), 3 deletions(-) [+] |
line diff
1.1 --- a/setup-bundle.sh Sat Apr 11 18:58:00 2009 +0200 1.2 +++ b/setup-bundle.sh Sat Apr 11 18:58:39 2009 +0200 1.3 @@ -1,14 +1,36 @@ 1.4 #!/bin/sh 1.5 1.6 VERSION=`python -c "import os; execfile(os.path.join('tryton', 'version.py')); print VERSION"` 1.7 +GTK_INST_DIR=~/gtk/inst 1.8 +GTK_VERSION=2.10.0 1.9 +PANGO_VERSION=1.6.0 1.10 1.11 -for i in dist/tryton.app/Contents/Resources/share/pixmaps/tryton/*.svg; do 1.12 - rsvg-convert $i -o ${i/svg/png}; 1.13 +mkdir -p dist/tryton.app/Contents/Resources/lib/pango/${PANGO_VERSION}/modules 1.14 +cp -r ${GTK_INST_DIR}/lib/pango/${PANGO_VERSION}/modules/*.so dist/tryton.app/Contents/Resources/lib/pango/${PANGO_VERSION}/modules/ 1.15 + 1.16 +pango-querymodules | sed -e "s#${GTK_INST_DIR}#@executable_path/../Resources#" >dist/tryton.app/Contents/Resources/pango.modules 1.17 +echo -e "[Pango]\nModuleFiles=./pango.modules\n" >dist/tryton.app/Contents/Resources/pangorc 1.18 + 1.19 +mkdir -p dist/tryton.app/Contents/Resources/lib/gtk-2.0/${GTK_VERSION}/loaders/ 1.20 +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/ 1.21 + 1.22 +gdk-pixbuf-query-loaders | sed -e "s#${GTK_INST_DIR}#@executable_path/../Resources#" >dist/tryton.app/Contents/Resources/gdk-pixbuf.loaders 1.23 + 1.24 +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 1.25 + libs="`otool -L $library 2>/dev/null | fgrep compatibility | cut -d\( -f1 | grep ${GTK_INST_DIR} | sort | uniq`" 1.26 + for lib in $libs; do 1.27 + fixed=`echo $lib | sed -e s,\${GTK_INST_DIR}/lib,@executable_path/../Frameworks,` 1.28 + install_name_tool -change $lib $fixed $library 1.29 + done 1.30 done 1.31 -rm -f dist/tryton.app/Contents/Resources/share/pixmaps/tryton/*.svg 1.32 + 1.33 1.34 for i in CHANGELOG COPYRIGHT LICENSE README TODO; do 1.35 cp ${i} dist/${i}.txt 1.36 done 1.37 1.38 +if [[ -e tryton-${VERSION}.dmg ]]; then 1.39 + rm tryton-${VERSION}.dmg 1.40 +fi 1.41 + 1.42 hdiutil create tryton-${VERSION}.dmg -volname "Tryton Client ${VERSION}" -fs HFS+ -srcfolder dist
2.1 --- a/setup.py Sat Apr 11 18:58:00 2009 +0200 2.2 +++ b/setup.py Sat Apr 11 18:58:39 2009 +0200 2.3 @@ -88,6 +88,7 @@ 2.4 'includes': 'pygtk, gtk, glib, cairo, pango, pangocairo, atk, ' \ 2.5 'gobject, gio, gtk.keysyms', 2.6 'resources': 'tryton/plugins', 2.7 + 'frameworks': 'librsvg-2.2.dylib', 2.8 'plist': { 2.9 'CFBundleIdentifier': 'org.tryton', 2.10 },
3.1 --- a/tryton/client.py Sat Apr 11 18:58:00 2009 +0200 3.2 +++ b/tryton/client.py Sat Apr 11 18:58:39 2009 +0200 3.3 @@ -15,6 +15,16 @@ 3.4 os.environ['PATH'] = os.path.join(os.getcwd(), os.path.dirname(sys.argv[0]), 3.5 'GTK\\lib') + ';' + os.environ['PATH'] 3.6 3.7 +elif os.name == 'mac' or \ 3.8 + (hasattr(os, 'uname') and os.uname()[0] == 'Darwin'): 3.9 + resources = os.path.join(os.path.dirname(sys.argv[0]), '..', 'Resources') 3.10 + pixbuf_loader = os.path.join(resources, 'gdk-pixbuf.loaders') 3.11 + if os.path.isfile(pixbuf_loader): 3.12 + os.environ['GDK_PIXBUF_MODULE_FILE'] = pixbuf_loader 3.13 + pangorc = os.path.join(resources, 'pangorc') 3.14 + if os.path.isfile(pangorc): 3.15 + os.environ['PANGO_RC_FILE'] = pangorc 3.16 + 3.17 import pygtk 3.18 pygtk.require('2.0') 3.19 import gtk
