[dbus/f17] 1:1.4.10-7

Rex Dieter rdieter at fedoraproject.org
Wed Nov 14 21:20:33 UTC 2012


commit 6072d5da51be942f799cd71b2cb7b5ca3d3a423a
Author: Rex Dieter <rdieter at fedoraproject.org>
Date:   Wed Nov 14 15:20:14 2012 -0600

    1:1.4.10-7
    
    - dbus-protocol.h is incompatible with C++11 compilers (#856131, fdo#46147)
    - tighten %files
    - %changelog: fix typos
    - %build: make verbose, use %_smp_mflags

 dbus-c++-11.patch |   34 ++++++++++++++++++++++++++++++++++
 dbus.spec         |   30 +++++++++++++++++++++---------
 2 files changed, 55 insertions(+), 9 deletions(-)
---
diff --git a/dbus-c++-11.patch b/dbus-c++-11.patch
new file mode 100644
index 0000000..38ab7e2
--- /dev/null
+++ b/dbus-c++-11.patch
@@ -0,0 +1,34 @@
+From a942d1543f4d87db821c5836986129dea79a173d Mon Sep 17 00:00:00 2001
+From: Marc Mutz <marc.mutz at kdab.com>
+Date: Thu, 16 Feb 2012 08:43:40 +0100
+Subject: [PATCH] dbus-protocol.h: compile under C++11
+
+C++11 compilers have a feature called 'user-defined string literals' which
+allow arbitrary string suffixes to have user-defined meaning.
+
+This makes code that concatenates macros with string literals without
+intervening whitespace illegal under C++11. Fortunately, string literal
+concatenation has allowed intervening whitespace since the dawn of time,
+so the solution is to simply pad with spaces.
+
+Tested (header) with GCC 4.7 (trunk).
+---
+ dbus/dbus-protocol.h |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/dbus/dbus-protocol.h b/dbus/dbus-protocol.h
+index 8aa15e5..60605ab 100644
+--- a/dbus/dbus-protocol.h
++++ b/dbus/dbus-protocol.h
+@@ -456,7 +456,7 @@ extern "C" {
+ /** XML system identifier of the introspection format version 1.0 */
+ #define DBUS_INTROSPECT_1_0_XML_SYSTEM_IDENTIFIER "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"
+ /** XML document type declaration of the introspection format version 1.0 */
+-#define DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE "<!DOCTYPE node PUBLIC \""DBUS_INTROSPECT_1_0_XML_PUBLIC_IDENTIFIER"\"\n\""DBUS_INTROSPECT_1_0_XML_SYSTEM_IDENTIFIER"\">\n"
++#define DBUS_INTROSPECT_1_0_XML_DOCTYPE_DECL_NODE "<!DOCTYPE node PUBLIC \"" DBUS_INTROSPECT_1_0_XML_PUBLIC_IDENTIFIER "\"\n\"" DBUS_INTROSPECT_1_0_XML_SYSTEM_IDENTIFIER "\">\n"
+ 
+ /** @} */
+ 
+-- 
+1.7.2.3
+
diff --git a/dbus.spec b/dbus.spec
index efcf72f..509028c 100644
--- a/dbus.spec
+++ b/dbus.spec
@@ -10,7 +10,7 @@ Summary: D-BUS message bus
 Name: dbus
 Epoch: 1
 Version: 1.4.10
-Release: 6%{?dist}
+Release: 7%{?dist}
 URL: http://www.freedesktop.org/software/dbus/
 #VCS: git:git://git.freedesktop.org/git/dbus/dbus
 Source0: http://dbus.freedesktop.org/releases/dbus/%{name}-%{version}.tar.gz
@@ -45,6 +45,11 @@ Conflicts: cups < 1:1.1.20-4
 Patch0: bindir.patch
 # CVE-2012-3524
 Patch1: 0001-CVE-2012-3524-Don-t-access-environment-variables-or-.patch
+# dbus-protocol.h is incompatible with C++11 compilers
+# https://bugzilla.redhat.com/856131
+# https://bugs.freedesktop.org/show_bug.cgi?id=46147
+Patch2: dbus-c++-11.patch
+
 
 %description
 D-BUS is a system for sending messages between applications. It is
@@ -97,6 +102,7 @@ in this separate package so server systems need not install X.
 
 %patch0 -p1 -b .bindir
 %patch1 -p1
+%patch2 -p1 -b .dbus_c++-11
 
 autoreconf -f -i
 
@@ -106,7 +112,7 @@ COMMON_ARGS="--enable-libaudit --enable-selinux=yes --with-init-scripts=redhat -
 # leave verbose mode so people can debug their apps but make sure to
 # turn it off on stable releases with --disable-verbose-mode
 %configure $COMMON_ARGS --disable-tests --disable-asserts --enable-doxygen-docs --enable-xml-docs --with-systemdsystemunitdir=/lib/systemd/system/
-make
+make %{?_smp_mflags} V=1
 
 %install
 rm -rf %{buildroot}
@@ -206,7 +212,7 @@ fi
 
 %files libs
 %defattr(-,root,root,-)
-/%{_lib}/*dbus-1*.so.*
+/%{_lib}/libdbus-1.so.3*
 
 %files x11
 %defattr(-,root,root)
@@ -218,22 +224,28 @@ fi
 %files doc
 %defattr(-,root,root)
 %doc doc/introspect.dtd doc/introspect.xsl doc/system-activation.txt
-%doc %{_datadir}/doc/dbus/api
+%doc %{_datadir}/doc/dbus/
 
 %files devel
 %defattr(-,root,root)
 
-/%{_lib}/lib*.so
-%dir %{_libdir}/dbus-1.0
+/%{_lib}/libdbus-1.so
+%dir %{_libdir}/dbus-1.0/
 %{_libdir}/dbus-1.0/include/
 %{_libdir}/pkgconfig/dbus-1.pc
-%{_includedir}/*
+%{_includedir}/dbus-1.0/
 
 %changelog
-* Thu Oct  4 2012 Peter Robinson <pbrobinson at fedoraproject.org> - 1:1.4.0-6
+* Wed Nov 14 2012 Rex Dieter <rdieter at fedoraproject.org> - 1:1.4.10-7
+- dbus-protocol.h is incompatible with C++11 compilers (#856131, fdo#46147)
+- tighten %%files
+- %%changelog: fix typos
+- %%build: make verbose, use %%_smp_mflags
+
+* Thu Oct  4 2012 Peter Robinson <pbrobinson at fedoraproject.org> - 1:1.4.10-6
 - Fix missing run time directory
 
-* Thu Sep 13 2012 Colin Walters <walters at verbum.org> - 1:1.4.0-5
+* Thu Sep 13 2012 Colin Walters <walters at verbum.org> - 1:1.4.10-5
 - CVE-2012-3524
 
 * Fri Jan 13 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1:1.4.10-4


More information about the scm-commits mailing list