]> git.pld-linux.org Git - SPECS.git/blob - midishare.spec
SPECS updated Tue 30 Apr 15:06:09 CEST 2024
[SPECS.git] / midishare.spec
1 # TODO:
2 # - fix kernel module build
3 # - package device in static dev package (if major,minor is static)
4 # - build and package libraries/ and lang/ contents
5 #
6 # Conditional build:
7 %bcond_with     kernel          # build kernel module (FIXME)
8 %bcond_without  dist_kernel     # allow non-distribution kernel
9 %bcond_without  userspace       # don't build userspace packages
10 #
11 Summary:        MidiShare - a real-time operating system for musical applications
12 Summary(pl.UTF-8):      MidiShare - system operacyjny czasu rzeczywistego dla aplikacji muzycznych
13 Name:           midishare
14 Version:        1.93
15 %define snap    20100924
16 Release:        1.%{snap}.1
17 License:        LGPL v2
18 Group:          Applications/Sound
19 # no packaged sources available for 1.93 release - so use git snapshot
20 #Source0:       http://downloads.sourceforge.net/midishare/%{name}-%{version}-src.tgz
21 # git clone git://midishare.git.sourceforge.net/gitroot/midishare/midishare midishare
22 Source0:        %{name}-%{snap}.tar.xz
23 # Source0-md5:  51a1a061d66ec1bd4fda718091cb430a
24 Patch0:         %{name}-ulong.patch
25 Patch1:         %{name}-kernelsrc.patch
26 Patch2:         %{name}-link.patch
27 Patch3:         %{name}-install.patch
28 Patch4:         %{name}-opt.patch
29 URL:            http://midishare.sourceforge.net/
30 BuildRequires:  rpmbuild(macros) >= 1.379
31 BuildRequires:  tar >= 1:1.22
32 BuildRequires:  xz
33 %if %{with kernel}
34 BuildRequires:  kernel%{_alt_kernel}-headers
35 BuildRequires:  kernel%{_alt_kernel}-module-build
36 BuildRequires:  %{kgcc_package}
37 %endif
38 %if %{with userspace}
39 BuildRequires:  alsa-lib-devel
40 BuildRequires:  gtk+2-devel >= 2.0
41 BuildRequires:  libstdc++-devel
42 BuildRequires:  pkgconfig
43 %endif
44 Requires:       %{name}-libs = %{version}-%{release}
45 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
46
47 %description
48 MidiShare has been designed in 1989 in response to problems commonly
49 met in the development of realtime music software. It provides high
50 level services to developers and ensures platform independance since
51 it currently supports GNU/Linux, MacOS X and Windows.
52
53 %description -l pl.UTF-8
54 MidiShare został zaprojektowany w 1989 roku w odpowiedzi na problemy
55 powszechnie spotykane przy tworzeniu oprogramowania muzycznego czasu
56 rzeczywistego. Zapewnia programistom wysokopoziomowe usługi oraz
57 niezależność od platformy - obecnie obsługuje systemy GNU/Linux, Mac
58 OS X oraz Windows.
59
60 %package gui
61 Summary:        GTK+ based MidiShare GUI applications
62 Summary(pl.UTF-8):      Oparte na GTK+ aplikacje graficzne MidiShare
63 Group:          X11/Applications/Sound
64 Requires:       %{name} = %{version}-%{release}
65
66 %description gui
67 GTK+ based MidiShare GUI applications.
68
69 %description gui -l pl.UTF-8
70 Oparte na GTK+ aplikacje graficzne MidiShare.
71
72 %package libs
73 Summary:        MidiShare shared library
74 Summary(pl.UTF-8):      Biblioteka współdzielona MidiShare
75 Group:          Libraries
76
77 %description libs
78 MidiShare shared library.
79
80 %description libs -l pl.UTF-8
81 Biblioteka współdzielona MidiShare.
82
83 %package devel
84 Summary:        Header file for MidiShare library
85 Summary(pl.UTF-8):      Plik nagłówkowy biblioteki MidiShare
86 Group:          Development/Libraries
87 Requires:       %{name}-libs = %{version}-%{release}
88
89 %description devel
90 Header file for MidiShare library.
91
92 %description devel -l pl.UTF-8
93 Plik nagłówkowy biblioteki MidiShare.
94
95 %package doc
96 Summary:        MidiShare documentation
97 Summary(pl.UTF-8):      Dokumentacja do MidiShare
98 Group:          Documentation
99
100 %description doc
101 MidiShare documentation.
102
103 %description doc -l pl.UTF-8
104 Dokumentacja do MidiShare.
105
106 %package -n kernel%{_alt_kernel}-midishare
107 Summary:        Linux kernel module for MidiShare system
108 Summary(pl.UTF-8):      Moduł jądra Linuksa dla systemu MidiShare
109 Release:        %{release}@%{_kernel_ver_str}
110 Group:          Base/Kernel
111 %if %{with dist_kernel}
112 %requires_releq_kernel
113 Requires(postun):       %releq_kernel
114 %endif
115 Requires(post,postun):  /sbin/depmod
116
117 %description -n kernel%{_alt_kernel}-midishare
118 Linux kernel module for MidiShare system.
119
120 %description -n kernel%{_alt_kernel}-midishare -l pl.UTF-8
121 Moduł jądra Linuksa dla systemu MidiShare.
122
123 %prep
124 %setup -q -n %{name}
125 %patch0 -p1
126 %patch1 -p1
127 %patch2 -p1
128 %patch3 -p1
129 %patch4 -p1
130
131 %build
132 cd src/linux
133 ./configure
134 %{__make} common \
135         CC="%{__cc}" \
136         COPTFLAGS="%{rpmcflags}"
137 %if %{with kernel}
138 # TODO: FIXME
139 %{__make} -C kernel \
140         CC="%{kgcc}" \
141         KERNELSRC=%{_kernelsrcdir}
142 %endif
143 %{__make} -f appls \
144         CC="%{__cc}" \
145         CXX="%{__cxx}" \
146         COPTFLAGS="%{rpmcflags}" \
147         CXXOPTFLAGS="%{rpmcxxflags}" \
148         LDFLAGS="%{rpmldflags}"
149
150 %install
151 rm -rf $RPM_BUILD_ROOT
152
153 %if %{with kernel}
154 install $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc
155 install src/linux/kernel/midishare.ko $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc
156 %endif
157
158 %if %{with userspace}
159 install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_includedir},%{_mandir}/man1,%{_sysconfdir},/etc/udev/rules.d}
160
161 %{__make} -C src/linux/library install \
162         DEST=$RPM_BUILD_ROOT%{_libdir}
163 install src/linux/Include/MidiShare.h $RPM_BUILD_ROOT%{_includedir}
164 install src/linux/MidiShare.conf $RPM_BUILD_ROOT%{_sysconfdir}
165 install src/linux/midishare-udev.rules $RPM_BUILD_ROOT/etc/udev/rules.d
166
167 %{__make} -C src/linux -f appls install \
168         DEST=$RPM_BUILD_ROOT%{_bindir} \
169         BIN=$RPM_BUILD_ROOT%{_bindir} \
170         MAN1=$RPM_BUILD_ROOT%{_mandir}/man1
171 %endif
172
173 %clean
174 rm -rf $RPM_BUILD_ROOT
175
176 %post   libs -p /sbin/ldconfig
177 %postun libs -p /sbin/ldconfig
178
179 %post   -n kernel%{_alt_kernel}-midishare
180 %depmod %{_kernel_ver}
181
182 %postun -n kernel%{_alt_kernel}-midishare
183 %depmod %{_kernel_ver}
184
185 %if %{with userspace}
186 %files
187 %defattr(644,root,root,755)
188 %doc src/History.txt src/linux/{README.txt,history-linux.txt}
189 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/MidiShare.conf
190 /etc/udev/rules.d/midishare-udev.rules
191 %attr(755,root,root) %{_bindir}/MidiConnect
192 %attr(755,root,root) %{_bindir}/MidiCountAppls
193 %attr(755,root,root) %{_bindir}/MidiGetIndAppl
194 %attr(755,root,root) %{_bindir}/MidiGetName
195 %attr(755,root,root) %{_bindir}/MidiGetNamedAppl
196 %attr(755,root,root) %{_bindir}/MidiGetStat
197 %attr(755,root,root) %{_bindir}/MidiGetTime
198 %attr(755,root,root) %{_bindir}/MidiGetVersion
199 %attr(755,root,root) %{_bindir}/MidiIsConnected
200 %attr(755,root,root) %{_bindir}/RadioHDServer
201 %attr(755,root,root) %{_bindir}/msAlsaSeq
202 %attr(755,root,root) %{_bindir}/msControlSignal
203 %attr(755,root,root) %{_bindir}/msInetDriver
204 %attr(755,root,root) %{_bindir}/msQuit
205 %attr(755,root,root) %{_bindir}/msRawDev
206 %attr(755,root,root) %{_bindir}/msRawMidi
207 %attr(755,root,root) %{_bindir}/msRawSerial
208 %{_mandir}/man1/MidiConnect.1*
209 %{_mandir}/man1/MidiCountAppls.1*
210 %{_mandir}/man1/MidiGetIndAppl.1*
211 %{_mandir}/man1/MidiGetName.1*
212 %{_mandir}/man1/MidiGetNamedAppl.1*
213 %{_mandir}/man1/MidiGetStat.1*
214 %{_mandir}/man1/MidiGetTime.1*
215 %{_mandir}/man1/MidiGetVersion.1*
216 %{_mandir}/man1/MidiIsConnected.1*
217 %{_mandir}/man1/msAlsaSeq.1*
218 %{_mandir}/man1/msInetDriver.1*
219 %{_mandir}/man1/msQuit.1*
220
221 %files gui
222 %defattr(644,root,root,755)
223 %attr(755,root,root) %{_bindir}/msclock
224 %attr(755,root,root) %{_bindir}/msconnect
225 %attr(755,root,root) %{_bindir}/mscontrol
226 %attr(755,root,root) %{_bindir}/msdisplay
227 %attr(755,root,root) %{_bindir}/msecho
228 %attr(755,root,root) %{_bindir}/mssync
229
230 %files libs
231 %defattr(644,root,root,755)
232 %attr(755,root,root) %{_libdir}/libMidiShare.so.*.*
233 %attr(755,root,root) %ghost %{_libdir}/libMidiShare.so.1
234
235 %files devel
236 %defattr(644,root,root,755)
237 %attr(755,root,root) %{_libdir}/libMidiShare.so
238 %{_includedir}/MidiShare.h
239
240 %files doc
241 %defattr(644,root,root,755)
242 %doc doc/html
243 %endif
244
245 %if %{with kernel}
246 %files -n kernel%{_alt_kernel}-midishare
247 %defattr(755,root,root,755)
248 /lib/modules/%{_kernel_ver}/misc/midishare.ko*
249 %endif
This page took 0.491126 seconds and 3 git commands to generate.