2 # TODO: SELinux support
5 %bcond_without glib # without glib support
6 %bcond_without gtk # without GTK+ programs
7 %bcond_without qt # without qt support
8 %bcond_without gcj # with Java support
9 %bcond_without python # without python support
10 %bcond_without dotnet # without .net support
16 %define expat_version 1.95.5
17 %define glib2_version 2.2.0
18 %define qt_version 3.1.0
19 Summary: D-BUS message bus
20 Summary(pl): Magistrala przesy³ania komunikatów D-BUS
24 License: AFL v2.1 or GPL v2
26 Source0: http://dbus.freedesktop.org/releases/%{name}-%{version}.tar.gz
27 # Source0-md5: ecd20f2398ed46b2c96d7e30b1f914d4
28 Source1: messagebus.init
29 Source2: %{name}-daemon-1-profile.d-sh
30 Source3: %{name}-sysconfig
31 Source4: %{name}-xinitrc.sh
32 Patch0: %{name}-ac.patch
33 Patch1: %{name}-nolibs.patch
34 Patch2: %{name}-config.patch
35 Patch3: %{name}-mint.patch
36 URL: http://www.freedesktop.org/Software/dbus
37 BuildRequires: XFree86-devel
38 BuildRequires: autoconf >= 2.52
39 BuildRequires: automake
40 BuildRequires: expat-devel >= %{expat_version}
41 BuildRequires: doxygen
42 %{?with_glib:BuildRequires: glib2-devel >= %{glib2_version}}
43 %{?with_gcj:BuildRequires: gcc-java-tools}
44 %{?with_gcj:BuildRequires: libgcj-devel}
45 %{?with_gtk:BuildRequires: gtk+2-devel >= %{glib2_version}}
46 %{?with_qt:BuildRequires: kdelibs-devel}
47 # just gtk-sharp for examples
48 %{?with_dotnet:BuildRequires: dotnet-gtk-sharp-devel}
49 %{?with_dotnet:BuildRequires: mono-csharp >= 0.95}
50 %{?with_dotnet:BuildRequires: monodoc >= 0.16}
51 BuildRequires: libtool
52 BuildRequires: pkgconfig
54 BuildRequires: python-devel >= 2.2
55 BuildRequires: python-Pyrex >= 0.9.3
57 %{?with_qt:BuildRequires: qt-devel >= %{qt_version}}
58 BuildRequires: rpmbuild(macros) >= 1.202
59 BuildRequires: sed >= 4.0
62 Requires: %{name}-libs = %{version}-%{release}
63 Requires(pre): /bin/id
64 Requires(pre): /usr/bin/getgid
65 Requires(pre): /usr/sbin/groupadd
66 Requires(pre): /usr/sbin/useradd
67 Requires(post,preun): /sbin/chkconfig
68 Requires(post,postun): /sbin/ldconfig
69 Requires(postun): /usr/sbin/groupdel
70 Requires(postun): /usr/sbin/userdel
72 Provides: group(messagebus)
73 Provides: user(messagebus)
74 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
77 D-BUS is a system for sending messages between applications. It is
78 used both for the systemwide message bus service, and as a
79 per-user-login-session messaging facility.
82 D-BUS to system przesy³ania komunikatów pomiêdzy aplikacjami. Jest
83 u¿ywany zarówno jako ogólnosystemowa us³uga magistrali komunikatów jak
84 i mo¿liwo¶æ przesy³ania komunikatów w ramach jednej sesji u¿ytkownika.
87 Summary: Header files for D-BUS
88 Summary(pl): Pliki nag³ówkowe D-BUS
89 Group: Development/Libraries
90 Requires: %{name}-libs = %{version}-%{release}
93 Header files for D-BUS.
95 %description devel -l pl
96 Pliki nag³ówkowe D-BUS.
99 Summary: D-BUS libraries
100 Summary(pl): Biblioteki D-BUS
106 %description libs -l pl
110 Summary: Static D-BUS libraries
111 Summary(pl): Statyczne biblioteki D-BUS
112 Group: Development/Libraries
113 Requires: %{name}-devel = %{version}-%{release}
116 Static D-BUS libraries.
118 %description static -l pl
119 Statyczne biblioteki D-BUS.
122 Summary: GLib-based library for using D-BUS
123 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o GLib
125 Requires: %{name}-libs = %{version}-%{release}
126 Requires: glib2 >= %{glib2_version}
129 D-BUS add-on library to integrate the standard D-BUS library with the
130 GLib thread abstraction and main loop.
132 %description glib -l pl
133 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
134 z abstrakcj± w±tków i g³ówn± pêtl± GLib.
137 Summary: Header files for GLib-based library for using D-BUS
138 Summary(pl): Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o GLib
139 Group: Development/Libraries
140 Requires: %{name}-devel = %{version}-%{release}
141 Requires: %{name}-glib = %{version}-%{release}
142 Requires: glib2-devel >= %{glib2_version}
144 %description glib-devel
145 Header files for GLib-based library for using D-BUS.
147 %description glib-devel -l pl
148 Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o GLib.
151 Summary: Static GLib-based library for using D-BUS
152 Summary(pl): Statyczna biblioteka do u¿ywania D-BUS oparta o GLib
153 Group: Development/Libraries
154 Requires: %{name}-glib-devel = %{version}-%{release}
156 %description glib-static
157 Static GLib-based library for using D-BUS.
159 %description glib-static -l pl
160 Statyczna biblioteka do u¿ywania D-BUS oparta o GLib.
163 Summary: GLib-based tools for D-BUS
164 Summary(pl): Narzêdzia dla D-BUS oparte o GLib
166 Requires: %{name} = %{version}-%{release}
167 Requires: %{name}-glib = %{version}-%{release}
169 %description glib-tools
170 GLib-based tools for D-BUS.
172 %description glib-tools -l pl
173 Narzêdzia dla D-BUS oparte o GLib
176 Summary: GTK+-based graphical D-BUS frontend utility
177 Summary(pl): Oparte na GTK+ graficzne narzêdzie do D-BUS
178 Group: X11/Applications
179 Requires: %{name} = %{version}-%{release}
180 Requires: %{name}-glib = %{version}-%{release}
183 GTK+-based graphical D-BUS frontend utility.
185 %description gtk -l pl
186 Oparte na GTK+ graficzne narzêdzie do D-BUS.
188 %package -n dotnet-%{name}-sharp
189 Summary: .NET library for using D-BUS
190 Summary(pl): Biblioteka .NET do u¿ywania D-BUS
191 Group: Development/Libraries
192 Requires: %{name} = %{version}-%{release}
195 %description -n dotnet-%{name}-sharp
196 .NET library for using D-BUS.
198 %description -n dotnet-%{name}-sharp -l pl
199 Biblioteka .NET do u¿ywania D-BUS.
201 %package -n dotnet-%{name}-sharp-devel
202 Summary: .NET library for using D-BUS with API documentation
203 Summary(pl): Biblioteka .NET do u¿ywania D-BUS, zawiera dokumentacjê API
204 Group: Development/Libraries
205 Requires: dotnet-%{name}-sharp = %{version}-%{release}
206 Requires: %{name} = %{version}-%{release}
208 %description -n dotnet-%{name}-sharp-devel
209 .NET library for using D-BUS, with API documentation.
211 %description -n dotnet-%{name}-sharp-devel -l pl
212 Biblioteka .NET do u¿ywania D-BUS, zawiera dokumentacjê API.
215 Summary: Qt-based library for using D-BUS
216 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o Qt
218 Requires: %{name}-libs = %{version}-%{release}
221 D-BUS add-on library to integrate the standard D-BUS library with the
222 Qt thread abstraction and main loop.
224 %description qt -l pl
225 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
226 z abstrakcj± w±tków i g³ówn± pêtl± Qt.
229 Summary: Header files for Qt-based library for using D-BUS
230 Summary(pl): Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Qt
231 Group: Development/Libraries
232 Requires: %{name}-devel = %{version}-%{release}
233 Requires: %{name}-qt = %{version}-%{release}
234 Requires: kdelibs-devel
236 %description qt-devel
237 Header files for Qt-based library for using D-BUS.
239 %description qt-devel -l pl
240 Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Qt.
243 Summary: Static Qt-based library for using D-BUS
244 Summary(pl): Statyczna biblioteka do u¿ywania D-BUS oparta o Qt
245 Group: Development/Libraries
246 Requires: %{name}-qt-devel = %{version}-%{release}
248 %description qt-static
249 Static Qt-based library for using D-BUS.
251 %description qt-static -l pl
252 Statyczna biblioteka do u¿ywania D-BUS oparta o Qt.
255 Summary: Java library for using D-BUS
256 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o Javê
258 Requires: %{name} = %{version}-%{release}
261 D-BUS add-on library to integrate the standard D-BUS library with
264 %description gcj -l pl
265 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
269 Summary: Header files for Java-based library for using D-BUS
270 Summary(pl): Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Javê
271 Group: Development/Libraries
272 Requires: %{name}-gcj = %{version}-%{release}
274 %description gcj-devel
275 Header files for Java-based library for using D-BUS.
277 %description gcj-devel -l pl
278 Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Javê.
281 Summary: Static Java-based library for using D-BUS
282 Summary(pl): Statyczna biblioteka do u¿ywania D-BUS oparta o Javê
283 Group: Development/Libraries
284 Requires: %{name}-gcj-devel = %{version}-%{release}
286 %description gcj-static
287 Static Java-based library for using D-BUS.
289 %description gcj-static -l pl
290 Statyczna biblioteka do u¿ywania D-BUS oparta o Javê.
292 %package -n python-dbus
293 Summary: Python library for using D-BUS
294 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o Pythona
296 Requires: %{name}-libs = %{version}-%{release}
297 %pyrequires_eq python
299 %description -n python-dbus
300 D-BUS add-on library to integrate the standard D-BUS library with
303 %description -n python-dbus -l pl
304 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
313 sed -i 's:JAR.*=.*jar:JAR=fastjar:g' gcj/Makefile.{am,in}
323 %{!?with_glib:--disable-glib} \
324 %{!?with_gtk:--disable-gtk} \
325 %{!?with_qt:--disable-qt} \
326 %{!?with_python:--disable-python} \
327 %{!?with_gcj:--disable-gcj} \
328 %{?with_gcj:--enable-gcj} \
329 %{!?with_dotnet:--disable-mono} \
330 %{!?with_dotnet:--disable-mono-docs} \
331 %{?debug:--enable-verbose-mode} \
333 --enable-verbose-mode \
336 --enable-abstract-sockets \
337 --with-session-socket-dir=/tmp \
338 --with-system-pid-file=%{_localstatedir}/run/dbus.pid \
339 --with-system-socket=%{_localstatedir}/lib/dbus-1/system_bus_socket
344 pythondir=%{py_sitedir}
347 rm -rf $RPM_BUILD_ROOT
348 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
349 install -d $RPM_BUILD_ROOT/etc/profile.d
350 install -d $RPM_BUILD_ROOT/etc/sysconfig
351 install -d $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d
352 install -d $RPM_BUILD_ROOT%{_datadir}/dbus-1/services
353 install -d $RPM_BUILD_ROOT%{_localstatedir}/lib/dbus-1
355 install -d $RPM_BUILD_ROOT%{_libdir}/monodoc/sources
359 DESTDIR=$RPM_BUILD_ROOT \
360 pythondir=%{py_sitedir}
362 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/messagebus
363 install %{SOURCE2} $RPM_BUILD_ROOT/etc/profile.d/dbus-daemon-1.sh
364 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/dbus
365 install %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/dbus.sh
368 rm -f $RPM_BUILD_ROOT%{py_sitedir}/*.{py,la,a}
372 rm -rf $RPM_BUILD_ROOT
375 %groupadd -g 122 messagebus
376 %useradd -u 122 -d /usr/share/empty -s /bin/false -c "System message bus" -g messagebus messagebus
379 /sbin/chkconfig --add messagebus
380 if [ -f /var/lock/subsys/messagebus ]; then
381 /etc/rc.d/init.d/messagebus restart >&2
383 echo "Run \"/etc/rc.d/init.d/messagebus start\" to start D-Bus daemon."
387 if [ "$1" = "0" ];then
388 if [ -f /var/lock/subsys/messagebus ]; then
389 /etc/rc.d/init.d/messagebus stop >&2
391 /sbin/chkconfig --del messagebus
395 if [ "$1" = "0" ]; then
396 %userremove messagebus
397 %groupremove messagebus
400 %post libs -p /sbin/ldconfig
401 %postun libs -p /sbin/ldconfig
403 %post glib -p /sbin/ldconfig
404 %postun glib -p /sbin/ldconfig
406 %post qt -p /sbin/ldconfig
407 %postun qt -p /sbin/ldconfig
409 %post gcj -p /sbin/ldconfig
410 %postun gcj -p /sbin/ldconfig
413 %defattr(644,root,root,755)
414 %attr(755,root,root) %{_bindir}/dbus-cleanup-sockets
415 %attr(755,root,root) %{_bindir}/dbus-daemon-1
416 # dbus-launch R: XFree86-libs
417 %attr(755,root,root) %{_bindir}/dbus-launch
418 %attr(755,root,root) %{_bindir}/dbus-send
419 %dir %{_sysconfdir}/dbus-1
420 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/dbus-1/*.conf
421 %config(noreplace) %verify(not md5 size mtime) /etc/sysconfig/dbus
422 %attr(754,root,root) /etc/rc.d/init.d/*
423 %attr(755,root,root) /etc/profile.d/dbus-daemon-1.sh
424 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/dbus.sh
425 %dir %{_sysconfdir}/dbus-1/system.d
426 %dir %{_datadir}/dbus-1
427 %dir %{_datadir}/dbus-1/services
428 %dir %{_localstatedir}/lib/dbus-1
429 %{_mandir}/man1/dbus-cleanup-sockets.1*
430 %{_mandir}/man1/dbus-daemon-1.1*
431 %{_mandir}/man1/dbus-launch.1*
432 %{_mandir}/man1/dbus-send.1*
435 %defattr(644,root,root,755)
436 %doc AUTHORS COPYING ChangeLog NEWS README doc/TODO
437 %attr(755,root,root) %{_libdir}/libdbus-1.so.*.*.*
438 %dir %{_libdir}/dbus-*
441 %defattr(644,root,root,755)
442 %doc doc/*.{html,txt}
443 %attr(755,root,root) %{_libdir}/libdbus-1.so
444 %{_libdir}/libdbus-1.la
445 %{_libdir}/dbus-*/include
446 %{_pkgconfigdir}/dbus-1.pc
448 %{?with_glib:%exclude %{_includedir}/dbus*/dbus/dbus-glib*.h}
449 %{?with_qt:%exclude %{_includedir}/dbus*/dbus/dbus-qt.h}
452 %defattr(644,root,root,755)
453 %{_libdir}/libdbus-1.a
457 %defattr(644,root,root,755)
458 %attr(755,root,root) %{_libdir}/libdbus-glib-1.so.*.*.*
461 %defattr(644,root,root,755)
462 %attr(755,root,root) %{_bindir}/dbus-glib-tool
463 %attr(755,root,root) %{_libdir}/libdbus-glib-1.so
464 %{_libdir}/libdbus-glib-1.la
465 %{_includedir}/dbus*/dbus/dbus-glib*.h
466 %{_pkgconfigdir}/dbus-glib-1.pc
469 %defattr(644,root,root,755)
470 %{_libdir}/libdbus-glib-1.a
473 %defattr(644,root,root,755)
474 %attr(755,root,root) %{_bindir}/dbus-monitor
475 %{_mandir}/man1/dbus-monitor.1*
480 %defattr(644,root,root,755)
481 %attr(755,root,root) %{_bindir}/dbus-viewer
485 %files -n dotnet-%{name}-sharp
486 %defattr(644,root,root,755)
487 %dir %{_libdir}/mono/gac/dbus-sharp
488 %{_libdir}/mono/gac/dbus-sharp/*
490 %files -n dotnet-%{name}-sharp-devel
491 %defattr(644,root,root,755)
492 %{_libdir}/monodoc/sources/*
493 %dir %{_libdir}/mono/dbus-sharp
494 %{_libdir}/mono/dbus-sharp/*
495 %{_pkgconfigdir}/dbus-sharp.pc
500 %defattr(644,root,root,755)
501 %attr(755,root,root) %{_libdir}/libdbus-qt-1.so.*.*.*
504 %defattr(644,root,root,755)
505 %attr(755,root,root) %{_libdir}/libdbus-qt-1.so
506 %{_libdir}/libdbus-qt-1.la
507 %{_includedir}/dbus*/dbus/dbus-qt.h
510 %defattr(644,root,root,755)
511 %{_libdir}/libdbus-qt-1.a
516 %defattr(644,root,root,755)
517 %attr(755,root,root) %{_libdir}/lib*gcj*.so.*.*.*
520 %defattr(644,root,root,755)
521 %attr(755,root,root) %{_libdir}/lib*gcj*.so
522 %{_libdir}/lib*gcj*.la
523 %{_datadir}/java/*.jar
526 %defattr(644,root,root,755)
527 %{_libdir}/lib*gcj*.a
531 %files -n python-dbus
532 %defattr(644,root,root,755)
533 %attr(755,root,root) %{py_sitedir}/*.so
534 %{py_sitedir}/*.py[co]