Репозитории ALT
S: | 2.22.1-alt2 |
5.1: | 2.12.2-alt1 |
4.1: | 2.11.0-alt2 |
4.0: | 2.11.0-alt1 |
3.0: | 2.2.0-alt0.7.1 |
Группа :: Издательство
Пакет: lilypond
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
%define ver_major 2.2
%define ver_minor 0
Name: lilypond
Version: %ver_major.%ver_minor
Release: alt0.7.1
Group: Publishing
Summary: A program for printing sheet music
License: GPL
Url: http://www.lilypond.org
Packager: Yuri N. Sedunov <aris at altlinux.ru>
Source: ftp://ftp.%name.org/pub/LilyPond/%ver_major/%name-%version.tar.gz
# russian lirycs example (rulix)
Source1: russian-lirycs-test.ly
Patch:%name-1.6.6-alt-gcc_no_warnings.patch
Patch1: %name-1.6.6-alt-no-gcc_ver_configure.patch
# fix for russian lirycs support (rulix)
Patch2: %name-2.2.0-alt-russian-lirycs.patch
%define gs_ver 7.05-alt10
%define mftrace_ver 1.0.33
%define tex_ver 2.0
Requires(post): %install_info
Requires(preun): %uninstall_info
PreReq: tetex >= %tex_ver, ghostscript >= %gs_ver
BuildPreReq: ghostscript >= %gs_ver
BuildPreReq: tetex-devel >= %tex_ver
BuildPreReq: mftrace >= %mftrace_ver
# Automatically added by buildreq on Mon Jun 21 2004 (-bi)
BuildRequires: ImageMagick XFree86-libs XFree86-locales XFree86-utils autotrace emacs21-common flex fontforge freetype2 gcc-c++ ghostscript-classic ghostscript-common ghostscript-module-X ghostscript-utils glib guile16-devel libgimp-print libstdc++-devel lilypond mftrace ncompress netpbm potrace python-base python-dev python-modules-compiler python-modules-encodings rpm-build-python t1utils tetex-core tetex-devel tetex-dvips tetex-latex tetex-xdvi time urw-fonts
%description
LilyPond is a music typesetter. It produces beautiful sheet music using
a high level description file as input. Lilypond is part of the GNU
project. This package contains the utilities for converting the music
source (.ly) files into printable output.
%package doc
Summary: LilyPond documentation, examples and Mutopia files
Group: Publishing
Conflicts: %name < %version-%release
%description doc
The documentation of LilyPond, both in HTML and PostScript, along with
example input files and the files from the Mutopia project. At present a
part of this documentation may be broken. See http://lilypond.org for
full.
%package -n emacs-mode-%name
Summary: Major mode for editing GNU LilyPond music scores
Group: Editors
Requires: %name = %version-%release emacs TiMidity++ gv tetex-xdvi
%description -n emacs-mode-%name
emacs-mode-%name provides syntax coloring, inserting tags,
PS-compilation, PS-viewing and MIDI-play.
All Emacs Lisp code is byte-copmpiled, install emacs-mode-%name-el for sources.
%package -n emacs-mode-%name-el
Summary: The Emacs Lisp sources for bytecode included in emacs-mode-%name
Group: Development/Other
Requires: %name = %version-%release
%description -n emacs-mode-%name-el
emacs-mode-%name-el contains the Emacs Lisp sources for the bytecode
included in the emacs-mode-%name package, that extends the Emacs editor.
You need to install emacs-mode-%name-el only if you intend to modify any of the
emacs-mode-%name code or see some Lisp examples.
#%%define _texmf %(kpsetool -v '$TEXMF'| %__sed -e "s/\!*//")
%define _texmf %_datadir/texmf
%define _emacs_startscriptsdir %_sysconfdir/emacs/site-start.d
%define __emacsbin %_bindir/emacs
%define _lily_dir %_datadir/%name/%version
%prep
%setup -q
%patch -p1
#%patch1 -p1
%patch2 -p1 -b .russian
%build
%__autoconf
export ac_cv_lib_intl_gettext=no
./configure --prefix=%_prefix --enable-optimising
# while flex generates old syntax which is not recognized by gcc 3.2.
%__mkdir -p lily/out
%make -C lily out/lexer.cc
%__subst 's,\([^:]\)cerr,\1std::cerr,g' lily/out/lexer.cc
# SMP-incompatible build
%make MAKE_PFA_FILES=1 all
%make -C mf/ pfa
%make -C Documentation
%make webdir=%_docdir/%name-%version web
%make -C Documentation/user omf
%install
%__mkdir_p %buildroot%_datadir/omf/%name/%version
# fix .info files
%__subst 's,\(lilypond-internals\).texi,\1,' Documentation/user/out/lilypond-internals.info*
%make_install MAKE_PFA_FILES=1 \
prefix=%buildroot%_prefix \
package_infodir=%buildroot%_infodir \
mandir=%buildroot%_mandir install
%make_install DESTDIR=%buildroot \
webdir=%buildroot%_docdir/%name-%version \
out=www \
web-install
# fix .omf files
%__subst 's,%buildroot,,g
s,\(%name\)/%version,\1-%version,' %buildroot%_datadir/omf/%name/%version/*.omf
# Move TeX dependent files into system TeX tree locations
%__mkdir_p %buildroot%_texmf/fonts/{afm,source,tfm}/%name
%__mv %buildroot%_lily_dir/fonts/afm/* %buildroot%_texmf/fonts/afm/%name/
%__mv %buildroot%_lily_dir/fonts/source/* %buildroot%_texmf/fonts/source/%name/
%__mv %buildroot%_lily_dir/fonts/tfm/* %buildroot%_texmf/fonts/tfm/%name/
%__mkdir_p %buildroot%_texmf/tex/%name
%__mv %buildroot%_lily_dir/tex/* %buildroot%_texmf/tex/%name/
# remove useless files
%__rm -rf %buildroot%_lily_dir/{make,stepmake,config.make}
# Create documentation tree in %_docdir
%__mkdir_p %buildroot%_docdir/%name-%version/Printable
%__ln_s ../Documentation/user/out-www/lilypond.ps.gz %buildroot%_docdir/%name-%version/Printable/Manual.ps.gz
%__ln_s ../Documentation/user/out-www/music-glossary.ps.gz %buildroot%_docdir/%name-%version/Printable/Glossary.ps.gz
%__cp *.txt ChangeLog DEDICATION ROADMAP VERSION %buildroot/%_docdir/%name-%version/
# install russian-lirycs-test.ly
%__install -m644 %SOURCE1 %buildroot%_docdir/%name-%version/
# Install Emacs-mode files
%__mkdir_p %buildroot/%_emacs_startscriptsdir
%__mv %buildroot%_emacslispdir/%name-init.el %buildroot%_emacs_startscriptsdir/
# temporary hack to compile emacs-mode files
%__emacsbin -batch -f batch-byte-compile %buildroot%_emacslispdir/%{name}*.el
# Create environment scripts
%__cat <<__SH__ > lilypond.sh
# Setup TeX/LaTeX Ghostscript environment for LilyPond.
GS_FONTPATH="%_texmf/fonts/afm/%name:%_lily_dir/fonts/type1"
GS_LIB="%_lily_dir/ps:"\${GS_LIB:=""}
export GS_LIB GS_FONTPATH
TEXMF="{%_lily_dir,"\`kpsexpand \\\\\$TEXMF\`"}"
export TEXMF
__SH__
%__cat <<__CSH__ > lilypond.csh
# Setup TeX/LaTeX Ghostscript C-shell environment for LilyPond.
setenv GS_FONTPATH "%_texmf/fonts/afm/%name:%_lily_dir/fonts/type1:\$GS_FONTPATH"
setenv GS_LIB "%_lily_dir/ps:\$GS_LIB"
setenv TEXMF "{%_lily_dir,"\`kpsexpand \\\$TEXMF\`"}"
__CSH__
%__mkdir_p %buildroot%_sysconfdir/profile.d
%__install lilypond.sh %buildroot%_sysconfdir/profile.d/lilypond.sh
%__install lilypond.csh %buildroot%_sysconfdir/profile.d/lilypond.csh
%find_lang %name
%post
touch /tmp/.%name-install
find /var/lib/texmf -name 'feta*pk' -or -name 'feta*tfm' -or -name 'parmesan*pk' -or -name 'parmesan*tfm' -print0|
xargs -r0 %__rm -f -- /tmp/.lilypond-install
%install_info %name.info %name-internals.info
%_bindir/mktexlsr ||:
%update_scrollkeeper
echo 'Please logout first before using LilyPond.'
%preun
%uninstall_info %name.info %name-internals.info
%postun
%_bindir/mktexlsr ||:
%clean_scrollkeeper
%files -f %name.lang
%_bindir/*
%_libdir/%name/%version
%_datadir/%name
%_texmf/*/%name
%_texmf/*/*/%name
%_infodir/*
%_man1dir/*
%_sysconfdir/profile.d/*
%doc %_docdir/%name-%version/*.txt
%doc %_docdir/%name-%version/ChangeLog
%doc %_docdir/%name-%version/DEDICATION
%doc %_docdir/%name-%version/ROADMAP
%doc %_docdir/%name-%version/VERSION
%files -n emacs-mode-%name
%config(noreplace) %_emacs_startscriptsdir/%name-init.el
%_emacslispdir/%{name}*.elc
%files -n emacs-mode-%name-el
%_emacslispdir/%{name}*.el
%files doc
%_docdir/%name-%version/*.html
%_docdir/%name-%version/input
%_docdir/%name-%version/Documentation
%_docdir/%name-%version/Printable
%_docdir/%name-%version/russian-lirycs-test.ly
%_datadir/omf/*
%changelog
…
Полный changelog можно просмотреть здесь
%define ver_minor 0
Name: lilypond
Version: %ver_major.%ver_minor
Release: alt0.7.1
Group: Publishing
Summary: A program for printing sheet music
License: GPL
Url: http://www.lilypond.org
Packager: Yuri N. Sedunov <aris at altlinux.ru>
Source: ftp://ftp.%name.org/pub/LilyPond/%ver_major/%name-%version.tar.gz
# russian lirycs example (rulix)
Source1: russian-lirycs-test.ly
Patch:%name-1.6.6-alt-gcc_no_warnings.patch
Patch1: %name-1.6.6-alt-no-gcc_ver_configure.patch
# fix for russian lirycs support (rulix)
Patch2: %name-2.2.0-alt-russian-lirycs.patch
%define gs_ver 7.05-alt10
%define mftrace_ver 1.0.33
%define tex_ver 2.0
Requires(post): %install_info
Requires(preun): %uninstall_info
PreReq: tetex >= %tex_ver, ghostscript >= %gs_ver
BuildPreReq: ghostscript >= %gs_ver
BuildPreReq: tetex-devel >= %tex_ver
BuildPreReq: mftrace >= %mftrace_ver
# Automatically added by buildreq on Mon Jun 21 2004 (-bi)
BuildRequires: ImageMagick XFree86-libs XFree86-locales XFree86-utils autotrace emacs21-common flex fontforge freetype2 gcc-c++ ghostscript-classic ghostscript-common ghostscript-module-X ghostscript-utils glib guile16-devel libgimp-print libstdc++-devel lilypond mftrace ncompress netpbm potrace python-base python-dev python-modules-compiler python-modules-encodings rpm-build-python t1utils tetex-core tetex-devel tetex-dvips tetex-latex tetex-xdvi time urw-fonts
%description
LilyPond is a music typesetter. It produces beautiful sheet music using
a high level description file as input. Lilypond is part of the GNU
project. This package contains the utilities for converting the music
source (.ly) files into printable output.
%package doc
Summary: LilyPond documentation, examples and Mutopia files
Group: Publishing
Conflicts: %name < %version-%release
%description doc
The documentation of LilyPond, both in HTML and PostScript, along with
example input files and the files from the Mutopia project. At present a
part of this documentation may be broken. See http://lilypond.org for
full.
%package -n emacs-mode-%name
Summary: Major mode for editing GNU LilyPond music scores
Group: Editors
Requires: %name = %version-%release emacs TiMidity++ gv tetex-xdvi
%description -n emacs-mode-%name
emacs-mode-%name provides syntax coloring, inserting tags,
PS-compilation, PS-viewing and MIDI-play.
All Emacs Lisp code is byte-copmpiled, install emacs-mode-%name-el for sources.
%package -n emacs-mode-%name-el
Summary: The Emacs Lisp sources for bytecode included in emacs-mode-%name
Group: Development/Other
Requires: %name = %version-%release
%description -n emacs-mode-%name-el
emacs-mode-%name-el contains the Emacs Lisp sources for the bytecode
included in the emacs-mode-%name package, that extends the Emacs editor.
You need to install emacs-mode-%name-el only if you intend to modify any of the
emacs-mode-%name code or see some Lisp examples.
#%%define _texmf %(kpsetool -v '$TEXMF'| %__sed -e "s/\!*//")
%define _texmf %_datadir/texmf
%define _emacs_startscriptsdir %_sysconfdir/emacs/site-start.d
%define __emacsbin %_bindir/emacs
%define _lily_dir %_datadir/%name/%version
%prep
%setup -q
%patch -p1
#%patch1 -p1
%patch2 -p1 -b .russian
%build
%__autoconf
export ac_cv_lib_intl_gettext=no
./configure --prefix=%_prefix --enable-optimising
# while flex generates old syntax which is not recognized by gcc 3.2.
%__mkdir -p lily/out
%make -C lily out/lexer.cc
%__subst 's,\([^:]\)cerr,\1std::cerr,g' lily/out/lexer.cc
# SMP-incompatible build
%make MAKE_PFA_FILES=1 all
%make -C mf/ pfa
%make -C Documentation
%make webdir=%_docdir/%name-%version web
%make -C Documentation/user omf
%install
%__mkdir_p %buildroot%_datadir/omf/%name/%version
# fix .info files
%__subst 's,\(lilypond-internals\).texi,\1,' Documentation/user/out/lilypond-internals.info*
%make_install MAKE_PFA_FILES=1 \
prefix=%buildroot%_prefix \
package_infodir=%buildroot%_infodir \
mandir=%buildroot%_mandir install
%make_install DESTDIR=%buildroot \
webdir=%buildroot%_docdir/%name-%version \
out=www \
web-install
# fix .omf files
%__subst 's,%buildroot,,g
s,\(%name\)/%version,\1-%version,' %buildroot%_datadir/omf/%name/%version/*.omf
# Move TeX dependent files into system TeX tree locations
%__mkdir_p %buildroot%_texmf/fonts/{afm,source,tfm}/%name
%__mv %buildroot%_lily_dir/fonts/afm/* %buildroot%_texmf/fonts/afm/%name/
%__mv %buildroot%_lily_dir/fonts/source/* %buildroot%_texmf/fonts/source/%name/
%__mv %buildroot%_lily_dir/fonts/tfm/* %buildroot%_texmf/fonts/tfm/%name/
%__mkdir_p %buildroot%_texmf/tex/%name
%__mv %buildroot%_lily_dir/tex/* %buildroot%_texmf/tex/%name/
# remove useless files
%__rm -rf %buildroot%_lily_dir/{make,stepmake,config.make}
# Create documentation tree in %_docdir
%__mkdir_p %buildroot%_docdir/%name-%version/Printable
%__ln_s ../Documentation/user/out-www/lilypond.ps.gz %buildroot%_docdir/%name-%version/Printable/Manual.ps.gz
%__ln_s ../Documentation/user/out-www/music-glossary.ps.gz %buildroot%_docdir/%name-%version/Printable/Glossary.ps.gz
%__cp *.txt ChangeLog DEDICATION ROADMAP VERSION %buildroot/%_docdir/%name-%version/
# install russian-lirycs-test.ly
%__install -m644 %SOURCE1 %buildroot%_docdir/%name-%version/
# Install Emacs-mode files
%__mkdir_p %buildroot/%_emacs_startscriptsdir
%__mv %buildroot%_emacslispdir/%name-init.el %buildroot%_emacs_startscriptsdir/
# temporary hack to compile emacs-mode files
%__emacsbin -batch -f batch-byte-compile %buildroot%_emacslispdir/%{name}*.el
# Create environment scripts
%__cat <<__SH__ > lilypond.sh
# Setup TeX/LaTeX Ghostscript environment for LilyPond.
GS_FONTPATH="%_texmf/fonts/afm/%name:%_lily_dir/fonts/type1"
GS_LIB="%_lily_dir/ps:"\${GS_LIB:=""}
export GS_LIB GS_FONTPATH
TEXMF="{%_lily_dir,"\`kpsexpand \\\\\$TEXMF\`"}"
export TEXMF
__SH__
%__cat <<__CSH__ > lilypond.csh
# Setup TeX/LaTeX Ghostscript C-shell environment for LilyPond.
setenv GS_FONTPATH "%_texmf/fonts/afm/%name:%_lily_dir/fonts/type1:\$GS_FONTPATH"
setenv GS_LIB "%_lily_dir/ps:\$GS_LIB"
setenv TEXMF "{%_lily_dir,"\`kpsexpand \\\$TEXMF\`"}"
__CSH__
%__mkdir_p %buildroot%_sysconfdir/profile.d
%__install lilypond.sh %buildroot%_sysconfdir/profile.d/lilypond.sh
%__install lilypond.csh %buildroot%_sysconfdir/profile.d/lilypond.csh
%find_lang %name
%post
touch /tmp/.%name-install
find /var/lib/texmf -name 'feta*pk' -or -name 'feta*tfm' -or -name 'parmesan*pk' -or -name 'parmesan*tfm' -print0|
xargs -r0 %__rm -f -- /tmp/.lilypond-install
%install_info %name.info %name-internals.info
%_bindir/mktexlsr ||:
%update_scrollkeeper
echo 'Please logout first before using LilyPond.'
%preun
%uninstall_info %name.info %name-internals.info
%postun
%_bindir/mktexlsr ||:
%clean_scrollkeeper
%files -f %name.lang
%_bindir/*
%_libdir/%name/%version
%_datadir/%name
%_texmf/*/%name
%_texmf/*/*/%name
%_infodir/*
%_man1dir/*
%_sysconfdir/profile.d/*
%doc %_docdir/%name-%version/*.txt
%doc %_docdir/%name-%version/ChangeLog
%doc %_docdir/%name-%version/DEDICATION
%doc %_docdir/%name-%version/ROADMAP
%doc %_docdir/%name-%version/VERSION
%files -n emacs-mode-%name
%config(noreplace) %_emacs_startscriptsdir/%name-init.el
%_emacslispdir/%{name}*.elc
%files -n emacs-mode-%name-el
%_emacslispdir/%{name}*.el
%files doc
%_docdir/%name-%version/*.html
%_docdir/%name-%version/input
%_docdir/%name-%version/Documentation
%_docdir/%name-%version/Printable
%_docdir/%name-%version/russian-lirycs-test.ly
%_datadir/omf/*
%changelog
…
Полный changelog можно просмотреть здесь