mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-11-19 04:49:42 +02:00
add gcc4 fixes, remove the NEC FC20X2JA driver patch from lcd4linux temporary
git-svn-id: svn://svn.openwrt.org/openwrt/trunk/openwrt@3066 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
a4cc22f122
commit
5492ea9198
11
package/cyrus-sasl/patches/cyrus-sasl-2.1.20-gcc4.patch
Normal file
11
package/cyrus-sasl/patches/cyrus-sasl-2.1.20-gcc4.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- cyrus-sasl-2.1.20/lib/client.c~ 2003-11-11 11:26:06.000000000 -0500
|
||||
+++ cyrus-sasl-2.1.20/lib/client.c 2005-05-31 22:34:14.000000000 -0400
|
||||
@@ -61,7 +61,7 @@
|
||||
|
||||
static cmech_list_t *cmechlist; /* global var which holds the list */
|
||||
|
||||
-static sasl_global_callbacks_t global_callbacks;
|
||||
+sasl_global_callbacks_t global_callbacks;
|
||||
|
||||
static int _sasl_client_active = 0;
|
||||
|
116
package/ebtables/patches/ebtables-2.0.6-gcc4.patch
Normal file
116
package/ebtables/patches/ebtables-2.0.6-gcc4.patch
Normal file
@ -0,0 +1,116 @@
|
||||
# --- T2-COPYRIGHT-NOTE-BEGIN ---
|
||||
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
|
||||
#
|
||||
# T2 SDE: package/.../ebtables/gcc4.patch
|
||||
# Copyright (C) 2004 - 2005 The T2 SDE Project
|
||||
#
|
||||
# More information can be found in the files COPYING and README.
|
||||
#
|
||||
# This patch file is dual-licensed. It is available under the license the
|
||||
# patched project is licensed under, as long as it is an OpenSource license
|
||||
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
|
||||
# of the GNU General Public License as published by the Free Software
|
||||
# Foundation; either version 2 of the License, or (at your option) any later
|
||||
# version.
|
||||
# --- T2-COPYRIGHT-NOTE-END ---
|
||||
diff -Nur ebtables-v2.0.6.orig/extensions/ebt_ip.c ebtables-v2.0.6/extensions/ebt_ip.c
|
||||
--- ebtables-v2.0.6.orig/extensions/ebt_ip.c 2003-11-02 20:22:56.000000000 +0200
|
||||
+++ ebtables-v2.0.6/extensions/ebt_ip.c 2005-11-01 18:48:56.000000000 +0200
|
||||
@@ -244,6 +244,7 @@
|
||||
struct ebt_ip_info *ipinfo = (struct ebt_ip_info *)(*match)->data;
|
||||
char *end;
|
||||
long int i;
|
||||
+ unsigned char j;
|
||||
|
||||
switch (c) {
|
||||
case IP_SOURCE:
|
||||
@@ -313,7 +314,7 @@
|
||||
ipinfo->invflags |= EBT_IP_PROTO;
|
||||
if (optind > argc)
|
||||
print_error("Missing IP protocol argument");
|
||||
- (unsigned char) i = strtoul(argv[optind - 1], &end, 10);
|
||||
+ j = strtoul(argv[optind - 1], &end, 10);
|
||||
if (*end != '\0') {
|
||||
struct protoent *pe;
|
||||
|
||||
@@ -324,7 +325,7 @@
|
||||
argv[optind - 1]);
|
||||
ipinfo->protocol = pe->p_proto;
|
||||
} else {
|
||||
- ipinfo->protocol = (unsigned char) i;
|
||||
+ ipinfo->protocol = j;
|
||||
}
|
||||
ipinfo->bitmask |= EBT_IP_PROTO;
|
||||
break;
|
||||
diff -Nur ebtables-v2.0.6.orig/extensions/ebt_limit.c ebtables-v2.0.6/extensions/ebt_limit.c
|
||||
--- ebtables-v2.0.6.orig/extensions/ebt_limit.c 2003-11-02 20:22:56.000000000 +0200
|
||||
+++ ebtables-v2.0.6/extensions/ebt_limit.c 2005-11-01 18:48:56.000000000 +0200
|
||||
@@ -203,15 +203,15 @@
|
||||
|
||||
static struct ebt_u_match limit_match =
|
||||
{
|
||||
- .name EBT_LIMIT_MATCH,
|
||||
- .size sizeof(struct ebt_limit_info),
|
||||
- .help print_help,
|
||||
- .init init,
|
||||
- .parse parse,
|
||||
- .final_check final_check,
|
||||
- .print print,
|
||||
- .compare compare,
|
||||
- .extra_ops opts,
|
||||
+ .name = EBT_LIMIT_MATCH,
|
||||
+ .size = sizeof(struct ebt_limit_info),
|
||||
+ .help = print_help,
|
||||
+ .init = init,
|
||||
+ .parse = parse,
|
||||
+ .final_check = final_check,
|
||||
+ .print = print,
|
||||
+ .compare = compare,
|
||||
+ .extra_ops = opts,
|
||||
};
|
||||
|
||||
static void _init(void) __attribute((constructor));
|
||||
diff -Nur ebtables-v2.0.6.orig/extensions/ebt_vlan.c ebtables-v2.0.6/extensions/ebt_vlan.c
|
||||
--- ebtables-v2.0.6.orig/extensions/ebt_vlan.c 2003-11-02 20:22:56.000000000 +0200
|
||||
+++ ebtables-v2.0.6/extensions/ebt_vlan.c 2005-11-01 18:48:56.000000000 +0200
|
||||
@@ -135,14 +135,16 @@
|
||||
(struct ebt_vlan_info *) (*match)->data;
|
||||
char *end;
|
||||
struct ebt_vlan_info local;
|
||||
+ unsigned short id, encap;
|
||||
+ unsigned char prio;
|
||||
|
||||
switch (c) {
|
||||
case VLAN_ID:
|
||||
check_option(flags, OPT_VLAN_ID);
|
||||
CHECK_INV_FLAG(EBT_VLAN_ID);
|
||||
CHECK_IF_MISSING_VALUE;
|
||||
- (unsigned short) local.id =
|
||||
- strtoul(argv[optind - 1], &end, 10);
|
||||
+ id = strtoul(argv[optind - 1], &end, 10);
|
||||
+ local.id = (uint16_t) id;
|
||||
CHECK_RANGE(local.id > 4094 || *end != '\0');
|
||||
vlaninfo->id = local.id;
|
||||
SET_BITMASK(EBT_VLAN_ID);
|
||||
@@ -152,8 +154,8 @@
|
||||
check_option(flags, OPT_VLAN_PRIO);
|
||||
CHECK_INV_FLAG(EBT_VLAN_PRIO);
|
||||
CHECK_IF_MISSING_VALUE;
|
||||
- (unsigned char) local.prio =
|
||||
- strtoul(argv[optind - 1], &end, 10);
|
||||
+ prio = strtoul(argv[optind - 1], &end, 10);
|
||||
+ local.prio = (uint8_t) prio;
|
||||
CHECK_RANGE(local.prio >= 8 || *end != '\0');
|
||||
vlaninfo->prio = local.prio;
|
||||
SET_BITMASK(EBT_VLAN_PRIO);
|
||||
@@ -163,8 +165,8 @@
|
||||
check_option(flags, OPT_VLAN_ENCAP);
|
||||
CHECK_INV_FLAG(EBT_VLAN_ENCAP);
|
||||
CHECK_IF_MISSING_VALUE;
|
||||
- (unsigned short) local.encap =
|
||||
- strtoul(argv[optind - 1], &end, 16);
|
||||
+ encap = strtoul(argv[optind - 1], &end, 16);
|
||||
+ local.encap = (uint16_t) encap;
|
||||
if (*end != '\0') {
|
||||
ethent = getethertypebyname(argv[optind - 1]);
|
||||
if (ethent == NULL)
|
12
package/l2tpd/patches/04-gcc4.patch
Normal file
12
package/l2tpd/patches/04-gcc4.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -urN ../tmp-orig/l2tpd-0.70-pre20031121/aaa.c ./aaa.c
|
||||
--- ../tmp-orig/l2tpd-0.70-pre20031121/aaa.c 2004-12-09 09:54:10.159417376 +0100
|
||||
+++ ./aaa.c 2004-12-09 09:54:01.918670160 +0100
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
/* FIXME: Accounting? */
|
||||
|
||||
-static struct addr_ent *uaddr[ADDR_HASH_SIZE];
|
||||
+struct addr_ent *uaddr[ADDR_HASH_SIZE];
|
||||
|
||||
void init_addr ()
|
||||
{
|
@ -3,15 +3,15 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=lcd4linux
|
||||
PKG_VERSION:=0.10.0
|
||||
PKG_VERSION:=0.10.0+cvs20051015
|
||||
PKG_RELEASE:=1
|
||||
PKG_MD5SUM:=b7fb1c24b940482cd730cf212d1b5062
|
||||
PKG_MD5SUM:=5b5ac629be4bb5c29104fb8f6b7fa444
|
||||
|
||||
PKG_SOURCE_URL:=@SF/lcd4linux
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=http://ftp.debian.org/debian/pool/main/l/lcd4linux/
|
||||
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION).orig.tar.gz
|
||||
PKG_CAT:=zcat
|
||||
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION).orig
|
||||
PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
|
||||
|
||||
include $(TOPDIR)/package/rules.mk
|
||||
|
@ -1,435 +0,0 @@
|
||||
diff -urN lcd4linux.old/Makefile.in lcd4linux.dev/Makefile.in
|
||||
--- lcd4linux.old/Makefile.in 2006-01-20 03:52:18.414424750 +0100
|
||||
+++ lcd4linux.dev/Makefile.in 2006-01-20 07:59:02.782678750 +0100
|
||||
@@ -104,7 +104,7 @@
|
||||
lcd4linux_SOURCES = lcd4linux.c cfg.c cfg.h debug.c debug.h drv.c drv.h evaluator.c evaluator.h hash.c hash.h layout.c layout.h pid.c pid.h timer.c timer.h thread.c thread.h udelay.c udelay.h qprintf.c qprintf.h widget.c widget.h widget_text.c widget_text.h widget_bar.c widget_bar.h widget_icon.c widget_icon.h plugin.c plugin.h plugin_cfg.c plugin_math.c plugin_string.c plugin_test.c plugin_time.c
|
||||
|
||||
|
||||
-EXTRA_lcd4linux_SOURCES = drv_generic_text.c drv_generic_text.h drv_generic_graphic.c drv_generic_graphic.h drv_generic_serial.c drv_generic_serial.h drv_generic_parport.c drv_generic_parport.h drv_generic_i2c.c drv_generic_i2c.h drv_BeckmannEgle.c drv_BWCT.c drv_Crystalfontz.c drv_Curses.c drv_Cwlinux.c drv_HD44780.c drv_Image.c drv_LCDLinux.c drv_LCDLinux.h drv_LCDTerm.c drv_M50530.c drv_MatrixOrbital.c drv_MilfordInstruments.c drv_Noritake.c drv_NULL.c drv_RouterBoard.c drv_serdisplib.c drv_SimpleLCD.c drv_T6963.c drv_Trefon.c drv_USBLCD.c drv_X11.c font_6x8.h lcd4linux_i2c.h plugin_apm.c plugin_cpuinfo.c plugin_diskstats.c plugin_dvb.c plugin_exec.c plugin_i2c_sensors.c plugin_imon.c plugin_isdn.c plugin_loadavg.c plugin_meminfo.c plugin_mysql.c plugin_netdev.c plugin_pop3.c plugin_ppp.c plugin_proc_stat.c plugin_python.c plugin_seti.c plugin_statfs.c plugin_uname.c plugin_uptime.c plugin_wireless.c plugin_xmms.c
|
||||
+EXTRA_lcd4linux_SOURCES = drv_generic_text.c drv_generic_text.h drv_generic_graphic.c drv_generic_graphic.h drv_generic_serial.c drv_generic_serial.h drv_generic_parport.c drv_generic_parport.h drv_generic_i2c.c drv_generic_i2c.h drv_BeckmannEgle.c drv_BWCT.c drv_Crystalfontz.c drv_Curses.c drv_Cwlinux.c drv_HD44780.c drv_Image.c drv_LCDLinux.c drv_LCDLinux.h drv_LCDTerm.c drv_M50530.c drv_MatrixOrbital.c drv_FC-NEC.c drv_MilfordInstruments.c drv_Noritake.c drv_NULL.c drv_RouterBoard.c drv_serdisplib.c drv_SimpleLCD.c drv_T6963.c drv_Trefon.c drv_USBLCD.c drv_X11.c font_6x8.h lcd4linux_i2c.h plugin_apm.c plugin_cpuinfo.c plugin_diskstats.c plugin_dvb.c plugin_exec.c plugin_i2c_sensors.c plugin_imon.c plugin_isdn.c plugin_loadavg.c plugin_meminfo.c plugin_mysql.c plugin_netdev.c plugin_pop3.c plugin_ppp.c plugin_proc_stat.c plugin_python.c plugin_seti.c plugin_statfs.c plugin_uname.c plugin_uptime.c plugin_wireless.c plugin_xmms.c
|
||||
|
||||
|
||||
EXTRA_DIST = lcd4linux.conf.sample lcd4kde.conf lcd4linux.kdelnk lcd4linux.xpm lcd4linux.lsm curses.m4 AUTHORS CREDITS FAQ NEWS TODO README README.Drivers README.Plugins README.KDE plugin_sample.c
|
||||
@@ -362,6 +362,9 @@
|
||||
drv_M50530.o: drv_M50530.c config.h debug.h cfg.h qprintf.h udelay.h \
|
||||
plugin.h evaluator.h widget.h widget_text.h widget_icon.h \
|
||||
widget_bar.h drv.h drv_generic_text.h drv_generic_parport.h
|
||||
+drv_NEC-FC.o: drv_NEC-FC.c config.h debug.h cfg.h plugin.h \
|
||||
+ evaluator.h widget.h widget_text.h widget_icon.h widget_bar.h \
|
||||
+ drv.h drv_generic_text.h drv_generic_serial.h
|
||||
drv_MatrixOrbital.o: drv_MatrixOrbital.c config.h debug.h cfg.h plugin.h \
|
||||
evaluator.h widget.h widget_text.h widget_icon.h widget_bar.h \
|
||||
drv.h drv_generic_text.h drv_generic_serial.h
|
||||
diff -urN lcd4linux.old/config.h.in lcd4linux.dev/config.h.in
|
||||
--- lcd4linux.old/config.h.in 2006-01-20 03:52:18.418423000 +0100
|
||||
+++ lcd4linux.dev/config.h.in 2006-01-20 08:01:07.332164500 +0100
|
||||
@@ -368,6 +368,9 @@
|
||||
/* MatrixOrbital driver */
|
||||
#undef WITH_MATRIXORBITAL
|
||||
|
||||
+/* NEC-FC driver */
|
||||
+#undef WITH_NEC_FC
|
||||
+
|
||||
/* Milford Instruments driver */
|
||||
#undef WITH_MILINST
|
||||
|
||||
diff -urN lcd4linux.old/configure lcd4linux.dev/configure
|
||||
--- lcd4linux.old/configure 2006-01-20 03:52:18.418423000 +0100
|
||||
+++ lcd4linux.dev/configure 2006-01-20 08:00:27.973391500 +0100
|
||||
@@ -872,7 +872,7 @@
|
||||
HD44780, LCDLinux, LCDTerm, M50530, MatrixOrbital,
|
||||
MilfordInstruments, Noritake, NULL, PNG, PPM,
|
||||
RouterBoard, serdisplib, SimpleLCD, T6963, Trefon,
|
||||
- USBLCD, X11
|
||||
+ USBLCD, X11, NEC-FC
|
||||
--with-plugins=<list> choose which plugins to compile.
|
||||
type --with-plugins=list for a list
|
||||
of avaible plugins
|
||||
@@ -5888,6 +5888,7 @@
|
||||
LCDTERM="yes"
|
||||
M50530="yes"
|
||||
MATRIXORBITAL="yes"
|
||||
+ NEC_FC="yes"
|
||||
MILINST="yes"
|
||||
NORITAKE="yes"
|
||||
NULL="yes"
|
||||
@@ -5930,6 +5931,9 @@
|
||||
;;
|
||||
MatrixOrbital)
|
||||
MATRIXORBITAL=$val
|
||||
+ ;;
|
||||
+ NEC-FC)
|
||||
+ NEC_FC=$val
|
||||
;;
|
||||
MilfordInstruments)
|
||||
MILINST=$val
|
||||
@@ -6109,6 +6113,16 @@
|
||||
|
||||
fi
|
||||
|
||||
+if test "$NEC_FC" = "yes"; then
|
||||
+ SERIAL="yes"
|
||||
+ DRIVERS="$DRIVERS drv_NEC-FC.o"
|
||||
+
|
||||
+cat >>confdefs.h <<\_ACEOF
|
||||
+#define WITH_NEC_FC 1
|
||||
+_ACEOF
|
||||
+
|
||||
+fi
|
||||
+
|
||||
if test "$MILINST" = "yes"; then
|
||||
DRIVERS="$DRIVERS drv_MilfordInstruments.o"
|
||||
|
||||
diff -urN lcd4linux.old/drv.c lcd4linux.dev/drv.c
|
||||
--- lcd4linux.old/drv.c 2006-01-20 03:52:18.422421250 +0100
|
||||
+++ lcd4linux.dev/drv.c 2006-01-20 08:02:30.895589500 +0100
|
||||
@@ -207,6 +207,7 @@
|
||||
extern DRIVER drv_LCDLinux;
|
||||
extern DRIVER drv_LCDTerm;
|
||||
extern DRIVER drv_M50530;
|
||||
+extern DRIVER drv_NEC_FC;
|
||||
extern DRIVER drv_MatrixOrbital;
|
||||
extern DRIVER drv_MilfordInstruments;
|
||||
extern DRIVER drv_Noritake;
|
||||
@@ -259,6 +260,9 @@
|
||||
#ifdef WITH_MATRIXORBITAL
|
||||
&drv_MatrixOrbital,
|
||||
#endif
|
||||
+#ifdef WITH_NEC_FC
|
||||
+ &drv_NEC_FC,
|
||||
+#endif
|
||||
#ifdef WITH_MILINST
|
||||
&drv_MilfordInstruments,
|
||||
#endif
|
||||
diff -urN lcd4linux.old/drv_NEC-FC.c lcd4linux.dev/drv_NEC-FC.c
|
||||
--- lcd4linux.old/drv_NEC-FC.c 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ lcd4linux.dev/drv_NEC-FC.c 2006-01-20 09:32:19.632985000 +0100
|
||||
@@ -0,0 +1,328 @@
|
||||
+/* $Id$
|
||||
+ *
|
||||
+ * Driver for NEC FC20X2JA
|
||||
+ * Copyright (C) 2006, Felix Fietkau <nbd@openwrt.org>
|
||||
+ *
|
||||
+ * Based on MatrixOrbital driver
|
||||
+ *
|
||||
+ * LCD4Linux is free software; you can redistribute it and/or modify
|
||||
+ * it under the terms of the GNU General Public License as published by
|
||||
+ * the Free Software Foundation; either version 2, or (at your option)
|
||||
+ * any later version.
|
||||
+ *
|
||||
+ * LCD4Linux is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+ * GNU General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU General Public License
|
||||
+ * along with this program; if not, write to the Free Software
|
||||
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+/*
|
||||
+ *
|
||||
+ * exported fuctions:
|
||||
+ *
|
||||
+ * struct DRIVER drv_NEC_FC_
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+#include "config.h"
|
||||
+
|
||||
+#include <stdlib.h>
|
||||
+#include <stdio.h>
|
||||
+#include <string.h>
|
||||
+#include <unistd.h>
|
||||
+
|
||||
+#include "debug.h"
|
||||
+#include "cfg.h"
|
||||
+#include "plugin.h"
|
||||
+#include "widget.h"
|
||||
+#include "widget_text.h"
|
||||
+#include "widget_icon.h"
|
||||
+#include "widget_bar.h"
|
||||
+#include "drv.h"
|
||||
+#include "drv_generic_text.h"
|
||||
+#include "drv_generic_serial.h"
|
||||
+
|
||||
+
|
||||
+static char Name[] = "NEC-FC";
|
||||
+static int cur_pos = 0;
|
||||
+static int Model;
|
||||
+static int Protocol;
|
||||
+
|
||||
+/* Fixme: GPO's not yet implemented */
|
||||
+/* static int GPO[8]; */
|
||||
+static int GPOS;
|
||||
+
|
||||
+
|
||||
+typedef struct {
|
||||
+ int type;
|
||||
+ char *name;
|
||||
+ int rows;
|
||||
+ int cols;
|
||||
+ int gpos;
|
||||
+ int protocol;
|
||||
+} MODEL;
|
||||
+
|
||||
+/* Fixme #1: number of gpo's should be verified */
|
||||
+/* Fixme #2: protocol should be verified */
|
||||
+
|
||||
+static MODEL Models[] = {
|
||||
+ {0x01, "FC20X2JA", 2, 20, 0, 1},
|
||||
+ {0xff, "Unknown", -1, -1, 0, 0}
|
||||
+};
|
||||
+
|
||||
+
|
||||
+/****************************************/
|
||||
+/*** hardware dependant functions ***/
|
||||
+/****************************************/
|
||||
+
|
||||
+static void drv_FC_clear(void)
|
||||
+{
|
||||
+ drv_generic_serial_write("\014", 1); /* Clear Screen */
|
||||
+ cur_pos = 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+static void drv_FC_write(const int row, const int col, const char *data, const int len)
|
||||
+{
|
||||
+ int i;
|
||||
+ int target = (row * DCOLS) + col;
|
||||
+ target -= cur_pos;
|
||||
+ char *buf;
|
||||
+
|
||||
+ buf = malloc(len + 1);
|
||||
+ memcpy(buf, data, len);
|
||||
+ buf[len] = 0;
|
||||
+
|
||||
+ if (target < 0)
|
||||
+ for (i = 0; i < -target; i++)
|
||||
+ drv_generic_serial_write("\x08", 1);
|
||||
+ else
|
||||
+ for (i = 0; i < target; i++)
|
||||
+ drv_generic_serial_write("\x09", 1);
|
||||
+
|
||||
+ cur_pos += target + len;
|
||||
+ if (cur_pos >= (DROWS * DCOLS))
|
||||
+ cur_pos = 0;
|
||||
+
|
||||
+ drv_generic_serial_write(data, len);
|
||||
+}
|
||||
+
|
||||
+
|
||||
+static void drv_FC_defchar(const int ascii, const unsigned char *matrix)
|
||||
+{
|
||||
+ int i;
|
||||
+ char cmd[11] = "\x1aN";
|
||||
+
|
||||
+ cmd[2] = (char) ascii;
|
||||
+ for (i = 0; i < 8; i++) {
|
||||
+ cmd[i + 3] = matrix[i] & 0x1f;
|
||||
+ }
|
||||
+ drv_generic_serial_write(cmd, 11);
|
||||
+}
|
||||
+
|
||||
+
|
||||
+static int drv_FC_contrast(int contrast)
|
||||
+{
|
||||
+ char c = (char) contrast;
|
||||
+ c >>= 6;
|
||||
+ c &= 2;
|
||||
+ c = 4 - c;
|
||||
+
|
||||
+ drv_generic_serial_write(&c, 1);
|
||||
+ return contrast;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+static int drv_FC_start(const char *section, const int quiet)
|
||||
+{
|
||||
+ int i;
|
||||
+ char *model;
|
||||
+ char buffer[256];
|
||||
+
|
||||
+ model = cfg_get(section, "Model", NULL);
|
||||
+ if (model != NULL && *model != '\0') {
|
||||
+ for (i = 0; Models[i].type != 0xff; i++) {
|
||||
+ if (strcasecmp(Models[i].name, model) == 0)
|
||||
+ break;
|
||||
+ }
|
||||
+ if (Models[i].type == 0xff) {
|
||||
+ error("%s: %s.Model '%s' is unknown from %s", Name, section, model, cfg_source());
|
||||
+ return -1;
|
||||
+ }
|
||||
+ Model = i;
|
||||
+ info("%s: using model '%s'", Name, Models[Model].name);
|
||||
+ } else {
|
||||
+ info("%s: no '%s.Model' entry from %s, auto-dedecting", Name, section, cfg_source());
|
||||
+ Model = -1;
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+ if (drv_generic_serial_open(section, Name, 0) < 0)
|
||||
+ return -1;
|
||||
+
|
||||
+ /* initialize global variables */
|
||||
+ DROWS = Models[Model].rows;
|
||||
+ DCOLS = Models[Model].cols;
|
||||
+ GPOS = Models[Model].gpos;
|
||||
+ Protocol = Models[Model].protocol;
|
||||
+
|
||||
+ drv_FC_clear();
|
||||
+
|
||||
+ drv_generic_serial_write("\x01", 1); /* 100% lum */
|
||||
+ drv_generic_serial_write("\x14", 1); /* cursor on */
|
||||
+ drv_generic_serial_write("\x11", 1); /* scroll write */
|
||||
+
|
||||
+ /* set contrast */
|
||||
+ if (cfg_number(section, "Contrast", 0, 0, 255, &i) > 0) {
|
||||
+ drv_FC_contrast(i);
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+/****************************************/
|
||||
+/*** plugins ***/
|
||||
+/****************************************/
|
||||
+
|
||||
+
|
||||
+static void plugin_contrast(RESULT * result, const int argc, RESULT * argv[])
|
||||
+{
|
||||
+ double contrast;
|
||||
+
|
||||
+ switch (argc) {
|
||||
+ case 0:
|
||||
+ contrast = drv_FC_contrast(-1);
|
||||
+ SetResult(&result, R_NUMBER, &contrast);
|
||||
+ break;
|
||||
+ case 1:
|
||||
+ contrast = drv_FC_contrast(R2N(argv[0]));
|
||||
+ SetResult(&result, R_NUMBER, &contrast);
|
||||
+ break;
|
||||
+ default:
|
||||
+ error("%s::contrast(): wrong number of parameters", Name);
|
||||
+ SetResult(&result, R_STRING, "");
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
+
|
||||
+
|
||||
+/****************************************/
|
||||
+/*** widget callbacks ***/
|
||||
+/****************************************/
|
||||
+
|
||||
+/* using drv_generic_text_draw(W) */
|
||||
+/* using drv_generic_text_icon_draw(W) */
|
||||
+/* using drv_generic_text_bar_draw(W) */
|
||||
+
|
||||
+
|
||||
+/****************************************/
|
||||
+/*** exported functions ***/
|
||||
+/****************************************/
|
||||
+
|
||||
+
|
||||
+/* list models */
|
||||
+int drv_FC_list(void)
|
||||
+{
|
||||
+ int i;
|
||||
+
|
||||
+ for (i = 0; Models[i].type != 0xff; i++) {
|
||||
+ printf("%s ", Models[i].name);
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+/* initialize driver & display */
|
||||
+int drv_FC_init(const char *section, const int quiet)
|
||||
+{
|
||||
+ WIDGET_CLASS wc;
|
||||
+ int ret;
|
||||
+
|
||||
+ /* display preferences */
|
||||
+ XRES = 5; /* pixel width of one char */
|
||||
+ YRES = 8; /* pixel height of one char */
|
||||
+ CHARS = 8; /* number of user-defineable characters */
|
||||
+ CHAR0 = 0; /* ASCII of first user-defineable char */
|
||||
+ GOTO_COST = 4; /* number of bytes a goto command requires */
|
||||
+
|
||||
+ /* real worker functions */
|
||||
+ drv_generic_text_real_write = drv_FC_write;
|
||||
+ drv_generic_text_real_defchar = drv_FC_defchar;
|
||||
+
|
||||
+
|
||||
+ /* start display */
|
||||
+ if ((ret = drv_FC_start(section, quiet)) != 0)
|
||||
+ return ret;
|
||||
+
|
||||
+ /* initialize generic text driver */
|
||||
+ if ((ret = drv_generic_text_init(section, Name)) != 0)
|
||||
+ return ret;
|
||||
+
|
||||
+ /* initialize generic icon driver */
|
||||
+ if ((ret = drv_generic_text_icon_init()) != 0)
|
||||
+ return ret;
|
||||
+
|
||||
+ /* initialize generic bar driver */
|
||||
+ if ((ret = drv_generic_text_bar_init(0)) != 0)
|
||||
+ return ret;
|
||||
+
|
||||
+ /* add fixed chars to the bar driver */
|
||||
+ drv_generic_text_bar_add_segment(0, 0, 255, 32); /* ASCII 32 = blank */
|
||||
+ drv_generic_text_bar_add_segment(255, 255, 255, 255); /* ASCII 255 = block */
|
||||
+
|
||||
+ /* register text widget */
|
||||
+ wc = Widget_Text;
|
||||
+ wc.draw = drv_generic_text_draw;
|
||||
+ widget_register(&wc);
|
||||
+
|
||||
+ /* register icon widget */
|
||||
+ wc = Widget_Icon;
|
||||
+ wc.draw = drv_generic_text_icon_draw;
|
||||
+ widget_register(&wc);
|
||||
+
|
||||
+ /* register bar widget */
|
||||
+ wc = Widget_Bar;
|
||||
+ wc.draw = drv_generic_text_bar_draw;
|
||||
+ widget_register(&wc);
|
||||
+
|
||||
+ /* register plugins */
|
||||
+ AddFunction("LCD::contrast", -1, plugin_contrast);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+/* close driver & display */
|
||||
+int drv_FC_quit(const int quiet)
|
||||
+{
|
||||
+
|
||||
+ info("%s: shutting down.", Name);
|
||||
+
|
||||
+ drv_generic_text_quit();
|
||||
+
|
||||
+ /* clear display */
|
||||
+ drv_FC_clear();
|
||||
+
|
||||
+ /* say goodbye... */
|
||||
+ if (!quiet) {
|
||||
+ drv_generic_text_greet("goodbye!", NULL);
|
||||
+ }
|
||||
+
|
||||
+ drv_generic_serial_close();
|
||||
+
|
||||
+ return (0);
|
||||
+}
|
||||
+
|
||||
+
|
||||
+DRIVER drv_NEC_FC = {
|
||||
+ name:Name,
|
||||
+ list:drv_FC_list,
|
||||
+ init:drv_FC_init,
|
||||
+ quit:drv_FC_quit,
|
||||
+};
|
17
package/libupnp/patches/libupnp-1.2.1a-gcc4.patch
Normal file
17
package/libupnp/patches/libupnp-1.2.1a-gcc4.patch
Normal file
@ -0,0 +1,17 @@
|
||||
Index: libupnp-1.2.1a/ixml/src/element.c
|
||||
===================================================================
|
||||
--- libupnp-1.2.1a.orig/ixml/src/element.c
|
||||
+++ libupnp-1.2.1a/ixml/src/element.c
|
||||
@@ -454,9 +454,9 @@ ixmlElement_removeAttributeNode( IN IXML
|
||||
element->n.firstAttr = nextSib;
|
||||
}
|
||||
|
||||
- ( IXML_Attr * ) attrNode->parentNode = NULL;
|
||||
- ( IXML_Attr * ) attrNode->prevSibling = NULL;
|
||||
- ( IXML_Attr * ) attrNode->nextSibling = NULL;
|
||||
+ attrNode->parentNode = NULL;
|
||||
+ attrNode->prevSibling = NULL;
|
||||
+ attrNode->nextSibling = NULL;
|
||||
*rtAttr = ( IXML_Attr * ) attrNode;
|
||||
return IXML_SUCCESS;
|
||||
|
60
package/libvorbis/patches/libvorbis-1.1.1-gcc4-1.patch
Normal file
60
package/libvorbis/patches/libvorbis-1.1.1-gcc4-1.patch
Normal file
@ -0,0 +1,60 @@
|
||||
Submitted By: Steffen Knollmann <sknolli at astro.physik.uni-goettingen.de>
|
||||
Date: 2005-11-09
|
||||
Initial Package Version: 1.1.1
|
||||
Upstream Status: From Upstream
|
||||
Origin: msmith, courtesy of upstream SVN
|
||||
Description: Fixes an optimization problem with gcc-4.0.x that results in
|
||||
dysfunctional library that will produce bigger encoded files
|
||||
with a poor audio quality. Detailed description at:
|
||||
http://trac.xiph.org/cgi-bin/trac.cgi/ticket/583
|
||||
|
||||
$LastChangedBy: randy $
|
||||
$Date: 2005-11-18 08:12:42 -0700 (Fri, 18 Nov 2005) $
|
||||
|
||||
|
||||
--- libvorbis-1.1.1/lib/scales.h (revision 9958)
|
||||
+++ libvorbis-1.1.1/lib/scales.h (revision 9959)
|
||||
@@ -26,20 +26,24 @@
|
||||
#ifdef VORBIS_IEEE_FLOAT32
|
||||
|
||||
static float unitnorm(float x){
|
||||
- ogg_uint32_t *ix=(ogg_uint32_t *)&x;
|
||||
- *ix=(*ix&0x80000000UL)|(0x3f800000UL);
|
||||
- return(x);
|
||||
-}
|
||||
-
|
||||
-static float FABS(float *x){
|
||||
- ogg_uint32_t *ix=(ogg_uint32_t *)x;
|
||||
- *ix&=0x7fffffffUL;
|
||||
- return(*x);
|
||||
+ union {
|
||||
+ ogg_uint32_t i;
|
||||
+ float f;
|
||||
+ } ix;
|
||||
+ ix.f = x;
|
||||
+ ix.i = (ix.i & 0x80000000U) | (0x3f800000U);
|
||||
+ return ix.f;
|
||||
}
|
||||
|
||||
/* Segher was off (too high) by ~ .3 decibel. Center the conversion correctly. */
|
||||
static float todB(const float *x){
|
||||
- return (float)((*(ogg_int32_t *)x)&0x7fffffff) * 7.17711438e-7f -764.6161886f;
|
||||
+ union {
|
||||
+ ogg_uint32_t i;
|
||||
+ float f;
|
||||
+ } ix;
|
||||
+ ix.f = *x;
|
||||
+ ix.i = ix.i&0x7fffffff;
|
||||
+ return (float)(ix.i * 7.17711438e-7f -764.6161886f);
|
||||
}
|
||||
|
||||
#define todB_nn(x) todB(x)
|
||||
@@ -51,8 +55,6 @@
|
||||
return(1.f);
|
||||
}
|
||||
|
||||
-#define FABS(x) fabs(*(x))
|
||||
-
|
||||
#define todB(x) (*(x)==0?-400.f:log(*(x)**(x))*4.34294480f)
|
||||
#define todB_nn(x) (*(x)==0.f?-400.f:log(*(x))*8.6858896f)
|
||||
|
24
package/ulogd/patches/ulogd-1.23-gcc4.patch
Normal file
24
package/ulogd/patches/ulogd-1.23-gcc4.patch
Normal file
@ -0,0 +1,24 @@
|
||||
diff -ur ulogd-1.23/extensions/ulogd_SYSLOG.c ulogd-1.23-owrt/extensions/ulogd_SYSLOG.c
|
||||
--- ulogd-1.23/extensions/ulogd_SYSLOG.c 2005-02-12 22:17:41.000000000 +0100
|
||||
+++ ulogd-1.23-owrt/extensions/ulogd_SYSLOG.c 2006-01-29 19:58:43.000000000 +0100
|
||||
@@ -136,7 +136,7 @@
|
||||
.name = "syslog",
|
||||
.init = &syslog_init,
|
||||
.fini = &syslog_fini,
|
||||
- .output &_output_syslog
|
||||
+ .output = &_output_syslog
|
||||
};
|
||||
|
||||
|
||||
diff -ur ulogd-1.23/include/ulogd/ulogd.h ulogd-1.23-owrt/include/ulogd/ulogd.h
|
||||
--- ulogd-1.23/include/ulogd/ulogd.h 2004-04-25 00:40:54.000000000 +0200
|
||||
+++ ulogd-1.23-owrt/include/ulogd/ulogd.h 2006-01-29 19:58:40.000000000 +0100
|
||||
@@ -56,8 +56,6 @@
|
||||
#define ULOGD_ERROR 7 /* error condition, requires user action */
|
||||
#define ULOGD_FATAL 8 /* fatal, program aborted */
|
||||
|
||||
-extern FILE *logfile;
|
||||
-
|
||||
typedef struct ulog_iret {
|
||||
/* next interpreter return (key) in the global list */
|
||||
struct ulog_iret *next;
|
33
package/xinetd/patches/xinetd-2.3.13-gcc4-1.patch
Normal file
33
package/xinetd/patches/xinetd-2.3.13-gcc4-1.patch
Normal file
@ -0,0 +1,33 @@
|
||||
Submitted By: Randy McMurchy <randy_at_linuxfromscratch_dot_org>
|
||||
Date: 2005-08-07
|
||||
Initial Package Version: 2.3.13
|
||||
Upstream Status: Not submitted
|
||||
Origin: Fedora Development CVS
|
||||
Description: Fixes compilation error if using GCC-4.x
|
||||
|
||||
|
||||
diff -Naur xinetd-2.3.13-orig/xinetd/service.c xinetd-2.3.13/xinetd/service.c
|
||||
--- xinetd-2.3.13-orig/xinetd/service.c 2003-11-16 12:44:10.000000000 +0000
|
||||
+++ xinetd-2.3.13/xinetd/service.c 2005-08-07 18:37:33.395942648 +0000
|
||||
@@ -764,8 +764,8 @@
|
||||
return FAILED;
|
||||
|
||||
if ( last == NULL ) {
|
||||
- last = SAIN( SVC_LAST_DGRAM_ADDR(sp) ) =
|
||||
- SAIN( calloc( 1, sizeof(union xsockaddr) ) );
|
||||
+ SVC_LAST_DGRAM_ADDR(sp) = calloc( 1, sizeof(union xsockaddr) );
|
||||
+ last = SAIN(SVC_LAST_DGRAM_ADDR(sp));
|
||||
}
|
||||
|
||||
(void) time( ¤t_time ) ;
|
||||
@@ -791,8 +791,8 @@
|
||||
return FAILED;
|
||||
|
||||
if( last == NULL ) {
|
||||
- last = SAIN6(SVC_LAST_DGRAM_ADDR(sp)) =
|
||||
- SAIN6(calloc( 1, sizeof(union xsockaddr) ) );
|
||||
+ SVC_LAST_DGRAM_ADDR(sp) = calloc( 1, sizeof(union xsockaddr) );
|
||||
+ last = SAIN6( SVC_LAST_DGRAM_ADDR(sp) );
|
||||
}
|
||||
|
||||
(void) time( ¤t_time ) ;
|
Loading…
Reference in New Issue
Block a user