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
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
11 Summary: MidiShare - a real-time operating system for musical applications
12 Summary(pl.UTF-8): MidiShare - system operacyjny czasu rzeczywistego dla aplikacji muzycznych
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
34 BuildRequires: kernel%{_alt_kernel}-headers
35 BuildRequires: kernel%{_alt_kernel}-module-build
36 BuildRequires: %{kgcc_package}
39 BuildRequires: alsa-lib-devel
40 BuildRequires: gtk+2-devel >= 2.0
41 BuildRequires: libstdc++-devel
42 BuildRequires: pkgconfig
44 Requires: %{name}-libs = %{version}-%{release}
45 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
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.
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
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}
67 GTK+ based MidiShare GUI applications.
69 %description gui -l pl.UTF-8
70 Oparte na GTK+ aplikacje graficzne MidiShare.
73 Summary: MidiShare shared library
74 Summary(pl.UTF-8): Biblioteka współdzielona MidiShare
78 MidiShare shared library.
80 %description libs -l pl.UTF-8
81 Biblioteka współdzielona MidiShare.
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}
90 Header file for MidiShare library.
92 %description devel -l pl.UTF-8
93 Plik nagłówkowy biblioteki MidiShare.
96 Summary: MidiShare documentation
97 Summary(pl.UTF-8): Dokumentacja do MidiShare
101 MidiShare documentation.
103 %description doc -l pl.UTF-8
104 Dokumentacja do MidiShare.
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}
111 %if %{with dist_kernel}
112 %requires_releq_kernel
113 Requires(postun): %releq_kernel
115 Requires(post,postun): /sbin/depmod
117 %description -n kernel%{_alt_kernel}-midishare
118 Linux kernel module for MidiShare system.
120 %description -n kernel%{_alt_kernel}-midishare -l pl.UTF-8
121 Moduł jądra Linuksa dla systemu MidiShare.
136 COPTFLAGS="%{rpmcflags}"
139 %{__make} -C kernel \
141 KERNELSRC=%{_kernelsrcdir}
146 COPTFLAGS="%{rpmcflags}" \
147 CXXOPTFLAGS="%{rpmcxxflags}" \
148 LDFLAGS="%{rpmldflags}"
151 rm -rf $RPM_BUILD_ROOT
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
158 %if %{with userspace}
159 install -d $RPM_BUILD_ROOT{%{_bindir},%{_libdir},%{_includedir},%{_mandir}/man1,%{_sysconfdir},/etc/udev/rules.d}
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
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
174 rm -rf $RPM_BUILD_ROOT
176 %post libs -p /sbin/ldconfig
177 %postun libs -p /sbin/ldconfig
179 %post -n kernel%{_alt_kernel}-midishare
180 %depmod %{_kernel_ver}
182 %postun -n kernel%{_alt_kernel}-midishare
183 %depmod %{_kernel_ver}
185 %if %{with userspace}
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*
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
231 %defattr(644,root,root,755)
232 %attr(755,root,root) %{_libdir}/libMidiShare.so.*.*
233 %attr(755,root,root) %ghost %{_libdir}/libMidiShare.so.1
236 %defattr(644,root,root,755)
237 %attr(755,root,root) %{_libdir}/libMidiShare.so
238 %{_includedir}/MidiShare.h
241 %defattr(644,root,root,755)
246 %files -n kernel%{_alt_kernel}-midishare
247 %defattr(755,root,root,755)
248 /lib/modules/%{_kernel_ver}/misc/midishare.ko*