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