Re: kernel 1.3.75/76

H. Peter Anvin (hpa@freya.yggdrasil.com)
14 Jun 1996 00:33:58 GMT


Followup to: <3151709E.30CD7048@cnt.com>
By author: "Andrew C. Esh" <andrewes@cnt.com>
In newsgroup: linux.dev.kernel
>
> DUPRE Christophe wrote:
> >=20
> > I've been unable to compile both of these kernels : during compile =
of
> > drivers/char/consolemap.cm gcc is unable to find the file uni_hash.=
tbl or
> > something like that, near line 303.
> >=20
> > I've upgraded by patching from 1.3.71.
>=20
> I remember a bug in "conmakehash.c" that caused it not to be able to
> produce that table. Conmakehash is compiled and run during the kernel
> build in order to make that table. I had to fix some of the logic, be=
cause
> whoever wrote it simply believed the manpage for "isxdigit(3)". The
> description of the return value for that function is:
>=20

I have gotten numerous reports of this nature, and they have had only
in common that they were all incorrect. The last change to
conmakehash.c was, I believe, in 1.3.3. In general, it seems to stem
from crud or corrupt files in the source tree. I suggest to "make
mrproper" followed by "make config" and "make dep"; even better: get a
clean, new tar file.

The only occurrence of isxdigit in conmakehash.c is:

if (*p !=3D 'U' || p[1] !=3D '+' ||
!isxdigit(p[2]) || !isxdigit(p[3]) || !isxdigit(p[4]) ||
!isxdigit(p[5]) || isxdigit(p[6]))

...which is correct: it looks for the letter U, a plus sign, and
exactly four hexadecimal digits in succession.

-hpa
--=20
PGP public key available - finger hpa@zytor.com
I don't work for Yggdrasil, but they sponsor the linux.* hierarchy.
"The earth is but one country, and mankind its citizens." -- Bah=E1'u=
'll=E1h
Just Say No to Morden * Save Babylon 5: http://www.babylon5.com/cmp/sup=
port/