X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=dbus.spec;h=99096ceb5f1e0e7f3e163356d05ffc66ccfc11df;hb=8cc70fcc5f264b16fc887f790a0da13bdad4a365;hp=839e2727ee5bb759e27a20eff394a53680a7c081;hpb=6038bc621d141e4e7ae209de98af62ba7986bda8;p=packages%2Fdbus.git diff --git a/dbus.spec b/dbus.spec index 839e272..99096ce 100644 --- a/dbus.spec +++ b/dbus.spec @@ -1,44 +1,52 @@ +# TODO: +# - enable ducktype-docs when it works +# - move /etc/dbus-1 from -libs to base after external packages transition to /usr/share/dbus-1 # # Conditional build: -%bcond_without selinux # build without SELinux support -%bcond_without X11 # build without X11 support +%bcond_without apparmor # AppArmor support +%bcond_without selinux # SELinux support +%bcond_without systemd # systemd at_console support +%bcond_without X11 # X11 support %define expat_version 1:1.95.5 Summary: D-BUS message bus Summary(pl.UTF-8): Magistrala przesyłania komunikatów D-BUS Name: dbus -Version: 1.6.8 +Version: 1.10.24 Release: 1 License: AFL v2.1 or GPL v2 Group: Libraries -Source0: http://dbus.freedesktop.org/releases/dbus/%{name}-%{version}.tar.gz -# Source0-md5: 3bf059c7dd5eda5f539a1b7cfe7a14a2 +Source0: https://dbus.freedesktop.org/releases/dbus/%{name}-%{version}.tar.gz +# Source0-md5: d548ae16f9a3268fe4650ccc86a3f06f Source1: messagebus.init Source2: %{name}-daemon-1-profile.d-sh Source3: %{name}-sysconfig Source4: %{name}-xinitrc.sh -Source5: messagebus.upstart -Source6: %{name}.tmpfiles +Source5: %{name}.tmpfiles Patch0: %{name}-nolibs.patch Patch1: %{name}-config.patch Patch2: %{name}-no_fatal_checks.patch Patch3: %{name}-allow-introspection.patch -URL: http://www.freedesktop.org/Software/dbus +URL: https://www.freedesktop.org/Software/dbus BuildRequires: audit-libs-devel BuildRequires: autoconf >= 2.63 -BuildRequires: automake >= 1:1.10 +BuildRequires: automake >= 1:1.13 +BuildRequires: docbook-dtd44-xml BuildRequires: doxygen BuildRequires: expat-devel >= %{expat_version} +%{?with_apparmor:BuildRequires: libapparmor-devel >= 1:2.8.95} BuildRequires: libcap-ng-devel %{?with_selinux:BuildRequires: libselinux-devel} BuildRequires: libtool >= 2:2.0 BuildRequires: libxslt-progs BuildRequires: pkgconfig +#BuildRequires: python3-ducktype BuildRequires: rpmbuild(macros) >= 1.626 BuildRequires: sed >= 4.0 -BuildRequires: systemd-devel >= 32 +%{?with_systemd:BuildRequires: systemd-devel >= 32} BuildRequires: xmlto %{?with_X11:BuildRequires: xorg-lib-libX11-devel} +BuildRequires: yelp-tools Requires(post,postun): /sbin/ldconfig Requires(post,preun): /sbin/chkconfig Requires(postun): /usr/sbin/groupdel @@ -48,7 +56,6 @@ Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd Requires(post,preun,postun): systemd-units >= 38 -Requires: %{name}-dirs = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release} Requires: expat >= %{expat_version} Requires: rc-scripts >= 0.4.3.0 @@ -72,34 +79,12 @@ D-BUS to system przesyłania komunikatów pomiędzy aplikacjami. Jest używany zarówno jako ogólnosystemowa usługa magistrali komunikatów jak i możliwość przesyłania komunikatów w ramach jednej sesji użytkownika. -%package upstart -Summary: Upstart job description for system message bus -Summary(pl.UTF-8): Opis zadania Upstart dla magistrali systemowej DBus -Group: Daemons -Requires: %{name} = %{version}-%{release} -Requires: upstart >= 0.6 - -%description upstart -Upstart job description for system message bus. - -%description upstart -l pl.UTF-8 -Opis zadania Upstart dla magistrali systemowej DBus. - -%package dirs -Summary: D-BUS directories -Summary(pl.UTF-8): Katalogi D-BUS -Group: Libraries - -%description dirs -D-BUS directories. - -%description dirs -l pl.UTF-8 -Katalogi D-BUS. - %package libs Summary: D-BUS library Summary(pl.UTF-8): Biblioteka D-BUS Group: Libraries +%{?with_systemd:Requires: systemd-libs >= 32} +Obsoletes: dbus-dirs %description libs D-BUS library. @@ -112,6 +97,7 @@ Summary: Header files for D-BUS library Summary(pl.UTF-8): Pliki nagłówkowe biblioteki D-BUS Group: Development/Libraries Requires: %{name}-libs = %{version}-%{release} +%{?with_systemd:Requires: systemd-devel >= 32} %description devel Header files for D-BUS library. @@ -131,6 +117,22 @@ Static D-BUS library. %description static -l pl.UTF-8 Statyczna biblioteka D-BUS. +%package apidocs +Summary: D-BUS API documentation +Summary(pl.UTF-8): Dokumentacja API D-BUS +Group: Documentation +# dbus.devhelp refers also to common docs packaged in -devel +Requires: %{name}-devel = %{version}-%{release} +%if "%{_rpmversion}" >= "5" +BuildArch: noarch +%endif + +%description apidocs +D-BUS API documentation. + +%description apidocs -l pl.UTF-8 +Dokumentacja API D-BUS. + %package x11 Summary: X11 session support for D-BUS Summary(pl.UTF-8): Obsługa sesji X11 dla D-BUS @@ -160,28 +162,30 @@ D-BUS wraz z sesją X11 użytkownika. %{__autoheader} %{__automake} %configure \ - %{?debug:--enable-verbose-mode} \ + %{!?with_apparmor:--disable-apparmor} \ --disable-asserts \ + --disable-ducktype-docs \ + %{?debug:--enable-verbose-mode} \ + %{!?with_selinux:--disable-selinux} \ --disable-silent-rules \ + %{!?with_systemd:--disable-systemd} \ --disable-tests \ - --enable-abstract-sockets=auto \ - %{?with_selinux:--enable-selinux} \ + --enable-user-session \ --with-console-auth-dir=%{_localstatedir}/run/console/ \ --with-session-socket-dir=/tmp \ --with-system-pid-file=%{_localstatedir}/run/dbus.pid \ - --with-xml=expat \ --with-systemdsystemunitdir=%{systemdunitdir} \ %{!?with_X11:--without-x} %{__make} %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT/etc/{init,profile.d,rc.d/init.d,sysconfig,X11/xinit/xinitrc.d} \ +install -d $RPM_BUILD_ROOT%{_sysconfdir}/{profile.d,rc.d/init.d,sysconfig,X11/xinit/xinitrc.d} \ $RPM_BUILD_ROOT%{_datadir}/dbus-1/{services,interfaces} \ $RPM_BUILD_ROOT%{_localstatedir}/run/dbus \ $RPM_BUILD_ROOT%{_localstatedir}/lib/dbus \ $RPM_BUILD_ROOT/%{_lib} \ - $RPM_BUILD_ROOT/usr/lib/tmpfiles.d + $RPM_BUILD_ROOT%{systemdtmpfilesdir} %{__make} install \ DESTDIR=$RPM_BUILD_ROOT @@ -190,18 +194,13 @@ install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/messagebus install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/profile.d/dbus-daemon-1.sh cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/messagebus install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d -cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/init/messagebus.conf - -install %{SOURCE6} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf -# upstart (/sbin/init) requires libdbus so it must be in /lib(64) -mv -f $RPM_BUILD_ROOT%{_libdir}/libdbus-1.so.* $RPM_BUILD_ROOT/%{_lib} -ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libdbus-1.so.*.*.*) \ - $RPM_BUILD_ROOT%{_libdir}/libdbus-1.so +cp -p %{SOURCE5} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf ln -s dbus.service $RPM_BUILD_ROOT%{systemdunitdir}/messagebus.service -%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/dbus/api +# for local configuration in dbus 1.10+ +install -d $RPM_BUILD_ROOT/etc/dbus-1/{session.d,system.d} %clean rm -rf $RPM_BUILD_ROOT @@ -212,7 +211,7 @@ rm -rf $RPM_BUILD_ROOT %post /sbin/chkconfig --add messagebus -%service messagebus restart "D-Bus daemon" +%service -n messagebus restart "D-Bus daemon" export NORESTART="yes" %systemd_post messagebus.service @@ -239,14 +238,6 @@ elif [ -f /etc/sysconfig/dbus.rpmsave ]; then mv -f /etc/sysconfig/{dbus.rpmsave,messagebus} fi -%if 0 -%post upstart -%upstart_post messagebus - -%postun upstart -%upstart_postun messagebus -%endif - %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig @@ -256,24 +247,31 @@ fi %attr(755,root,root) %{_bindir}/dbus-daemon %attr(755,root,root) %{_bindir}/dbus-uuidgen %attr(755,root,root) %{_bindir}/dbus-monitor +%attr(755,root,root) %{_bindir}/dbus-run-session %attr(755,root,root) %{_bindir}/dbus-send +%attr(755,root,root) %{_bindir}/dbus-test-tool +%attr(755,root,root) %{_bindir}/dbus-update-activation-environment %attr(4754,root,messagebus) %{_libdir}/dbus-daemon-launch-helper -%dir %{_datadir}/dbus-1 -%dir %{_datadir}/dbus-1/interfaces %dir %{_datadir}/dbus-1/services %dir %{_datadir}/dbus-1/system-services -%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/*.conf +%{_datadir}/dbus-1/session.conf +%{_datadir}/dbus-1/system.conf +%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/session.conf +%config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.conf %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/messagebus %attr(754,root,root) /etc/rc.d/init.d/messagebus %attr(755,root,root) /etc/profile.d/dbus-daemon-1.sh -/usr/lib/tmpfiles.d/%{name}.conf +%{systemdtmpfilesdir}/%{name}.conf %dir %{_localstatedir}/lib/dbus %dir %{_localstatedir}/run/dbus %{_mandir}/man1/dbus-cleanup-sockets.1* %{_mandir}/man1/dbus-daemon.1* %{_mandir}/man1/dbus-uuidgen.1* %{_mandir}/man1/dbus-monitor.1* +%{_mandir}/man1/dbus-run-session.1* %{_mandir}/man1/dbus-send.1* +%{_mandir}/man1/dbus-test-tool.1* +%{_mandir}/man1/dbus-update-activation-environment.1* %{systemdunitdir}/dbus.service %{systemdunitdir}/dbus.socket @@ -281,39 +279,50 @@ fi %{systemdunitdir}/messagebus.service %{systemdunitdir}/multi-user.target.wants/dbus.service %{systemdunitdir}/sockets.target.wants/dbus.socket - -%if "%{pld_release}" != "ti" -%files upstart -%defattr(644,root,root,755) -%config(noreplace) %verify(not md5 mtime size) /etc/init/messagebus.conf -%endif - -%files dirs -%defattr(644,root,root,755) -%dir /etc/dbus-1 -%dir /etc/dbus-1/system.d -%dir /etc/dbus-1/session.d +%{systemduserunitdir}/dbus.service +%{systemduserunitdir}/dbus.socket +%{systemduserunitdir}/sockets.target.wants/dbus.socket %files libs %defattr(644,root,root,755) %doc AUTHORS COPYING ChangeLog NEWS README doc/TODO -%attr(755,root,root) /%{_lib}/libdbus-1.so.*.*.* -%attr(755,root,root) %ghost /%{_lib}/libdbus-1.so.3 +%attr(755,root,root) %{_libdir}/libdbus-1.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libdbus-1.so.3 +%dir %{_datadir}/dbus-1 +%dir %{_datadir}/dbus-1/session.d +%dir %{_datadir}/dbus-1/system.d +# interfaces is basically devel thing, but keep dir here +# in case something uses it at runtime +%dir %{_datadir}/dbus-1/interfaces +# TODO: now it's only for local configuration - move to base dbus package +# after all packages place constant configuration in %{_datadir}/dbus-1 +%dir /etc/dbus-1 +%dir /etc/dbus-1/session.d +%dir /etc/dbus-1/system.d %files devel %defattr(644,root,root,755) -%doc doc/*.{html,txt} %attr(755,root,root) %{_libdir}/libdbus-1.so %{_libdir}/libdbus-1.la %dir %{_libdir}/dbus-1.0 %{_libdir}/dbus-1.0/include %{_includedir}/dbus-1.0 %{_pkgconfigdir}/dbus-1.pc +%dir %{_docdir}/dbus +%{_docdir}/dbus/*.html +%{_docdir}/dbus/*.png +%{_docdir}/dbus/*.svg +%{_docdir}/dbus/*.txt %files static %defattr(644,root,root,755) %{_libdir}/libdbus-1.a +%files apidocs +%defattr(644,root,root,755) +%{_docdir}/dbus/api +%{_docdir}/dbus/dbus.devhelp + %files x11 %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/dbus-launch