[oe-commits] org.oe.dev merge of 'a6d2d41d484ef7827260add2c94d270077592a01'
oe commit
openembedded-commits at lists.openembedded.org
Wed Jan 30 02:11:31 UTC 2008
merge of 'a6d2d41d484ef7827260add2c94d270077592a01'
and 'b62c974ed7610d6eddbf8a25f2e495976892166e'
Author: oe at openembedded.org
Branch: org.openembedded.dev
Revision: ecf85dc7be323439b4232bbdc3ef8539619cb9e9
ViewMTN: http://monotone.openembedded.org/revision/info/ecf85dc7be323439b4232bbdc3ef8539619cb9e9
Files:
1
packages/meta/slugos-packages.bb
packages/e17/e-wm_0.16.999.041.bb
packages/bluez/bluez-utils-3.23/hciattach-ti-bts.patch
packages/bluez/bluez-utils-3.24/hciattach-ti-bts.patch
packages/e17/rage_0.2.0.005.bb
packages/e17/rage_cvs.bb
packages/efl1/imlib2_1.4.0.002.bb
packages/efl1/imlib2_1.4.1.000.bb
packages/bluez/bluez-utils-3.24
packages/chumby
packages/chumby/chumby-firmware_1.2.bb
packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch
MAINTAINERS
classes/efl_base.bbclass
conf/distro/include/sane-srcdates.inc
packages/db/db_4.3.29.bb
packages/e17/e-wm_cvs.bb
packages/efl1/ecore.inc
packages/efl1/ecore_cvs.bb
packages/efl1/edb_cvs.bb
packages/efl1/edje_cvs.bb
packages/efl1/eet_cvs.bb
packages/efl1/efreet_cvs.bb
packages/efl1/embryo_cvs.bb
packages/efl1/emotion_cvs.bb
packages/efl1/epdf_cvs.bb
packages/efl1/epsilon_cvs.bb
packages/efl1/esmart_cvs.bb
packages/efl1/etk_cvs.bb
packages/efl1/evas.inc
packages/efl1/evas_cvs.bb
packages/efl1/ewl_cvs.bb
packages/glibc/glibc_2.5.bb
packages/glibc/glibc_2.6.1.bb
packages/glibc/files/glibc-2.5-soft-fp-separate-strong-alias.patch
mtn:execute
Diffs:
#
# mt diff -ra6d2d41d484ef7827260add2c94d270077592a01 -recf85dc7be323439b4232bbdc3ef8539619cb9e9
#
#
#
# patch "packages/meta/slugos-packages.bb"
# from [9d6f880bd2880baef83e5822947f5771707add1a]
# to [5245a17c2f735fe2b2c50779e12e2bd525d82c8a]
#
============================================================
--- packages/meta/slugos-packages.bb 9d6f880bd2880baef83e5822947f5771707add1a
+++ packages/meta/slugos-packages.bb 5245a17c2f735fe2b2c50779e12e2bd525d82c8a
@@ -205,6 +205,7 @@ SLUGOS_PACKAGES = "\
ssmtp \
strace \
streamripper \
+ stunnel \
sudo \
sysfsutils \
tar \
#
# mt diff -rb62c974ed7610d6eddbf8a25f2e495976892166e -recf85dc7be323439b4232bbdc3ef8539619cb9e9
#
#
#
# delete "packages/e17/e-wm_0.16.999.041.bb"
#
# rename "packages/bluez/bluez-utils-3.23/hciattach-ti-bts.patch"
# to "packages/bluez/bluez-utils-3.24/hciattach-ti-bts.patch"
#
# rename "packages/e17/rage_0.2.0.005.bb"
# to "packages/e17/rage_cvs.bb"
#
# rename "packages/efl1/imlib2_1.4.0.002.bb"
# to "packages/efl1/imlib2_1.4.1.000.bb"
#
# add_dir "packages/bluez/bluez-utils-3.24"
#
# add_dir "packages/chumby"
#
# add_file "packages/bluez/bluez-utils-3.23/hciattach-ti-bts.patch"
# content [2325160feaae636c3e834dcf0b73984945c0899f]
#
# add_file "packages/chumby/chumby-firmware_1.2.bb"
# content [c491dab6227e2a382054c87a4037ec76171b7407]
#
# add_file "packages/glibc/files/glibc-2.5-local-dynamic-resolvconf.patch"
# content [63296cccc2b32cab961fcf4965eb86bd960f0213]
#
# patch "MAINTAINERS"
# from [d813da07e0f3284a81b2c2cdbdf4f9dc0ce61484]
# to [134cc9c6964a61ba273449dc3e21800354e848d7]
#
# patch "classes/efl_base.bbclass"
# from [09892e0f0086d013b90a878b3d2b6d09064a44c8]
# to [3d921ce38da6bfd30a507bc70a0cf67b4458c934]
#
# patch "conf/distro/include/sane-srcdates.inc"
# from [1dcbc89e2e936afc986ff0b9b2342ea57e980a70]
# to [a20012ca4a3de383c6062b1c564166182a18c681]
#
# patch "packages/db/db_4.3.29.bb"
# from [1435118c93b68e2c0ac08756d52aa21da920348a]
# to [66709e9d9588794467ceb39b685bde44ab5bf724]
#
# patch "packages/e17/e-wm_cvs.bb"
# from [529ec72e179f26986c7e4391d4699e598b77096a]
# to [1bdace24c8d78006d562086cae87603c61046c8a]
#
# patch "packages/e17/rage_cvs.bb"
# from [04c645b7d3b04bcdf13b9188cb1283d991a72e39]
# to [a2a2df332f757085d7b1f10bba09a12b5f5a3206]
#
# patch "packages/efl1/ecore.inc"
# from [934d94fad3c6bfd69212decb7aab06ab9b476048]
# to [c4d7e192157f599c231b67a6298d08da551f9cd2]
#
# patch "packages/efl1/ecore_cvs.bb"
# from [d5252beb6447db426e62970a50a59407b9c1dc8b]
# to [cfa8c9faeecc70a284baf78119129a3ec85c1639]
#
# patch "packages/efl1/edb_cvs.bb"
# from [0c9ee11913353b13d047a4fb9c6c3e86c2679262]
# to [54392dfc853fbcd20b44803de6c5f3b91f488074]
#
# patch "packages/efl1/edje_cvs.bb"
# from [ac767ddd6ef3e33594e36c32d80fcb551a3bb380]
# to [651ab5e3265e556ae79b9f809c4a345f3b87739b]
#
# patch "packages/efl1/eet_cvs.bb"
# from [869675713b0e92b00b79fd8ff8fe0bbd329e76cc]
# to [0540f3c9a184c0016866cf3e28d6cf60612c548d]
#
# patch "packages/efl1/efreet_cvs.bb"
# from [5fa16dafdd558aa8bf82a006243cb7c86950003a]
# to [eafca9ec13aa035e7d425da3addbff7c5274c705]
#
# patch "packages/efl1/embryo_cvs.bb"
# from [3004da545ec73d718d11b18e16c97a533af9ae75]
# to [79c4589004660f326e476191a6a522f75318fbba]
#
# patch "packages/efl1/emotion_cvs.bb"
# from [0dea4f9c68cea7dac11077352cd9dbbe1d81fd41]
# to [455d6b3619396ffdc95940c2c7bd52705fd508fd]
#
# patch "packages/efl1/epdf_cvs.bb"
# from [cdfb0f4cc3ec86c5aac3d06e8fc109d3fd5c92c2]
# to [cc4469584c9d183ecc4e0a17b9f37d7f77df098c]
#
# patch "packages/efl1/epsilon_cvs.bb"
# from [ed403881091c3fab241a1bfc86fd69b4a645f221]
# to [0a73ef6a0168069d9d5f62492b4fdee938f9aa9a]
#
# patch "packages/efl1/esmart_cvs.bb"
# from [d2f3fcc4b634993e1088d65ea71588d2e7e57db4]
# to [cacbf3b70f73a7e32bcb35bd2ce022641432b9ea]
#
# patch "packages/efl1/etk_cvs.bb"
# from [73f6a2bacad4d3504deaf7b78fd4d80aed9a3baa]
# to [74244567bcd7506fb878b7e1e0b5e527e5a6fbe6]
#
# patch "packages/efl1/evas.inc"
# from [b5cd048c85bc9f9f299682fb9fc1db9a8a381a45]
# to [f4bea097c84b09f97ff301ce61d6fedfa3111605]
#
# patch "packages/efl1/evas_cvs.bb"
# from [8c14a37af3d4c6356ba37624a420d4dc7b485196]
# to [e5ac12c8a85a913c0003451c4a2c123294ac0f81]
#
# patch "packages/efl1/ewl_cvs.bb"
# from [0b0845d0af43245cad7efe54d5d63ab7dab600a2]
# to [4b95b18bfd82af00f7025839e31897d752b42ee1]
#
# patch "packages/efl1/imlib2_1.4.1.000.bb"
# from [e017df241684fa755bba2f2f9b4d95dcf494b052]
# to [35e237b0b8c615f5fe4ad44272e7f65610fb9f12]
#
# patch "packages/glibc/glibc_2.5.bb"
# from [e6741570d99856aaaa4cd9d8b305974d4969b497]
# to [53e27da951911e905482cc1827cbd661372ca6bd]
#
# patch "packages/glibc/glibc_2.6.1.bb"
# from [1753994ceec7d4c54e81239f486d92052e46c752]
# to [1f216ad18c9a31af1594aec05b31fa975613897c]
#
# clear "packages/glibc/files/glibc-2.5-soft-fp-separate-strong-alias.patch"
# attr "mtn:execute"
#
============================================================
--- packages/bluez/bluez-utils-3.23/hciattach-ti-bts.patch 2325160feaae636c3e834dcf0b73984945c0899f
+++ packages/bluez/bluez-utils-3.23/hciattach-ti-bts.patch 2325160feaae636c3e834dcf0b73984945c0899f
@@ -0,0 +1,477 @@
+--- 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
+@@ -60,6 +60,8 @@
+ #define HCI_UART_3WIRE 2
+ #define HCI_UART_H4DS 3
+
++#include "ti_bts.h"
++
+ struct uart_t {
+ char *type;
+ int m_id;
+@@ -70,6 +72,7 @@
+ int flags;
+ char *bdaddr;
+ int (*init) (int fd, struct uart_t *u, struct termios *ti);
++ char *bts; /* bluetooth script */
+ };
+
+ #define FLOW_CTL 0x0001
+@@ -279,6 +282,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};
+@@ -328,6 +439,17 @@
+ /* Print LMP subversion */
+ fprintf(stderr, "Texas module LMP sub-version : 0x%02x%02x\n", resp[14] & 0xFF, resp[13] & 0xFF);
+
++ if ((resp[14] >> 2) == 3) {
++ /* BRF6150 */
++ int err;
++
++ nanosleep(&tm, NULL);
++ if ((err = brf6150(fd, u, ti)) != 0) {
++ fprintf(stderr, "Texas module script failed (err=%d)\n", err);
++ return -1;
++ }
++ }
++
+ nanosleep(&tm, NULL);
+ return 0;
+ }
+@@ -1204,7 +1326,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] [bdaddr]\n");
++ printf("\thciattach [-n] [-p] [-b] [-t timeout] [-s initial_speed] [-S bts-script] <tty> <type | id> [speed] [flow|noflow] [bdaddr]\n");
+ printf("\thciattach -l\n");
+ }
+
+@@ -1219,11 +1341,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;
+@@ -1245,6 +1368,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,
+@@ -1320,6 +1447,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/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%s
>>> DIFF TRUNCATED @ 16K
More information about the Openembedded-commits
mailing list