]> pilppa.com Git - familiar-h63xx-build.git/commitdiff
dbus-1.0.1: big update due to changes in DBUS API. Affected packages are: bluez-libs... familiar_dev_lamikr
authorMika Laitio <lamikr@cc.jyu.fi>
Tue, 21 Nov 2006 22:48:43 +0000 (00:48 +0200)
committerlamikr <lamikr@localhost.(none)>
Tue, 21 Nov 2006 22:48:43 +0000 (00:48 +0200)
38 files changed:
org.handhelds.familiar/conf/distro/familiar-0.8.4.conf
org.handhelds.familiar/conf/distro/preferred-gpe-versions-2.7.inc
org.handhelds.familiar/packages/bluez/bluez-libs_3.4.bb [new file with mode: 0644]
org.handhelds.familiar/packages/bluez/bluez-libs_3.7.bb [new file with mode: 0644]
org.handhelds.familiar/packages/bluez/bluez-utils/02dtl1_cs.sh [new file with mode: 0644]
org.handhelds.familiar/packages/bluez/bluez-utils/hciattach-ti-bts.patch [new file with mode: 0644]
org.handhelds.familiar/packages/bluez/bluez-utils/hcid.conf [new file with mode: 0644]
org.handhelds.familiar/packages/bluez/bluez-utils_3.4.bb [new file with mode: 0644]
org.handhelds.familiar/packages/bluez/bluez-utils_3.4/hciattach-ti-bts.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-1.0.1/cross.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-1.0.1/dbus-1.init [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-1.0.1/fix-install-daemon.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-glib-native/run-with-tmp-session-bus.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-glib-native_0.71.bb [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-glib/cross.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-glib/no-examples.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-glib/no-introspect.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-glib_0.71.bb [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus-native_1.0.1.bb [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus/fix-segfault.patch [new file with mode: 0644]
org.handhelds.familiar/packages/dbus/dbus_1.0.1.bb [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/files/gtk-doc.m4 [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/files/gtk-doc.make [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-locks-compile-fix.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/gconf-dbus/xml-backend-oldxml-Makefile.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/gconf-dbus_svn.bb [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/dbus-api-change.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/glib-after-nameser.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/gnome-vfs-dbus/werror_compile.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gnome/gnome-vfs-dbus_svn.bb [new file with mode: 0644]
org.handhelds.familiar/packages/gomunicator/files/dbus_1_0_fix.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gomunicator/gomunicator_cvs.bb
org.handhelds.familiar/packages/gpe-autostarter/gpe-autostarter_0.12.bb [new file with mode: 0644]
org.handhelds.familiar/packages/gpe-beam/gpe-beam_0.2.9.bb [new file with mode: 0644]
org.handhelds.familiar/packages/gpe-bluetooth/files/hciattach-bts.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gpe-bluetooth/files/include-sdp_lib.patch [new file with mode: 0644]
org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.51.bb
org.handhelds.familiar/packages/gpe-bluetooth/gpe-bluetooth_0.54.bb [new file with mode: 0644]

index 9d8e4d98a1c6f35f94df95de2ec5710300711290..b01b9a2e0ae985a46dd800eaba25fae9f2cf5c0c 100644 (file)
@@ -46,6 +46,7 @@ PREFERRED_VERSION_gcc-cross-sdk ?= "3.4.4"
 
 CVSDATE_qemu-native ?= "20060723"
 
+CVSDATE_gconf-dbus ?= "20060719"
 
 #
 # Machines section
index a46d4c640a57fac03032e0581780a35c1b082356..f5996b54fa5183c5d498d3c1bd0ad9d96435e37e 100644 (file)
@@ -49,9 +49,9 @@ PREFERRED_VERSION_gpe-sketchbook ?= "0.2.9"
 PREFERRED_VERSION_gpe-contacts ?= "0.43"
 PREFERRED_VERSION_gpe-today ?= "0.11"
 PREFERRED_VERSION_matchbox-panel-manager ?= "0.1"
-PREFERRED_VERSION_dbus ?= "0.23.4"
-PREFERRED_VERSION_gpe-beam ?= "0.2.8
-PREFERRED_VERSION_gpe-bluetooth ?= "0.51"
+PREFERRED_VERSION_dbus ?= "1.0.1"
+PREFERRED_VERSION_gpe-beam ?= "0.2.9
+PREFERRED_VERSION_gpe-bluetooth ?= "0.54"
 PREFERRED_VERSION_gpe-su ?= "0.19"
 PREFERRED_VERSION_gpe-conf ?= "0.1.30"
 PREFERRED_VERSION_gpe-clock ?= "0.25"
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 (file)
index 0000000..d740bd8
--- /dev/null
@@ -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 (file)
index 0000000..d740bd8
--- /dev/null
@@ -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 (file)
index 0000000..fd81508
--- /dev/null
@@ -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 (file)
index 0000000..217c326
--- /dev/null
@@ -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 (file)
index 0000000..bb935aa
--- /dev/null
@@ -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 (file)
index 0000000..49e6ded
--- /dev/null
@@ -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 (file)
index 0000000..8fe37de
--- /dev/null
@@ -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 (file)
index 0000000..268a3ae
--- /dev/null
@@ -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 (file)
index 0000000..38e7574
--- /dev/null
@@ -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 (file)
index 0000000..c317863
--- /dev/null
@@ -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 (file)
index 0000000..186abdb
--- /dev/null
@@ -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 (file)
index 0000000..1f5d71d
--- /dev/null
@@ -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 (file)
index 0000000..6d1d9d8
--- /dev/null
@@ -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 (file)
index 0000000..483153d
--- /dev/null
@@ -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 (file)
index 0000000..7057a63
--- /dev/null
@@ -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 (file)
index 0000000..26bc851
--- /dev/null
@@ -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 (file)
index 0000000..a897ae5
--- /dev/null
@@ -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 (file)
index 0000000..de5bcff
--- /dev/null
@@ -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 (file)
index 0000000..49112f3
--- /dev/null
@@ -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 (file)
index 0000000..3ec4166
--- /dev/null
@@ -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 (file)
index 0000000..c319e7a
--- /dev/null
@@ -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 (file)
index 0000000..c195aad
--- /dev/null
@@ -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 (file)
index 0000000..312a356
--- /dev/null
@@ -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 (file)
index 0000000..5d8ba16
--- /dev/null
@@ -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 (file)
index 0000000..38480c2
--- /dev/null
@@ -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 (file)
index 0000000..87bf7c3
--- /dev/null
@@ -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 (file)
index 0000000..f2eba7d
--- /dev/null
@@ -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 (file)
index 0000000..aa3c3bf
--- /dev/null
@@ -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 (file)
index 0000000..377a844
--- /dev/null
@@ -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;
index 995298a8682cace2a2e37ccaf1481489823a4352..7a854a56e0a9289739572abc06a729f3b433d8c9 100644 (file)
@@ -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 (file)
index 0000000..8b003b4
--- /dev/null
@@ -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 (file)
index 0000000..8275cf6
--- /dev/null
@@ -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 (file)
index 0000000..aeff8b0
--- /dev/null
@@ -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 (file)
index 0000000..8ec1ab3
--- /dev/null
@@ -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
+ {
index e02318eaf4b8804f54c36dd68bfca25ef15c02a3..84dbafcebfaddde44a6a9f35929bd3d733a3077e 100644 (file)
@@ -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 (file)
index 0000000..24d3ff4
--- /dev/null
@@ -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'