[kbd] Bug#558492: kbd_1.15.1-1(ia64/unstable): FTBFS: compile errors

Michael Schutte michi at uiae.at
Mon Nov 30 19:05:28 UTC 2009


Hi Alexey!

kbd fails to build on several architectures supported by Debian
GNU/Linux, namely Alpha, ARM, PA-RISC, IA-64, MIPS and SPARC.  This is
the relevant part from the original bug report:

On Sun, Nov 29, 2009 at 04:53:49AM -0700, lamont at debian.org wrote:
> There was an error while trying to autobuild your package:
> 
> > […]
> > gcc -DHAVE_CONFIG_H -I. -I..  -DDATADIR=\"/usr/share\" -DLOCALEDIR=\"/usr/share/locale\" -Wall -Wextra -Wmissing-noreturn -Wdisabled-optimization -Wcast-align -Wshadow -Wmissing-format-attribute -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations -Werror -funit-at-a-time   -Os -g -MT psffontop.o -MD -MP -MF .deps/psffontop.Tpo -c -o psffontop.o psffontop.c
> > cc1: warnings being treated as errors
> > psffontop.c: In function 'readpsffont':
> > psffontop.c:253: error: cast increases required alignment of target type
> > make[1]: *** [psffontop.o] Error 1
> > make[1]: Leaving directory `/build/buildd/kbd-1.15.1/src'
> > make: *** [build-stamp] Error 2
> > dpkg-buildpackage: error: debian/rules build gave error exit status 2

(If you wish, you can find the full build logs for all architectures at
<https://buildd.debian.org/build.cgi?pkg=kbd>.)

As far as I can tell, the affected archs align data structures just like
the member with the highest alignment.  The cast from (char *) to
(struct psf2_header *) fails as inputbuf is byte-aligned while the
struct’s alignment matches that of int (likely word-aligned).

I guess the most “correct” fix is a memcpy() of the input buffer to the
correctly aligned address of psfhdr.  Simply allowing unaligned access,
as forced by “(struct psf_header2 *) (void *) &inputbuf[0]”, might also
work, but I don’t know enough about the situation to say this with
certainty.

I’d be glad about suggestions from your part :-)

Cheers,
-- 
Michael Schutte <michi at uiae.at>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: Digital signature
URL: <http://lists.altlinux.org/pipermail/kbd/attachments/20091130/86869721/attachment.bin>


More information about the kbd mailing list