]> git.donarmstrong.com Git - lilypond.git/blob - buildscripts/guile-gnome.sh
5c8c425a4aeb4b5d0cfb180edf4d3057252e4dce
[lilypond.git] / buildscripts / guile-gnome.sh
1 #!@BASH@
2 # guile-gnome.sh -- download, compile, install guile-gnome
3
4 # LilyPond has an experimental gnome canvas output backend -- hackers
5 # only.  This depends on unreleased version of guile-gnome, which
6 # depends on an unreleased, forked version of g-wrap.
7
8 # Note: this install information is volatile, you'll probably want to
9 # pull all from from guile-gnome-devel@gnu.org--2004 soon.
10
11 set -ex
12
13 if  [ -d $HOME/usr/pkg/libffi/ ]; then
14     export LDFLAGS=-L$HOME/usr/pkg/libffi/lib
15     export CPPFLAGS=-I$HOME/usr/pkg/libffi/include
16 fi 
17
18 export AUTOMAKE=automake-1.8
19 export AUTOCONF=autoconf2.50 
20
21 # test: the name of our download and build directory
22 rm -rf test
23 mkdir test
24 cd test
25
26 ## 1.  install gnome-devel
27 ##     - Debian/unstable: apt-get install gnome-devel
28 ##     - ...
29
30
31 ## 2.  *** NOTE: use guile-1.6 for g-wrap and guile-gnome ***
32 ## using GUILE CVS g-wrap/guile-gnome is experimental (read: segfaults)
33 ## Assuming that system has guile-1.6 installed in /usr/bin 
34 PATH=/usr/bin:$PATH
35
36 ## 3.  get g-wrap 2.0
37 tla register-archive a.rottmann@gmx.at--2004-main \
38     http://people.debian.org/~rotty/arch/a.rottmann@gmx.at/2004-main || true
39
40 rm -rf g-wrap
41 ## tla get a.rottmann@gmx.at--2004-main/g-wrap--tng g-wrap
42 ## pull latest g-wrap from janneke -- this step is probably no longer
43 ## necessary when you read this
44 tla register-archive janneke@gnu.org--2004-gnome \
45     http://lilypond.org/~janneke/{arch}/2004-gnome || true
46 tla get janneke@gnu.org--2004-gnome/g-wrap--janneke g-wrap
47 cd g-wrap
48
49 rm -rf $HOME/usr/pkg/g-wrap
50 sh autogen.sh --noconfigure
51 mkdir =build
52 cd =build
53 ../configure --prefix=$HOME/usr/pkg/g-wrap
54 make install
55
56 # cp srfi-34.scm from CVS head ?  --hwn
57 (cd $HOME/usr/pkg/g-wrap/share/guile/site
58  mv srfi-34.scm srfi-34.scm-g-wrap
59  cp $HOME/usr/pkg/guile/share/guile-1.7/srfi/srfi-34.scm .)
60
61 cd ../..
62
63 ## 4.  get guile-gnome
64 tla register-archive guile-gnome-devel@gnu.org--2004 \
65     http://people.debian.org/~rotty/arch/guile-gnome-devel@gnu.org/2004/ || true
66 rm -rf guile-gnome
67 tla get guile-gnome-devel@gnu.org--2004/dists--dev guile-gnome
68 cd guile-gnome
69 tla build-config -r configs/gnu.org/dev
70 cd src
71
72 ## 5.  get the gnome canvas module
73 tla get guile-gnome-devel@gnu.org--2004/libgnomecanvas--dev libgnomecanvas
74
75 rm -rf $HOME/usr/pkg/guile-gnome
76 sh autogen.sh --noconfigure
77 mkdir ../=build
78 cd ../=build
79
80 export GUILE_LOAD_PATH=$HOME/usr/pkg/g-wrap/share/guile/site:$GUILE_LOAD_PATH
81 export LD_LIBRARY_PATH=$HOME/usr/pkg/g-wrap/lib:$LD_LIBRARY_PATH
82 export PKG_CONFIG_PATH=$HOME/usr/pkg/g-wrap/lib/pkgconfig:$PKG_CONFIG_PATH
83
84 ../src/configure --prefix=$HOME/usr/pkg/guile-gnome
85
86 # requires 800mb RAM with -O2
87 # using gcc-3.4 may help here -- jcn
88 (cd libgnomecanvas/gnome/gw; perl -i~ -pe 's/-O2//g' Makefile)
89
90 G_WRAP_MODULE_DIR=$HOME/usr/pkg/g-wrap/share/guile/site make install
91
92 export GUILE_LOAD_PATH=$HOME/usr/pkg/guile-gnome/share/guile:$GUILE_LOAD_PATH
93 export LD_LIBRARY_PATH=$HOME/usr/pkg/guile-gnome/lib:$LD_LIBRARY_PATH
94
95 # simple test
96 guile -s ../src/libgnomecanvas/examples/canvas.scm