From 89500c583e0f1dc1b4ffdf72914e08e505e427e0 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Sun, 10 Apr 2011 13:24:47 +0200 Subject: recipes,classes: import a lot of recipes from meta-shr * tested on shr-lite-image for om-gta02 and nokia900 (with meta-shr layer) --- meta-oe/recipes-connectivity/bluez/bluez4.inc | 71 +++++++++++++++++++ .../bluez/bluez4/bluetooth.conf | 16 +++++ .../fix-dfutool-usb-declaration-mismatch.patch | 13 ++++ .../bluez/bluez4/hid2hci_usb_init.patch | 33 +++++++++ .../bluez/bluez4/sbc-thumb.patch | 11 +++ meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb | 15 ++++ meta-oe/recipes-connectivity/connman/connman.inc | 79 ++++++++++++++++++++++ .../recipes-connectivity/connman/connman/connman | 42 ++++++++++++ .../connman/connman/link-against-libnl2.patch | 13 ++++ .../connman/connman/shr/connman | 42 ++++++++++++ .../recipes-connectivity/connman/connman_0.72.bb | 31 +++++++++ .../phonet-utils/phonet-utils_git.bb | 18 +++++ 12 files changed, 384 insertions(+) create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4.inc create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch create mode 100644 meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb create mode 100644 meta-oe/recipes-connectivity/connman/connman.inc create mode 100755 meta-oe/recipes-connectivity/connman/connman/connman create mode 100644 meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch create mode 100755 meta-oe/recipes-connectivity/connman/connman/shr/connman create mode 100644 meta-oe/recipes-connectivity/connman/connman_0.72.bb create mode 100644 meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb (limited to 'meta-oe/recipes-connectivity') diff --git a/meta-oe/recipes-connectivity/bluez/bluez4.inc b/meta-oe/recipes-connectivity/bluez/bluez4.inc new file mode 100644 index 0000000000..747ae77e6d --- /dev/null +++ b/meta-oe/recipes-connectivity/bluez/bluez4.inc @@ -0,0 +1,71 @@ +DESCRIPTION = "Linux Bluetooth Stack Userland V4" +HOMEPAGE = "http://www.bluez.org" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "GPLv2/LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ + file://COPYING.LIB;md5=fb504b67c50331fc78734fed90fb0e09 \ +" +DEPENDS = "gst-plugins-base alsa-lib virtual/libusb0 dbus-glib" +INC_PR = "r8" + +# temporary solution until bug 5176 is properly fixed +PROVIDES += "bluez-utils bluez-libs bluez-utils-dbus" +RPROVIDES_bluez4 += "bluez-utils bluez-libs bluez-utils-dbus" +RPROVIDES_bluez4-dev = "bluez-libs-dev" + +SRC_URI = "\ + http://www.kernel.org/pub/linux/bluetooth/bluez-${PV}.tar.gz \ + file://fix-dfutool-usb-declaration-mismatch.patch \ + file://bluetooth.conf \ +" +S = "${WORKDIR}/bluez-${PV}" + +inherit autotools update-rc.d + +EXTRA_OECONF = "\ + --enable-gstreamer \ + --enable-alsa \ + --enable-usb \ + --enable-netlink \ + --enable-tools \ + --enable-bccmd \ + --enable-hid2hci \ + --enable-dfutool \ + --enable-hidd \ + --enable-pand \ + --enable-dund \ + --disable-cups \ + --enable-test \ + --enable-manpages \ + --enable-configfiles \ + --enable-initscripts \ + --disable-pcmciarules \ +" + +do_install_append() { + install -m 0644 ${S}/audio/audio.conf ${D}/${sysconfdir}/bluetooth/ + install -m 0644 ${S}/network/network.conf ${D}/${sysconfdir}/bluetooth/ + install -m 0644 ${S}/input/input.conf ${D}/${sysconfdir}/bluetooth/ + # at_console doesn't really work with the current state of OE, so punch some more holes so people can actually use BT + install -m 0644 ${WORKDIR}/bluetooth.conf ${D}/${sysconfdir}/dbus-1/system.d/ +} + +INITSCRIPT_NAME = "bluetooth" +INITSCRIPT_PARAMS = "defaults 23 19" + +PACKAGES =+ "gst-plugin-bluez libasound-module-bluez" + +FILES_gst-plugin-bluez = "${libdir}/gstreamer-0.10/lib*.so" +FILES_libasound-module-bluez = "${libdir}/alsa-lib/lib*.so ${datadir}/alsa/bluetooth.conf" +FILES_${PN} += "${libdir}/bluetooth/plugins/*.so ${base_libdir}/udev" +FILES_${PN}-dev += "\ + ${libdir}/bluetooth/plugins/*.la \ + ${libdir}/alsa-lib/*.la \ + ${libdir}/gstreamer-0.10/*.la \ +" + +FILES_${PN}-dbg += "\ + ${libdir}/bluetooth/plugins/.debug \ + ${libdir}/*/.debug \ +" diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf b/meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf new file mode 100644 index 0000000000..ca5e9e4f2f --- /dev/null +++ b/meta-oe/recipes-connectivity/bluez/bluez4/bluetooth.conf @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch b/meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch new file mode 100644 index 0000000000..b1ee510e8b --- /dev/null +++ b/meta-oe/recipes-connectivity/bluez/bluez4/fix-dfutool-usb-declaration-mismatch.patch @@ -0,0 +1,13 @@ +Index: bluez-4.27/tools/dfutool.c +=================================================================== +--- bluez-4.27.orig/tools/dfutool.c ++++ bluez-4.27/tools/dfutool.c +@@ -59,7 +59,7 @@ + #endif + + #ifdef NEED_USB_GET_BUSSES +-static inline struct usb_bus *usb_get_busses(void) ++inline struct usb_bus *usb_get_busses(void) + { + return usb_busses; + } diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch b/meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch new file mode 100644 index 0000000000..ed15fd5a1b --- /dev/null +++ b/meta-oe/recipes-connectivity/bluez/bluez4/hid2hci_usb_init.patch @@ -0,0 +1,33 @@ +# Signed-off-by: Khem Raj +# +# Use the new usb1 API for usb_init() and check for fails from +# usb_init (). Currently we see a crash on a system which does +# not have USB because usb_init() fails and it cleans up all initialized +# data (e.g. ctx) which is used in subsequent calls to libusb +# We return immediately if usb_init() fails for some reason. + +Index: bluez-4.24/tools/hid2hci.c +=================================================================== +--- bluez-4.24.orig/tools/hid2hci.c 2008-10-25 23:40:34.000000000 -0700 ++++ bluez-4.24/tools/hid2hci.c 2008-12-29 22:06:04.000000000 -0800 +@@ -337,7 +337,7 @@ + int main(int argc, char *argv[]) + { + struct device_info dev[16]; +- int i, opt, num, quiet = 0, mode = HCI; ++ int i, ret, opt, num, quiet = 0, mode = HCI; + + while ((opt = getopt_long(argc, argv, "+01qh", main_options, NULL)) != -1) { + switch (opt) { +@@ -361,8 +361,9 @@ + argc -= optind; + argv += optind; + optind = 0; +- +- usb_init(); ++ ret = libusb_init(); ++ if (ret < 0) ++ return ret; + + num = find_devices(mode, dev, sizeof(dev) / sizeof(dev[0])); + if (num <= 0) { diff --git a/meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch b/meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch new file mode 100644 index 0000000000..3505426053 --- /dev/null +++ b/meta-oe/recipes-connectivity/bluez/bluez4/sbc-thumb.patch @@ -0,0 +1,11 @@ +--- bluez/sbc/sbc_math.h~ 2008-03-05 20:18:03.000000000 +0000 ++++ bluez/sbc/sbc_math.h 2008-10-27 13:39:27.000000000 +0000 +@@ -59,7 +59,7 @@ + + #define SBC_FIXED_0(val) { val = 0; } + #define MUL(a, b) ((a) * (b)) +-#ifdef __arm__ ++#if defined(__arm__) && !defined(__thumb__) + #define MULA(a, b, res) ({ \ + int tmp = res; \ + __asm__( \ diff --git a/meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb b/meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb new file mode 100644 index 0000000000..ebb2dab584 --- /dev/null +++ b/meta-oe/recipes-connectivity/bluez/bluez4_4.91.bb @@ -0,0 +1,15 @@ +require bluez4.inc + +SRC_URI[md5sum] = "3059b7ef5168c84cd0c6a67034ce79f9" +SRC_URI[sha256sum] = "11e9279e2669db996afd464b96d2c68f41f157f6eb9b8842a0bbcad8a4eac18d" + +DEPENDS += "libsndfile1" + +PR = "${INC_PR}.0" + +# Not all distros have a recent enough udev +BTUDEV = " --disable-udevrules" +BTUDEV_angstrom = " --enable-udevrules" +BTUDEV_shr = " --enable-udevrules" + +EXTRA_OECONF += "${BTUDEV}" diff --git a/meta-oe/recipes-connectivity/connman/connman.inc b/meta-oe/recipes-connectivity/connman/connman.inc new file mode 100644 index 0000000000..69f91b3a3a --- /dev/null +++ b/meta-oe/recipes-connectivity/connman/connman.inc @@ -0,0 +1,79 @@ +SUMMARY = "A daemon for managing internet connections within embedded devices" +DESCRIPTION = "The ConnMan project provides a daemon for managing \ +internet connections within embedded devices running the Linux \ +operating system. The Connection Manager is designed to be slim and \ +to use as few resources as possible, so it can be easily integrated. \ +It is a fully modular system that can be extended, through plug-ins, \ +to support all kinds of wired or wireless technologies. Also, \ +configuration methods, like DHCP and domain name resolving, are \ +implemented using plug-ins." +HOMEPAGE = "http://connman.net/" +BUGTRACKER = "http://bugs.meego.com/buglist.cgi?quicksearch=connman" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ + file://src/main.c;beginline=1;endline=20;md5=4b55b550fa6b33cc2055ef30dd262b3e" + +# we need to define the depends here, the dynamic stuff is too late +DEPENDS = "libnl wpa-supplicant dbus glib-2.0 ppp busybox dhcp resolvconf bluez4" + +EXTRA_OECONF += "\ + ac_cv_path_WPASUPPLICANT=/usr/sbin/wpa_supplicant \ + ac_cv_path_DHCLIENT=/sbin/dhclient \ + ac_cv_path_UDHCPC=/sbin/udhcpc \ + ac_cv_path_RESOLVCONF=/sbin/resolvconf \ + ac_cv_path_PPPD=/usr/sbin/pppd \ +" + +INITSCRIPT_NAME = "connman" +INITSCRIPT_PARAMS = "start 05 5 2 . stop 22 0 1 6 ." + +PARALLEL_MAKE = "" + +inherit autotools pkgconfig update-rc.d + +do_configure_append() { + ln -sf . include/connman +} + +do_compile_append() { + sed -i -e s:deny:allow:g src/connman-dbus.conf +} + +do_install_append() { + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/connman ${D}${sysconfdir}/init.d/connman +} + +python populate_packages_prepend() { + depmap = dict( pppd="ppp", udhcp="busybox connman-scripts", dhclient="dhcp-client", wifi="wpa-supplicant", resolvconf="resolvconf", bluetooth="bluez4" ) + packages = [] + 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: + rdepends = bb.data.getVar( "RDEPENDS_%s" % package, d ) + bb.note( "Adding rdependency on %s to package %s" % ( depmap[plugintype], package ) ) + bb.data.setVar("RDEPENDS_%s" % package, depmap[plugintype], d) +} + +PACKAGES_DYNAMIC = "${PN}-plugin-*" + +PACKAGES += "${PN}-scripts ${PN}-test-utils" + +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}-test-utils += "${libdir}/connman/test/*" + +FILES_${PN}-scripts += "${libdir}/connman/scripts" +FILES_${PN}-dbg += "${libdir}/connman/*/.debug" +FILES_${PN}-dev += "${libdir}/connman/*/*.la" + diff --git a/meta-oe/recipes-connectivity/connman/connman/connman b/meta-oe/recipes-connectivity/connman/connman/connman new file mode 100755 index 0000000000..f8154f68f9 --- /dev/null +++ b/meta-oe/recipes-connectivity/connman/connman/connman @@ -0,0 +1,42 @@ +#!/bin/sh + +DAEMON=/usr/sbin/connmand +PIDFILE=/var/run/connmand.pid +DESC="Connection Manager" + +if [ -f /etc/default/connman ] ; then + . /etc/default/connman +fi + +set -e + +do_start() { + $DAEMON +} + +do_stop() { + start-stop-daemon --stop --name connmand --quiet +} + +case "$1" in + start) + echo "Starting $DESC" + do_start + ;; + stop) + echo "Stopping $DESC" + do_stop + ;; + restart|force-reload) + echo "Restarting $DESC" + do_stop + sleep 1 + do_start + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch b/meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch new file mode 100644 index 0000000000..5be1618209 --- /dev/null +++ b/meta-oe/recipes-connectivity/connman/connman/link-against-libnl2.patch @@ -0,0 +1,13 @@ +Index: connman-0.46/configure.ac +=================================================================== +--- connman-0.46.orig/configure.ac ++++ connman-0.46/configure.ac +@@ -326,7 +326,7 @@ + AC_ARG_ENABLE(tools, AC_HELP_STRING([--enable-tools], + [enable testing tools]), [enable_tools=${enableval}]) + if (test "${enable_tools}" = "yes"); then +- PKG_CHECK_MODULES(NETLINK, libnl-1, dummy=yes, ++ PKG_CHECK_MODULES(NETLINK, libnl-2.0, dummy=yes, + AC_MSG_ERROR(Netlink library is required)) + AC_SUBST(NETLINK_CFLAGS) + AC_SUBST(NETLINK_LIBS) diff --git a/meta-oe/recipes-connectivity/connman/connman/shr/connman b/meta-oe/recipes-connectivity/connman/connman/shr/connman new file mode 100755 index 0000000000..708b1b4cd1 --- /dev/null +++ b/meta-oe/recipes-connectivity/connman/connman/shr/connman @@ -0,0 +1,42 @@ +#!/bin/sh + +DAEMON="/usr/sbin/connmand -I usb0" +PIDFILE=/var/run/connmand.pid +DESC="Connection Manager" + +if [ -f /etc/default/connman ] ; then + . /etc/default/connman +fi + +set -e + +do_start() { + $DAEMON +} + +do_stop() { + start-stop-daemon --stop --name connmand --quiet +} + +case "$1" in + start) + echo "Starting $DESC" + do_start + ;; + stop) + echo "Stopping $DESC" + do_stop + ;; + restart|force-reload) + echo "Restarting $DESC" + do_stop + sleep 1 + do_start + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/meta-oe/recipes-connectivity/connman/connman_0.72.bb b/meta-oe/recipes-connectivity/connman/connman_0.72.bb new file mode 100644 index 0000000000..8eb1e147f0 --- /dev/null +++ b/meta-oe/recipes-connectivity/connman/connman_0.72.bb @@ -0,0 +1,31 @@ +require connman.inc +# connman requires libXtables now +DEPENDS += "iptables" +PR = "r0" + +EXTRA_OECONF += "\ + --disable-gtk-doc \ + --enable-debug \ + --enable-threads \ + --enable-loopback \ + --enable-ethernet \ + --enable-wifi \ + --disable-wimax \ + --enable-bluetooth \ + --enable-ofono \ + --enable-resolvconf \ + --enable-dnsproxy \ + --enable-tools \ + --disable-polkit \ + --enable-client \ + --enable-fake \ +" + +SRC_URI = "\ + http://www.kernel.org/pub/linux/network/connman/connman-${PV}.tar.gz \ + file://link-against-libnl2.patch \ + file://connman \ +" + +SRC_URI[md5sum] = "800f9356e0471c88819eee7184713a1f" +SRC_URI[sha256sum] = "9c8ad312573683fc9f50d5042d4a87ddc8e0700b27ac1b0fb8dc2e8b7424a60f" diff --git a/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb b/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb new file mode 100644 index 0000000000..257f0121af --- /dev/null +++ b/meta-oe/recipes-connectivity/phonet-utils/phonet-utils_git.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "This small package provides a few command line tools for Linux Phonet" +HOMEPAGE = "" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" +SRC_URI = "git://gitorious.org/meego-cellular/phonet-utils.git;branch=master;protocol=git" +PR = "r0" +S = "${WORKDIR}/git" +SRCREV = "4acfa720fd37d178a048fc2be17180137d4a70ea" +PV = "0.0.0+gitr${SRCPV}" + +do_compile () { + make +} + +do_install () { + DESTDIR=${D} oe_runmake install +} + -- cgit 1.2.3-korg