summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@ossystems.com.br>2011-12-08 18:30:52 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-12-09 17:46:25 +0000
commit4215b2fb04b3ed61e8e1cf0847639cf6fe31d337 (patch)
tree33f5a233a644c48c2b649f03d02db869d3ec523d
parent154b76a5103a09ab3acd26c428c9ebb21f99fe8f (diff)
downloadopenembedded-core-4215b2fb04b3ed61e8e1cf0847639cf6fe31d337.tar.gz
openembedded-core-4215b2fb04b3ed61e8e1cf0847639cf6fe31d337.tar.bz2
openembedded-core-4215b2fb04b3ed61e8e1cf0847639cf6fe31d337.zip
connman: update to 0.78
Updates the package to 0.78 bringing changes done on meta-oe and extra cleanups as: * xtables_version.patch: removed as it has been merged upstream * use sed to fix dbus access policy * remove build depends on dhclient as connman has an internal client now * make wifi and bluetooth building optional * add ppp in depends that is used by some plugins * add ntp in depends and enable ntp plugin * package tools * enable fake plugin This uses PR as "r1" since it was previously available on meta-oe. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Acked-by: Joshua Lock <josh@linux.intel.com>
-rw-r--r--meta/recipes-connectivity/connman/connman.inc96
-rw-r--r--meta/recipes-connectivity/connman/connman/xtables_version.patch64
-rw-r--r--meta/recipes-connectivity/connman/connman_0.75.bb29
-rw-r--r--meta/recipes-connectivity/connman/connman_0.78.bb10
4 files changed, 79 insertions, 120 deletions
diff --git a/meta/recipes-connectivity/connman/connman.inc b/meta/recipes-connectivity/connman/connman.inc
index 7ee460ec8b..e90aa4b02a 100644
--- a/meta/recipes-connectivity/connman/connman.inc
+++ b/meta/recipes-connectivity/connman/connman.inc
@@ -13,7 +13,32 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
file://src/main.c;beginline=1;endline=20;md5=4b55b550fa6b33cc2055ef30dd262b3e"
-DEPENDS = "libgdbus dbus glib-2.0 iptables"
+# we need to define the depends here, the dynamic stuff is too late
+DEPENDS = "dbus glib-2.0 ppp iptables gnutls ntp \
+ ${@base_contains('DISTRO_FEATURES', 'bluetooth','bluez4', '', d)} \
+ ${@base_contains('DISTRO_FEATURES', 'wifi','wpa-supplicant', '', d)} \
+ "
+
+EXTRA_OECONF += "\
+ ac_cv_path_WPASUPPLICANT=${sbindir}/wpa_supplicant \
+ ac_cv_path_PPPD=${sbindir}/pppd \
+ --disable-gtk-doc \
+ --enable-debug \
+ --enable-threads \
+ --enable-loopback \
+ --enable-ethernet \
+ ${@base_contains('DISTRO_FEATURES', 'wifi','--enable-wifi', '--disable-wifi', d)} \
+ ${@base_contains('DISTRO_FEATURES', 'bluetooth','--enable-bluetooth', '--disable-bluetooth', d)} \
+ --enable-dnsproxy \
+ --enable-ofono \
+ --enable-tools \
+ --enable-test \
+ --disable-polkit \
+ --enable-client \
+ --enable-fake \
+ --enable-ntpd \
+ --with-ntpd=${bindir}/ntpd \
+"
INITSCRIPT_NAME = "connman"
INITSCRIPT_PARAMS = "start 05 5 2 3 . stop 22 0 1 6 ."
@@ -25,44 +50,61 @@ USERADD_PARAM_${PN} = "--system --no-create-home \
inherit autotools pkgconfig update-rc.d useradd
-do_install_append() {
- install -d ${D}${sysconfdir}/init.d/
- install -m 0755 ${WORKDIR}/connman ${D}${sysconfdir}/init.d/connman
+do_compile_append() {
+ sed -i -e s:deny:allow:g src/connman-dbus.conf
}
-PACKAGES += "${PN}-scripts"
-RDEPENDS_${PN}-scripts += "python"
-
-PACKAGES_DYNAMIC = "${PN}-plugin-*"
-FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*.so.* \
- ${sysconfdir} ${sharedstatedir} ${localstatedir} \
- ${base_bindir}/* ${base_sbindir}/* ${base_libdir}/*.so* ${datadir}/${PN} \
- ${datadir}/pixmaps ${datadir}/applications \
- ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
- ${libdir}/bonobo/servers \
- ${datadir}/dbus-1/system-services/* \
- ${libdir}/connman/scripts/dhclient*"
-FILES_${PN}-dbg += "${libdir}/connman/plugins/.debug \
- ${libdir}/connman/scripts/.debug"
+do_install_append() {
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/connman ${D}${sysconfdir}/init.d/connman
-FILES_${PN}-dev += "${libdir}/connman/plugins/*.la"
+ install -d ${D}${bindir}
+ install -m 0755 ${S}/tools/*-test ${D}${bindir}
+ install -m 0755 ${S}/tools/wispr ${D}${bindir}
+}
-FILES_${PN}-scripts += "${libdir}/${PN}/test/*"
+PACKAGES_DYNAMIC = "${PN}-plugin-*"
python populate_packages_prepend() {
- prefix = (d.getVar("MLPREFIX", True) or "")
- depmap = dict( wifi=prefix+"wpa-supplicant", bluetooth=prefix+"bluez4", ofono=prefix+"ofono" )
+ depmap = dict( pppd="ppp",
+ udhcp="busybox connman-scripts",
+ dhclient="dhcp-client",
+ wifi="wpa-supplicant",
+ resolvconf="resolvconf",
+ bluetooth="bluez4",
+ ntpd="ntp",
+ ofono="ofono" )
packages = []
+ multilib_prefix = (d.getVar("MLPREFIX", True) or "")
hook = lambda file,pkg,b,c,d:packages.append((file,pkg))
-
plugin_dir = bb.data.expand('${libdir}/connman/plugins/', d)
plugin_name = bb.data.expand('${PN}-plugin-%s', d)
-
do_split_packages(d, plugin_dir, '^(.*).so$', plugin_name, '${PN} plugin for %s', extra_depends='', hook=hook )
-
for (file, package) in packages:
plugintype = package.split( '-' )[-1]
if plugintype in depmap:
- bb.note( "Adding rdependency on %s to package %s" % ( depmap[plugintype], package ) )
- d.setVar("RDEPENDS_%s" % package, depmap[plugintype])
+ rdepends = map(lambda x: multilib_prefix + x, depmap[plugintype].split())
+ bb.note( "Adding rdependency on %s to %s" % ( rdepends, package ) )
+ d.setVar("RDEPENDS_%s" % package, " ".join(rdepends))
}
+
+PACKAGES =+ "${PN}-scripts ${PN}-tools ${PN}-tests"
+
+FILES_${PN}-tools = "${bindir}/wispr"
+
+FILES_${PN}-tests = "${bindir}/*-test"
+
+FILES_${PN}-scripts += "${libdir}/${PN}/test/* ${libdir}/connman/scripts"
+RDEPENDS_${PN}-scripts = "python"
+
+FILES_${PN} = "${bindir}/* ${sbindir}/* ${libexecdir}/* ${libdir}/lib*.so.* \
+ ${sysconfdir} ${sharedstatedir} ${localstatedir} \
+ ${base_bindir}/* ${base_sbindir}/* ${base_libdir}/*.so* ${datadir}/${PN} \
+ ${datadir}/pixmaps ${datadir}/applications \
+ ${datadir}/idl ${datadir}/omf ${datadir}/sounds \
+ ${libdir}/bonobo/servers \
+ ${datadir}/dbus-1/system-services/*"
+
+FILES_${PN}-dbg += "${libdir}/connman/*/.debug"
+
+FILES_${PN}-dev += "${libdir}/connman/*/*.la"
diff --git a/meta/recipes-connectivity/connman/connman/xtables_version.patch b/meta/recipes-connectivity/connman/connman/xtables_version.patch
deleted file mode 100644
index 13e2c36aa8..0000000000
--- a/meta/recipes-connectivity/connman/connman/xtables_version.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-xtables_merge_options API change, fix its calling in connman.
-
-Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
-
-Upstream-Status: Backport
-
-diff -ruN connman-0.75-orig//src/iptables.c connman-0.75/src/iptables.c
---- connman-0.75-orig//src/iptables.c 2011-02-22 12:16:25.000000000 +0800
-+++ connman-0.75/src/iptables.c 2011-10-26 09:21:33.941164000 +0800
-@@ -1089,7 +1089,11 @@
- if (xt_t->init != NULL)
- xt_t->init(xt_t->t);
- iptables_globals.opts =
-- xtables_merge_options(iptables_globals.opts,
-+ xtables_merge_options(
-+#if XTABLES_VERSION_CODE > 5
-+ iptables_globals.orig_opts,
-+#endif
-+ iptables_globals.opts,
- xt_t->extra_opts,
- &xt_t->option_offset);
- if (iptables_globals.opts == NULL)
-@@ -1113,7 +1117,11 @@
- xt_m->init(xt_m->m);
- if (xt_m != xt_m->next) {
- iptables_globals.opts =
-- xtables_merge_options(iptables_globals.opts,
-+ xtables_merge_options(
-+#if XTABLES_VERSION_CODE > 5
-+ iptables_globals.orig_opts,
-+#endif
-+ iptables_globals.opts,
- xt_m->extra_opts,
- &xt_m->option_offset);
- if (iptables_globals.opts == NULL)
-diff -ruN connman-0.75-orig//tools/iptables-test.c connman-0.75/tools/iptables-test.c
---- connman-0.75-orig//tools/iptables-test.c 2011-02-22 12:16:25.000000000 +0800
-+++ connman-0.75/tools/iptables-test.c 2011-10-26 09:23:25.701164000 +0800
-@@ -1076,7 +1076,11 @@
- if (xt_t->init != NULL)
- xt_t->init(xt_t->t);
- connman_iptables_globals.opts =
-- xtables_merge_options(connman_iptables_globals.opts,
-+ xtables_merge_options(
-+#if XTABLES_VERSION_CODE > 5
-+ connman_iptables_globals.orig_opts,
-+#endif
-+ connman_iptables_globals.opts,
- xt_t->extra_opts,
- &xt_t->option_offset);
- if (connman_iptables_globals.opts == NULL)
-@@ -1102,7 +1106,11 @@
- xt_m->init(xt_m->m);
- if (xt_m != xt_m->next) {
- connman_iptables_globals.opts =
-- xtables_merge_options(connman_iptables_globals.opts,
-+ xtables_merge_options(
-+#if XTABLES_VERSION_CODE > 5
-+ connman_iptables_globals.orig_opts,
-+#endif
-+ connman_iptables_globals.opts,
- xt_m->extra_opts,
- &xt_m->option_offset);
- if (connman_iptables_globals.opts == NULL)
diff --git a/meta/recipes-connectivity/connman/connman_0.75.bb b/meta/recipes-connectivity/connman/connman_0.75.bb
deleted file mode 100644
index c6e911baeb..0000000000
--- a/meta/recipes-connectivity/connman/connman_0.75.bb
+++ /dev/null
@@ -1,29 +0,0 @@
-require connman.inc
-PR = "r4"
-
-EXTRA_OECONF += "\
- ac_cv_path_WPASUPPLICANT=/usr/sbin/wpa_supplicant \
- --disable-gtk-doc \
- --enable-debug \
- --enable-threads \
- --enable-loopback \
- --enable-ethernet \
- ${@base_contains('DISTRO_FEATURES', 'wifi','--enable-wifi', '--disable-wifi', d)} \
- ${@base_contains('DISTRO_FEATURES', 'bluetooth','--enable-bluetooth', '--disable-bluetooth', d)} \
- --enable-dnsproxy \
- --disable-dhclient \
- --enable-test \
- --disable-polkit \
- --enable-client \
- --enable-ofono \
- --prefix=/usr --sysconfdir=/etc --localstatedir=/var"
-
-SRC_URI = "\
- ${KERNELORG_MIRROR}/linux/network/connman/connman-${PV}.tar.gz \
- file://add_xuser_dbus_permission.patch \
- file://xtables_version.patch \
- file://connman \
-"
-
-SRC_URI[md5sum] = "9973cb89a11fff6b51fc85b51c13b711"
-SRC_URI[sha256sum] = "b15361237f7ec8092fb0e55d4585550ab35491485edaf10ddd032d6e36299db7"
diff --git a/meta/recipes-connectivity/connman/connman_0.78.bb b/meta/recipes-connectivity/connman/connman_0.78.bb
new file mode 100644
index 0000000000..cc23c2871f
--- /dev/null
+++ b/meta/recipes-connectivity/connman/connman_0.78.bb
@@ -0,0 +1,10 @@
+require connman.inc
+
+PR = "r1"
+
+# 0.78 tag
+SRCREV = "02f5d5fe2d7c71514a6387ba2b772b42d8e8d297"
+SRC_URI = "git://git.kernel.org/pub/scm/network/connman/connman.git \
+ file://add_xuser_dbus_permission.patch \
+ file://connman"
+S = "${WORKDIR}/git"