]> git.donarmstrong.com Git - lilypond.git/blob - make/lilypond.mandrake.spec.in
2ee1f4bf6357ee35ad1d2c99838bd94aaaef297b
[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 info
77 make -C Documentation
78
79 # make  html
80 make web
81 make -C Documentation/user omf
82
83 %install
84
85 #Fix conflicting php variable out=/dev/vc/
86 unset out
87
88 # Create installation root folders
89 rm -rf $RPM_BUILD_ROOT
90 RPM_DOC_ROOT=$RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
91 rm -rf $RPM_DOC_ROOT
92 mkdir -p $RPM_DOC_ROOT
93
94 strip lily/out/lilypond 
95 %makeinstall MAKE_PFA_FILES=1
96 local_lilypond_libdir=$RPM_BUILD_ROOT/%{_libdir}/%{name}/%{version}
97
98 %if %{info}
99   rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
100   bzip2 $RPM_BUILD_ROOT%{_infodir}/*
101 %endif
102
103 mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
104 install -m 644 lilypond-mode.el lilypond-font-lock.el lilypond-indent.el out/lilypond.words.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/
105 install -m 644 lilypond-init.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
106
107 bzip2 $RPM_BUILD_ROOT%{_mandir}/man1/*
108
109 mkdir -p $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d
110 cp buildscripts/out/lilypond-profile $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.sh
111 cp buildscripts/out/lilypond-login $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.csh
112
113 make prefix="$RPM_BUILD_ROOT%{_prefix}" webdir="$RPM_BUILD_ROOT%{_prefix}/share/doc/%{name}-documentation-%{version}/" out=www web-install
114
115 # Menu
116 # Every entry must be changed according package specifications
117 # Pay attention to "section" "command" and "longtitle"
118
119 mkdir -p $RPM_BUILD_ROOT%{_menudir}
120 cat >$RPM_BUILD_ROOT%{_menudir}/%{name} <<EOF
121 ?package(%name):\
122   command="info %{name}"\
123   needs="text"\
124   icon="%{name}.png"\
125   section="Documentation"\
126   title="%{name}-info"\
127   longtitle="%{name} Info"
128 EOF
129   
130 cat >$RPM_BUILD_ROOT%{_menudir}/%{name}-documentation <<EOF
131 ?package(%name):\
132   command="\$BROWSER %{_docdir}/%{name}-documentation-%{version}/index.html"\
133   needs="X11"\
134   icon="%{name}.png"\
135   section="Documentation"\
136   title="%{name}-documentation"\
137   longtitle="%{name} Documentation"
138 EOF
139
140 # icon
141 install -d $RPM_BUILD_ROOT/%{_iconsdir}
142 install -m 644 Documentation/pictures/out-www/lelie-logo.png $RPM_BUILD_ROOT/%{_iconsdir}/%{name}.png
143
144 %{find_lang} %{name}
145
146 %post
147 %{update_menus}
148
149 touch /tmp/.lilypond-install
150 rm `find /var/lib/texmf -name 'feta*pk' -or -name 'feta*tfm' -or -name 'parmesan*pk' -or -name 'parmesan*tfm' -print` /tmp/.lilypond-install
151
152 %if %{info}
153   /sbin/install-info --quiet %{_infodir}/lilypond.info.bz2 %{_infodir}/dir 
154 %endif
155
156 /usr/X11R6/bin/mkfontdir %{_datadir}/lilypond/%{version}/fonts/type1/
157 chkfontpath --add=%{_datadir}/lilypond/%{version}/fonts/type1/
158
159 %post documentation
160 %{update_menus}
161 scrollkeeper-update
162
163 %preun
164
165 %if %{info}
166   if [ $1 = 0 ]; then
167     /sbin/install-info --quiet --delete %{_infodir}/lilypond.info.bz2 %{_infodir}/dir 
168   fi
169 %endif
170
171 rm -f %{_datadir}/lilypond/%{version}/fonts/type1/fonts.dir
172 chkfontpath --remove=%{_datadir}/lilypond/%{version}/fonts/type1/
173
174 %postun
175 %{clean_menus}
176
177 %postun documentation
178 %{clean_menus}
179 scrollkeeper-update
180
181 %clean
182 rm -rf $RPM_BUILD_ROOT
183
184 %files -f %{name}.lang
185 %defattr(-, root, root)
186 %doc COPYING README.txt INSTALL.txt DEDICATION NEWS.txt AUTHORS.txt THANKS
187
188 %{_datadir}/emacs/site-lisp/site-start.d/lilypond-*
189 %{_datadir}/emacs/site-lisp/lilypond*
190
191 %if %{info}
192   %{_infodir}/*
193 %endif
194
195 %{_datadir}/%{name}/%{version}/
196 %{_datadir}/locale/*/LC_MESSAGES/lilypond.mo
197 %{_prefix}/../etc/profile.d/lilypond.*
198 %_bindir/*
199 %_mandir/*
200 %_menudir/*
201 %_iconsdir/%{name}.*
202
203 %files -n liblilypond
204 %defattr(-,root,root)
205 %{_libdir}/%{name}/%{version}/python/*.so
206
207 %files documentation
208 %defattr(-, root, root)
209
210 %{_docdir}/*
211 %{_datadir}/omf/lilypond/%{version}
212 %{_menudir}/%{name}-documentation
213
214 %changelog
215 * Thu Sep 01 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.4-4mdk
216 - add target lilypond.words.
217
218 * Sun Aug 25 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.8.1-3mdk
219 - Fixed doc-path in menu.
220
221 * Thu Aug 23 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.1-1mdk
222 * Sun Aug 24 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.8.1-2mdk
223 - Added Heikki Johannes Junes fix for confilcting PHP variable
224   out=/dev/vc/ by adding unset out before compiling
225 - Compiled with recent guile = 1.6.4 and mftrace = 1.0.19
226 - Changed icon to lilypond.png
227 - Added menu and icons again
228
229 * Thu Aug 07 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.0-1mdk
230 - removed menu and icons, sync with redhat-spec
231
232 * Thu Jun 12 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.23-1mdk
233 - refreshed dependencies and file list.
234
235 * Sat Feb 01 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.7.12-1mdk
236 - Built for Mandrake 9.1
237
238 * Fri Dec 01 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.9-1mdk
239 - set menu-items to lilypond-info and lilypond-documentation.
240
241 * Fri Nov 30 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.8-4mdk
242 - add pre/post-dependencies and menus with icon from source.
243
244 * Fri Oct 28 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.4-1mdk
245 - info, commented menu
246
247 * Fri Aug 30 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.6.0-1mdk
248 - Adapted from lilypond.redhat.skel and skeleton found in Mandrake's RPM-docs.
249 - TODO: info (?) and dependencies.
250
251 * Fri Jun 01 2001 Lenny Cartier <lenny@mandrakesoft.com> 1.4.2-1mdk
252 - updated by Michael Brown <mbrown@linux-mandrake.com> :
253         - Upgraded to 1.4.2
254         - Changed URL
255         - Removed /etc/profile.d scripts: all TeX bits are now located properly
256         - Rearranged documentation
257         - Tidied spec file
258         - Updated README.first
259
260 * Mon Feb 26 2001 Lenny Cartier <lenny@mandrakesoft.com> 1.3.129-1mdk
261 - added in contribs by Michael Brown <mbrown@fensystems.co.uk> :
262         - Removed info files completely (couldn't get info reader to read them)
263         - TODO: Get this to work at some point (in the meantime, use documentation in lilypond-extras)
264
265 * Sat Feb 17 2001 Michael Brown <mbrown@fensystems.co.uk>
266 - Moved TeX font folders into the system TeX tree (this ensures that the /var/lib/texmf font cache is used instead of current folder)
267 - Added mktexlsr to post-install and post-uninstall scripts
268 - Patched scripts in /etc/profile.d to reflect changes to font locations
269 - Added QuickStart guide and Points to note sections to README.first (well worth reading)
270 - Fixed install-info and uninstall-info sections to use Mandrake's RPM macros :-)
271
272 * Tue Feb 13 2001 Michael Brown <mbrown@fensystems.co.uk>
273 - First Mandrake package
274 - spec file heavily adapted from PowerPC contribs.
275 - Note HTML documentation may contain duff links and may be incomplete.  Lots of warnings appear when building HTML docs.
276 - PostScript documentation is duplicated (how do you get an rpm package to contain a symlink?)
277 - Created README.first file