]> git.pld-linux.org Git - packages/lilypond.git/blob - lilypond.spec
402aea4fea95126e86c586f1067f3154a5751e16
[packages/lilypond.git] / lilypond.spec
1 #
2 # Conditional build:
3 %bcond_without  guile2  # (experimental) guile2 support
4 %bcond_without  doc     # build docs
5 #
6 Summary:        Music typesetter
7 Summary(pl.UTF-8):      Program do składania nut
8 Name:           lilypond
9 # note: 2.20.x is stable, 2.21.x devel
10 Version:        2.20.0
11 Release:        1
12 License:        GPL v3+ with font exception
13 Group:          Applications/Sound
14 Source0:        https://lilypond.org/download/sources/v2.20/%{name}-%{version}.tar.gz
15 # Source0-md5:  65da6124713144cc63fe8ec2847ada8e
16 Patch0:         %{name}-info.patch
17 Patch1:         %{name}-sh.patch
18 Patch2:         %{name}-aclocal.patch
19 Patch3:         %{name}-texi2html.patch
20 URL:            http://www.lilypond.org/
21 BuildRequires:  autoconf >= 2.60
22 BuildRequires:  automake
23 BuildRequires:  bison >= 1.29
24 BuildRequires:  flex >= 2.5.4a
25 BuildRequires:  fontconfig >= 1:2.4.0
26 BuildRequires:  fontconfig-devel >= 1:2.4.0
27 BuildRequires:  fontforge >= 20110222
28 BuildRequires:  fonts-TTF-DejaVu
29 BuildRequires:  fonts-Type1-urw
30 BuildRequires:  freetype >= 1:2.1.10
31 BuildRequires:  gettext-tools >= 0.17
32 BuildRequires:  ghostscript-fonts-std
33 BuildRequires:  glib2-devel >= 1:2.38
34 %if %{with guile2}
35 BuildRequires:  guile-devel >= 5:2.0.7
36 BuildRequires:  guile-devel < 5:2.3.0
37 %else
38 BuildRequires:  guile1-devel >= 1.8.2
39 %endif
40 BuildRequires:  kpathsea-devel
41 BuildRequires:  libstdc++-devel >= 5:3.4
42 BuildRequires:  pango-devel >= 1:1.38.0
43 BuildRequires:  perl-base
44 BuildRequires:  pkgconfig >= 1:0.9.0
45 BuildRequires:  python-devel >= 1:2.4
46 BuildRequires:  python-modules
47 BuildRequires:  rpm-pythonprov
48 BuildRequires:  t1utils
49 BuildRequires:  texinfo >= 6.1
50 BuildRequires:  texlive-fonts-other
51 BuildRequires:  texlive-metapost
52 %if %{with doc}
53 BuildRequires:  ImageMagick
54 BuildRequires:  ImageMagick-coder-png
55 BuildRequires:  dblatex >= 0.1.4
56 BuildRequires:  ghostscript >= 9.20
57 BuildRequires:  netpbm-progs
58 BuildRequires:  rsync
59 BuildRequires:  texi2html >= 1.82
60 BuildRequires:  texinfo-texi2dvi >= 6.1
61 # `kpsewhich tex epsf`
62 BuildRequires:  texlive
63 # `kpsewhich -format=mf fikparm`
64 BuildRequires:  texlive-fonts-lh
65 BuildRequires:  texlive-latex-bibtex
66 BuildRequires:  texlive-xetex
67 BuildRequires:  zip
68 %endif
69 BuildConflicts: lilypond < 1.6.0
70 Requires:       fonts-TTF-DejaVu
71 Requires:       ghostscript >= 9.20
72 Requires:       glib2 >= 1:2.38
73 Requires:       pango >= 1:1.38.0
74 Requires:       python-modules >= 1:2.4
75 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
76
77 %define         texmfdir        %{_datadir}/texmf
78 %define         texmfdistdir    %{texmfdir}-dist
79 %if "%{pld_release}" != "th"
80 %define         texfontsdir     %{texmfdir}/fonts
81 %else
82 %define         texfontsdir     %{texmfdistdir}/fonts
83 %endif
84
85 %description
86 LilyPond is a music typesetter. It produces beautiful sheet music
87 using a high level description file as input. It excels at typesetting
88 classical music, but you can also print pop-songs. With LilyPond we
89 hope to make music publication software available to anyone on the
90 internet.
91
92 %description -l pl.UTF-8
93 LilyPond jest programem do składu muzycznego. Produkuje piękne
94 partytury używając języka wysokiego poziomu jako wejście. Służy przede
95 wszystkim do składania nut muzyki klasycznej, ale można drukować także
96 piosenki pop. Autorzy udostępniają LilyPond z nadzieją dostarczenia
97 wszystkim oprogramowania do publikacji muzycznych.
98
99 %package -n emacs-lilypond-mode-pkg
100 Summary:        LilyPond mode for Emacs
101 Summary(pl.UTF-8):      Tryb edycji plików LilyPond dla Emacsa
102 Group:          Applications/Editors/Emacs
103 Requires:       %{name} = %{version}-%{release}
104 Requires:       emacs
105
106 %description -n emacs-lilypond-mode-pkg
107 LilyPond mode for Emacs.
108
109 %description -n emacs-lilypond-mode-pkg -l pl.UTF-8
110 Tryb edycji plików LilyPond dla Emacsa.
111
112 %package -n vim-syntax-lilypond
113 Summary:        LilyPond files support for Vim
114 Summary(pl.UTF-8):      Obsługa plików LilyPonda dla Vima
115 Group:          Applications/Editors/Vim
116 Requires:       %{name} = %{version}-%{release}
117 Requires:       vim-rt >= 4:6.4.001-2
118
119 %description -n vim-syntax-lilypond
120 LilyPond files support for Vim.
121
122 %description -n vim-syntax-lilypond -l pl.UTF-8
123 Obsługa plików LilyPonda dla Vima.
124
125 %prep
126 %setup -q
127 %patch0 -p1
128 %patch1 -p1
129 %patch2 -p1
130 %patch3 -p1
131
132 %build
133 %{__autoconf}
134 %configure \
135         PYTHON=%{__python} \
136         %{?debug:--disable-optimising} \
137         %{__enable_disable guile2} \
138         --with-texgyre-dir=/usr/share/texmf-dist/fonts/opentype/public/tex-gyre/ \
139         %{__enable_disable doc documentation}
140 %{__make} -j1
141
142 %install
143 rm -rf $RPM_BUILD_ROOT
144 install -d $RPM_BUILD_ROOT{%{texmfdir}/{dvips,tex},%{texfontsdir}/{source,tfm,type1}}
145
146 %{__make} install \
147         DESTDIR=$RPM_BUILD_ROOT
148
149 %if %{with doc}
150 %{__make} -C Documentation omf-local-install \
151         DESTDIR=$RPM_BUILD_ROOT \
152         local_package_omfdir=%{_datadir}/omf/lilypond
153 %endif
154
155 cp -aL out/share/lilypond/current/fonts/tfm \
156         $RPM_BUILD_ROOT%{texfontsdir}/tfm/lilypond
157
158 find $RPM_BUILD_ROOT -name fonts.cache-1 | xargs rm -f
159
160 # ?
161 %{__mv} $RPM_BUILD_ROOT%{_datadir}/lilypond/%{version}/fonts/source \
162         $RPM_BUILD_ROOT%{texfontsdir}/source/lilypond
163 # for latex and dvips
164 %{__mv} $RPM_BUILD_ROOT%{_datadir}/lilypond/%{version}/tex \
165         $RPM_BUILD_ROOT%{texmfdir}/tex/lilypond
166 # both for lilypond and dvips
167 ln -sf %{_datadir}/lilypond/%{version}/fonts/type1 \
168         $RPM_BUILD_ROOT%{texfontsdir}/type1/lilypond
169 ln -sf %{_datadir}/lilypond/%{version}/ps \
170         $RPM_BUILD_ROOT%{texmfdir}/dvips/lilypond
171
172 # vim syntax/etc. files
173 install -d $RPM_BUILD_ROOT%{_datadir}/vim
174 %{__mv} $RPM_BUILD_ROOT%{_datadir}/lilypond/%{version}/vim \
175         $RPM_BUILD_ROOT%{_datadir}/vim/vimfiles
176
177 %find_lang %{name}
178
179 %clean
180 rm -rf $RPM_BUILD_ROOT
181
182 %pre
183 test -h %{texmfdir}/dvips/lilypond || rm -rf %{texmfdir}/dvips/lilypond
184
185 %post
186 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
187 [ ! -x %{_bindir}/texhash ] || %{_bindir}/texhash 1>&2
188 [ ! -x %{_bindir}/scrollkeeper-update ] || %{_bindir}/scrollkeeper-update
189
190 %postun
191 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
192 [ ! -x %{_bindir}/texhash ] || %{_bindir}/texhash 1>&2
193 [ ! -x %{_bindir}/scrollkeeper-update ] || %{_bindir}/scrollkeeper-update
194
195 %files -f %{name}.lang
196 %defattr(644,root,root,755)
197 %doc AUTHORS.txt DEDICATION LICENSE* NEWS.txt README.txt ROADMAP
198 %attr(755,root,root) %{_bindir}/abc2ly
199 %attr(755,root,root) %{_bindir}/convert-ly
200 %attr(755,root,root) %{_bindir}/etf2ly
201 %attr(755,root,root) %{_bindir}/lilymidi
202 %attr(755,root,root) %{_bindir}/lilypond
203 %attr(755,root,root) %{_bindir}/lilypond-book
204 %attr(755,root,root) %{_bindir}/lilypond-invoke-editor
205 %attr(755,root,root) %{_bindir}/lilysong
206 %attr(755,root,root) %{_bindir}/midi2ly
207 %attr(755,root,root) %{_bindir}/musicxml2ly
208 %dir %{_datadir}/lilypond
209 %dir %{_datadir}/lilypond/%{version}
210 %{_datadir}/lilypond/%{version}/fonts
211 %{_datadir}/lilypond/%{version}/ly
212 %{_datadir}/lilypond/%{version}/ps
213 %dir %{_datadir}/lilypond/%{version}/python
214 %{_datadir}/lilypond/%{version}/python/*.py
215 %{_datadir}/lilypond/%{version}/python/*.pyc
216 %{_datadir}/lilypond/%{version}/scm
217
218 %{texfontsdir}/source/lilypond
219 %{texfontsdir}/tfm/lilypond
220 %{texfontsdir}/type1/lilypond
221 %{texmfdir}/dvips/lilypond
222 %{texmfdir}/tex/lilypond
223
224 %if %{with doc}
225 %{_infodir}/lilypond-*.info*
226 %{_infodir}/music-glossary.info*
227 %{_mandir}/man1/abc2ly.1*
228 %{_mandir}/man1/convert-ly.1*
229 %{_mandir}/man1/etf2ly.1*
230 %{_mandir}/man1/lilymidi.1*
231 %{_mandir}/man1/lilypond.1*
232 %{_mandir}/man1/lilypond-book.1*
233 %{_mandir}/man1/lilypond-invoke-editor.1*
234 %{_mandir}/man1/lilysong.1*
235 %{_mandir}/man1/midi2ly.1*
236 %{_mandir}/man1/musicxml2ly.1*
237 %{_datadir}/omf/lilypond
238 %endif
239
240 %files -n emacs-lilypond-mode-pkg
241 %defattr(644,root,root,755)
242 %{_datadir}/emacs/site-lisp/lilypond-*.el
243
244 %files -n vim-syntax-lilypond
245 %defattr(644,root,root,755)
246 %{_datadir}/vim/vimfiles/compiler/lilypond.vim
247 %{_datadir}/vim/vimfiles/ftdetect/lilypond.vim
248 %{_datadir}/vim/vimfiles/ftplugin/lilypond.vim
249 %{_datadir}/vim/vimfiles/indent/lilypond.vim
250 %{_datadir}/vim/vimfiles/syntax/lilypond*
This page took 0.098643 seconds and 2 git commands to generate.