diff options
Diffstat (limited to 'org.handhelds.familiar/packages')
36 files changed, 2107 insertions, 2 deletions
diff --git a/org.handhelds.familiar/packages/bluez/bluez-libs_3.4.bb b/org.handhelds.familiar/packages/bluez/bluez-libs_3.4.bb new file mode 100644 index 0000000..d740bd8 --- /dev/null +++ b/org.handhelds.familiar/packages/bluez/bluez-libs_3.4.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "Linux Bluetooth Stack Userland Libaries." +SECTION = "libs" +PRIORITY = "optional" +HOMEPAGE = "http://www.bluez.org" +LICENSE = "GPL" +PR = "r0" + +SRC_URI = "http://bluez.sourceforge.net/download/bluez-libs-${PV}.tar.gz" + +inherit autotools pkgconfig + +HEADERS = "bluetooth.h bnep.h cmtp.h hci.h hci_lib.h hidp.h l2cap.h rfcomm.h sco.h sdp.h sdp_lib.h" + +do_stage() { + oe_libinstall -a -so -C src libbluetooth ${STAGING_LIBDIR} + + install -d ${STAGING_INCDIR}/bluetooth/ + for f in ${HEADERS} + do + install -m 0644 include/$f ${STAGING_INCDIR}/bluetooth/$f + done +} diff --git a/org.handhelds.familiar/packages/bluez/bluez-libs_3.7.bb b/org.handhelds.familiar/packages/bluez/bluez-libs_3.7.bb new file mode 100644 index 0000000..d740bd8 --- /dev/null +++ b/org.handhelds.familiar/packages/bluez/bluez-libs_3.7.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "Linux Bluetooth Stack Userland Libaries." +SECTION = "libs" +PRIORITY = "optional" +HOMEPAGE = "http://www.bluez.org" +LICENSE = "GPL" +PR = "r0" + +SRC_URI = "http://bluez.sourceforge.net/download/bluez-libs-${PV}.tar.gz" + +inherit autotools pkgconfig + +HEADERS = "bluetooth.h bnep.h cmtp.h hci.h hci_lib.h hidp.h l2cap.h rfcomm.h sco.h sdp.h sdp_lib.h" + +do_stage() { + oe_libinstall -a -so -C src libbluetooth ${STAGING_LIBDIR} + + install -d ${STAGING_INCDIR}/bluetooth/ + for f in ${HEADERS} + do + install -m 0644 include/$f ${STAGING_INCDIR}/bluetooth/$f + done +} diff --git a/org.handhelds.familiar/packages/bluez/bluez-utils/02dtl1_cs.sh b/org.handhelds.familiar/packages/bluez/bluez-utils/02dtl1_cs.sh new file mode 100644 index 0000000..fd81508 --- /dev/null +++ b/org.handhelds.familiar/packages/bluez/bluez-utils/02dtl1_cs.sh @@ -0,0 +1,57 @@ +#!/bin/sh + +case "$1" in + suspend) + if [ "`/bin/hciconfig`" != "" ]; then + #If hciconfig outputs anything then there's probably a Bluetooth + # CF card in the slot so shut it down. + hcitool dc `hcitool con | grep ACL | sed 's/^.*\([0-9A-F]\{2\}\(:[0-9A-F]\{2\}\)\{5\}\).*$/\1/'` + hciconfig hci0 down + killall hciattach > /dev/null 2>&1 + fi + ;; + + resume) + #check for kernel version + if [ "`uname -r | grep 2.4.`" != "" ]; then + k="o" + elif [ "`uname -r | grep 2.6.`" != "" ]; then + k="ko" + else + exit 0 + fi + + if test -e /sbin/cardctl; then + CARDCTL=/sbin/cardctl + elif test -e /sbin/pccardctl; then + CARDCTL=/sbin/pccardctl + else + exit 0 + fi + + if [ "`lsmod | grep hci_uart`" != "" ]; then + #If the hci_usb module is still loaded then there's a serial based + # Bluetooth CF card in the slot, which only needs a resume to get it going + # again. + rfcomm bind all + $CARDCTL resume + hciconfig hci0 up + else + # only works for nokia dtl1 cards + for f in /lib/modules/`uname -r`/kernel/drivers/bluetooth/dtl1_cs.$k + do + #Enumerate all the self-contained Bluetooth CF card drivers + f=`echo $f | sed 's/\.'$k'$//'` + f=`basename $f` + if [ "`lsmod | grep $f`" != "" ]; then + #If one of these drivers is still loaded, then there is probably + #a non-serial based Bluetooth CF card in the slot that needs + #ejecting and reinserting to get it going again + rfcomm bind all + $CARDCTL eject + $CARDCTL insert + hciconfig hci0 up + fi + done + fi +esac diff --git a/org.handhelds.familiar/packages/bluez/bluez-utils/hciattach-ti-bts.patch b/org.handhelds.familiar/packages/bluez/bluez-utils/hciattach-ti-bts.patch new file mode 100644 index 0000000..217c326 --- /dev/null +++ b/org.handhelds.familiar/packages/bluez/bluez-utils/hciattach-ti-bts.patch @@ -0,0 +1,489 @@ +--- bluez-utils-3.1/tools/hciattach.c.orig 2006-07-23 14:02:14.000000000 +0200 ++++ bluez-utils-3.1/tools/hciattach.c 2006-07-23 14:06:29.000000000 +0200 +@@ -58,6 +58,8 @@ + #define HCI_UART_3WIRE 2 + #define HCI_UART_H4DS 3 + ++#include "ti_bts.h" ++ + struct uart_t { + char *type; + int m_id; +@@ -67,6 +69,7 @@ + int speed; + int flags; + int (*init) (int fd, struct uart_t *u, struct termios *ti); ++ char *bts; /* bluetooth script */ + }; + + #define FLOW_CTL 0x0001 +@@ -256,6 +259,114 @@ + return 0; + } + ++static int brf6150(int fd, struct uart_t *u, struct termios *ti) ++{ ++ bts_t *bfp; ++ int i; ++ unsigned long vers; ++ unsigned char actionbuf[256]; ++ unsigned char resp[128]; /* Response */ ++ unsigned long count; ++ unsigned short atype; ++ ++ if (u->bts == NULL) /* no script, ignore */ ++ return 0; ++ ++ bfp = bts_load_script( u->bts, &vers ); ++ if (bfp == NULL) ++ return -1; ++ ++ fprintf( stderr, "Loading BTS script version %lu\n", vers ); ++ ++ while ((count = bts_next_action( bfp, actionbuf, ++ sizeof actionbuf - 1, &atype )) != 0) { ++ if (atype == ACTION_REMARKS) { ++ if (actionbuf[0] != 0) ++ fprintf( stderr, "%s\n", actionbuf ); ++ } ++ else if (atype == ACTION_SEND_COMMAND) { ++#if 0 ++ fprintf( stderr, "ACTION_SEND_COMMAND: ", (int)atype ); ++ for (i=0; i<count; i++) { ++ fprintf( stderr, "0x%02x ", actionbuf[i] ); ++ } ++ fprintf( stderr, "\n" ); ++#endif ++ int n; ++ n = write(fd, actionbuf, count); ++ if (n < 0 || n < count) { ++ perror("Failed to write TI action command"); ++ return -1; ++ } ++ } ++ else if (atype == ACTION_WAIT_EVENT) { ++ action_wait_t *wait = (action_wait_t *)actionbuf; ++#if 0 ++ fprintf( stderr, "ACTION_WAIT_EVENT: %u msec, %u size, data = ", wait->msec, wait->size ); ++ for (i=0; i<wait->size; i++) { ++ fprintf( stderr, "0x%02x ", wait->data[i] ); ++ } ++ fprintf( stderr, "\n" ); ++#endif ++ usleep(wait->msec); /* seems they give usec, not msec */ ++ /* Read reply. */ ++ if ((count = read_hci_event(fd, resp, sizeof resp)) < 0) { ++ perror("Failed to read TI command response"); ++ return -1; ++ } ++ if (count < wait->size) { ++ fprintf( stderr, "TI command response is short."); ++ } ++ for (i=0; i<wait->size; i++) { ++ if (i == 3) continue; /* ignore */ ++ if (resp[i] != wait->data[i]) { ++ fprintf( stderr, "TI command response does not match expected result.\n" ); ++ } ++ } ++ } ++ else if (atype == ACTION_SERIAL_PORT_PARAMETERS) { ++ action_serial_t *sercmd = (action_serial_t *)actionbuf; ++ ++ /* Set actual baudrate */ ++ fprintf( stderr, ++ "BTS changing baud rate to %u, flow control to %u\n", ++ sercmd->baud, sercmd->flow_control ); ++ ++ tcflush(fd, TCIOFLUSH); ++ ++ if (sercmd->flow_control) ++ ti->c_cflag |= CRTSCTS; ++ else ++ ti->c_cflag &= ~CRTSCTS; ++ if (tcsetattr(fd, TCSANOW, ti) < 0) { ++ perror("Can't set port settings"); ++ return -1; ++ } ++ ++ u->speed = sercmd->baud; ++ ++ tcflush(fd, TCIOFLUSH); ++ if (set_speed(fd, ti, sercmd->baud) < 0) { ++ perror("Can't set baud rate"); ++ return -1; ++ } ++ } ++ else if (atype == ACTION_DELAY) { ++ action_delay_t *delay = (action_delay_t *)actionbuf; ++ usleep(delay->msec); /* seems they give usec, not msec */ ++ } ++ else { ++ fprintf( stderr, "BTS action type = %d: ", (int)atype ); ++ for (i=0; i<count; i++) { ++ fprintf( stderr, "0x%02x ", actionbuf[i] ); ++ } ++ fprintf( stderr, "\n" ); ++ } ++ } ++ bts_unload_script( bfp ); ++ return 0; ++} ++ + static int texas(int fd, struct uart_t *u, struct termios *ti) + { + struct timespec tm = {0, 50000}; +@@ -296,15 +407,26 @@ + } while (resp[4] != cmd[1] && resp[5] != cmd[2]); + + /* Verify manufacturer */ +- if ((resp[11] & 0xFF) != 0x0d) ++ if (resp[11] != 0x0d) + fprintf(stderr,"WARNING : module's manufacturer is not Texas Instrument\n"); + + /* Print LMP version */ +- fprintf(stderr, "Texas module LMP version : 0x%02x\n", resp[10] & 0xFF); ++ fprintf(stderr, "TI module LMP version : 0x%02x\n", resp[10]); + + /* Print LMP subversion */ +- fprintf(stderr, "Texas module LMP sub-version : 0x%02x%02x\n", resp[14] & 0xFF, resp[13] & 0xFF); ++ fprintf(stderr, "TI module LMP sub-version : 0x%02x%02x\n", resp[14], resp[13]); ++ if ((resp[14] >> 2) == 3) { ++ int err; ++ nanosleep(&tm, NULL); + ++ /* BRF6150 */ ++ if ((err=brf6150( fd, u, ti )) != 0) { ++ fprintf( stderr, "TI script failed (err=%d)\n", ++ err ); ++ return -1; ++ } ++ } ++ + nanosleep(&tm, NULL); + return 0; + } +@@ -1103,7 +1225,7 @@ + { + printf("hciattach - HCI UART driver initialization utility\n"); + printf("Usage:\n"); +- printf("\thciattach [-n] [-p] [-b] [-t timeout] [-s initial_speed] <tty> <type | id> [speed] [flow|noflow]\n"); ++ printf("\thciattach [-n] [-p] [-b] [-t timeout] [-s initial_speed] [-S bts-script] <tty> <type | id> [speed] [flow|noflow]\n"); + printf("\thciattach -l\n"); + } + +@@ -1118,11 +1240,12 @@ + struct sigaction sa; + struct pollfd p; + char dev[PATH_MAX]; ++ char *bts = NULL; + + detach = 1; + printpid = 0; + +- while ((opt=getopt(argc, argv, "bnpt:s:l")) != EOF) { ++ while ((opt=getopt(argc, argv, "bnpt:s:S:l")) != EOF) { + switch(opt) { + case 'b': + send_break = 1; +@@ -1144,6 +1267,10 @@ + init_speed = atoi(optarg); + break; + ++ case 'S': ++ bts = optarg; ++ break; ++ + case 'l': + for (i = 0; uart[i].type; i++) { + printf("%-10s0x%04x,0x%04x\n", uart[i].type, +@@ -1215,6 +1342,8 @@ + if (init_speed) + u->init_speed = init_speed; + ++ u->bts = bts; ++ + memset(&sa, 0, sizeof(sa)); + sa.sa_flags = SA_NOCLDSTOP; + sa.sa_handler = sig_alarm; +--- bluez-utils-3.1/tools/Makefile.am.orig 2006-07-23 14:06:59.000000000 +0200 ++++ bluez-utils-3.1/tools/Makefile.am 2006-07-23 14:07:18.000000000 +0200 +@@ -37,7 +37,7 @@ + + noinst_PROGRAMS = hcisecfilter ppporc + +-hciattach_SOURCES = hciattach.c hciattach_st.c ++hciattach_SOURCES = hciattach.c hciattach_st.c ti_bts.h ti_bts.c + + hciconfig_SOURCES = hciconfig.c csr.h csr.c + hciconfig_LDADD = @BLUEZ_LIBS@ $(top_builddir)/common/libhelper.a +--- bluez-utils-3.1/tools/ti_bts.h.orig 2006-07-23 14:07:26.000000000 +0200 ++++ bluez-utils-3.1/tools/ti_bts.h 2006-07-23 14:07:46.000000000 +0200 +@@ -0,0 +1,116 @@ ++/* ++ * Copyright (c) 2005 Texas Instruments, Inc. ++ * Ported by SDG Systems, LLC ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation; ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. ++ * IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) AND AUTHOR(S) BE LIABLE FOR ANY ++ * CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF ++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ * ++ * ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PATENTS, ++ * COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS, RELATING TO USE OF THIS ++ * SOFTWARE IS DISCLAIMED. ++ * ++ */ ++ ++#ifndef BT_SCRIPT_H ++#define BT_SCRIPT_H ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++/* ++ * Define the interface of Bluetooth Script ++ */ ++ ++typedef void bts_t; ++ ++ ++#define ACTION_SEND_COMMAND 1 /* Send out raw data (as is) */ ++#define ACTION_WAIT_EVENT 2 /* Wait for data */ ++#define ACTION_SERIAL_PORT_PARAMETERS 3 ++#define ACTION_DELAY 4 ++#define ACTION_RUN_SCRIPT 5 ++#define ACTION_REMARKS 6 ++ ++/* ++ * Structure for ACTION_SEND_COMMAND ++ */ ++typedef struct tagCActionCommand ++{ ++ unsigned char data[1]; /* Data to send */ ++} action_command_t; ++ ++/* ++ * Structure for ACTION_WAIT_EVENT ++ */ ++typedef struct tagCActionWaitEvent ++{ ++ unsigned long msec; /* in milliseconds */ ++ unsigned long size; ++ unsigned char data[1]; /* Data to wait for */ ++} action_wait_t; ++ ++ ++/* ++ * Structure for ACTION_SERIAL_PORT_PARAMETERS ++ */ ++typedef struct tagCActionSerialPortParameters ++{ ++ unsigned long baud; ++ unsigned long flow_control; ++} action_serial_t; ++ ++/* Flow Control Type */ ++#define FCT_NONE 0 ++#define FCT_HARDWARE 1 ++ ++#define DONT_CHANGE 0xFFFFFFFF /* For both baud rate and flow control */ ++ ++ ++/* ++ * Structure for ACTION_DELAY ++ */ ++typedef struct tagCActionDelay ++{ ++ unsigned long msec; /* in milliseconds */ ++} action_delay_t; ++ ++/* ++ * Structure for ACTION_RUN_SCRIPT ++ */ ++typedef struct tagCActionRunScript ++{ ++ char filename[1]; ++} action_run_t; ++ ++/* ++ * Structure for ACTION_REMARKS ++ */ ++typedef struct tagCActionRemarks ++{ ++ char m_szRemarks[1]; ++} action_remarks_t; ++ ++ ++const char *cis_create_filename(const unsigned char* cmdparms); ++bts_t * bts_load_script(const char* fname, unsigned long* version); ++unsigned long bts_next_action(const bts_t* bts_fp, unsigned char* action_buf, ++ unsigned long nMaxSize, unsigned short* ptype); ++void bts_unload_script(bts_t* bts_fp); ++ ++#ifdef __cplusplus ++}; ++#endif ++ ++#endif /* BT_SCRIPT_H */ ++ +--- bluez-utils-3.1/tools/ti_bts.c.orig 2006-07-23 14:07:28.000000000 +0200 ++++ bluez-utils-3.1/tools/ti_bts.c 2006-07-23 14:07:46.000000000 +0200 +@@ -0,0 +1,149 @@ ++/* ++ * Copyright (c) 2005 Texas Instruments, Inc. ++ * Ported by SDG Systems, LLC ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation; ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. ++ * IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) AND AUTHOR(S) BE LIABLE FOR ANY ++ * CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF ++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ * ++ * ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PATENTS, ++ * COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS, RELATING TO USE OF THIS ++ * SOFTWARE IS DISCLAIMED. ++ * ++ */ ++ ++ ++#include <stdio.h> ++#include <stdlib.h> ++#include "ti_bts.h" ++ ++#ifndef MAKEWORD ++#define MAKEWORD(a, b) ((unsigned short)(((unsigned char)(a)) | ((unsigned short)((unsigned char)(b))) << 8)) ++#endif ++ ++#define TI_MANUFACTURER_ID 13 ++ ++/* ++ * Common Init Script specific ++ */ ++const char * ++cis_create_filename(const unsigned char* cmdparms) ++{ ++ static char bts_file[50]; ++ ++ /* Check for TI's id */ ++ unsigned short manfid = MAKEWORD(cmdparms[8], cmdparms[9]); ++ ++ if (TI_MANUFACTURER_ID == manfid) { ++ unsigned short version = MAKEWORD(cmdparms[10], cmdparms[11]); ++ ++ unsigned short chip = (version & 0x7C00) >> 10; ++ unsigned short min_ver = (version & 0x007F); ++ unsigned short maj_ver = (version & 0x0380) >> 7; ++ ++ if (0 != (version & 0x8000)) { ++ maj_ver |= 0x0008; ++ } ++ ++ sprintf( bts_file, "TIInit_%d.%d.%d.bts", ++ (int)chip, (int)maj_ver, (int)min_ver); ++ ++ return &bts_file[0]; ++ } ++ return NULL; ++} ++ ++typedef struct tagCHeader ++{ ++ unsigned long magic; ++ unsigned long version; ++ unsigned char future[24]; ++} cheader_t; ++ ++ ++/* The value 0x42535442 stands for (in ASCII) BTSB */ ++/* which is Bluetooth Script Binary */ ++#define FILE_HEADER_MAGIC 0x42535442 ++ ++ ++bts_t * ++bts_load_script(const char* fname, unsigned long* version) ++{ ++ bts_t* bts = NULL; ++ FILE* fp = fopen(fname, "rb"); ++ ++ if (NULL != fp) { ++ /* Read header */ ++ cheader_t header; ++ ++ /* Read header */ ++ if (1 == fread(&header, sizeof(header), 1, fp)) { ++ /* Check magic number for correctness */ ++ if (header.magic == FILE_HEADER_MAGIC) { ++ /* If user wants the version number */ ++ if (NULL != version) { ++ *version = header.version; ++ } ++ bts = (bts_t*)fp; ++ } ++ } ++ /* If failed reading the file, close it */ ++ if (NULL == bts) { ++ fclose(fp); ++ } ++ } ++ return bts; ++} ++ ++unsigned long ++bts_next_action(const bts_t* bts_fp, unsigned char* action_buf, ++ unsigned long nMaxSize, unsigned short* ptype) ++{ ++ unsigned long bytes = 0; ++ FILE* fp = (FILE*)bts_fp; ++ unsigned char action_hdr[4]; ++ ++ if (bts_fp == NULL) ++ return 0; ++ ++ /* Each Action has the following: */ ++ /* UINT16 type of this action */ ++ /* UINT16 size of rest */ ++ /* BYTE[] action buffer (for HCI, includes the type byte e.g. 1 for hci command) */ ++ ++ if (1 == fread(&action_hdr[0], sizeof(action_hdr), 1, fp)) { ++ unsigned short type = *(unsigned short*)&action_hdr[0]; ++ unsigned short size = *(unsigned short*)&action_hdr[2]; ++ ++ if (size <= nMaxSize) { ++ int nread = fread(action_buf, sizeof(action_buf[0]), size, fp); ++ ++ if (nread == size) { ++ *ptype = type; ++ bytes = (unsigned long)size; ++ } ++ } ++ } ++ ++ return bytes; ++} ++ ++void ++bts_unload_script(bts_t* bts_fp) ++{ ++ FILE* fp = (FILE*)bts_fp; ++ ++ if (NULL != fp) { ++ fclose(fp); ++ } ++} ++ diff --git a/org.handhelds.familiar/packages/bluez/bluez-utils/hcid.conf b/org.handhelds.familiar/packages/bluez/bluez-utils/hcid.conf new file mode 100644 index 0000000..bb935aa --- /dev/null +++ b/org.handhelds.familiar/packages/bluez/bluez-utils/hcid.conf @@ -0,0 +1,57 @@ +# +# HCI daemon configuration file. +# + +# HCId options +options { + # Automatically initialize new devices + autoinit yes; + + # Security Manager mode + # none - Security manager disabled + # auto - Use local PIN for incoming connections + # user - Always ask user for a PIN + # + security auto; + + # Pairing mode + # none - Pairing disabled + # multi - Allow pairing with already paired devices + # once - Pair once and deny successive attempts + pairing multi; + + # Default PIN code for incoming connections + passkey "BlueZ"; +} + +# Default settings for HCI devices +device { + # Local device name + # %d - device id + # %h - host name + name "BlueZ (%d)"; + + # Local device class + class 0x120112; + + # Default packet type + #pkt_type DH1,DM1,HV1; + + # Inquiry and Page scan + iscan enable; pscan enable; + + # Default link mode + # none - no specific policy + # accept - always accept incoming connections + # master - become master on incoming connections, + # deny role switch on outgoing connections + lm accept; + + # Default link policy + # none - no specific policy + # rswitch - allow role switch + # hold - allow hold mode + # sniff - allow sniff mode + # park - allow park mode + lp rswitch,hold,sniff,park; +} diff --git a/org.handhelds.familiar/packages/bluez/bluez-utils_3.4.bb b/org.handhelds.familiar/packages/bluez/bluez-utils_3.4.bb new file mode 100644 index 0000000..49e6ded --- /dev/null +++ b/org.handhelds.familiar/packages/bluez/bluez-utils_3.4.bb @@ -0,0 +1,53 @@ +DESCRIPTION = "Linux Bluetooth Stack Userland Utilities." +SECTION = "console" +PRIORITY = "optional" +DEPENDS = "bluez-libs-${PV} dbus" +PROVIDES = "bluez-utils-dbus" +RPROVIDES_${PN} = "bluez-pan bluez-sdp bluez-utils-dbus" +RREPLACES = "bluez-utils-dbus" +RCONFLICTS_${PN} = "bluez-utils-nodbus" +LICENSE = "GPL" +PR = "r1" + +SRC_URI = "http://bluez.sourceforge.net/download/bluez-utils-${PV}.tar.gz \ + file://hcid.conf \ + file://02dtl1_cs.sh \ + file://hciattach-ti-bts.patch;patch=1" + +# Almost all serial CF cards w/ manfid 0x0000,0x0000 seem to use the bcs protocol +# Let's default to that instead of 'any' until further notice... +SRC_URI += " file://default-manfid-0x0-to-bcps.patch;patch=1" + +S = "${WORKDIR}/bluez-utils-${PV}" + +EXTRA_OECONF = "--enable-initscripts --enable-bcm203x --enable-hid2hci" +# --enable-obex enable OBEX support +# --enable-alsa enable ALSA support +# --enable-cups install CUPS backend support +# --enable-bccmd install BCCMD interface utility +# --enable-avctrl install Audio/Video control utility +# --enable-hid2hci install HID mode switching utility +# --enable-dfutool install DFU firmware upgrade utility + +inherit autotools update-rc.d + +INITSCRIPT_NAME = "bluetooth" +INITSCRIPT_PARAMS = "defaults 23 19" + +do_install_append() { + install -d ${D}${base_sbindir} ${D}${base_bindir}/ ${D}${sysconfdir}/apm/event.d/ + mv ${D}${sbindir}/* ${D}${base_sbindir}/ + mv ${D}${bindir}/* ${D}${base_bindir}/ + rmdir ${D}${bindir} ${D}${sbindir} + chmod u+s ${D}${base_sbindir}/hciattach ${D}${base_sbindir}/hciconfig + install -m 0644 ${WORKDIR}/hcid.conf ${D}${sysconfdir}/bluetooth/ + install -m 0755 ${WORKDIR}/02dtl1_cs.sh ${D}${sysconfdir}/apm/event.d/ +} + +CONFFILES_${PN} = "${sysconfdir}/bluetooth/hcid.conf ${sysconfdir}/bluetooth/rfcomm.conf \ + ${sysconfdir}/default/bluetooth" + +PACKAGES =+ "${PN}-ciptool" +FILES_${PN}-ciptool = "/bin/ciptool" +RREPLACES_${PN}-ciptool = "bluez-utils-dbus-ciptool" +RCONFLICTS_${PN}-ciptool = "bluez-utils-dbus-ciptool bluez-utils-nodbus" diff --git a/org.handhelds.familiar/packages/bluez/bluez-utils_3.4/hciattach-ti-bts.patch b/org.handhelds.familiar/packages/bluez/bluez-utils_3.4/hciattach-ti-bts.patch new file mode 100644 index 0000000..8fe37de --- /dev/null +++ b/org.handhelds.familiar/packages/bluez/bluez-utils_3.4/hciattach-ti-bts.patch @@ -0,0 +1,489 @@ +--- bluez-utils-2.24/tools/hciattach.c.orig 2005-12-10 15:14:36.000000000 +0100 ++++ bluez-utils-2.24/tools/hciattach.c 2006-01-22 13:56:13.000000000 +0100 +@@ -57,6 +57,8 @@ + #define HCI_UART_3WIRE 2 + #define HCI_UART_H4DS 3 + ++#include "ti_bts.h" ++ + struct uart_t { + char *type; + int m_id; +@@ -66,6 +68,7 @@ + int speed; + int flags; + int (*init) (int fd, struct uart_t *u, struct termios *ti); ++ char *bts; /* bluetooth script */ + }; + + #define FLOW_CTL 0x0001 +@@ -241,6 +244,114 @@ + return 0; + } + ++static int brf6150(int fd, struct uart_t *u, struct termios *ti) ++{ ++ bts_t *bfp; ++ int i; ++ unsigned long vers; ++ unsigned char actionbuf[256]; ++ unsigned char resp[128]; /* Response */ ++ unsigned long count; ++ unsigned short atype; ++ ++ if (u->bts == NULL) /* no script, ignore */ ++ return 0; ++ ++ bfp = bts_load_script( u->bts, &vers ); ++ if (bfp == NULL) ++ return -1; ++ ++ fprintf( stderr, "Loading BTS script version %lu\n", vers ); ++ ++ while ((count = bts_next_action( bfp, actionbuf, ++ sizeof actionbuf - 1, &atype )) != 0) { ++ if (atype == ACTION_REMARKS) { ++ if (actionbuf[0] != 0) ++ fprintf( stderr, "%s\n", actionbuf ); ++ } ++ else if (atype == ACTION_SEND_COMMAND) { ++#if 0 ++ fprintf( stderr, "ACTION_SEND_COMMAND: ", (int)atype ); ++ for (i=0; i<count; i++) { ++ fprintf( stderr, "0x%02x ", actionbuf[i] ); ++ } ++ fprintf( stderr, "\n" ); ++#endif ++ int n; ++ n = write(fd, actionbuf, count); ++ if (n < 0 || n < count) { ++ perror("Failed to write TI action command"); ++ return -1; ++ } ++ } ++ else if (atype == ACTION_WAIT_EVENT) { ++ action_wait_t *wait = (action_wait_t *)actionbuf; ++#if 0 ++ fprintf( stderr, "ACTION_WAIT_EVENT: %u msec, %u size, data = ", wait->msec, wait->size ); ++ for (i=0; i<wait->size; i++) { ++ fprintf( stderr, "0x%02x ", wait->data[i] ); ++ } ++ fprintf( stderr, "\n" ); ++#endif ++ usleep(wait->msec); /* seems they give usec, not msec */ ++ /* Read reply. */ ++ if ((count = read_hci_event(fd, resp, sizeof resp)) < 0) { ++ perror("Failed to read TI command response"); ++ return -1; ++ } ++ if (count < wait->size) { ++ fprintf( stderr, "TI command response is short."); ++ } ++ for (i=0; i<wait->size; i++) { ++ if (i == 3) continue; /* ignore */ ++ if (resp[i] != wait->data[i]) { ++ fprintf( stderr, "TI command response does not match expected result.\n" ); ++ } ++ } ++ } ++ else if (atype == ACTION_SERIAL_PORT_PARAMETERS) { ++ action_serial_t *sercmd = (action_serial_t *)actionbuf; ++ ++ /* Set actual baudrate */ ++ fprintf( stderr, ++ "BTS changing baud rate to %u, flow control to %u\n", ++ sercmd->baud, sercmd->flow_control ); ++ ++ tcflush(fd, TCIOFLUSH); ++ ++ if (sercmd->flow_control) ++ ti->c_cflag |= CRTSCTS; ++ else ++ ti->c_cflag &= ~CRTSCTS; ++ if (tcsetattr(fd, TCSANOW, ti) < 0) { ++ perror("Can't set port settings"); ++ return -1; ++ } ++ ++ u->speed = sercmd->baud; ++ ++ tcflush(fd, TCIOFLUSH); ++ if (set_speed(fd, ti, sercmd->baud) < 0) { ++ perror("Can't set baud rate"); ++ return -1; ++ } ++ } ++ else if (atype == ACTION_DELAY) { ++ action_delay_t *delay = (action_delay_t *)actionbuf; ++ usleep(delay->msec); /* seems they give usec, not msec */ ++ } ++ else { ++ fprintf( stderr, "BTS action type = %d: ", (int)atype ); ++ for (i=0; i<count; i++) { ++ fprintf( stderr, "0x%02x ", actionbuf[i] ); ++ } ++ fprintf( stderr, "\n" ); ++ } ++ } ++ bts_unload_script( bfp ); ++ return 0; ++} ++ + static int texas(int fd, struct uart_t *u, struct termios *ti) + { + struct timespec tm = {0, 50000}; +@@ -281,14 +392,25 @@ + } while (resp[4] != cmd[1] && resp[5] != cmd[2]); + + /* Verify manufacturer */ +- if ((resp[11] & 0xFF) != 0x0d) ++ if (resp[11] != 0x0d) + fprintf(stderr,"WARNING : module's manufacturer is not Texas Instrument\n"); + + /* Print LMP version */ +- fprintf(stderr, "Texas module LMP version : 0x%02x\n", resp[10] & 0xFF); ++ fprintf(stderr, "TI module LMP version : 0x%02x\n", resp[10]); + + /* Print LMP subversion */ +- fprintf(stderr, "Texas module LMP sub-version : 0x%02x%02x\n", resp[14] & 0xFF, resp[13] & 0xFF); ++ fprintf(stderr, "TI module LMP sub-version : 0x%02x%02x\n", resp[14], resp[13]); ++ if ((resp[14] >> 2) == 3) { ++ int err; ++ nanosleep(&tm, NULL); ++ ++ /* BRF6150 */ ++ if ((err=brf6150( fd, u, ti )) != 0) { ++ fprintf( stderr, "TI script failed (err=%d)\n", ++ err ); ++ return -1; ++ } ++ } + + nanosleep(&tm, NULL); + return 0; +@@ -953,7 +1075,7 @@ + { + printf("hciattach - HCI UART driver initialization utility\n"); + printf("Usage:\n"); +- printf("\thciattach [-n] [-p] [-b] [-t timeout] [-s initial_speed] <tty> <type | id> [speed] [flow|noflow]\n"); ++ printf("\thciattach [-n] [-p] [-b] [-t timeout] [-s initial_speed] [-S bts-script] <tty> <type | id> [speed] [flow|noflow]\n"); + printf("\thciattach -l\n"); + } + +@@ -970,11 +1092,12 @@ + pid_t pid; + struct sigaction sa; + char dev[PATH_MAX]; ++ char *bts = NULL; + + detach = 1; + printpid = 0; + +- while ((opt=getopt(argc, argv, "bnpt:s:l")) != EOF) { ++ while ((opt=getopt(argc, argv, "bnpt:s:S:l")) != EOF) { + switch(opt) { + case 'b': + send_break = 1; +@@ -996,6 +1119,10 @@ + init_speed = atoi(optarg); + break; + ++ case 'S': ++ bts = optarg; ++ break; ++ + case 'l': + for (i = 0; uart[i].type; i++) { + printf("%-10s0x%04x,0x%04x\n", uart[i].type, +@@ -1067,6 +1194,8 @@ + if (init_speed) + u->init_speed = init_speed; + ++ u->bts = bts; ++ + memset(&sa, 0, sizeof(sa)); + sa.sa_flags = SA_NOCLDSTOP; + sa.sa_handler = sig_alarm; +--- bluez-utils-2.24/tools/Makefile.am.orig 2005-12-03 07:22:16.000000000 +0100 ++++ bluez-utils-2.24/tools/Makefile.am 2006-01-22 13:53:59.000000000 +0100 +@@ -37,6 +37,9 @@ + + noinst_PROGRAMS = hcisecfilter ppporc + ++hciattach_SOURCES = hciattach.c ti_bts.h ti_bts.c ++hciattach_LDADD = @BLUEZ_LIBS@ ++ + hciconfig_SOURCES = hciconfig.c csr.h csr.c + hciconfig_LDADD = @BLUEZ_LIBS@ $(top_builddir)/common/libtextfile.a + +--- bluez-utils-2.24/tools/ti_bts.h.orig 2006-01-22 13:56:38.000000000 +0100 ++++ bluez-utils-2.24/tools/ti_bts.h 2006-01-22 13:53:59.000000000 +0100 +@@ -0,0 +1,116 @@ ++/* ++ * Copyright (c) 2005 Texas Instruments, Inc. ++ * Ported by SDG Systems, LLC ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation; ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. ++ * IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) AND AUTHOR(S) BE LIABLE FOR ANY ++ * CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF ++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ * ++ * ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PATENTS, ++ * COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS, RELATING TO USE OF THIS ++ * SOFTWARE IS DISCLAIMED. ++ * ++ */ ++ ++#ifndef BT_SCRIPT_H ++#define BT_SCRIPT_H ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++/* ++ * Define the interface of Bluetooth Script ++ */ ++ ++typedef void bts_t; ++ ++ ++#define ACTION_SEND_COMMAND 1 /* Send out raw data (as is) */ ++#define ACTION_WAIT_EVENT 2 /* Wait for data */ ++#define ACTION_SERIAL_PORT_PARAMETERS 3 ++#define ACTION_DELAY 4 ++#define ACTION_RUN_SCRIPT 5 ++#define ACTION_REMARKS 6 ++ ++/* ++ * Structure for ACTION_SEND_COMMAND ++ */ ++typedef struct tagCActionCommand ++{ ++ unsigned char data[1]; /* Data to send */ ++} action_command_t; ++ ++/* ++ * Structure for ACTION_WAIT_EVENT ++ */ ++typedef struct tagCActionWaitEvent ++{ ++ unsigned long msec; /* in milliseconds */ ++ unsigned long size; ++ unsigned char data[1]; /* Data to wait for */ ++} action_wait_t; ++ ++ ++/* ++ * Structure for ACTION_SERIAL_PORT_PARAMETERS ++ */ ++typedef struct tagCActionSerialPortParameters ++{ ++ unsigned long baud; ++ unsigned long flow_control; ++} action_serial_t; ++ ++/* Flow Control Type */ ++#define FCT_NONE 0 ++#define FCT_HARDWARE 1 ++ ++#define DONT_CHANGE 0xFFFFFFFF /* For both baud rate and flow control */ ++ ++ ++/* ++ * Structure for ACTION_DELAY ++ */ ++typedef struct tagCActionDelay ++{ ++ unsigned long msec; /* in milliseconds */ ++} action_delay_t; ++ ++/* ++ * Structure for ACTION_RUN_SCRIPT ++ */ ++typedef struct tagCActionRunScript ++{ ++ char filename[1]; ++} action_run_t; ++ ++/* ++ * Structure for ACTION_REMARKS ++ */ ++typedef struct tagCActionRemarks ++{ ++ char m_szRemarks[1]; ++} action_remarks_t; ++ ++ ++const char *cis_create_filename(const unsigned char* cmdparms); ++bts_t * bts_load_script(const char* fname, unsigned long* version); ++unsigned long bts_next_action(const bts_t* bts_fp, unsigned char* action_buf, ++ unsigned long nMaxSize, unsigned short* ptype); ++void bts_unload_script(bts_t* bts_fp); ++ ++#ifdef __cplusplus ++}; ++#endif ++ ++#endif /* BT_SCRIPT_H */ ++ +--- bluez-utils-2.24/tools/ti_bts.c.orig 2006-01-22 13:56:36.000000000 +0100 ++++ bluez-utils-2.24/tools/ti_bts.c 2006-01-22 13:56:31.000000000 +0100 +@@ -0,0 +1,149 @@ ++/* ++ * Copyright (c) 2005 Texas Instruments, Inc. ++ * Ported by SDG Systems, LLC ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License version 2 as ++ * published by the Free Software Foundation; ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS ++ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. ++ * IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) AND AUTHOR(S) BE LIABLE FOR ANY ++ * CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES ++ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ++ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF ++ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ++ * ++ * ALL LIABILITY, INCLUDING LIABILITY FOR INFRINGEMENT OF ANY PATENTS, ++ * COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS, RELATING TO USE OF THIS ++ * SOFTWARE IS DISCLAIMED. ++ * ++ */ ++ ++ ++#include <stdio.h> ++#include <stdlib.h> ++#include "ti_bts.h" ++ ++#ifndef MAKEWORD ++#define MAKEWORD(a, b) ((unsigned short)(((unsigned char)(a)) | ((unsigned short)((unsigned char)(b))) << 8)) ++#endif ++ ++#define TI_MANUFACTURER_ID 13 ++ ++/* ++ * Common Init Script specific ++ */ ++const char * ++cis_create_filename(const unsigned char* cmdparms) ++{ ++ static char bts_file[50]; ++ ++ /* Check for TI's id */ ++ unsigned short manfid = MAKEWORD(cmdparms[8], cmdparms[9]); ++ ++ if (TI_MANUFACTURER_ID == manfid) { ++ unsigned short version = MAKEWORD(cmdparms[10], cmdparms[11]); ++ ++ unsigned short chip = (version & 0x7C00) >> 10; ++ unsigned short min_ver = (version & 0x007F); ++ unsigned short maj_ver = (version & 0x0380) >> 7; ++ ++ if (0 != (version & 0x8000)) { ++ maj_ver |= 0x0008; ++ } ++ ++ sprintf( bts_file, "TIInit_%d.%d.%d.bts", ++ (int)chip, (int)maj_ver, (int)min_ver); ++ ++ return &bts_file[0]; ++ } ++ return NULL; ++} ++ ++typedef struct tagCHeader ++{ ++ unsigned long magic; ++ unsigned long version; ++ unsigned char future[24]; ++} cheader_t; ++ ++ ++/* The value 0x42535442 stands for (in ASCII) BTSB */ ++/* which is Bluetooth Script Binary */ ++#define FILE_HEADER_MAGIC 0x42535442 ++ ++ ++bts_t * ++bts_load_script(const char* fname, unsigned long* version) ++{ ++ bts_t* bts = NULL; ++ FILE* fp = fopen(fname, "rb"); ++ ++ if (NULL != fp) { ++ /* Read header */ ++ cheader_t header; ++ ++ /* Read header */ ++ if (1 == fread(&header, sizeof(header), 1, fp)) { ++ /* Check magic number for correctness */ ++ if (header.magic == FILE_HEADER_MAGIC) { ++ /* If user wants the version number */ ++ if (NULL != version) { ++ *version = header.version; ++ } ++ bts = (bts_t*)fp; ++ } ++ } ++ /* If failed reading the file, close it */ ++ if (NULL == bts) { ++ fclose(fp); ++ } ++ } ++ return bts; ++} ++ ++unsigned long ++bts_next_action(const bts_t* bts_fp, unsigned char* action_buf, ++ unsigned long nMaxSize, unsigned short* ptype) ++{ ++ unsigned long bytes = 0; ++ FILE* fp = (FILE*)bts_fp; ++ unsigned char action_hdr[4]; ++ ++ if (bts_fp == NULL) ++ return 0; ++ ++ /* Each Action has the following: */ ++ /* UINT16 type of this action */ ++ /* UINT16 size of rest */ ++ /* BYTE[] action buffer (for HCI, includes the type byte e.g. 1 for hci command) */ ++ ++ if (1 == fread(&action_hdr[0], sizeof(action_hdr), 1, fp)) { ++ unsigned short type = *(unsigned short*)&action_hdr[0]; ++ unsigned short size = *(unsigned short*)&action_hdr[2]; ++ ++ if (size <= nMaxSize) { ++ int nread = fread(action_buf, sizeof(action_buf[0]), size, fp); ++ ++ if (nread == size) { ++ *ptype = type; ++ bytes = (unsigned long)size; ++ } ++ } ++ } ++ ++ return bytes; ++} ++ ++void ++bts_unload_script(bts_t* bts_fp) ++{ ++ FILE* fp = (FILE*)bts_fp; ++ ++ if (NULL != fp) { ++ fclose(fp); ++ } ++} ++ diff --git a/org.handhelds.familiar/packages/dbus/dbus-1.0.1/cross.patch b/org.handhelds.familiar/packages/dbus/dbus-1.0.1/cross.patch new file mode 100644 index 0000000..268a3ae --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-1.0.1/cross.patch @@ -0,0 +1,10 @@ +--- /tmp/configure.in 2006-11-09 21:47:10.000000000 +0100 ++++ dbus-0.95/configure.in 2006-11-09 21:48:13.108554000 +0100 +@@ -719,6 +719,7 @@ + exit (0); + ]])], + [ac_cv_have_abstract_sockets=yes], ++ [ac_cv_have_abstract_sockets=no], + [ac_cv_have_abstract_sockets=no] + )]) + AC_LANG_POP(C) diff --git a/org.handhelds.familiar/packages/dbus/dbus-1.0.1/dbus-1.init b/org.handhelds.familiar/packages/dbus/dbus-1.0.1/dbus-1.init new file mode 100644 index 0000000..38e7574 --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-1.0.1/dbus-1.init @@ -0,0 +1,96 @@ +#! /bin/sh +# -*- coding: utf-8 -*- +# Debian init.d script for D-BUS +# Copyright © 2003 Colin Walters <walters@debian.org> + +set -e + +DAEMON=/usr/bin/dbus-daemon +NAME=dbus +DAEMONUSER=messagebus +PIDDIR=/var/run/dbus +PIDFILE=$PIDDIR/pid +UUIDDIR=/var/lib/dbus +DESC="system message bus" +EVENTDIR=/etc/dbus-1/event.d + +test -x $DAEMON || exit 0 + +# Source defaults file; edit that file to configure this script. +ENABLED=1 +PARAMS="" +if [ -e /etc/default/dbus ]; then + . /etc/default/dbus +fi + +test "$ENABLED" != "0" || exit 0 + +start_it_up() +{ + if [ ! -d $PIDDIR ]; then + mkdir -p $PIDDIR + chown $DAEMONUSER $PIDDIR + chgrp $DAEMONUSER $PIDDIR + fi + if [ -e $PIDFILE ]; then + PIDDIR=/proc/$(cat $PIDFILE) + if [ -d ${PIDDIR} -a "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then + echo "$DESC already started; not starting." + else + echo "Removing stale PID file $PIDFILE." + rm -f $PIDFILE + fi + fi + + if [ ! -d $UUIDDIR ]; then + mkdir -p $UUIDDIR + chown $DAEMONUSER $UUIDDIR + chgrp $DAEMONUSER $UUIDDIR + fi + + dbus-uuidgen --ensure + + echo -n "Starting $DESC: " + start-stop-daemon --start --quiet --pidfile $PIDFILE \ + --user $DAEMONUSER --exec $DAEMON -- --system $PARAMS + echo "$NAME." + if [ -d $EVENTDIR ]; then + run-parts --arg=start $EVENTDIR + fi +} + +shut_it_down() +{ + if [ -d $EVENTDIR ]; then + run-parts --reverse --arg=stop $EVENTDIR + fi + echo -n "Stopping $DESC: " + start-stop-daemon --stop --quiet --pidfile $PIDFILE \ + --user $DAEMONUSER + # We no longer include these arguments so that start-stop-daemon + # can do its job even given that we may have been upgraded. + # We rely on the pidfile being sanely managed + # --exec $DAEMON -- --system $PARAMS + echo "$NAME." + rm -f $PIDFILE +} + +case "$1" in + start) + start_it_up + ;; + stop) + shut_it_down + ;; + restart|force-reload) + shut_it_down + sleep 1 + start_it_up + ;; + *) + echo "Usage: /etc/init.d/$NAME {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/org.handhelds.familiar/packages/dbus/dbus-1.0.1/fix-install-daemon.patch b/org.handhelds.familiar/packages/dbus/dbus-1.0.1/fix-install-daemon.patch new file mode 100644 index 0000000..c317863 --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-1.0.1/fix-install-daemon.patch @@ -0,0 +1,13 @@ +Index: dbus-0.94/bus/Makefile.am +=================================================================== +--- dbus-0.94.orig/bus/Makefile.am 2006-10-01 17:36:18.000000000 +0200 ++++ dbus-0.94/bus/Makefile.am 2006-10-14 21:40:05.000000000 +0200 +@@ -110,7 +110,7 @@ + $(mkinstalldirs) $(DESTDIR)$(DBUS_DAEMONDIR); \ + chmod 755 $(DESTDIR)$(DBUS_DAEMONDIR); \ + fi +- $(INSTALL_PROGRAM) dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR) ++ $(INSTALL_PROGRAM) .libs/dbus-daemon $(DESTDIR)$(DBUS_DAEMONDIR) + $(mkinstalldirs) $(DESTDIR)$(localstatedir)/run/dbus + $(mkinstalldirs) $(DESTDIR)$(configdir)/system.d + $(mkinstalldirs) $(DESTDIR)$(datadir)/dbus-1/services diff --git a/org.handhelds.familiar/packages/dbus/dbus-glib-native/run-with-tmp-session-bus.patch b/org.handhelds.familiar/packages/dbus/dbus-glib-native/run-with-tmp-session-bus.patch new file mode 100644 index 0000000..186abdb --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-glib-native/run-with-tmp-session-bus.patch @@ -0,0 +1,32 @@ +--- dbus-glib-0.71/tools/Makefile.am.orig 2006-08-27 12:54:34.351198198 +0200 ++++ dbus-glib-0.71/tools/Makefile.am 2006-08-27 12:55:12.533584373 +0200 +@@ -9,7 +9,7 @@ + BUILT_SOURCES = dbus-glib-bindings.h dbus-bus-introspect.xml + + dbus-bus-introspect.xml: +- DBUS_TOP_BUILDDIR=$(top_builddir) dbus-send --system --print-reply=literal --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.Introspectable.Introspect > dbus-bus-introspect.xml.tmp && mv dbus-bus-introspect.xml.tmp dbus-bus-introspect.xml ++ DBUS_TOP_BUILDDIR=$(top_builddir) ./run-with-tmp-session-bus.sh dbus-send --print-reply=literal --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.Introspectable.Introspect > dbus-bus-introspect.xml.tmp && mv dbus-bus-introspect.xml.tmp dbus-bus-introspect.xml + + EXTRA_DIST = run-with-tmp-session-bus.sh + +--- dbus-glib-0.71/tools/run-with-tmp-session-bus.sh.orig 2006-08-27 11:52:17.497666746 +0200 ++++ dbus-glib-0.71/tools/run-with-tmp-session-bus.sh 2006-08-27 12:53:22.626715838 +0200 +@@ -27,16 +27,15 @@ + echo "escaped service dir is: $ESCAPED_SERVICE_DIR" >&2 + + ## create a configuration file based on the standard session.conf +-cat $DBUS_TOP_BUILDDIR/tools/session.conf | \ ++cat $datadir/dbus/session.conf | \ + sed -e 's/<servicedir>.*$/<servicedir>'$ESCAPED_SERVICE_DIR'<\/servicedir>/g' | \ + sed -e 's/<include.*$//g' \ + > $CONFIG_FILE + + echo "Created configuration file $CONFIG_FILE" >&2 + +-export PATH=$DBUS_TOP_BUILDDIR/bus:$PATH + ## the libtool script found by the path search should already do this, but +-export LD_LIBRARY_PATH=$DBUS_TOP_BUILDDIR/dbus/.libs:$LD_LIBRARY_PATH ++export LD_LIBRARY_PATH=$libdir:$LD_LIBRARY_PATH + + unset DBUS_SESSION_BUS_ADDRESS + unset DBUS_SESSION_BUS_PID diff --git a/org.handhelds.familiar/packages/dbus/dbus-glib-native_0.71.bb b/org.handhelds.familiar/packages/dbus/dbus-glib-native_0.71.bb new file mode 100644 index 0000000..1f5d71d --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-glib-native_0.71.bb @@ -0,0 +1,22 @@ +SECTION = "base" +PR = "r0" +HOMEPAGE = "http://www.freedesktop.org/Software/dbus" +DESCRIPTION = "message bus system for applications to talk to one another" +LICENSE = "GPL" + +SRC_URI = "http://freedesktop.org/software/dbus/releases/dbus-glib-${PV}.tar.gz \ + file://cross.patch;patch=1 \ + file://run-with-tmp-session-bus.patch;patch=1" + +inherit autotools pkgconfig gettext native + +S = "${WORKDIR}/dbus-glib-${PV}" +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/dbus-glib" +DEPENDS = "glib-2.0-native dbus-native" + +do_stage() { + oe_runmake install + install -d ${STAGING_DATADIR}/dbus + install -m 0644 tools/dbus-bus-introspect.xml ${STAGING_DATADIR}/dbus + install -m 0644 tools/dbus-glib-bindings.h ${STAGING_DATADIR}/dbus +} diff --git a/org.handhelds.familiar/packages/dbus/dbus-glib/cross.patch b/org.handhelds.familiar/packages/dbus/dbus-glib/cross.patch new file mode 100644 index 0000000..6d1d9d8 --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-glib/cross.patch @@ -0,0 +1,15 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- dbus-0.20/configure.in~cross ++++ dbus-0.20/configure.in +@@ -466,6 +466,7 @@ + exit (0); + ]])], + [have_abstract_sockets=yes], ++ [have_abstract_sockets=no], + [have_abstract_sockets=no]) + AC_LANG_POP(C) + AC_MSG_RESULT($have_abstract_sockets) diff --git a/org.handhelds.familiar/packages/dbus/dbus-glib/no-examples.patch b/org.handhelds.familiar/packages/dbus/dbus-glib/no-examples.patch new file mode 100644 index 0000000..483153d --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-glib/no-examples.patch @@ -0,0 +1,8 @@ +--- dbus-glib-0.70/dbus/Makefile.am.orig 2006-07-23 16:04:43.000000000 +0200 ++++ dbus-glib-0.70/dbus/Makefile.am 2006-07-23 16:04:52.000000000 +0200 +@@ -1,4 +1,4 @@ +-SUBDIRS = . examples ++SUBDIRS = . + + INCLUDES=-I$(top_srcdir) $(DBUS_CFLAGS) $(DBUS_GLIB_CFLAGS) $(DBUS_GLIB_TOOL_CFLAGS) -DDBUS_COMPILATION=1 -DDBUS_LOCALEDIR=\"$(prefix)/@DATADIRNAME@/locale\" + diff --git a/org.handhelds.familiar/packages/dbus/dbus-glib/no-introspect.patch b/org.handhelds.familiar/packages/dbus/dbus-glib/no-introspect.patch new file mode 100644 index 0000000..7057a63 --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-glib/no-introspect.patch @@ -0,0 +1,17 @@ +--- dbus-glib-0.70/tools/Makefile.am.orig 2006-07-23 15:53:06.000000000 +0200 ++++ dbus-glib-0.70/tools/Makefile.am 2006-07-23 15:53:53.000000000 +0200 +@@ -3,14 +3,8 @@ + nodist_libdbus_glib_HEADERS = dbus-glib-bindings.h + libdbus_glibdir = $(includedir)/dbus-1.0/dbus + +-dbus-glib-bindings.h: dbus-bus-introspect.xml $(top_builddir)/dbus/dbus-binding-tool$(EXEEXT) +- $(top_builddir)/dbus/dbus-binding-tool --mode=glib-client --output=dbus-glib-bindings.h dbus-bus-introspect.xml +- + BUILT_SOURCES = dbus-glib-bindings.h dbus-bus-introspect.xml + +-dbus-bus-introspect.xml: +- DBUS_TOP_BUILDDIR=$(top_builddir) dbus-send --system --print-reply=literal --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.Introspectable.Introspect > dbus-bus-introspect.xml.tmp && mv dbus-bus-introspect.xml.tmp dbus-bus-introspect.xml +- + EXTRA_DIST = run-with-tmp-session-bus.sh + + CLEANFILES = \ diff --git a/org.handhelds.familiar/packages/dbus/dbus-glib_0.71.bb b/org.handhelds.familiar/packages/dbus/dbus-glib_0.71.bb new file mode 100644 index 0000000..26bc851 --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-glib_0.71.bb @@ -0,0 +1,29 @@ +SECTION = "base" +PR = "r0" +HOMEPAGE = "http://www.freedesktop.org/Software/dbus" +DESCRIPTION = "message bus system for applications to talk to one another" +LICENSE = "GPL" +DEPENDS = "expat glib-2.0 virtual/libintl dbus-glib-native dbus" + +SRC_URI = "http://freedesktop.org/software/dbus/releases/dbus-glib-${PV}.tar.gz \ + file://cross.patch;patch=1 \ + file://no-examples.patch;patch=1 \ + file://no-introspect.patch;patch=1" + +inherit autotools pkgconfig gettext + +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${libdir}/dbus-1.0/include ${bindir}/dbus-glib-tool" + +do_configure_prepend() { + install -m 0644 ${STAGING_DIR}/${BUILD_SYS}/share/dbus/dbus-bus-introspect.xml ${S}/tools/ + install -m 0644 ${STAGING_DIR}/${BUILD_SYS}/share/dbus/dbus-glib-bindings.h ${S}/tools/ +} + +do_stage () { + oe_libinstall -so -C dbus libdbus-glib-1 ${STAGING_LIBDIR} + + autotools_stage_includes +} + +FILES_${PN}-dev += "${bindir}/dbus-binding-tool" diff --git a/org.handhelds.familiar/packages/dbus/dbus-native_1.0.1.bb b/org.handhelds.familiar/packages/dbus/dbus-native_1.0.1.bb new file mode 100644 index 0000000..a897ae5 --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus-native_1.0.1.bb @@ -0,0 +1,31 @@ +DESCRIPTION = "message bus system for applications to talk to one another" +HOMEPAGE = "http://www.freedesktop.org/Software/dbus" +LICENSE = "GPL" +SECTION = "base" + +PR = "r0" + +DEPENDS = "glib-2.0-native libxml2-native expat-native" + + +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/dbus-1.0.1" +SRC_URI = "http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \ + file://cross.patch;patch=1 \ + " + +inherit autotools pkgconfig gettext native + +S = "${WORKDIR}/dbus-${PV}" + +EXTRA_OECONF = "--disable-qt --disable-qt3 --disable-gtk --disable-tests \ + --disable-checks --disable-xml-docs --disable-doxygen-docs \ + --with-xml=expat --without-x" + +do_stage () { + oe_runmake install + autotools_stage_all + + # for dbus-glib-native introspection generation + install -d ${STAGING_DATADIR}/dbus + install -m 0644 bus/session.conf ${STAGING_DATADIR}/dbus/session.conf +} diff --git a/org.handhelds.familiar/packages/dbus/dbus/fix-segfault.patch b/org.handhelds.familiar/packages/dbus/dbus/fix-segfault.patch new file mode 100644 index 0000000..de5bcff --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus/fix-segfault.patch @@ -0,0 +1,11 @@ +--- /tmp/dbus-marshal-recursive.c 2006-07-28 14:58:08.000000000 +0200 ++++ dbus-0.90/dbus/dbus-marshal-recursive.c 2006-07-28 14:58:18.724411000 +0200 +@@ -1294,7 +1294,7 @@ + _dbus_string_get_length (&block->replacement) - block->padding, + &fixups)) + goto oom; +- ++printf("%s(%d)""got here", __FILE__, __LINE__); + #if RECURSIVE_MARSHAL_WRITE_TRACE + _dbus_verbose ("REPLACEMENT at padding %d len %d\n", block->padding, + _dbus_string_get_length (&block->replacement) - block->padding); diff --git a/org.handhelds.familiar/packages/dbus/dbus_1.0.1.bb b/org.handhelds.familiar/packages/dbus/dbus_1.0.1.bb new file mode 100644 index 0000000..49112f3 --- /dev/null +++ b/org.handhelds.familiar/packages/dbus/dbus_1.0.1.bb @@ -0,0 +1,65 @@ +DEFAULT_PREFERENCE = "-1" + +SECTION = "base" +HOMEPAGE = "http://www.freedesktop.org/Software/dbus" +DESCRIPTION = "message bus system for applications to talk to one another" +LICENSE = "GPL" +DEPENDS = "expat glib-2.0 virtual/libintl" + +PR = "r1" + +SRC_URI = "http://dbus.freedesktop.org/releases/dbus/dbus-${PV}.tar.gz \ + file://tmpdir.patch;patch=1 \ + file://dbus-1.init \ + file://fix-segfault.patch;patch=1 \ + file://cross.patch;patch=1 \ + file://fix-install-daemon.patch;patch=1" + +inherit autotools pkgconfig update-rc.d gettext + +INITSCRIPT_NAME = "dbus-1" +INITSCRIPT_PARAMS = "defaults" + +CONFFILES_${PN} = "${sysconfdir}/dbus-1/system.conf ${sysconfdir}/dbus-1/session.conf" + +FILES_${PN} = "${bindir}/dbus-daemon ${bindir}/dbus-launch ${bindir}/dbus-cleanup-sockets ${bindir}/dbus-send ${bindir}/dbus-monitor ${bindir}/dbus-uuidgen ${sysconfdir} ${datadir}/dbus-1/services ${libdir}/lib*.so.*" +FILES_${PN}-dev += "${libdir}/dbus-1.0/include" + +pkg_postinst_dbus() { +#!/bin/sh + +# can't do adduser stuff offline +if [ "x$D" != "x" ]; then + exit 1 +fi + +MESSAGEUSER=messagebus +MESSAGEHOME=/var/run/dbus + +mkdir -p $MESSAGEHOME || true +chgrp "$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || addgroup "$MESSAGEUSER" +chown "$MESSAGEUSER"."$MESSAGEUSER" "$MESSAGEHOME" 2>/dev/null || adduser --system --home "$MESSAGEHOME" --no-create-home --disabled-password --ingroup "$MESSAGEUSER" "$MESSAGEUSER" +} + +EXTRA_OECONF = "--disable-qt --disable-qt3 --disable-gtk --disable-tests \ + --disable-checks --disable-xml-docs --disable-doxygen-docs \ + --with-xml=expat --without-x" + +do_stage () { + oe_libinstall -so -C dbus libdbus-1 ${STAGING_LIBDIR} + + autotools_stage_includes + + mkdir -p ${STAGING_LIBDIR}/dbus-1.0/include/dbus/ + install -m 0644 dbus/dbus-arch-deps.h ${STAGING_LIBDIR}/dbus-1.0/include/dbus/ +} + +do_install_append () { + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/dbus-1.init ${D}${sysconfdir}/init.d/dbus-1 +} + +python populate_packages_prepend () { + if (bb.data.getVar('DEBIAN_NAMES', d, 1)): + bb.data.setVar('PKG_dbus', 'dbus-1', d) +} diff --git a/org.handhelds.familiar/packages/gnome/files/gtk-doc.m4 b/org.handhelds.familiar/packages/gnome/files/gtk-doc.m4 new file mode 100644 index 0000000..3ec4166 --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/files/gtk-doc.m4 @@ -0,0 +1,53 @@ +dnl -*- mode: autoconf -*- + +# serial 1 + +dnl Usage: +dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) +AC_DEFUN([GTK_DOC_CHECK], +[ + AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first + dnl for overriding the documentation installation directory + AC_ARG_WITH(html-dir, + AC_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, + [with_html_dir='${datadir}/gtk-doc/html']) + HTML_DIR="$with_html_dir" + AC_SUBST(HTML_DIR) + + dnl enable/disable documentation building + AC_ARG_ENABLE(gtk-doc, + AC_HELP_STRING([--enable-gtk-doc], + [use gtk-doc to build documentation [default=no]]),, + enable_gtk_doc=no) + + have_gtk_doc=no + if test -z "$PKG_CONFIG"; then + AC_PATH_PROG(PKG_CONFIG, pkg-config, no) + fi + if test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists gtk-doc; then + have_gtk_doc=yes + fi + + dnl do we want to do a version check? +ifelse([$1],[],, + [gtk_doc_min_version=$1 + if test "$have_gtk_doc" = yes; then + AC_MSG_CHECKING([gtk-doc version >= $gtk_doc_min_version]) + if $PKG_CONFIG --atleast-version $gtk_doc_min_version gtk-doc; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + have_gtk_doc=no + fi + fi +]) + if test x$enable_gtk_doc = xyes; then + if test "$have_gtk_doc" != yes; then + enable_gtk_doc=no + fi + fi + + AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes) + AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL") +]) diff --git a/org.handhelds.familiar/packages/gnome/files/gtk-doc.make b/org.handhelds.familiar/packages/gnome/files/gtk-doc.make new file mode 100644 index 0000000..c319e7a --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/files/gtk-doc.make @@ -0,0 +1,148 @@ +# -*- mode: makefile -*- + +#################################### +# Everything below here is generic # +#################################### + +if GTK_DOC_USE_LIBTOOL +GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS) +GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) +else +GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CFLAGS) $(CFLAGS) +GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) +endif + +# We set GPATH here; this gives us semantics for GNU make +# which are more like other make's VPATH, when it comes to +# whether a source that is a target of one rule is then +# searched for in VPATH/GPATH. +# +GPATH = $(srcdir) + +TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) + +EXTRA_DIST = \ + $(content_files) \ + $(HTML_IMAGES) \ + $(DOC_MAIN_SGML_FILE) \ + $(DOC_MODULE).types \ + $(DOC_MODULE)-sections.txt \ + $(DOC_MODULE)-overrides.txt + +DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ + $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp + +SCANOBJ_FILES = \ + $(DOC_MODULE).args \ + $(DOC_MODULE).hierarchy \ + $(DOC_MODULE).interfaces \ + $(DOC_MODULE).prerequisites \ + $(DOC_MODULE).signals + +CLEANFILES = $(SCANOBJ_FILES) $(DOC_MODULE)-scan.o $(DOC_MODULE)-unused.txt $(DOC_STAMPS) + +if ENABLE_GTK_DOC +all-local: html-build.stamp + +#### scan #### + +scan-build.stamp: $(HFILE_GLOB) + @echo '*** Scanning header files ***' + @-chmod -R u+w $(srcdir) + if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \ + CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ + else \ + cd $(srcdir) ; \ + for i in $(SCANOBJ_FILES) ; do \ + test -f $$i || touch $$i ; \ + done \ + fi + cd $(srcdir) && \ + gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES) + touch scan-build.stamp + +$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp + @true + +#### templates #### + +tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt + @echo '*** Rebuilding template files ***' + @-chmod -R u+w $(srcdir) + cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) + touch tmpl-build.stamp + +tmpl.stamp: tmpl-build.stamp + @true + +#### xml #### + +sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml + @echo '*** Building XML ***' + @-chmod -R u+w $(srcdir) + cd $(srcdir) && \ + gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml $(MKDB_OPTIONS) + touch sgml-build.stamp + +sgml.stamp: sgml-build.stamp + @true + +#### html #### + +html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) + @echo '*** Building HTML ***' + @-chmod -R u+w $(srcdir) + rm -rf $(srcdir)/html + mkdir $(srcdir)/html + cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) + test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) + @echo '-- Fixing Crossreferences' + cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) + touch html-build.stamp +endif + +############## + +clean-local: + rm -f *~ *.bak + +maintainer-clean-local: clean + cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt + +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR) + (installfiles=`echo $(srcdir)/html/*`; \ + if test "$$installfiles" = '$(srcdir)/html/*'; \ + then echo '-- Nothing to install' ; \ + else \ + for i in $$installfiles; do \ + echo '-- Installing '$$i ; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \ + done; \ + echo '-- Installing $(srcdir)/html/index.sgml' ; \ + $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \ + fi) + +uninstall-local: + rm -f $(DESTDIR)$(TARGET_DIR)/* + +# +# Require gtk-doc when making dist +# +if ENABLE_GTK_DOC +dist-check-gtkdoc: +else +dist-check-gtkdoc: + @echo "*** gtk-doc must be installed and enabled in order to make dist" + @false +endif + +dist-hook: dist-check-gtkdoc dist-hook-local + mkdir $(distdir)/tmpl + mkdir $(distdir)/xml + mkdir $(distdir)/html + -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl + -cp $(srcdir)/xml/*.xml $(distdir)/xml + -cp $(srcdir)/html/* $(distdir)/html + +.PHONY : dist-hook-local diff --git a/org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-locks-compile-fix.patch b/org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-locks-compile-fix.patch new file mode 100644 index 0000000..c195aad --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-locks-compile-fix.patch @@ -0,0 +1,16 @@ +--- trunk/backends/xml-backend.c~ 2006-01-18 09:57:39.000000000 -0800 ++++ trunk/backends/xml-backend.c 2006-01-19 11:38:37.000000000 -0800 +@@ -115,6 +115,13 @@ + + typedef struct _XMLSource XMLSource; + ++extern GConfLock* ++gconf_get_lock (const gchar *lock_directory, ++ GError **err); ++extern gboolean ++gconf_release_lock (GConfLock *lock, ++ GError **err); ++ + /* XMLSource **/ + + struct _XMLSource { diff --git a/org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-oldxml-Makefile.patch b/org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-oldxml-Makefile.patch new file mode 100644 index 0000000..312a356 --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-oldxml-Makefile.patch @@ -0,0 +1,11 @@ +--- trunk/backends/Makefile~ 2006-01-19 09:52:22.000000000 -0800 ++++ trunk/backends/Makefile 2006-01-19 13:13:23.000000000 -0800 +@@ -84,7 +84,7 @@ + xml_test_OBJECTS = $(am_xml_test_OBJECTS) + xml_test_DEPENDENCIES = $(am__DEPENDENCIES_1) \ + $(top_builddir)/gconf/libgconf-$(MAJOR_VERSION).la \ +- $(top_builddir)/backends/libgconfbackend-oldxml.la ++ libgconfbackend-oldxml.la + DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) + depcomp = $(SHELL) $(top_srcdir)/depcomp + am__depfiles_maybe = depfiles diff --git a/org.handhelds.familiar/packages/gnome/gconf-dbus_svn.bb b/org.handhelds.familiar/packages/gnome/gconf-dbus_svn.bb new file mode 100644 index 0000000..5d8ba16 --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/gconf-dbus_svn.bb @@ -0,0 +1,47 @@ +SECTION = "x11/utils" +DEPENDS = "gtk+ glib-2.0 dbus dbus-glib libxml2 popt" +DESCRIPTION = "Settings daemon using DBUS for communication." +LICENSE = "GPL" +PROVIDES = "gconf" +RPROVIDES_${PN} = "gconf" +RPROVIDES_${PN}-dev = "gconf-dev" + +PV = "2.10.0+svn${CVSDATE}" +PR = "r0" + +SRC_URI = "svn://developer.imendio.com/svn/gconf-dbus;module=trunk;proto=http \ + file://gconf-dbus-update.patch;patch=1;pnum=0 \ + file://xml-backend-locks-compile-fix.patch;patch=1 \ + file://xml-backend-oldxml-Makefile.patch \ + file://69gconfd-dbus" + +inherit pkgconfig autotools +S = "${WORKDIR}/trunk" + +PARALLEL_MAKE = "" + +FILES_${PN} += " ${libdir}/gconf-dbus/2/*.so ${libdir}/dbus-1.0 ${sysconfdir} ${datadir}/dbus*" +FILES_${PN}-dbg += "${libdir}/gconf-dbus/2/.debug" + +EXTRA_OECONF = " --with-ipc=dbus --disable-gtk-doc --enable-gtk --host=${HOST_SYS} --enable-shared --disable-static" + +HEADERS = "gconf.h gconf-changeset.h gconf-listeners.h gconf-schema.h gconf-value.h gconf-error.h gconf-engine.h gconf-client.h gconf-enum-types.h" + +do_compile_prepend() { + cd ${S} + patch -p1 < ../xml-backend-oldxml-Makefile.patch +} + +do_stage() { + oe_libinstall -so -C gconf libgconf-2 ${STAGING_LIBDIR} + install -d ${STAGING_INCDIR}/gconf/2/gconf/ + ( cd gconf; for i in ${HEADERS}; do install -m 0644 $i ${STAGING_INCDIR}/gconf/2/gconf/$i; done ) + install -m 0644 gconf.m4 ${STAGING_DATADIR}/aclocal/gconf-2.m4 +} + +do_install_append () { + install -d ${D}/${sysconfdir}/X11/Xsession.d + install -m 755 ${WORKDIR}/69gconfd-dbus ${D}/${sysconfdir}/X11/Xsession.d/ + install -d ${D}/${datadir}/dbus-1.0/services/ + install -m 644 gconf/gconf.service ${D}${datadir}/dbus-1.0/services/ +} diff --git a/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/dbus-api-change.patch b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/dbus-api-change.patch new file mode 100644 index 0000000..38480c2 --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/dbus-api-change.patch @@ -0,0 +1,78 @@ +--- trunk/dbus-daemon/vfs-daemon.c.orig 2006-08-09 10:43:26.000000000 +0100 ++++ trunk/dbus-daemon/vfs-daemon.c 2006-08-09 10:45:59.000000000 +0100 +@@ -91,7 +91,7 @@ + g_warning ("Failed to acquire vfs-daemon service: %s", error.message); + dbus_error_free (&error); + +- dbus_connection_disconnect (conn); ++ dbus_connection_close (conn); + dbus_connection_unref (conn); + conn = NULL; + +@@ -101,7 +101,7 @@ + if (ret == DBUS_REQUEST_NAME_REPLY_EXISTS) { + g_printerr ("VFS daemon already running, exiting.\n"); + +- dbus_connection_disconnect (conn); ++ dbus_connection_close (conn); + dbus_connection_unref (conn); + conn = NULL; + +@@ -111,7 +111,7 @@ + if (ret != DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER) { + g_printerr ("Not primary owner of the service, exiting.\n"); + +- dbus_connection_disconnect (conn); ++ dbus_connection_close (conn); + dbus_connection_unref (conn); + conn = NULL; + +@@ -124,7 +124,7 @@ + NULL)) { + g_printerr ("Failed to register object with D-BUS.\n"); + +- dbus_connection_disconnect (conn); ++ dbus_connection_close (conn); + dbus_connection_unref (conn); + conn = NULL; + +@@ -152,7 +152,7 @@ + return; + } + +- dbus_connection_disconnect (conn); ++ dbus_connection_close (conn); + dbus_connection_unref (conn); + } + +--- trunk/dbus-daemon/daemon-connection.c.orig 2006-08-09 10:43:32.000000000 +0100 ++++ trunk/dbus-daemon/daemon-connection.c 2006-08-09 10:46:26.000000000 +0100 +@@ -321,7 +321,7 @@ + d(g_print ("Last unref\n")); + + if (dbus_connection_get_is_connected (conn->conn)) { +- dbus_connection_disconnect (conn->conn); ++ dbus_connection_close (conn->conn); + } + dbus_connection_unref (conn->conn); + +--- trunk/dbus-daemon/dbus-method.c.orig 2006-08-09 10:43:38.000000000 +0100 ++++ trunk/dbus-daemon/dbus-method.c 2006-08-09 10:46:57.000000000 +0100 +@@ -220,7 +220,7 @@ + if (!dbus_connection_add_filter (dbus_conn, message_handler, + NULL, NULL)) { + g_warning ("Failed to add filter to the connection."); +- dbus_connection_disconnect (dbus_conn); ++ dbus_connection_close (dbus_conn); + dbus_connection_unref (dbus_conn); + + dbus_conn = NULL; +@@ -1666,7 +1666,7 @@ + vfs_module_shutdown (GnomeVFSMethod* method) + { + if (dbus_conn) { +- dbus_connection_disconnect (dbus_conn); ++ dbus_connection_close (dbus_conn); + dbus_connection_unref (dbus_conn); + + dbus_conn = NULL; diff --git a/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/glib-after-nameser.patch b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/glib-after-nameser.patch new file mode 100644 index 0000000..87bf7c3 --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/glib-after-nameser.patch @@ -0,0 +1,18 @@ +--- trunk/libgnomevfs/gnome-vfs-resolve.c.orig 2006-02-08 19:18:43.000000000 +0100 ++++ trunk/libgnomevfs/gnome-vfs-resolve.c 2006-02-08 19:21:42.000000000 +0100 +@@ -23,7 +23,6 @@ + + #include <errno.h> + #include <string.h> +-#include <glib.h> + #ifndef G_OS_WIN32 + /* Keep <sys/types.h> above the network includes for FreeBSD. */ + #include <sys/types.h> +@@ -48,6 +47,7 @@ + #define RELOAD_TIMEVAL 2 + #endif + ++#include <glib.h> + #include <glib-object.h> + + #include <libgnomevfs/gnome-vfs-resolve.h> diff --git a/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/werror_compile.patch b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/werror_compile.patch new file mode 100644 index 0000000..f2eba7d --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/werror_compile.patch @@ -0,0 +1,11 @@ +--- gnome-vfs-dbus-2.8.4.4/configure.in.old 2006-01-26 11:56:09.000000000 +0100 ++++ gnome-vfs-dbus-2.8.4.4/configure.in 2006-01-26 11:45:02.000000000 +0100 +@@ -279,7 +279,7 @@ + + if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then + echo "enable compile warnings = $set_more_warnings" +- VFS_CFLAGS="-Wall -Werror \ ++ VFS_CFLAGS="-Wall \ + -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \ + -Wnested-externs -Wpointer-arith" + diff --git a/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus_svn.bb b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus_svn.bb new file mode 100644 index 0000000..aa3c3bf --- /dev/null +++ b/org.handhelds.familiar/packages/gnome/gnome-vfs-dbus_svn.bb @@ -0,0 +1,110 @@ +LICENSE = "GPL" +SECTION = "x11/gnome" +PR = "r1" +PROVIDES = "gnome-vfs" +RPROVIDES = "gnome-vfs" + +PV = "2.8.4.4+svn20060803" + +inherit gnome pkgconfig + +DEPENDS = "gtk-doc-native libxml2 gconf-dbus dbus bzip2 gnome-mime-data zlib samba-3.0.14a" +RRECOMMENDS = "gnome-vfs-plugin-file shared-mime-info" + + +SRC_URI = "svn://developer.imendio.com/svn/gnome-vfs-dbus;module=trunk;proto=http \ + file://gssapi.patch;patch=1;pnum=1 \ + file://gconftool-lossage.patch;patch=1;pnum=1 \ + file://glib-after-nameser.patch;patch=1;pnum=1 \ + file://gtk-doc.m4 \ + file://gtk-doc.make \ + file://werror_compile.patch;patch=1;pnum=1 \ + file://dbus-api-change.patch;patch=1" + +EXTRA_OECONF = "--with-ipc=dbus --disable-gtk-doc" +S = "${WORKDIR}/trunk" + +FILES_${PN} += " ${libdir}/vfs" +FILES_${PN}-dev += " ${libdir}/gnome-vfs-2.0/modules/*.a ${libdir}/gnome-vfs-2.0/modules/*.la ${libdir}/gnome-vfs-2.0/include" +#FILES_${PN}-doc += " ${datadir}/gtk-doc" + +GNOME_VFS_HEADERS = " \ +gnome-vfs-utils.h \ +gnome-vfs-application-registry.h \ +gnome-vfs-async-ops.h \ +gnome-vfs-ops.h \ +gnome-vfs-uri.h \ +gnome-vfs-standard-callbacks.h \ +gnome-vfs-module-callback.h \ +gnome-vfs-context.h \ +gnome-vfs-file-info.h \ +gnome-vfs-directory.h \ +gnome-vfs-mime-monitor.h \ +gnome-vfs-mime-handlers.h \ +gnome-vfs-mime-deprecated.h \ +gnome-vfs-result.h \ +gnome-vfs-job-limit.h \ +gnome-vfs-file-size.h \ +gnome-vfs-mime-utils.h \ +gnome-vfs-find-directory.h \ +gnome-vfs-init.h \ +gnome-vfs-handle.h \ +gnome-vfs.h \ +gnome-vfs-cancellation.h \ +gnome-vfs-xfer.h \ +gnome-vfs-monitor.h \ +gnome-vfs-types.h \ +gnome-vfs-volume-monitor.h \ +gnome-vfs-drive.h \ +gnome-vfs-volume.h \ +gnome-vfs-enum-types.h \ +gnome-vfs-address.h \ +gnome-vfs-dns-sd.h \ +gnome-vfs-mime-info-cache.h \ +gnome-vfs-resolve.h" + +GNOME_VFS_MODULE_HEADERS = " \ +gnome-vfs-mime-info.h \ +gnome-vfs-transform.h \ +gnome-vfs-ssl.h \ +gnome-vfs-inet-connection.h \ +gnome-vfs-socket.h \ +gnome-vfs-parse-ls.h \ +gnome-vfs-method.h \ +gnome-vfs-cancellable-ops.h \ +gnome-vfs-module.h \ +gnome-vfs-module-shared.h \ +gnome-vfs-module-callback-module-api.h \ +gnome-vfs-mime.h \ +gnome-vfs-socket-buffer.h" + +do_configure_prepend() { + mkdir -p m4 + install ${WORKDIR}/gtk-doc.m4 ./m4/ + install ${WORKDIR}/gtk-doc.make ./ +} + +do_compile_prepend() { + find ${S} -name Makefile | xargs sed -i 's:-Werror::' +} + +do_stage() { + oe_libinstall -so -C libgnomevfs libgnomevfs-2 ${STAGING_LIBDIR} + install -d ${STAGING_INCDIR}/gnome-vfs-2.0/libgnomevfs + for i in ${GNOME_VFS_HEADERS}; do install -m 0644 libgnomevfs/$i ${STAGING_INCDIR}/gnome-vfs-2.0/libgnomevfs/; done + install -d ${STAGING_INCDIR}/gnome-vfs-module-2.0/libgnomevfs + for i in ${GNOME_VFS_MODULE_HEADERS}; do install -m 0644 libgnomevfs/$i ${STAGING_INCDIR}/gnome-vfs-module-2.0/libgnomevfs/; done +} + +do_install() { + oe_runmake ORBIT_IDL="${ORBIT_IDL_SRC}" DESTDIR="${D}" install +} + +PACKAGES_DYNAMIC = "gnome-vfs-plugin-*" + +python populate_packages_prepend () { + print bb.data.getVar('FILES_gnome-vfs', d, 1) + + plugindir = bb.data.expand('${libdir}/gnome-vfs-2.0/modules/', d) + do_split_packages(d, plugindir, '^lib(.*)\.so$', 'gnome-vfs-plugin-%s', 'GNOME VFS plugin for %s') +} diff --git a/org.handhelds.familiar/packages/gomunicator/files/dbus_1_0_fix.patch b/org.handhelds.familiar/packages/gomunicator/files/dbus_1_0_fix.patch new file mode 100644 index 0000000..377a844 --- /dev/null +++ b/org.handhelds.familiar/packages/gomunicator/files/dbus_1_0_fix.patch @@ -0,0 +1,17 @@ +diff -Naur gomunicator_old/src/dbus.c gomunicator/src/dbus.c +--- gomunicator_old/src/dbus.c 2006-01-15 00:17:53.000000000 +0200 ++++ gomunicator/src/dbus.c 2006-11-21 16:04:46.000000000 +0200 +@@ -1,4 +1,3 @@ +-#define DBUS_API_SUBJECT_TO_CHANGE + #include <stdlib.h> + #include <stdio.h> + #include <libintl.h> +@@ -7,6 +6,8 @@ + + #define _(x) gettext(x) + ++#define HAVE_DBUS_MESSAGE_ITER_GET_BASIC ++ + + static DBusConnection *connection; + diff --git a/org.handhelds.familiar/packages/gomunicator/gomunicator_cvs.bb b/org.handhelds.familiar/packages/gomunicator/gomunicator_cvs.bb index 995298a..7a854a5 100644 --- a/org.handhelds.familiar/packages/gomunicator/gomunicator_cvs.bb +++ b/org.handhelds.familiar/packages/gomunicator/gomunicator_cvs.bb @@ -9,5 +9,6 @@ PV = "0.1.3+cvs-${CVSDATE}" inherit autotools pkgconfig -SRC_URI = "cvs://anonymous@xanadux.cvs.sourceforge.net/cvsroot/xanadux;module=gomunicator" +SRC_URI = "cvs://anonymous@xanadux.cvs.sourceforge.net/cvsroot/xanadux;module=gomunicator \ + file://dbus_1_0_fix.patch;patch=1" S = "${WORKDIR}/${PN}" diff --git a/org.handhelds.familiar/packages/gpe-autostarter/gpe-autostarter_0.12.bb b/org.handhelds.familiar/packages/gpe-autostarter/gpe-autostarter_0.12.bb new file mode 100644 index 0000000..8b003b4 --- /dev/null +++ b/org.handhelds.familiar/packages/gpe-autostarter/gpe-autostarter_0.12.bb @@ -0,0 +1,6 @@ +LICENSE = "GPL" +SECTION = "gpe" +DEPENDS = "glib-2.0 dbus hotplug-dbus x11" +RDEPENDS = "hotplug-dbus" + +inherit gpe diff --git a/org.handhelds.familiar/packages/gpe-beam/gpe-beam_0.2.9.bb b/org.handhelds.familiar/packages/gpe-beam/gpe-beam_0.2.9.bb new file mode 100644 index 0000000..8275cf6 --- /dev/null +++ b/org.handhelds.familiar/packages/gpe-beam/gpe-beam_0.2.9.bb @@ -0,0 +1,9 @@ +DESCRIPTION = "GPE infrared communication applet" +DEPENDS = "gtk+ libgpewidget libmimedir libgpevtype openobex irda-utils dbus-glib" +RDEPENDS = "irda-utils" +SECTION = "gpe" +PRIORITY = "optional" +LICENSE = "GPL" + +inherit gpe + diff --git a/org.handhelds.familiar/packages/gpe-bluetooth/files/hciattach-bts.patch b/org.handhelds.familiar/packages/gpe-bluetooth/files/hciattach-bts.patch new file mode 100644 index 0000000..aeff8b0 --- /dev/null +++ b/org.handhelds.familiar/packages/gpe-bluetooth/files/hciattach-bts.patch @@ -0,0 +1,16 @@ +--- gpe-bluetooth-0.54/hciattach.sh.orig 2006-08-20 15:04:05.341384325 +0200 ++++ gpe-bluetooth-0.54/hciattach.sh 2006-08-20 15:05:04.629179674 +0200 +@@ -2,8 +2,12 @@ + + if [ -f /etc/sysconfig/bluetooth ]; then + . /etc/sysconfig/bluetooth ++ if [ -f "$BLUETOOTH_SCRIPT" ]; then ++ BTS="-S $BLUETOOTH_SCRIPT" ++ fi ++ ++ exec /sbin/hciattach -n $BLUETOOTH_PORT $BLUETOOTH_PROTOCOL $BLUETOOTH_SPEED $BTS + +- exec /sbin/hciattach -n $BLUETOOTH_PORT $BLUETOOTH_PROTOCOL $BLUETOOTH_SPEED + else + echo "Bluetooth not configured" + exit 1 diff --git a/org.handhelds.familiar/packages/gpe-bluetooth/files/include-sdp_lib.patch b/org.handhelds.familiar/packages/gpe-bluetooth/files/include-sdp_lib.patch new file mode 100644 index 0000000..8ec1ab3 --- /dev/null +++ b/org.handhelds.familiar/packages/gpe-bluetooth/files/include-sdp_lib.patch @@ -0,0 +1,9 @@ +--- gpe-bluetooth-0.54/main.h.orig 2006-08-31 09:49:46.000000000 +0200 ++++ gpe-bluetooth-0.54/main.h 2006-08-31 09:49:48.000000000 +0200 +@@ -1,5 +1,6 @@ + #include <gtk/gtk.h> + #include <bluetooth/sdp.h> ++#include <bluetooth/sdp_lib.h> + + struct bt_device + { diff --git a/org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.51.bb b/org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.51.bb index e02318e..84dbafc 100644 --- a/org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.51.bb +++ b/org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.51.bb @@ -10,6 +10,7 @@ RDEPENDS = "bluez-utils-dbus blueprobe" GPE_TARBALL_SUFFIX= "bz2" inherit gpe autotools -SRC_URI += "file://fix-resume-script-name.patch;patch=1" +SRC_URI += "file://fix-resume-script-name.patch;patch=1 \ + file://include-sdp_lib.patch;patch=1" FILES_${PN} += '${datadir}/bluez-pin' diff --git a/org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.54.bb b/org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.54.bb new file mode 100644 index 0000000..24d3ff4 --- /dev/null +++ b/org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.54.bb @@ -0,0 +1,16 @@ +LICENSE = "GPL" +DESCRIPTION = "GPE bluetooth support user interface tool." +SECTION = "gpe" +PRIORITY = "optional" +PR = "r1" + +DEPENDS = "gtk+ libcontactsdb libdisplaymigration libgpewidget openobex libgpevtype bluez-libs sqlite dbus-glib libglade blueprobe bluez-utils-dbus" +RDEPENDS = "bluez-utils-dbus blueprobe" + +GPE_TARBALL_SUFFIX= "bz2" +inherit gpe autotools + +SRC_URI += "file://hciattach-bts.patch;patch=1 \ + file://include-sdp_lib.patch;patch=1" + +FILES_${PN} += '${datadir}/bluez-pin' |