diff --git a/contrib/src/dbus-cpp/SHA512SUMS b/contrib/src/dbus-cpp/SHA512SUMS new file mode 100644 index 0000000000000000000000000000000000000000..71776c48cc5e7c365334823860b83f91705a17ab --- /dev/null +++ b/contrib/src/dbus-cpp/SHA512SUMS @@ -0,0 +1 @@ +7acebbb4254b2886cc0f05c5ddeeeac0b5863c5552d32249463b89380b0b95b8225c80bd98b8c7fcaada42ab770b5eff41b15390cd0d78bf1ee322ac6c2de319 libdbus-c++-0.9.0.tar.gz diff --git a/contrib/src/dbus-cpp/dbus-c++-gcc4.7.patch b/contrib/src/dbus-cpp/dbus-c++-gcc4.7.patch new file mode 100644 index 0000000000000000000000000000000000000000..5cb8096b9a0f625b772c4defca3b44b503e9e53f --- /dev/null +++ b/contrib/src/dbus-cpp/dbus-c++-gcc4.7.patch @@ -0,0 +1,12 @@ +diff --git a/include/dbus-c++/eventloop-integration.h b/include/dbus-c++/eventloop-integration.h +index 1b0302e..3e44304 100644 +--- a/include/dbus-c++/eventloop-integration.h ++++ b/include/dbus-c++/eventloop-integration.h +@@ -26,6 +26,7 @@ + #define __DBUSXX_EVENTLOOP_INTEGRATION_H + + #include <errno.h> ++#include <unistd.h> + #include "api.h" + #include "dispatcher.h" + #include "util.h" diff --git a/contrib/src/dbus-cpp/dbus-c++-threading.patch b/contrib/src/dbus-cpp/dbus-c++-threading.patch new file mode 100644 index 0000000000000000000000000000000000000000..c4fafef6270ae902c8499968c9002385238c1bc5 --- /dev/null +++ b/contrib/src/dbus-cpp/dbus-c++-threading.patch @@ -0,0 +1,45 @@ +--- libdbus-c++-0.9.0/include/dbus-c++/dispatcher.h.threading 2017-02-15 13:40:53.796004263 +0000 ++++ libdbus-c++-0.9.0/include/dbus-c++/dispatcher.h 2017-02-15 13:40:46.907000493 +0000 +@@ -188,6 +188,7 @@ + /* classes for multithreading support + */ + ++#if 0 + class DXXAPI Mutex + { + public: +@@ -243,9 +244,11 @@ + typedef bool (*CondVarWaitTimeoutFn)(CondVar *cv, Mutex *mx, int timeout); + typedef void (*CondVarWakeOneFn)(CondVar *cv); + typedef void (*CondVarWakeAllFn)(CondVar *cv); ++#endif + + void DXXAPI _init_threading(); + ++#if 0 + void DXXAPI _init_threading( + MutexNewFn, MutexFreeFn, MutexLockFn, MutexUnlockFn, + CondVarNewFn, CondVarFreeFn, CondVarWaitFn, CondVarWaitTimeoutFn, CondVarWakeOneFn, CondVarWakeAllFn +@@ -312,6 +315,7 @@ + cv->wake_all(); + } + }; ++#endif + + } /* namespace DBus */ + +--- libdbus-c++-0.9.0/src/dispatcher.cpp.threading 2017-02-15 13:48:22.627249868 +0000 ++++ libdbus-c++-0.9.0/src/dispatcher.cpp 2017-02-15 13:48:29.164253445 +0000 +@@ -253,6 +253,7 @@ + #endif//DBUS_HAS_THREADS_INIT_DEFAULT + } + ++#if 0 + void DBus::_init_threading( + MutexNewFn m1, + MutexFreeFn m2, +@@ -318,3 +319,4 @@ + #endif//DBUS_HAS_RECURSIVE_MUTEX + dbus_threads_init(&functions); + } ++#endif diff --git a/contrib/src/dbus-cpp/dbus-c++-writechar.patch b/contrib/src/dbus-cpp/dbus-c++-writechar.patch new file mode 100644 index 0000000000000000000000000000000000000000..d936b7fc172d6866cea53f2923425a571f78d0a2 --- /dev/null +++ b/contrib/src/dbus-cpp/dbus-c++-writechar.patch @@ -0,0 +1,9 @@ +--- libdbus-c++-0.9.0/src/pipe.cpp.writechar 2017-02-16 11:07:13.591950169 +0000 ++++ libdbus-c++-0.9.0/src/pipe.cpp 2017-02-16 11:04:17.158796092 +0000 +@@ -83,5 +83,5 @@ + void Pipe::signal() + { + // TODO: ignoring return of read/write generates warning; maybe relevant for eventloop work... +- ::write(_fd_write, '\0', 1); ++ ::write(_fd_write, "", 1); + } diff --git a/contrib/src/dbus-cpp/rules.mak b/contrib/src/dbus-cpp/rules.mak new file mode 100644 index 0000000000000000000000000000000000000000..1f5316e17855705baa7c6e91fe40c745da31262d --- /dev/null +++ b/contrib/src/dbus-cpp/rules.mak @@ -0,0 +1,33 @@ +# DBus-C++ + +DBUS_CPP_VERSION := 0.9.0 +DBUS_CPP_URL := ${SF}/dbus-cplusplus/files/dbus-c%2B%2B/${DBUS_CPP_VERSION}/libdbus-c%2B%2B-${DBUS_CPP_VERSION}.tar.gz/download + +ifdef HAVE_LINUX +ifndef HAVE_ANDROID +PKGS += dbus-cpp +endif +endif + +# Package forced as bugged on GCC7 +#ifeq ($(call need_pkg,"dbus-c++-1 >= 0.9.0"),) +#PKGS_FOUND += dbus-cpp +#endif + +$(TARBALLS)/libdbus-c++-${DBUS_CPP_VERSION}.tar.gz: + $(call download,$(DBUS_CPP_URL)) + +.sum-dbus-cpp: $(TARBALLS)/libdbus-c++-${DBUS_CPP_VERSION}.tar.gz + +dbus-cpp: $(TARBALLS)/libdbus-c++-${DBUS_CPP_VERSION}.tar.gz .sum-dbus-cpp + $(UNPACK) + $(APPLY) $(SRC)/dbus-cpp/dbus-c++-threading.patch + $(APPLY) $(SRC)/dbus-cpp/dbus-c++-writechar.patch + $(APPLY) $(SRC)/dbus-cpp/dbus-c++-gcc4.7.patch + $(UPDATE_AUTOCONFIG) + $(MOVE) + +.dbus-cpp: dbus-cpp + cd $< && $(HOSTVARS) ./configure $(HOSTCONF) --disable-ecore --disable-glib --disable-tests --disable-examples + cd $< && $(MAKE) install + touch $@