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