* [Buildroot] [PATCH] dbus-cpp: new package
@ 2013-12-26 15:00 Gustavo Zacarias
2013-12-26 15:24 ` Thomas Petazzoni
0 siblings, 1 reply; 4+ messages in thread
From: Gustavo Zacarias @ 2013-12-26 15:00 UTC (permalink / raw)
To: buildroot
D-Bus C++ bindings, closes bug #65.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
---
package/Config.in | 1 +
package/dbus-cpp/Config.in | 18 +++++++++++++++
package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch | 17 ++++++++++++++
package/dbus-cpp/dbus-cpp.mk | 36 +++++++++++++++++++++++++++++
4 files changed, 72 insertions(+)
create mode 100644 package/dbus-cpp/Config.in
create mode 100644 package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch
create mode 100644 package/dbus-cpp/dbus-cpp.mk
diff --git a/package/Config.in b/package/Config.in
index 9bffb02..d1769f4 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -262,6 +262,7 @@ source "package/acpid/Config.in"
source "package/cdrkit/Config.in"
source "package/cryptsetup/Config.in"
source "package/dbus/Config.in"
+source "package/dbus-cpp/Config.in"
source "package/dbus-glib/Config.in"
source "package/dbus-python/Config.in"
if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
diff --git a/package/dbus-cpp/Config.in b/package/dbus-cpp/Config.in
new file mode 100644
index 0000000..f631ece
--- /dev/null
+++ b/package/dbus-cpp/Config.in
@@ -0,0 +1,18 @@
+config BR2_PACKAGE_DBUS_CPP
+ bool "dbus-c++"
+ depends on BR2_PACKAGE_DBUS
+ depends on BR2_TOOLCHAIN_HAS_THREADS # dbus
+ depends on BR2_USE_MMU # dbus
+ depends on BR2_INSTALL_LIBSTDCPP
+ select BR2_PACKAGE_EXPAT
+ help
+ dbus-c++ attempts to provide a C++ API for D-BUS.
+ The library has a glib/gtk and an Ecore mainloop integration.
+ It also offers an optional own main loop.
+
+ http://sourceforge.net/projects/dbus-cplusplus/
+
+comment "dbus-c++ needs a toolchain w/ C++, threads"
+ depends on BR2_USE_MMU
+ depends on BR2_PACKAGE_DBUS
+ depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch b/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch
new file mode 100644
index 0000000..ad3046c
--- /dev/null
+++ b/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch
@@ -0,0 +1,17 @@
+Fix build failure with gcc 4.7+
+From bugtracker: http://sourceforge.net/p/dbus-cplusplus/patches/13/
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+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/package/dbus-cpp/dbus-cpp.mk b/package/dbus-cpp/dbus-cpp.mk
new file mode 100644
index 0000000..7936abd
--- /dev/null
+++ b/package/dbus-cpp/dbus-cpp.mk
@@ -0,0 +1,36 @@
+################################################################################
+#
+# dbus-c++
+#
+################################################################################
+
+DBUS_CPP_VERSION = 0.9.0
+DBUS_CPP_SITE = http://downloads.sourceforge.net/project/dbus-cplusplus/dbus-c++/$(DBUS_CPP_VERSION)
+DBUS_CPP_SOURCE = libdbus-c++-$(DBUS_CPP_VERSION).tar.gz
+DBUS_CPP_INSTALL_STAGING = YES
+# expat is required for the tools irrespective of dbus xml backend
+DBUS_CPP_DEPENDENCIES = host-dbus-cpp host-pkgconf dbus expat
+HOST_DBUS_CPP_DEPENDENCIES = host-pkgconf host-dbus host-expat
+DBUS_CPP_CONF_OPT = --disable-examples --disable-tests --disable-doxygen-docs \
+ --with-build-libdbus-cxx=$(HOST_DBUS_CPP_BUILDDIR)
+HOST_DBUS_CPP_CONF_OPT = --disable-examples --disable-tests \
+ --disable-doxygen-docs --disable-ecore --disable-glib
+DBUS_CPP_LICENSE = LGPLv2.1+
+DBUS_CPP_LICENSE_FILES = COPYING
+
+ifeq ($(BR2_PACKAGE_LIBECORE),y)
+ DBUS_CPP_CONF_OPT += --enable-ecore
+ DBUS_CPP_DEPENDENCIES += libecore
+else
+ DBUS_CPP_CONF_OPT += --disable-ecore
+endif
+
+ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
+ DBUS_CPP_CONF_OPT += --enable-glib
+ DBUS_CPP_DEPENDENCIES += libglib2
+else
+ DBUS_CPP_CONF_OPT += --disable-glib
+endif
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
--
1.8.3.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH] dbus-cpp: new package
2013-12-26 15:00 [Buildroot] [PATCH] dbus-cpp: new package Gustavo Zacarias
@ 2013-12-26 15:24 ` Thomas Petazzoni
2013-12-26 15:43 ` Gustavo Zacarias
0 siblings, 1 reply; 4+ messages in thread
From: Thomas Petazzoni @ 2013-12-26 15:24 UTC (permalink / raw)
To: buildroot
Dear Gustavo Zacarias,
On Thu, 26 Dec 2013 12:00:26 -0300, Gustavo Zacarias wrote:
> D-Bus C++ bindings, closes bug #65.
Wow, impressive, you even go to improvement bugs, and fix them!
> diff --git a/package/dbus-cpp/Config.in b/package/dbus-cpp/Config.in
> new file mode 100644
> index 0000000..f631ece
> --- /dev/null
> +++ b/package/dbus-cpp/Config.in
> @@ -0,0 +1,18 @@
> +config BR2_PACKAGE_DBUS_CPP
> + bool "dbus-c++"
> + depends on BR2_PACKAGE_DBUS
> + depends on BR2_TOOLCHAIN_HAS_THREADS # dbus
> + depends on BR2_USE_MMU # dbus
> + depends on BR2_INSTALL_LIBSTDCPP
> + select BR2_PACKAGE_EXPAT
> + help
> + dbus-c++ attempts to provide a C++ API for D-BUS.
> + The library has a glib/gtk and an Ecore mainloop integration.
> + It also offers an optional own main loop.
> +
> + http://sourceforge.net/projects/dbus-cplusplus/
> +
> +comment "dbus-c++ needs a toolchain w/ C++, threads"
> + depends on BR2_USE_MMU
> + depends on BR2_PACKAGE_DBUS
> + depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS
> diff --git a/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch b/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch
> new file mode 100644
> index 0000000..ad3046c
> --- /dev/null
> +++ b/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch
> @@ -0,0 +1,17 @@
> +Fix build failure with gcc 4.7+
> +From bugtracker: http://sourceforge.net/p/dbus-cplusplus/patches/13/
> +
> +Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
> +
> +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/package/dbus-cpp/dbus-cpp.mk b/package/dbus-cpp/dbus-cpp.mk
> new file mode 100644
> index 0000000..7936abd
> --- /dev/null
> +++ b/package/dbus-cpp/dbus-cpp.mk
> @@ -0,0 +1,36 @@
> +################################################################################
> +#
> +# dbus-c++
> +#
> +################################################################################
> +
> +DBUS_CPP_VERSION = 0.9.0
> +DBUS_CPP_SITE = http://downloads.sourceforge.net/project/dbus-cplusplus/dbus-c++/$(DBUS_CPP_VERSION)
> +DBUS_CPP_SOURCE = libdbus-c++-$(DBUS_CPP_VERSION).tar.gz
> +DBUS_CPP_INSTALL_STAGING = YES
> +# expat is required for the tools irrespective of dbus xml backend
> +DBUS_CPP_DEPENDENCIES = host-dbus-cpp host-pkgconf dbus expat
> +HOST_DBUS_CPP_DEPENDENCIES = host-pkgconf host-dbus host-expat
> +DBUS_CPP_CONF_OPT = --disable-examples --disable-tests --disable-doxygen-docs \
> + --with-build-libdbus-cxx=$(HOST_DBUS_CPP_BUILDDIR)
I'm not a big fan when building one package requires poking into the
source/build tree of another package (even if it's the host variant of
the same package). Installing the host dbus-cpp into $(HOST_DIR) isn't
sufficient to build the target dbus-cpp?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH] dbus-cpp: new package
2013-12-26 15:24 ` Thomas Petazzoni
@ 2013-12-26 15:43 ` Gustavo Zacarias
2014-01-05 10:24 ` Peter Korsgaard
0 siblings, 1 reply; 4+ messages in thread
From: Gustavo Zacarias @ 2013-12-26 15:43 UTC (permalink / raw)
To: buildroot
On 12/26/2013 12:24 PM, Thomas Petazzoni wrote:
> Dear Gustavo Zacarias,
>
> On Thu, 26 Dec 2013 12:00:26 -0300, Gustavo Zacarias wrote:
>> D-Bus C++ bindings, closes bug #65.
>
> Wow, impressive, you even go to improvement bugs, and fix them!
Yeah, that number was nagging me, a 2-digit when we are on 4-digit bugs :P
Some people want to lower the patchwork patch count, i also look at bugs ;)
> I'm not a big fan when building one package requires poking into the
> source/build tree of another package (even if it's the host variant of
> the same package). Installing the host dbus-cpp into $(HOST_DIR) isn't
> sufficient to build the target dbus-cpp?
Me neither, the problem is patching it (bin/lib separately, ditching the
src/.libs & other references) won't be upstreamable since the option is
right there now and i don't think upstream will want a variation on the
subject.
It's doable but not upstreamable i think, what do we prefer?
Regards.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH] dbus-cpp: new package
2013-12-26 15:43 ` Gustavo Zacarias
@ 2014-01-05 10:24 ` Peter Korsgaard
0 siblings, 0 replies; 4+ messages in thread
From: Peter Korsgaard @ 2014-01-05 10:24 UTC (permalink / raw)
To: buildroot
On Thu, Dec 26, 2013 at 4:43 PM, Gustavo Zacarias
<gustavo@zacarias.com.ar> wrote:
> Me neither, the problem is patching it (bin/lib separately, ditching the
> src/.libs & other references) won't be upstreamable since the option is
> right there now and i don't think upstream will want a variation on the
> subject.
> It's doable but not upstreamable i think, what do we prefer?
I think it is ok like this - Committed, thanks.
--
Bye, Peter Korsgaard
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2014-01-05 10:24 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-26 15:00 [Buildroot] [PATCH] dbus-cpp: new package Gustavo Zacarias
2013-12-26 15:24 ` Thomas Petazzoni
2013-12-26 15:43 ` Gustavo Zacarias
2014-01-05 10:24 ` Peter Korsgaard
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox