]> git.donarmstrong.com Git - lilypond.git/blobdiff - make/lilypond.mandrake.spec.in
release commit
[lilypond.git] / make / lilypond.mandrake.spec.in
index e09d22468ad7af0c4c7eac26a08de048e4d57b19..8dcd8bdf1e4f7f49ba001b101926c0444fbd3b80 100644 (file)
@@ -2,46 +2,52 @@
 
 %define name lilypond
 %define version @TOPLEVEL_VERSION@
-%define release 1mdk
+%define release 4mdk
 
 Summary:       A program for printing sheet music.
 Name:          %{name}
 Version:       %{version}
 Release:       %{release}
 License:       GPL
-Group:         Applications/Publishing
+Group:         Publishing
 URL:           http://www.lilypond.org/
-Source0:       ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-%{version}.tar.gz
-# Source1:     %name-16x16.png.tar.bz2
-# Source2:     %name-32x32.png.tar.bz2
-# Source3:     %name-48x48.png.tar.bz2
+Source0:       ftp.lilypond.org:/pub/LilyPond/development/lilypond-%{version}.tar.bz2
 BuildRoot:     %{_tmppath}/%{name}-buildroot
-BuildRequires: t1utils bison texinfo
-Requires:      tetex tetex-latex
+BuildRequires: t1utils bison texinfo t1lib1-devel libstdc++5-devel libguile12-devel >= 1.6.4
+BuildRequires: gcc-c++ glibc-devel flex >= 2.5.4a-22mdk groff netpbm autotrace
+BuildRequires:  ImageMagick >= 5.5.4.4 libMagick5.5.4-devel >= 5.5.4.4
+BuildRequires: ghostscript >= 7.05-53.2mdk mftrace >= 1.0.19 pfaedit >= 030822
+Requires:      tetex tetex-latex chkfontpath XFree86 info-install
+PreReq:                chkfontpath
 
 %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.
+high level description file as input.  LilyPond is part of the GNU project.
  
 LilyPond is split into two packages.  The package "lilypond" provides the
 core package, containing the utilities for converting the music source
-(.ly) files into printable output.  The package "lilypond-extras" provides
-the full documentation, example .ly files for various features and the
-Mutopia project files (musical equivalent of the Gutenberg project - see
+(.ly) files into printable output.  The package "lilypond-documentation" 
+provides the full documentation, example .ly files for various features and 
+the Mutopia project files (musical equivalent of the Gutenberg project - see
 http://www.mutopiaproject.org for details).
  
 If you are new to lilypond, you will almost certainly want to install the
-"lilypond-extras" package in addition to the "lilypond" package.
-## You may also wish to investigate the "denemo" package, which provides a
-## graphical front end to lilypond.
-## 
-## See the file README.first for more information.
+"lilypond-documentation" package in addition to the "lilypond" package.
 
+%package -n liblilypond
+Summary: LilyPond libraries.
+License: GPL
+Group: System/Libraries
+Requires: lilypond >= %{version}
+
+%description -n liblilypond
+LilyPond libs
 %package documentation
 Summary: LilyPond documentation, examples and Mutopia files.
 Group: Publishing
-Requires: lilypond
+Requires: %{name}
 
 %description documentation
 The documentation of LilyPond, both in HTML and PostScript, along with
@@ -58,17 +64,26 @@ rm -rf $RPM_BUILD_ROOT
 # -- not sure what this comment means; it's a relic from the PPC spec file -- mbrown@fensystems.co.uk
 ##./configure --disable-checking --disable-debugging --enable-printing --prefix=%{_prefix} --disable-optimising --enable-shared
 ## Add options if needed
-./configure --disable-checking --prefix=%{_prefix} --enable-optimising
-make MAKE_PFA_FILES=1 all
+
+#Fix conflicting php variable out=/dev/vc/
+unset out
+
+./configure --disable-checking --prefix=%{_prefix} --libdir=%{_libdir} --enable-optimising
+
+%make  all
 
 # make info
 make -C Documentation
 
 # make  html
-make web-doc top-web 
+make web
+make -C Documentation/user omf
 
 %install
 
+#Fix conflicting php variable out=/dev/vc/
+unset out
+
 # Create installation root folders
 rm -rf $RPM_BUILD_ROOT
 RPM_DOC_ROOT=$RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
@@ -76,42 +91,24 @@ rm -rf $RPM_DOC_ROOT
 mkdir -p $RPM_DOC_ROOT
 
 strip lily/out/lilypond 
-make prefix="$RPM_BUILD_ROOT%{_prefix}" MAKE_PFA_FILES=1 all install
-# %{find_lang} %{name}
+%makeinstall 
+local_lilypond_libdir=$RPM_BUILD_ROOT/%{_libdir}/%{name}/%{version}
 
-%if info=="yes"
-gzip -9fn $RPM_BUILD_ROOT%{_prefix}/info/*
+%if %{info}
+  rm -f $RPM_BUILD_ROOT/%{_infodir}/dir
+  bzip2 $RPM_BUILD_ROOT%{_infodir}/*
 %endif
 
-# Move info and man files into correct locations
-# mv $RPM_BUILD_ROOT/usr/info $RPM_BUILD_ROOT%{_infodir}
-# mv $RPM_BUILD_ROOT/usr/man $RPM_BUILD_ROOT%{_mandir}
+mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
+install -m 644 elisp/lilypond-init.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
 
-mkdir -p $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.d
-install -m 644 lilypond-mode.el lilypond-font-lock.el lilypond-indent.el $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/
-install -m 644 lilypond-init.el $RPM_BUILD_ROOT/usr/share/emacs/site-lisp/site-start.d
-
-gzip -9fn $RPM_BUILD_ROOT%{_prefix}/man/man1/*
+bzip2 $RPM_BUILD_ROOT%{_mandir}/man1/*
 
 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
 
-
-# again, make sure that main package installs even if doco fails
-mkdir -p web/out
-tar -C web -xzf out/web.tar.gz 
-
-# Create documentation tree in %{_docdir}
-## mkdir -p $RPM_DOC_ROOT/HTML
-## tar -C $RPM_DOC_ROOT/HTML -xzf out/web.tar.gz
-## ln -s HTML/input $RPM_DOC_ROOT/Examples
-## ln -s HTML/input/test $RPM_DOC_ROOT/Tricks
-
-## mkdir -p $RPM_DOC_ROOT/Printable
-## ln -s ../HTML/Documentation/user/out-www/lilypond.ps.gz $RPM_DOC_ROOT/Printable/Manual.ps.gz
-## ln -s ../HTML/Documentation/user/out-www/glossary.ps.gz $RPM_DOC_ROOT/Printable/Glossary.ps.gz
-## cp AUTHORS.txt COPYING DEDICATION NEWS README.txt VERSION $RPM_DOC_ROOT/README.first
+make prefix="$RPM_BUILD_ROOT%{_prefix}" webdir="$RPM_BUILD_ROOT%{_prefix}/share/doc/%{name}-documentation-%{version}/" out=www web-install
 
 # Menu
 # Every entry must be changed according package specifications
@@ -119,18 +116,30 @@ tar -C web -xzf out/web.tar.gz
 
 mkdir -p $RPM_BUILD_ROOT%{_menudir}
 cat >$RPM_BUILD_ROOT%{_menudir}/%{name} <<EOF
-?package(%name): command="%{_bindir}/%{name}" needs="X11" \
-icon="%{name}.png" section="Publishing" \
-title="%{name}" longtitle="%{name}"
+?package(%name):\
+  command="info %{name}"\
+  needs="text"\
+  icon="%{name}.png"\
+  section="Documentation"\
+  title="%{name}-info"\
+  longtitle="%{name} Info"
 EOF
   
+cat >$RPM_BUILD_ROOT%{_menudir}/%{name}-documentation <<EOF
+?package(%name):\
+  command="\$BROWSER %{_docdir}/%{name}-documentation-%{version}/index.html"\
+  needs="X11"\
+  icon="%{name}.png"\
+  section="Documentation"\
+  title="%{name}-documentation"\
+  longtitle="%{name} Documentation"
+EOF
+
 # icon
-install -d $RPM_BUILD_ROOT/%{_miconsdir}
 install -d $RPM_BUILD_ROOT/%{_iconsdir}
-install -d $RPM_BUILD_ROOT/%{_liconsdir}
-bzcat %{SOURCE1} > $RPM_BUILD_ROOT/%{_miconsdir}/%{name}.png
-bzcat %{SOURCE2} > $RPM_BUILD_ROOT/%{_iconsdir}/%{name}.png
-bzcat %{SOURCE3} > $RPM_BUILD_ROOT/%{_liconsdir}/%{name}png
+install -m 644 Documentation/pictures/out-www/lelie-logo.png $RPM_BUILD_ROOT/%{_iconsdir}/%{name}.png
+
+%{find_lang} %{name}
 
 %post
 %{update_menus}
@@ -138,85 +147,105 @@ bzcat %{SOURCE3} > $RPM_BUILD_ROOT/%{_liconsdir}/%{name}png
 touch /tmp/.lilypond-install
 rm `find /var/lib/texmf -name 'feta*pk' -or -name 'feta*tfm' -or -name 'parmesan*pk' -or -name 'parmesan*tfm' -print` /tmp/.lilypond-install
 
-%if info=="yes"
-/sbin/install-info %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir 
+%if %{info}
+  /sbin/install-info --quiet %{_infodir}/lilypond.info.bz2 %{_infodir}/dir 
 %endif
 
+/usr/X11R6/bin/mkfontdir %{_datadir}/lilypond/%{version}/fonts/type1/
+chkfontpath --add=%{_datadir}/lilypond/%{version}/fonts/type1/
+
+%post documentation
+%{update_menus}
+scrollkeeper-update
+
 %preun
 
-%if info=="yes"
-if [ $1 = 0 ]; then
-    /sbin/install-info --delete %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir 
-fi
+%if %{info}
+  if [ $1 = 0 ]; then
+    /sbin/install-info --quiet --delete %{_infodir}/lilypond.info.bz2 %{_infodir}/dir 
+  fi
 %endif
 
-rm -f /usr/share/lilypond/%{version}/fonts/type1/fonts.dir
-chkfontpath --remove=/usr/share/lilypond/%{version}/fonts/type1/
+rm -f %{_datadir}/lilypond/%{version}/fonts/type1/fonts.dir
+chkfontpath --remove=%{_datadir}/lilypond/%{version}/fonts/type1/
 
 %postun
 %{clean_menus}
 
+%postun documentation
+%{clean_menus}
+scrollkeeper-update
+
 %clean
-## This section is meant to clean the build directory tree, $RPM_BUILD_ROOT
 rm -rf $RPM_BUILD_ROOT
 
-## %files -f %{name}.lang
-%files
-# The special tag %doc designates files being part of the documentation of the
-# package. The files so-called will be placed in /usr/doc/lilypond-%{version}/
-%doc COPYING README.txt INSTALL.txt DEDICATION NEWS AUTHORS.txt
-%{_datadir}/emacs/site-lisp/lilypond-*
-# is the following really started during startup of emacs?
+%files -f %{name}.lang
+%defattr(-, root, root)
+%doc COPYING README.txt INSTALL.txt DEDICATION NEWS.txt AUTHORS.txt THANKS
+
 %{_datadir}/emacs/site-lisp/site-start.d/lilypond-*
+%{_datadir}/emacs/site-lisp/lilypond*
 
-%{_prefix}/bin/abc2ly
-%{_prefix}/bin/as2text
-%{_prefix}/bin/convert-ly
-%{_prefix}/bin/etf2ly
-%{_prefix}/bin/lilypond
-%{_prefix}/bin/ly2dvi
-%{_prefix}/bin/midi2ly
-%{_prefix}/bin/lilypond-book
-%{_prefix}/bin/mup2ly
-%{_prefix}/bin/musedata2ly
-%{_prefix}/bin/pmx2ly
-
-%if info=="yes"
-%{_prefix}/info/lilypond.info.gz
-%{_prefix}/info/lilypond-internals.info.gz
+%if %{info}
+  %{_infodir}/*
 %endif
 
-%{_prefix}/man/man1/abc2ly.1.bz2
-%{_prefix}/man/man1/as2text.1.bz2
-%{_prefix}/man/man1/convert-ly.1.bz2
-%{_prefix}/man/man1/etf2ly.1.bz2
-%{_prefix}/man/man1/lilypond.1.bz2
-%{_prefix}/man/man1/ly2dvi.1.bz2
-%{_prefix}/man/man1/midi2ly.1.bz2
-%{_prefix}/man/man1/lilypond-book.1.bz2
-%{_prefix}/man/man1/musedata2ly.1.bz2
-%{_prefix}/man/man1/mup2ly.1.bz2
-%{_prefix}/man/man1/pmx2ly.1.bz2
-
-%{_prefix}/share/%{name}/%{version}/
-%{_prefix}/share/locale/*/LC_MESSAGES/lilypond.mo
+%{_datadir}/%{name}/%{version}/
+%{_datadir}/locale/*/LC_MESSAGES/lilypond.mo
 %{_prefix}/../etc/profile.d/lilypond.*
 %_bindir/*
+%_mandir/*
 %_menudir/*
-%_miconsdir/*
-%_iconsdir/*
-%_liconsdir/*
+%_iconsdir/%{name}.*
+
+%files -n liblilypond
+%defattr(-,root,root)
+%{_libdir}/%{name}/%{version}/python/*.so
 
 %files documentation
+%defattr(-, root, root)
 
-%doc web/
+%{_docdir}/*
+%{_datadir}/omf/lilypond/%{version}
+%{_menudir}/%{name}-documentation
 
 %changelog
+* Thu Sep 01 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.4-4mdk
+- add target lilypond.words.
+
+* Sun Aug 25 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.8.1-3mdk
+- Fixed doc-path in menu.
+
+* Thu Aug 23 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.1-1mdk
+* Sun Aug 24 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.8.1-2mdk
+- Added Heikki Johannes Junes fix for confilcting PHP variable
+  out=/dev/vc/ by adding unset out before compiling
+- Compiled with recent guile = 1.6.4 and mftrace = 1.0.19
+- Changed icon to lilypond.png
+- Added menu and icons again
+
+* Thu Aug 07 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.8.0-1mdk
+- removed menu and icons, sync with redhat-spec
+
+* Thu Jun 12 2003 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.23-1mdk
+- refreshed dependencies and file list.
+
+* Sat Feb 01 2003 Torbjorn Turpeinen <tobbe@nyvalls.se> 1.7.12-1mdk
+- Built for Mandrake 9.1
+
+* Fri Dec 01 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.9-1mdk
+- set menu-items to lilypond-info and lilypond-documentation.
+
+* Fri Nov 30 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.8-4mdk
+- add pre/post-dependencies and menus with icon from source.
+
+* Fri Oct 28 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.7.4-1mdk
+- info, commented menu
+
 * Fri Aug 30 2002 Heikki Johannes Junes <hjunes@cc.hut.fi> 1.6.0-1mdk
 - Adapted from lilypond.redhat.skel and skeleton found in Mandrake's RPM-docs.
 - TODO: info (?) and dependencies.
 
-%changelog
 * Fri Jun 01 2001 Lenny Cartier <lenny@mandrakesoft.com> 1.4.2-1mdk
 - updated by Michael Brown <mbrown@linux-mandrake.com> :
        - Upgraded to 1.4.2