]> git.donarmstrong.com Git - lilypond.git/blob - make/lilypond.spec.in
release: 1.3.92
[lilypond.git] / make / lilypond.spec.in
1 Name: lilypond
2 Version: @TOPLEVEL_VERSION@
3 Release: 1
4 License: GPL
5 Group: Applications/Publishing
6 Source0: ftp.cs.uu.nl:/pub/GNU/LilyPond/development/lilypond-@TOPLEVEL_VERSION@.tar.gz
7 Summary: A program for printing sheet music.
8 URL: http://www.cs.uu.nl/~hanwen/lilypond
9 # Icon: @package@-icon.gif
10 BuildRoot: /tmp/lilypond-install
11 Prereq: tetex
12
13 %description
14 LilyPond is a music typesetter.  It produces beautiful
15 sheet music using a high level description file as input.  LilyPond is
16 part of the GNU Project.
17
18 %package documentation
19 Summary: Prebuilt website containing all LilyPond documentation.
20 Group: Applications/Publishing
21 # BuildArchitectures: noarch
22
23 %description documentation
24
25 The documentation of LilyPond, both in HTML and PostScript.
26
27 %prep
28 %setup
29
30 %build
31
32 #
33
34 # DO NOT use % { configure } , it hardcodes all paths, runs libtool,
35 # so we can't do make prefix=/tmp/ install.
36
37 # In fact, do not take out the spaces between % and { , because RPM will gladly
38 # do a substitution anyway.
39
40 ./configure --disable-checking --disable-debugging --enable-printing --prefix=%{_prefix} --disable-optimise --enable-shared
41
42 make all
43
44 # urg
45 # %build documentation
46 # line 42: second %build
47 # ok, now make sure that lilypond package will succeed,
48 # even if documentation fails to build
49
50 make -C Documentation  || true
51 make htmldoc || true
52
53 %install
54 rm -rf $RPM_BUILD_ROOT
55 mkdir -p $RPM_BUILD_ROOT/tmp/lilypond-rpm-doc
56
57 strip lily/out/lilypond midi2ly/out/midi2ly
58 make prefix="$RPM_BUILD_ROOT%{_prefix}" install
59 # gzip -9fn $RPM_BUILD_ROOT%{_prefix}/info/* || true
60
61 mkdir -p $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d
62 cp buildscripts/out/lilypond-profile $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.sh
63 cp buildscripts/out/lilypond-login $RPM_BUILD_ROOT%{_prefix}/../etc/profile.d/lilypond.csh
64
65 # urg
66 #%install documentation
67 #line 63: second %install
68 # again, make sure that main package installs even if doco fails
69 mkdir -p htmldocs/out
70 tar -C htmldocs -xzf out/htmldoc.tar.gz || true
71 mkdir -p out/examples/
72 tar -cf - input/  | tar -C out/examples/ -xf- || true
73
74 %ifos cygwin
75 # urg, this symlink doesn't come through on cygwin
76 # this is the way symlinks work over there, let's fake one
77 rm -f $RPM_BUILD_ROOT%{_prefix}/share/lilypond/cmtfm
78 echo '!<symlink>c:\\texmf\\fonts\\tfm\\public\\cm' > $RPM_BUILD_ROOT%{_prefix}/share/lilypond/cmtfm
79 %{fix_suffixes}
80 %endif
81
82 %post
83
84 touch /tmp/.lilypond-install
85 rm `find /var/lib/texmf -name 'feta*pk -print' -or -name 'feta*tfm -print'` /tmp/.lilypond-install
86 # /sbin/install-info %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir || true
87
88 %preun
89 if [ $1 = 0 ]; then
90  true #   /sbin/install-info --delete %{_prefix}/info/lilypond.info.gz %{_prefix}/info/dir || true
91 fi
92
93
94 %files
95 # hairy to hook it in (possibly non-existing) emacs
96 %doc lilypond-mode.el
97
98 %ifnos cygwin
99 %{_prefix}/bin/abc2ly
100 %{_prefix}/bin/as2text
101 %{_prefix}/bin/convert-mudela
102 %{_prefix}/bin/etf2ly
103 %{_prefix}/bin/lilypond
104 %{_prefix}/bin/ly2dvi
105 %{_prefix}/bin/midi2ly
106 %{_prefix}/bin/mudela-book
107 %{_prefix}/bin/musedata2ly
108 %{_prefix}/bin/pmx2ly
109 %else
110 %{_prefix}/bin
111 %endif
112
113 %{_prefix}/man/man1/abc2ly.1.gz
114 %{_prefix}/man/man1/as2text.1.gz
115 %{_prefix}/man/man1/convert-mudela.1.gz
116 %{_prefix}/man/man1/etf2ly.1.gz
117 %{_prefix}/man/man1/lilypond.1.gz
118 %{_prefix}/man/man1/ly2dvi.1.gz
119 %{_prefix}/man/man1/midi2ly.1.gz
120 %{_prefix}/man/man1/mudela-book.1.gz
121 %{_prefix}/man/man1/musedata2ly.1.gz
122 %{_prefix}/man/man1/pmx2ly.1.gz
123
124 %{_prefix}/share/lilypond/
125 %{_prefix}/share/locale/*/LC_MESSAGES/lilypond.mo
126 # urg?
127 %{_prefix}/../etc/profile.d/lilypond.*
128
129 %files documentation
130 # this gets too messy...
131 # %doc input/*.ly
132 # verbatim include of input: list the directory without issuing a %dir 
133 %doc htmldocs/
134 %doc out/examples/
135 %doc mutopia/