diff --git a/x11/libdbus-c++/Makefile b/x11/libdbus-c++/Makefile index 20972ab8f2e..b61433f1fb5 100644 --- a/x11/libdbus-c++/Makefile +++ b/x11/libdbus-c++/Makefile @@ -1,10 +1,14 @@ -# $OpenBSD: Makefile,v 1.3 2019/07/12 20:51:15 sthen Exp $ +# $OpenBSD: Makefile,v 1.4 2020/04/09 13:26:13 jca Exp $ COMMENT = C++ API for dbus DISTNAME = libdbus-c++-0.9.0 -SHARED_LIBS = dbus-c++-1 0.0 \ +REVISION = 0 + +SHARED_LIBS = dbus-c++-1 0.1 \ dbus-c++-glib-1 0.0 + CATEGORIES = x11 devel + HOMEPAGE = http://dbus-cplusplus.sourceforge.net/ # LGPLv2.1+ diff --git a/x11/libdbus-c++/patches/patch-include_dbus-c++_types_h b/x11/libdbus-c++/patches/patch-include_dbus-c++_types_h index 7364043591c..3413e7b54d0 100644 --- a/x11/libdbus-c++/patches/patch-include_dbus-c++_types_h +++ b/x11/libdbus-c++/patches/patch-include_dbus-c++_types_h @@ -1,21 +1,57 @@ -$OpenBSD: patch-include_dbus-c++_types_h,v 1.1.1.1 2019/03/13 10:52:51 stsp Exp $ +$OpenBSD: patch-include_dbus-c++_types_h,v 1.2 2020/04/09 13:26:13 jca Exp $ + Fix build failure due to symbols not being declared in the DBus namespace. +https://github.com/andreas-volz/dbus-cplusplus/commit/a0b9ef3b469ca23c6a3229d8abb967cbbddcee38 + Index: include/dbus-c++/types.h --- include/dbus-c++/types.h.orig +++ include/dbus-c++/types.h -@@ -316,8 +316,6 @@ struct type< Struct +- operator T() const +- { +- T cast; +- MessageIter ri = _msg.reader(); +- ri >> cast; +- return cast; +- } ++ operator T() const; + + private: + +@@ -316,7 +310,7 @@ struct type< Struct> (DBus::MessageIt +@@ -551,6 +545,8 @@ inline DBus::MessageIter &operator >> (DBus::MessageIt + return ++iter; } - extern DXXAPI DBus::MessageIter &operator >> (DBus::MessageIter &iter, DBus::Variant &val); ++extern DXXAPI DBus::MessageIter &operator >> (DBus::MessageIter &iter, DBus::Variant &val); ++ + template + inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, std::vector& val) + { +@@ -644,7 +640,16 @@ inline DBus::MessageIter &operator >> (DBus::MessageIt + return ++iter; + } + +-extern DXXAPI DBus::MessageIter &operator >> (DBus::MessageIter &iter, DBus::Variant &val); ++template ++inline DBus::Variant::operator T() const ++{ ++ T cast; ++ DBus::MessageIter ri = _msg.reader(); ++ ri >> cast; ++ return cast; ++} + +} /* namespace DBus */ diff --git a/x11/libdbus-c++/patches/patch-src_types_cpp b/x11/libdbus-c++/patches/patch-src_types_cpp new file mode 100644 index 00000000000..e4211fdaa5a --- /dev/null +++ b/x11/libdbus-c++/patches/patch-src_types_cpp @@ -0,0 +1,22 @@ +$OpenBSD: patch-src_types_cpp,v 1.1 2020/04/09 13:26:13 jca Exp $ + +Fix build failure due to symbols not being declared in the DBus namespace. +https://github.com/andreas-volz/dbus-cplusplus/commit/a0b9ef3b469ca23c6a3229d8abb967cbbddcee38 + +Index: src/types.cpp +--- src/types.cpp.orig ++++ src/types.cpp +@@ -34,7 +34,7 @@ + #include "message_p.h" + #include "internalerror.h" + +-using namespace DBus; ++namespace DBus { + + Variant::Variant() + : _msg(CallMessage()) // dummy message used as temporary storage for variant data +@@ -104,3 +104,4 @@ MessageIter &operator >> (MessageIter &iter, Variant & + return ++iter; + } + ++} /* namespace DBus */