]> git.donarmstrong.com Git - lilypond.git/blob - make/lilypond.mandrake.spec.in
* spec/lilypond.{mandrake,suse}.spec.in: update lilypond.words path.
[lilypond.git] / make / lilypond.mandrake.spec.in
1 %define info yes
2
3 %define name lilypond
4 %define version @TOPLEVEL_VERSION@
5 %define release 4mdk
6
7 Summary:        A program for printing sheet music.
8 Name:           %{name}
9 Version:        %{version}
10 Release:        %{release}
11 License:        GPL
12 Group:          Publishing
13 URL:            http://www.lilypond.org/
14 Source0:        ftp.lilypond.org:/pub/LilyPond/development/lilypond-%{version}.tar.bz2
15 BuildRoot:      %{_tmppath}/%{name}-buildroot
16 BuildRequires:  t1utils bison texinfo t1lib1-devel libstdc++5-devel libguile12-devel >= 1.6.4
17 BuildRequires:  gcc-c++ glibc-devel flex >= 2.5.4a-22mdk groff netpbm autotrace
18 BuildRequires:  ImageMagick >= 5.5.4.4 libMagick5.5.4-devel >= 5.5.4.4
19 BuildRequires:  ghostscript >= 7.05-53.2mdk mftrace >= 1.0.19 pfaedit >= 030822
20 Requires:       tetex tetex-latex chkfontpath XFree86 info-install
21 PreReq:         chkfontpath
22  
23
24 %description
25 LilyPond is a music typesetter.  It produces beautiful sheet music using a
26 high level description file as input.  LilyPond is part of the GNU project.
27  
28 LilyPond is split into two packages.  The package "lilypond" provides the
29 core package, containing the utilities for converting the music source
30 (.ly) files into printable output.  The package "lilypond-documentation" 
31 provides the full documentation, example .ly files for various features and 
32 the Mutopia project files (musical equivalent of the Gutenberg project - see
33 http://www.mutopiaproject.org for details).
34  
35 If you are new to lilypond, you will almost certainly want to install the
36 "lilypond-documentation" package in addition to the "lilypond" package.
37
38 %package -n liblilypond
39 Summary: LilyPond libraries.
40 License: GPL
41 Group: System/Libraries
42 Requires: lilypond >= %{version}
43
44 %description -n liblilypond
45 LilyPond libs
46  
47 %package documentation
48 Summary: LilyPond documentation, examples and Mutopia files.
49 Group: Publishing
50 Requires: %{name}
51
52 %description documentation
53 The documentation of LilyPond, both in HTML and PostScript, along with
54 example input files and the files from the Mutopia project.
55
56 %prep
57 rm -rf $RPM_BUILD_ROOT
58
59 %setup
60
61 %build
62 # DO NOT use % { configure } , it hardcodes all paths, runs libtool,
63 # so we can't do make prefix=/tmp/ install.
64 # -- not sure what this comment means; it's a relic from the PPC spec file -- mbrown@fensystems.co.uk
65 ##./configure --disable-checking --disable-debugging --enable-printing --prefix=%{_prefix} --disable-optimising --enable-shared
66 ## Add options if needed
67
68 #Fix conflicting php variable out=/dev/vc/
69 unset out
70
71 ./configure --disable-checking --prefix=%{_prefix} --libdir=%{_libdir} --enable-optimising
72
73 %make MAKE_PFA_FILES=1 all
74 make -C mf/ pfa
75
76 make lilypond.words
77
78 # make info
79 make -C Documentation
80
81 # make  html
82 make web
83 make -C Documentation/user omf
84
85 %install
86
87 #Fix conflicting php variable out=/dev/vc/
88 unset out
89
90 # Create installation root folders
91 rm -rf $RPM_BUILD_ROOT
92 RPM_DOC_ROOT=$RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
93 rm -rf $RPM_DOC_ROOT
94 mkdir -p $RPM_DOC_ROOT
95
96 strip lily/out/lilypond 
97 %makeinstall MAKE_PFA_FILES=1
98 local_lilypond_libdir=$RPM_BUILD_ROOT/%{_libdir}/%{name}/%{version}
99
100 %if %{info}
101   rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
102   bzip2 $RPM_BUILD_ROOT%{_infodir}/*
103 %endif
104
105 mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
106 install -m 644 lilypond-mode.el lilypond-font-lock.el lilypond-indent.el out/lilypond.words $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/
107 install -m 644 lilypond-init.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
108
109 bzip2 $RPM_BUILD_ROOT%{_mandir}/man1/*
110
111 mkdir -p $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d
112 cp buildscripts/out/lilypond-profile $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.sh
113 cp buildscripts/out/lilypond-login $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.csh
114
115 make prefix="$RPM_BUILD_ROOT%{_prefix}" webdir="$RPM_BUILD_ROOT%{_prefix}/share/doc/%{name}-documentation-%{version}/" out=www web-install
116
117 # Menu
118 # Every entry must be changed according package specifications
119 # Pay attention to "section" "command" and "longtitle"
120
121 mkdir -p $RPM_BUILD_ROOT%{_menudir}
122 cat >$RPM_BUILD_ROOT%{_menudir}/%{name} <<EOF
123 ?package(%name):\
124   command="info %{name}"\
125   needs="text"\
126   icon="%{name}.png"\
127   section="Documentation"\
128   title="%{name}-info"\
129   longtitle="%{name} Info"
130 EOF
131   
132 cat >$RPM_BUILD_ROOT%{_menudir}/%{name}-documentation <<EOF
133 ?package(%name):\
134   command="\$BROWSER %{_docdir}/%{name}-documentation-%{version}/index.html"\
135   needs="X11"\
136   icon="%{name}.png"\
137   section="Documentation"\
138   title="%{name}-documentation"\
139   longtitle="%{name} Documentation"
140 EOF
141
142 # icon
143 install -d $RPM_BUILD_ROOT/%{_iconsdir}
144 install -m 644 Documentation/pictures/out-www/lelie-logo.png $RPM_BUILD_ROOT/%{_iconsdir}/%{name}.png
145
146 %{find_lang} %{name}
147
148 %post
149 %{update_menus}
150
151 touch /tmp/.lilypond-install
152 rm `find /var/lib/texmf -name 'feta*pk' -or -name 'feta*tfm' -or -name 'parmesan*pk' -or -name 'parmesan*tfm' -print` /tmp/.lilypond-install
153
154 %if %{info}
155   /sbin/install-info --quiet %{_infodir}/lilypond.info.bz2 %{_infodir}/dir 
156 %endif
157
158 /usr/X11R6/bin/mkfontdir %{_datadir}/lilypond/%{version}/fonts/type1/
159 chkfontpath --add=%{_datadir}/lilypond/%{version}/fonts/type1/
160
161 %post documentation
162 %{update_menus}
163 scrollkeeper-update
164
165 %preun
166
167 %if %{info}
168   if [ $1 = 0 ]; then
169     /sbin/install-info --quiet --delete %{_infodir}/lilypond.info.bz2 %{_infodir}/dir 
170   fi
171 %endif
172
173 rm -f %{_datadir}/lilypond/%{version}/fonts/type1/fonts.dir
174 chkfontpath --remove=%{_datadir}/lilypond/%{version}/fonts/type1/
175
176 %postun
177 %{clean_menus}
178
179 %postun documentation
180 %{clean_menus}
181 scrollkeeper-update
182
183 %clean
184 rm -rf $RPM_BUILD_ROOT
185
186 %files -f %{name}.lang
187 %defattr(-, root, root)
188 %doc COPYING README.txt INSTALL.txt DEDICATION NEWS.txt AUTHORS.txt THANKS
189
190 %{_datadir}/emacs/site-lisp/site-start.d/lilypond-*
191 %{_datadir}/emacs/site-lisp/lilypond*
192
193 %if %{info}
194   %{_infodir}/*
195 %endif
196
197 %{_datadir}/%{name}/%{version}/
198 %{_datadir}/locale/*/LC_MESSAGES/lilypond.mo
199 %{_prefix}/../etc/profile.d/lilypond.*
200 %_bindir/*
201 %_mandir/*
202 %_menudir/*
203 %_iconsdir/%{name}.*
204
205 %files -n liblilypond
206 %defattr(-,root,root)
207 %{_libdir}/%{name}/%{version}/python/*.so
208
209 %files documentation
210 %defattr(-, root, root)
211
212 %{_docdir}/*
213 %{_datadir}/omf/lilypond/%{version}
214 %{_menudir}/%{name}-documentation
215
216 %changelog
217 * Thu Sep 01 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.4-4mdk
218 - add target lilypond.words.
219
220 * Sun Aug 25 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.8.1-3mdk
221 - Fixed doc-path in menu.
222
223 * Thu Aug 23 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.1-1mdk
224 * Sun Aug 24 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.8.1-2mdk
225 - Added Heikki Johannes Junes fix for confilcting PHP variable
226   out=/dev/vc/ by adding unset out before compiling
227 - Compiled with recent guile = 1.6.4 and mftrace = 1.0.19
228 - Changed icon to lilypond.png
229 - Added menu and icons again
230
231 * Thu Aug 07 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.0-1mdk
232 - removed menu and icons, sync with redhat-spec
233
234 * Thu Jun 12 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.23-1mdk
235 - refreshed dependencies and file list.
236
237 * Sat Feb 01 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.7.12-1mdk
238 - Built for Mandrake 9.1
239
240 * Fri Dec 01 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.9-1mdk
241 - set menu-items to lilypond-info and lilypond-documentation.
242
243 * Fri Nov 30 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.8-4mdk
244 - add pre/post-dependencies and menus with icon from source.
245
246 * Fri Oct 28 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.4-1mdk
247 - info, commented menu
248
249 * Fri Aug 30 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.6.0-1mdk
250 - Adapted from lilypond.redhat.skel and skeleton found in Mandrake's RPM-docs.
251 - TODO: info (?) and dependencies.
252
253 * Fri Jun 01 2001 Lenny Cartier <lenny@mandrakesoft.com> 1.4.2-1mdk
254 - updated by Michael Brown <mbrown@linux-mandrake.com> :
255         - Upgraded to 1.4.2
256         - Changed URL
257         - Removed /etc/profile.d scripts: all TeX bits are now located properly
258         - Rearranged documentation
259         - Tidied spec file
260         - Updated README.first
261
262 * Mon Feb 26 2001 Lenny Cartier <lenny@mandrakesoft.com> 1.3.129-1mdk
263 - added in contribs by Michael Brown <mbrown@fensystems.co.uk> :
264         - Removed info files completely (couldn't get info reader to read them)
265         - TODO: Get this to work at some point (in the meantime, use documentation in lilypond-extras)
266
267 * Sat Feb 17 2001 Michael Brown <mbrown@fensystems.co.uk>
268 - Moved TeX font folders into the system TeX tree (this ensures that the /var/lib/texmf font cache is used instead of current folder)
269 - Added mktexlsr to post-install and post-uninstall scripts
270 - Patched scripts in /etc/profile.d to reflect changes to font locations
271 - Added QuickStart guide and Points to note sections to README.first (well worth reading)
272 - Fixed install-info and uninstall-info sections to use Mandrake's RPM macros :-)
273
274 * Tue Feb 13 2001 Michael Brown <mbrown@fensystems.co.uk>
275 - First Mandrake package
276 - spec file heavily adapted from PowerPC contribs.
277 - Note HTML documentation may contain duff links and may be incomplete.  Lots of warnings appear when building HTML docs.
278 - PostScript documentation is duplicated (how do you get an rpm package to contain a symlink?)
279 - Created README.first file