diff options
| author | kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-01-29 20:02:22 +0000 | 
|---|---|---|
| committer | kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-01-29 20:02:22 +0000 | 
| commit | 5492ea91982d9bdc3c8ea95534bb495e7979ec31 (patch) | |
| tree | 1c74164dca2685f4acd1ca6970ac0684147e8b8a | |
| parent | a4cc22f122f32fe2cec817fddcc5e38f108c2ddf (diff) | |
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
| -rw-r--r-- | package/cyrus-sasl/patches/cyrus-sasl-2.1.20-gcc4.patch | 11 | ||||
| -rw-r--r-- | package/ebtables/patches/ebtables-2.0.6-gcc4.patch | 116 | ||||
| -rw-r--r-- | package/l2tpd/patches/04-gcc4.patch | 12 | ||||
| -rw-r--r-- | package/lcd4linux/Makefile | 10 | ||||
| -rw-r--r-- | package/lcd4linux/patches/130-nec_fc.patch | 435 | ||||
| -rw-r--r-- | package/libupnp/patches/libupnp-1.2.1a-gcc4.patch | 17 | ||||
| -rw-r--r-- | package/libvorbis/patches/libvorbis-1.1.1-gcc4-1.patch | 60 | ||||
| -rw-r--r-- | package/ulogd/patches/ulogd-1.23-gcc4.patch | 24 | ||||
| -rw-r--r-- | package/xinetd/patches/xinetd-2.3.13-gcc4-1.patch | 33 | 
9 files changed, 278 insertions, 440 deletions
diff --git a/package/cyrus-sasl/patches/cyrus-sasl-2.1.20-gcc4.patch b/package/cyrus-sasl/patches/cyrus-sasl-2.1.20-gcc4.patch new file mode 100644 index 000000000..118b5a4e4 --- /dev/null +++ b/package/cyrus-sasl/patches/cyrus-sasl-2.1.20-gcc4.patch @@ -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; +  diff --git a/package/ebtables/patches/ebtables-2.0.6-gcc4.patch b/package/ebtables/patches/ebtables-2.0.6-gcc4.patch new file mode 100644 index 000000000..cf64aed3a --- /dev/null +++ b/package/ebtables/patches/ebtables-2.0.6-gcc4.patch @@ -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) diff --git a/package/l2tpd/patches/04-gcc4.patch b/package/l2tpd/patches/04-gcc4.patch new file mode 100644 index 000000000..c4a906eac --- /dev/null +++ b/package/l2tpd/patches/04-gcc4.patch @@ -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 () + { diff --git a/package/lcd4linux/Makefile b/package/lcd4linux/Makefile index 0d56a6244..4171521d8 100644 --- a/package/lcd4linux/Makefile +++ b/package/lcd4linux/Makefile @@ -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 diff --git a/package/lcd4linux/patches/130-nec_fc.patch b/package/lcd4linux/patches/130-nec_fc.patch deleted file mode 100644 index be8882c10..000000000 --- a/package/lcd4linux/patches/130-nec_fc.patch +++ /dev/null @@ -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, -+}; diff --git a/package/libupnp/patches/libupnp-1.2.1a-gcc4.patch b/package/libupnp/patches/libupnp-1.2.1a-gcc4.patch new file mode 100644 index 000000000..2ea3f8805 --- /dev/null +++ b/package/libupnp/patches/libupnp-1.2.1a-gcc4.patch @@ -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; +  diff --git a/package/libvorbis/patches/libvorbis-1.1.1-gcc4-1.patch b/package/libvorbis/patches/libvorbis-1.1.1-gcc4-1.patch new file mode 100644 index 000000000..480172fcf --- /dev/null +++ b/package/libvorbis/patches/libvorbis-1.1.1-gcc4-1.patch @@ -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) + diff --git a/package/ulogd/patches/ulogd-1.23-gcc4.patch b/package/ulogd/patches/ulogd-1.23-gcc4.patch new file mode 100644 index 000000000..2e2a398f3 --- /dev/null +++ b/package/ulogd/patches/ulogd-1.23-gcc4.patch @@ -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; diff --git a/package/xinetd/patches/xinetd-2.3.13-gcc4-1.patch b/package/xinetd/patches/xinetd-2.3.13-gcc4-1.patch new file mode 100644 index 000000000..49ac327bc --- /dev/null +++ b/package/xinetd/patches/xinetd-2.3.13-gcc4-1.patch @@ -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 ) ;  | 
