From f249f33578819dd1a4d85d3cda7c399b71b45b39 Mon Sep 17 00:00:00 2001 From: Johannes Winkelmann Date: Sat, 25 Mar 2006 15:19:34 +0000 Subject: [PATCH] kbd: gcc4 fix --- kbd/.md5sum | 1 + kbd/Pkgfile | 6 +++-- kbd/kbd-1.12-alias.patch | 51 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 kbd/kbd-1.12-alias.patch diff --git a/kbd/.md5sum b/kbd/.md5sum index 85278224..81a3976c 100644 --- a/kbd/.md5sum +++ b/kbd/.md5sum @@ -1 +1,2 @@ +750a72dd27b6ba6ae428974ddd98565c kbd-1.12-alias.patch 7892c7010512a9bc6697a295c921da25 kbd-1.12.tar.gz diff --git a/kbd/Pkgfile b/kbd/Pkgfile index 7d9df754..fc87e555 100644 --- a/kbd/Pkgfile +++ b/kbd/Pkgfile @@ -4,11 +4,13 @@ name=kbd version=1.12 -release=1 -source=(ftp://ftp.win.tue.nl/pub/linux-local/utils/kbd/$name-$version.tar.gz) +release=2 +source=(ftp://ftp.win.tue.nl/pub/linux-local/utils/kbd/$name-$version.tar.gz \ + kbd-1.12-alias.patch) build() { cd $name-$version + patch -p1 < $SRC/kbd-1.12-alias.patch ./configure --prefix=/usr \ --mandir=/usr/man \ --datadir=/usr/share/kbd \ diff --git a/kbd/kbd-1.12-alias.patch b/kbd/kbd-1.12-alias.patch new file mode 100644 index 00000000..ae31be39 --- /dev/null +++ b/kbd/kbd-1.12-alias.patch @@ -0,0 +1,51 @@ +gcc 4 fix; addresses "trailing garbage" output. + +Taken from gentoo's ebuild + +diff -u kbd-1.12/src/psffontop.c kbd-1.12/src/psffontop.c +--- kbd-1.12/src/psffontop.c 2005-03-12 00:48:30.075310872 +0100 ++++ kbd-1.12/src/psffontop.c 2005-05-14 10:49:59.000000000 +0900 +@@ -59,7 +59,6 @@ + + static unsigned int + assemble_ucs2(char **inptr, int cnt) { +- unsigned char **in = (unsigned char **) inptr; + unsigned int u1, u2; + + if (cnt < 2) { +@@ -68,8 +67,8 @@ + exit(EX_DATAERR); + } + +- u1 = *(*in)++; +- u2 = *(*in)++; ++ u1 = (unsigned char)*(*inptr)++; ++ u2 = (unsigned char)*(*inptr)++; + return (u1 | (u2 << 8)); + } + +@@ -110,7 +109,6 @@ + */ + static void + get_uni_entry(char **inptr, char **endptr, struct unicode_list *up, int utf8) { +- unsigned char **in = (unsigned char **) inptr; + unsigned char uc; + unicode unichar; + int inseq = 0; +@@ -126,14 +124,14 @@ + exit(EX_DATAERR); + } + if (utf8) { +- uc = *(*in)++; ++ uc = *(*inptr)++; + if (uc == PSF2_SEPARATOR) + break; + if (uc == PSF2_STARTSEQ) { + inseq = 1; + continue; + } +- --(*in); ++ --(*inptr); + unichar = assemble_utf8(inptr, *endptr - *inptr); + } else { + unichar = assemble_ucs2(inptr, *endptr - *inptr);