X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=make%2Flilypond.spec.in;h=f8b26349438c3d6e7fbf20718bbe5f86503466bf;hb=refs%2Ftags%2Frelease%2F1.3.104;hp=30d2c850458c6357f5a56953cc4968539b1fde16;hpb=7fb17937c5ba5aa779b2a1a8040403ee446c6b7b;p=lilypond.git diff --git a/make/lilypond.spec.in b/make/lilypond.spec.in index 30d2c85045..f8b2634943 100644 --- a/make/lilypond.spec.in +++ b/make/lilypond.spec.in @@ -1,44 +1,54 @@ +%define info yes + Name: lilypond Version: @TOPLEVEL_VERSION@ Release: 1 -Copyright: GPL +License: GPL Group: Applications/Publishing Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-@TOPLEVEL_VERSION@.tar.gz Summary: A program for printing sheet music. URL: http://www.cs.uu.nl/~hanwen/lilypond -Packager: Han-Wen Nienhuys # Icon: @package@-icon.gif BuildRoot: /tmp/lilypond-install Prereq: tetex -%description -@BLURB@ +%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. %package documentation Summary: Prebuilt website containing all LilyPond documentation. Group: Applications/Publishing -BuildArchitectures: noarch +# BuildArchitectures: noarch %description documentation -@BLURB@ -The documentation package is rather big, due to the many pictures and -different documentation formats. It is really a rip-off from the -LilyPond website. If you have direct internet access, you may always -read the documentation documentation there: http://www.lilypond.org. +The documentation of LilyPond, both in HTML and PostScript. %prep %setup + %build -./configure --disable-checking --disable-debugging --enable-printing --prefix=/usr --disable-optimise --enable-shared + +# + +# DO NOT use % { configure } , it hardcodes all paths, runs libtool, +# so we can't do make prefix=/tmp/ install. + +# In fact, do not take out the spaces between % and { , because RPM will gladly +# do a substitution anyway. + +./configure --disable-checking --disable-debugging --enable-printing --prefix=%{_prefix} --disable-optimise --enable-shared + make all -ln -s /usr/share/texmf/fonts/tfm/public/cm/ tfm # urg # %build documentation # line 42: second %build # ok, now make sure that lilypond package will succeed, # even if documentation fails to build + make -C Documentation || true make htmldoc || true @@ -47,12 +57,14 @@ rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/tmp/lilypond-rpm-doc strip lily/out/lilypond midi2ly/out/midi2ly -make prefix="$RPM_BUILD_ROOT/usr" install -# gzip -9fn $RPM_BUILD_ROOT/usr/info/* || true +make prefix="$RPM_BUILD_ROOT%{_prefix}" install +%if info=="yes" +gzip -9fn $RPM_BUILD_ROOT%{_prefix}/info/* || true +%endif -mkdir -p $RPM_BUILD_ROOT/etc/profile.d -cp buildscripts/out/lilypond-profile $RPM_BUILD_ROOT/etc/profile.d/lilypond.sh -cp buildscripts/out/lilypond-login $RPM_BUILD_ROOT/etc/profile.d/lilypond.csh +mkdir -p $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d +cp buildscripts/out/lilypond-profile $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.sh +cp buildscripts/out/lilypond-login $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.csh # urg #%install documentation @@ -63,36 +75,70 @@ tar -C htmldocs -xzf out/htmldoc.tar.gz || true mkdir -p out/examples/ tar -cf - input/ | tar -C out/examples/ -xf- || true +%ifos cygwin +# urg, this symlink doesn't come through on cygwin +# this is the way symlinks work over there, let's fake one +rm -f $RPM_BUILD_ROOT%{_prefix}/share/lilypond/cmtfm +echo '!c:\\texmf\\fonts\\tfm\\public\\cm' > $RPM_BUILD_ROOT%{_prefix}/share/lilypond/cmtfm +%{fix_suffixes} +%endif + %post touch /tmp/.lilypond-install rm `find /var/lib/texmf -name 'feta*pk -print' -or -name 'feta*tfm -print'` /tmp/.lilypond-install -# /sbin/install-info /usr/info/lilypond.info.gz /usr/info/dir || true +%if info=="yes" +/sbin/install-info %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir || true +%endif %preun +%if info=="yes" if [ $1 = 0 ]; then - true # /sbin/install-info --delete /usr/info/lilypond.info.gz /usr/info/dir || true + /sbin/install-info --delete %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir || true fi +%endif %files # hairy to hook it in (possibly non-existing) emacs -%doc mudela-mode.el - -/usr/bin/abc2ly -/usr/bin/convert-mudela -/usr/bin/mudela-book -/usr/bin/ly2dvi -/usr/bin/lilypond -/usr/bin/midi2ly -/usr/man/man1/midi2ly.1 -/usr/man/man1/lilypond.1 -/usr/man/man1/mudela-book.1 -/usr/man/man1/ly2dvi.1 -/usr/man/man1/convert-mudela.1 -/usr/share/lilypond/ -/usr/share/locale/*/LC_MESSAGES/lilypond.mo -/etc/profile.d/lilypond.* +%doc lilypond-mode.el +%doc lilypond-font-lock.el + +%ifnos cygwin +%{_prefix}/bin/abc2ly +%{_prefix}/bin/as2text +%{_prefix}/bin/convert-mudela +%{_prefix}/bin/etf2ly +%{_prefix}/bin/lilypond +%{_prefix}/bin/ly2dvi +%{_prefix}/bin/midi2ly +%{_prefix}/bin/mudela-book +%{_prefix}/bin/musedata2ly +%{_prefix}/bin/pmx2ly +%else +%{_prefix}/bin +%endif + +%if info=="yes" +%{_prefix}/info/lilypond.info.gz +%{_prefix}/info/lilypond-internals.info.gz +%endif + +%{_prefix}/man/man1/abc2ly.1.gz +%{_prefix}/man/man1/as2text.1.gz +%{_prefix}/man/man1/convert-mudela.1.gz +%{_prefix}/man/man1/etf2ly.1.gz +%{_prefix}/man/man1/lilypond.1.gz +%{_prefix}/man/man1/ly2dvi.1.gz +%{_prefix}/man/man1/midi2ly.1.gz +%{_prefix}/man/man1/mudela-book.1.gz +%{_prefix}/man/man1/musedata2ly.1.gz +%{_prefix}/man/man1/pmx2ly.1.gz + +%{_prefix}/share/lilypond/ +%{_prefix}/share/locale/*/LC_MESSAGES/lilypond.mo +# urg? +%{_prefix}/../etc/profile.d/lilypond.* %files documentation # this gets too messy...