]> git.donarmstrong.com Git - lilypond.git/blob - make/lilypond.mandrake.spec.in
* input/regression/finger-chords.ly (texidoc): new file.
[lilypond.git] / make / lilypond.mandrake.spec.in
1 %define info yes
2
3 %define name lilypond
4 %define version @TOPLEVEL_VERSION@
5 %define release 1mdk
6
7 Summary:        A program for printing sheet music.
8 Name:           %{name}
9 Version:        %{version}
10 Release:        %{release}
11 License:        GPL
12 Group:          Applications/Publishing
13 URL:            http://www.lilypond.org/
14 Source0:        ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-%{version}.tar.gz
15 # Source1:      %name-16x16.png.tar.bz2
16 # Source2:      %name-32x32.png.tar.bz2
17 # Source3:      %name-48x48.png.tar.bz2
18 BuildRoot:      %{_tmppath}/%{name}-buildroot
19 BuildRequires:  t1utils bison texinfo
20 Requires:       tetex tetex-latex
21
22 %description
23 LilyPond is a music typesetter.  It produces beautiful sheet music using a
24 high level description file as input.  Lilypond is part of the GNU project.
25  
26 LilyPond is split into two packages.  The package "lilypond" provides the
27 core package, containing the utilities for converting the music source
28 (.ly) files into printable output.  The package "lilypond-extras" provides
29 the full documentation, example .ly files for various features and the
30 Mutopia project files (musical equivalent of the Gutenberg project - see
31 http://www.mutopiaproject.org for details).
32  
33 If you are new to lilypond, you will almost certainly want to install the
34 "lilypond-extras" package in addition to the "lilypond" package.
35  
36 ## You may also wish to investigate the "denemo" package, which provides a
37 ## graphical front end to lilypond.
38 ## 
39 ## See the file README.first for more information.
40
41 %package documentation
42 Summary: LilyPond documentation, examples and Mutopia files.
43 Group: Publishing
44 Requires: lilypond
45
46 %description documentation
47 The documentation of LilyPond, both in HTML and PostScript, along with
48 example input files and the files from the Mutopia project.
49
50 %prep
51 rm -rf $RPM_BUILD_ROOT
52
53 %setup
54
55 %build
56 # DO NOT use % { configure } , it hardcodes all paths, runs libtool,
57 # so we can't do make prefix=/tmp/ install.
58 # -- not sure what this comment means; it's a relic from the PPC spec file -- mbrown@fensystems.co.uk
59 ##./configure --disable-checking --disable-debugging --enable-printing --prefix=%{_prefix} --disable-optimising --enable-shared
60 ## Add options if needed
61 ./configure --disable-checking --prefix=%{_prefix} --enable-optimising
62 make MAKE_PFA_FILES=1 all
63
64 # make info
65 make -C Documentation
66
67 # make  html
68 make web-doc top-web 
69
70 %install
71
72 # Create installation root folders
73 rm -rf $RPM_BUILD_ROOT
74 RPM_DOC_ROOT=$RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
75 rm -rf $RPM_DOC_ROOT
76 mkdir -p $RPM_DOC_ROOT
77
78 strip lily/out/lilypond 
79 make prefix="$RPM_BUILD_ROOT%{_prefix}" MAKE_PFA_FILES=1 all install
80 # %{find_lang} %{name}
81
82 %if info=="yes"
83 gzip -9fn $RPM_BUILD_ROOT%{_prefix}/info/*
84 %endif
85
86 # Move info and man files into correct locations
87 # mv $RPM_BUILD_ROOT/usr/info $RPM_BUILD_ROOT%{_infodir}
88 # mv $RPM_BUILD_ROOT/usr/man $RPM_BUILD_ROOT%{_mandir}
89
90 mkdir -p $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.d
91 install -m 644 lilypond-mode.el lilypond-font-lock.el lilypond-indent.el $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/
92 install -m 644 lilypond-init.el $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.d
93
94 gzip -9fn $RPM_BUILD_ROOT%{_prefix}/man/man1/*
95
96 mkdir -p $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d
97 cp buildscripts/out/lilypond-profile $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.sh
98 cp buildscripts/out/lilypond-login $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.csh
99
100
101 # again, make sure that main package installs even if doco fails
102 mkdir -p web/out
103 tar -C web -xzf out/web.tar.gz 
104
105 # Create documentation tree in %{_docdir}
106 ## mkdir -p $RPM_DOC_ROOT/HTML
107 ## tar -C $RPM_DOC_ROOT/HTML -xzf out/web.tar.gz
108 ## ln -s HTML/input $RPM_DOC_ROOT/Examples
109 ## ln -s HTML/input/test $RPM_DOC_ROOT/Tricks
110
111 ## mkdir -p $RPM_DOC_ROOT/Printable
112 ## ln -s ../HTML/Documentation/user/out-www/lilypond.ps.gz $RPM_DOC_ROOT/Printable/Manual.ps.gz
113 ## ln -s ../HTML/Documentation/user/out-www/glossary.ps.gz $RPM_DOC_ROOT/Printable/Glossary.ps.gz
114 ## cp AUTHORS.txt COPYING DEDICATION NEWS README.txt VERSION $RPM_DOC_ROOT/README.first
115
116 # Menu
117 # Every entry must be changed according package specifications
118 # Pay attention to "section" "command" and "longtitle"
119
120 mkdir -p $RPM_BUILD_ROOT%{_menudir}
121 cat >$RPM_BUILD_ROOT%{_menudir}/%{name} <<EOF
122 ?package(%name): command="%{_bindir}/%{name}" needs="X11" \
123 icon="%{name}.png" section="Publishing" \
124 title="%{name}" longtitle="%{name}"
125 EOF
126   
127 # icon
128 install -d $RPM_BUILD_ROOT/%{_miconsdir}
129 install -d $RPM_BUILD_ROOT/%{_iconsdir}
130 install -d $RPM_BUILD_ROOT/%{_liconsdir}
131 bzcat %{SOURCE1} > $RPM_BUILD_ROOT/%{_miconsdir}/%{name}.png
132 bzcat %{SOURCE2} > $RPM_BUILD_ROOT/%{_iconsdir}/%{name}.png
133 bzcat %{SOURCE3} > $RPM_BUILD_ROOT/%{_liconsdir}/%{name}png
134
135 %post
136 %{update_menus}
137
138 touch /tmp/.lilypond-install
139 rm `find /var/lib/texmf -name 'feta*pk' -or -name 'feta*tfm' -or -name 'parmesan*pk' -or -name 'parmesan*tfm' -print` /tmp/.lilypond-install
140
141 %if info=="yes"
142 /sbin/install-info %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir 
143 %endif
144
145 %preun
146
147 %if info=="yes"
148 if [ $1 = 0 ]; then
149     /sbin/install-info --delete %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir 
150 fi
151 %endif
152
153 rm -f /usr/share/lilypond/%{version}/fonts/type1/fonts.dir
154 chkfontpath --remove=/usr/share/lilypond/%{version}/fonts/type1/
155
156 %postun
157 %{clean_menus}
158
159 %clean
160 ## This section is meant to clean the build directory tree, $RPM_BUILD_ROOT
161 rm -rf $RPM_BUILD_ROOT
162
163 ## %files -f %{name}.lang
164 %files
165 # The special tag %doc designates files being part of the documentation of the
166 # package. The files so-called will be placed in /usr/doc/lilypond-%{version}/
167 %doc COPYING README.txt INSTALL.txt DEDICATION NEWS AUTHORS.txt
168 %{_datadir}/emacs/site-lisp/lilypond-*
169 # is the following really started during startup of emacs?
170 %{_datadir}/emacs/site-lisp/site-start.d/lilypond-*
171
172 %{_prefix}/bin/abc2ly
173 %{_prefix}/bin/as2text
174 %{_prefix}/bin/convert-ly
175 %{_prefix}/bin/etf2ly
176 %{_prefix}/bin/lilypond
177 %{_prefix}/bin/ly2dvi
178 %{_prefix}/bin/midi2ly
179 %{_prefix}/bin/lilypond-book
180 %{_prefix}/bin/mup2ly
181 %{_prefix}/bin/musedata2ly
182 %{_prefix}/bin/pmx2ly
183
184 %if info=="yes"
185 %{_prefix}/info/lilypond.info.gz
186 %{_prefix}/info/lilypond-internals.info.gz
187 %endif
188
189 %{_prefix}/man/man1/abc2ly.1.bz2
190 %{_prefix}/man/man1/as2text.1.bz2
191 %{_prefix}/man/man1/convert-ly.1.bz2
192 %{_prefix}/man/man1/etf2ly.1.bz2
193 %{_prefix}/man/man1/lilypond.1.bz2
194 %{_prefix}/man/man1/ly2dvi.1.bz2
195 %{_prefix}/man/man1/midi2ly.1.bz2
196 %{_prefix}/man/man1/lilypond-book.1.bz2
197 %{_prefix}/man/man1/musedata2ly.1.bz2
198 %{_prefix}/man/man1/mup2ly.1.bz2
199 %{_prefix}/man/man1/pmx2ly.1.bz2
200
201 %{_prefix}/share/%{name}/%{version}/
202 %{_prefix}/share/locale/*/LC_MESSAGES/lilypond.mo
203 %{_prefix}/../etc/profile.d/lilypond.*
204 %_bindir/*
205 %_menudir/*
206 %_miconsdir/*
207 %_iconsdir/*
208 %_liconsdir/*
209
210 %files documentation
211
212 %doc web/
213
214 %changelog
215 * Fri Aug 30 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.6.0-1mdk
216 - Adapted from lilypond.redhat.skel and skeleton found in Mandrake's RPM-docs.
217 - TODO: info (?) and dependencies.
218
219 %changelog
220 * Fri Jun 01 2001 Lenny Cartier <lenny@mandrakesoft.com> 1.4.2-1mdk
221 - updated by Michael Brown <mbrown@linux-mandrake.com> :
222         - Upgraded to 1.4.2
223         - Changed URL
224         - Removed /etc/profile.d scripts: all TeX bits are now located properly
225         - Rearranged documentation
226         - Tidied spec file
227         - Updated README.first
228
229 * Mon Feb 26 2001 Lenny Cartier <lenny@mandrakesoft.com> 1.3.129-1mdk
230 - added in contribs by Michael Brown <mbrown@fensystems.co.uk> :
231         - Removed info files completely (couldn't get info reader to read them)
232         - TODO: Get this to work at some point (in the meantime, use documentation in lilypond-extras)
233
234 * Sat Feb 17 2001 Michael Brown <mbrown@fensystems.co.uk>
235 - Moved TeX font folders into the system TeX tree (this ensures that the /var/lib/texmf font cache is used instead of current folder)
236 - Added mktexlsr to post-install and post-uninstall scripts
237 - Patched scripts in /etc/profile.d to reflect changes to font locations
238 - Added QuickStart guide and Points to note sections to README.first (well worth reading)
239 - Fixed install-info and uninstall-info sections to use Mandrake's RPM macros :-)
240
241 * Tue Feb 13 2001 Michael Brown <mbrown@fensystems.co.uk>
242 - First Mandrake package
243 - spec file heavily adapted from PowerPC contribs.
244 - Note HTML documentation may contain duff links and may be incomplete.  Lots of warnings appear when building HTML docs.
245 - PostScript documentation is duplicated (how do you get an rpm package to contain a symlink?)
246 - Created README.first file