6 %bcond_without dotnet # without .NET support
7 %bcond_without gcj # without Java support
8 %bcond_without glib # without glib support
9 %bcond_without gtk # without GTK+ programs
10 %bcond_without python # without Python support
11 %bcond_without qt # without Qt 3.x support
12 %bcond_with qt4 # with Qt 4.x support (broken)
14 %{?with_dotnet:%include /usr/lib/rpm/macros.mono}
20 %ifarch i386 alpha sparc sparc64
24 %define expat_version 1:1.95.5
25 %define glib2_version 1:2.2.0
26 %define gtk2_version 2:2.4.0
27 %define qt_version 6:3.1.0
29 Summary: D-BUS message bus
30 Summary(pl): Magistrala przesy³ania komunikatów D-BUS
34 License: AFL v2.1 or GPL v2
36 Source0: http://dbus.freedesktop.org/releases/%{name}-%{version}.tar.gz
37 # Source0-md5: ba7692f63d0e9f1ef06703dff56cb650
38 Source1: messagebus.init
39 Source2: %{name}-daemon-1-profile.d-sh
40 Source3: %{name}-sysconfig
41 Source4: %{name}-xinitrc.sh
42 Patch0: %{name}-nolibs.patch
43 Patch1: %{name}-config.patch
44 Patch2: %{name}-mint.patch
45 Patch3: %{name}-python_fixes.patch
46 Patch4: %{name}-monodir.patch
47 Patch5: %{name}-gcj.patch
48 URL: http://www.freedesktop.org/Software/dbus
49 BuildRequires: autoconf >= 2.52
50 BuildRequires: automake
51 %{?with_python:BuildRequires: cpp}
52 BuildRequires: doxygen
53 BuildRequires: expat-devel >= %{expat_version}
54 %{?with_gcj:BuildRequires: gcc-java >= 5:4.0}
55 %{?with_glib:BuildRequires: glib2-devel >= %{glib2_version}}
56 %{?with_gtk:BuildRequires: gtk+2-devel >= %{gtk2_version}}
57 BuildRequires: xorg-lib-libX11-devel
59 BuildRequires: mono-csharp >= 1.1.7
60 BuildRequires: monodoc >= 1.0.7-2
62 BuildRequires: libselinux-devel
63 BuildRequires: libtool
64 BuildRequires: pkgconfig
66 BuildRequires: python-Pyrex >= 0.9.3
67 BuildRequires: python-devel >= 2.2
69 %{?with_qt:BuildRequires: qt-devel >= %{qt_version}}
70 %{?with_python:BuildRequires: rpm-pythonprov}
71 BuildRequires: rpmbuild(macros) >= 1.268
72 BuildRequires: sed >= 4.0
75 BuildRequires: QtCore-devel >= 4.1
76 BuildRequires: QtTest-devel >= 4.1
77 BuildRequires: QtXml-devel >= 4.1
78 BuildRequires: qt4-build
80 Requires(post,postun): /sbin/ldconfig
81 Requires(post,preun): /sbin/chkconfig
82 Requires(postun): /usr/sbin/groupdel
83 Requires(postun): /usr/sbin/userdel
84 Requires(pre): /bin/id
85 Requires(pre): /usr/bin/getgid
86 Requires(pre): /usr/sbin/groupadd
87 Requires(pre): /usr/sbin/useradd
88 Requires: %{name}-libs = %{version}-%{release}
90 Provides: group(messagebus)
91 Provides: user(messagebus)
93 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
96 D-BUS is a system for sending messages between applications. It is
97 used both for the systemwide message bus service, and as a
98 per-user-login-session messaging facility.
101 D-BUS to system przesy³ania komunikatów pomiêdzy aplikacjami. Jest
102 u¿ywany zarówno jako ogólnosystemowa us³uga magistrali komunikatów jak
103 i mo¿liwo¶æ przesy³ania komunikatów w ramach jednej sesji u¿ytkownika.
106 Summary: Header files for D-BUS
107 Summary(pl): Pliki nag³ówkowe D-BUS
108 Group: Development/Libraries
109 Requires: %{name}-libs = %{version}-%{release}
112 Header files for D-BUS.
114 %description devel -l pl
115 Pliki nag³ówkowe D-BUS.
118 Summary: D-BUS libraries
119 Summary(pl): Biblioteki D-BUS
125 %description libs -l pl
129 Summary: Static D-BUS libraries
130 Summary(pl): Statyczne biblioteki D-BUS
131 Group: Development/Libraries
132 Requires: %{name}-devel = %{version}-%{release}
135 Static D-BUS libraries.
137 %description static -l pl
138 Statyczne biblioteki D-BUS.
141 Summary: GLib-based library for using D-BUS
142 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o GLib
144 Requires: %{name}-libs = %{version}-%{release}
145 Requires: glib2 >= %{glib2_version}
148 D-BUS add-on library to integrate the standard D-BUS library with the
149 GLib thread abstraction and main loop.
151 %description glib -l pl
152 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
153 z abstrakcj± w±tków i g³ówn± pêtl± GLib.
156 Summary: Header files for GLib-based library for using D-BUS
157 Summary(pl): Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o GLib
158 Group: Development/Libraries
159 Requires: %{name}-devel = %{version}-%{release}
160 Requires: %{name}-glib = %{version}-%{release}
161 Requires: glib2-devel >= %{glib2_version}
163 %description glib-devel
164 Header files for GLib-based library for using D-BUS.
166 %description glib-devel -l pl
167 Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o GLib.
170 Summary: Static GLib-based library for using D-BUS
171 Summary(pl): Statyczna biblioteka do u¿ywania D-BUS oparta o GLib
172 Group: Development/Libraries
173 Requires: %{name}-glib-devel = %{version}-%{release}
175 %description glib-static
176 Static GLib-based library for using D-BUS.
178 %description glib-static -l pl
179 Statyczna biblioteka do u¿ywania D-BUS oparta o GLib.
182 Summary: GLib-based tools for D-BUS
183 Summary(pl): Narzêdzia dla D-BUS oparte o GLib
185 Requires: %{name} = %{version}-%{release}
186 Requires: %{name}-glib = %{version}-%{release}
188 %description glib-tools
189 GLib-based tools for D-BUS.
191 %description glib-tools -l pl
192 Narzêdzia dla D-BUS oparte o GLib
195 Summary: GTK+-based graphical D-BUS frontend utility
196 Summary(pl): Oparte na GTK+ graficzne narzêdzie do D-BUS
197 Group: X11/Applications
198 Requires: %{name} = %{version}-%{release}
199 Requires: %{name}-glib = %{version}-%{release}
202 GTK+-based graphical D-BUS frontend utility.
204 %description gtk -l pl
205 Oparte na GTK+ graficzne narzêdzie do D-BUS.
207 %package -n dotnet-%{name}-sharp
208 Summary: .NET library for using D-BUS
209 Summary(pl): Biblioteka .NET do u¿ywania D-BUS
210 Group: Development/Libraries
211 Requires: %{name}-libs = %{version}-%{release}
212 Requires: mono >= 1.1.7
214 %description -n dotnet-%{name}-sharp
215 .NET library for using D-BUS.
217 %description -n dotnet-%{name}-sharp -l pl
218 Biblioteka .NET do u¿ywania D-BUS.
220 %package -n dotnet-%{name}-sharp-devel
221 Summary: .NET library for using D-BUS with API documentation
222 Summary(pl): Biblioteka .NET do u¿ywania D-BUS, zawiera dokumentacjê API
223 Group: Development/Libraries
224 Requires: dotnet-%{name}-sharp = %{version}-%{release}
226 %description -n dotnet-%{name}-sharp-devel
227 .NET library for using D-BUS, with API documentation.
229 %description -n dotnet-%{name}-sharp-devel -l pl
230 Biblioteka .NET do u¿ywania D-BUS, zawiera dokumentacjê API.
233 Summary: Qt-based library for using D-BUS
234 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o Qt
236 Requires: %{name}-libs = %{version}-%{release}
239 D-BUS add-on library to integrate the standard D-BUS library with the
240 Qt thread abstraction and main loop.
242 %description qt -l pl
243 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
244 z abstrakcj± w±tków i g³ówn± pêtl± Qt.
247 Summary: Header files for Qt-based library for using D-BUS
248 Summary(pl): Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Qt
249 Group: Development/Libraries
250 Requires: %{name}-devel = %{version}-%{release}
251 Requires: %{name}-qt = %{version}-%{release}
253 %description qt-devel
254 Header files for Qt-based library for using D-BUS.
256 %description qt-devel -l pl
257 Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Qt.
260 Summary: Static Qt-based library for using D-BUS
261 Summary(pl): Statyczna biblioteka do u¿ywania D-BUS oparta o Qt
262 Group: Development/Libraries
263 Requires: %{name}-qt-devel = %{version}-%{release}
265 %description qt-static
266 Static Qt-based library for using D-BUS.
268 %description qt-static -l pl
269 Statyczna biblioteka do u¿ywania D-BUS oparta o Qt.
272 Summary: Java library for using D-BUS
273 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o Javê
275 Requires: %{name} = %{version}-%{release}
278 D-BUS add-on library to integrate the standard D-BUS library with
281 %description gcj -l pl
282 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
286 Summary: Header files for Java-based library for using D-BUS
287 Summary(pl): Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Javê
288 Group: Development/Libraries
289 Requires: %{name}-gcj = %{version}-%{release}
291 %description gcj-devel
292 Header files for Java-based library for using D-BUS.
294 %description gcj-devel -l pl
295 Pliki nag³ówkowe biblioteki do u¿ywania D-BUS opartej o Javê.
298 Summary: Static Java-based library for using D-BUS
299 Summary(pl): Statyczna biblioteka do u¿ywania D-BUS oparta o Javê
300 Group: Development/Libraries
301 Requires: %{name}-gcj-devel = %{version}-%{release}
303 %description gcj-static
304 Static Java-based library for using D-BUS.
306 %description gcj-static -l pl
307 Statyczna biblioteka do u¿ywania D-BUS oparta o Javê.
309 %package -n python-dbus
310 Summary: Python library for using D-BUS
311 Summary(pl): Biblioteka do u¿ywania D-BUS oparta o Pythona
313 Requires: %{name}-libs = %{version}-%{release}
314 %pyrequires_eq python
315 Requires: python-libxml2
317 %description -n python-dbus
318 D-BUS add-on library to integrate the standard D-BUS library with
321 %description -n python-dbus -l pl
322 Dodatkowa biblioteka D-BUS do integracji standardowej biblioteki D-BUS
333 sed -i -e 's/DBUS_QT3_LIBS=.*/DBUS_QT3_LIBS="-lqt-mt"/' configure.in
335 # don't build dotnet-gtk-sharp based examples
336 # (depends on old gtk-sharp)
337 sed -i -e 's/example//' mono/Makefile.am
345 LDFLAGS="%{rpmldflags} -Wl,--as-needed"
347 GCJFLAGS="%{rpmcflags}" \
349 %{?debug:--enable-verbose-mode} \
350 %{?with_dotnet:--enable-mono} \
351 %{?with_dotnet:--enable-mono-docs} \
352 %{!?with_gcj:--disable-gcj} \
353 %{?with_gcj:--enable-gcj} \
354 %{!?with_glib:--disable-glib} \
355 %{!?with_gtk:--disable-gtk} \
356 %{!?with_python:--disable-python} \
357 %{?with_qt:--enable-qt3 --with-qt3-moc=/usr/bin/moc} \
358 %{?with_qt4:--enable-qt --with-qt-moc=%{_libdir}/qt4/bin/moc}%{!?with_qt4:--with-qt-moc=/NOWHERE} \
361 --enable-abstract-sockets \
363 --with-console-auth-dir=%{_localstatedir}/lock/console/ \
364 --with-session-socket-dir=/tmp \
365 --with-system-pid-file=%{_localstatedir}/run/dbus.pid \
369 pythondir=%{py_sitedir}
372 rm -rf $RPM_BUILD_ROOT
373 install -d $RPM_BUILD_ROOT/etc/profile.d
374 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
375 install -d $RPM_BUILD_ROOT/etc/sysconfig
376 install -d $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d
377 install -d $RPM_BUILD_ROOT%{_datadir}/dbus-1/services
378 install -d $RPM_BUILD_ROOT%{_localstatedir}/run/dbus
381 DESTDIR=$RPM_BUILD_ROOT \
383 pythondir=%{py_sitedir}
385 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/messagebus
386 install %{SOURCE2} $RPM_BUILD_ROOT/etc/profile.d/dbus-daemon-1.sh
387 install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/dbus
388 install %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d
391 rm -f $RPM_BUILD_ROOT%{py_sitedir}/%{name}/*.{py,la,a}
395 rm -rf $RPM_BUILD_ROOT
398 %groupadd -g 122 messagebus
399 %useradd -u 122 -d /usr/share/empty -s /bin/false -c "System message bus" -g messagebus messagebus
402 /sbin/chkconfig --add messagebus
403 %service messagebus restart "D-Bus daemon"
406 if [ "$1" = "0" ];then
407 %service messagebus stop
408 /sbin/chkconfig --del messagebus
412 if [ "$1" = "0" ]; then
413 %userremove messagebus
414 %groupremove messagebus
417 %post libs -p /sbin/ldconfig
418 %postun libs -p /sbin/ldconfig
420 %post glib -p /sbin/ldconfig
421 %postun glib -p /sbin/ldconfig
423 %post qt -p /sbin/ldconfig
424 %postun qt -p /sbin/ldconfig
426 %post gcj -p /sbin/ldconfig
427 %postun gcj -p /sbin/ldconfig
430 %defattr(644,root,root,755)
431 %attr(755,root,root) %{_bindir}/dbus-cleanup-sockets
432 %attr(755,root,root) %{_bindir}/dbus-daemon
434 %attr(755,root,root) %{_bindir}/dbus-launch
435 %attr(755,root,root) %{_bindir}/dbus-send
436 %dir %{_sysconfdir}/dbus-1
437 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/dbus-1/*.conf
438 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/dbus
439 %attr(754,root,root) /etc/rc.d/init.d/*
440 %attr(755,root,root) /etc/profile.d/dbus-daemon-1.sh
441 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/*.sh
443 %dir %{_sysconfdir}/dbus-1/system.d
444 %dir %{_datadir}/dbus-1
445 %dir %{_datadir}/dbus-1/services
446 %dir %{_localstatedir}/run/dbus
447 %{_mandir}/man1/dbus-cleanup-sockets.1*
448 %{_mandir}/man1/dbus-daemon.1*
449 %{_mandir}/man1/dbus-launch.1*
450 %{_mandir}/man1/dbus-send.1*
453 %defattr(644,root,root,755)
454 %doc AUTHORS COPYING ChangeLog NEWS README doc/TODO
455 %attr(755,root,root) %{_libdir}/libdbus-1.so.*.*.*
456 %dir %{_libdir}/dbus-*
459 %defattr(644,root,root,755)
460 %doc doc/*.{html,txt}
461 %attr(755,root,root) %{_libdir}/libdbus-1.so
462 %{_libdir}/libdbus-1.la
463 %{_libdir}/dbus-*/include
464 %{_pkgconfigdir}/dbus-1.pc
466 %{?with_glib:%exclude %{_includedir}/dbus*/dbus/dbus-glib*.h}
467 %{?with_qt:%exclude %{_includedir}/dbus*/dbus/dbus-qt.h}
470 %defattr(644,root,root,755)
471 %{_libdir}/libdbus-1.a
475 %defattr(644,root,root,755)
476 %attr(755,root,root) %{_libdir}/libdbus-glib-1.so.*.*.*
479 %defattr(644,root,root,755)
480 %attr(755,root,root) %{_bindir}/dbus-binding-tool
481 %attr(755,root,root) %{_libdir}/libdbus-glib-1.so
482 %{_libdir}/libdbus-glib-1.la
483 %{_includedir}/dbus*/dbus/dbus-glib*.h
484 %{_pkgconfigdir}/dbus-glib-1.pc
487 %defattr(644,root,root,755)
488 %{_libdir}/libdbus-glib-1.a
491 %defattr(644,root,root,755)
492 %attr(755,root,root) %{_bindir}/dbus-monitor
493 %{_mandir}/man1/dbus-monitor.1*
498 %defattr(644,root,root,755)
499 %attr(755,root,root) %{_bindir}/dbus-viewer
503 %files -n dotnet-%{name}-sharp
504 %defattr(644,root,root,755)
505 %{_prefix}/lib/mono/gac/dbus-sharp
507 %files -n dotnet-%{name}-sharp-devel
508 %defattr(644,root,root,755)
509 %{_prefix}/lib/mono/dbus-sharp
510 %{_libdir}/monodoc/sources/*
511 %{_pkgconfigdir}/dbus-sharp.pc
516 %defattr(644,root,root,755)
517 %attr(755,root,root) %{_libdir}/libdbus-qt-1.so.*.*.*
520 %defattr(644,root,root,755)
521 %attr(755,root,root) %{_libdir}/libdbus-qt-1.so
522 %{_libdir}/libdbus-qt-1.la
523 %{_includedir}/dbus*/dbus/dbus-qt.h
526 %defattr(644,root,root,755)
527 %{_libdir}/libdbus-qt-1.a
532 %defattr(644,root,root,755)
533 %attr(755,root,root) %{_libdir}/lib*gcj*.so.*.*.*
536 %defattr(644,root,root,755)
537 %attr(755,root,root) %{_libdir}/lib*gcj*.so
538 %{_libdir}/lib*gcj*.la
539 %{_datadir}/java/*.jar
542 %defattr(644,root,root,755)
543 %{_libdir}/lib*gcj*.a
547 %files -n python-dbus
548 %defattr(644,root,root,755)
549 %dir %{py_sitedir}/%{name}
550 %attr(755,root,root) %{py_sitedir}/%{name}/*.so
551 %{py_sitedir}/dbus.pth
552 %{py_sitedir}/%{name}/*.py[co]