[racket-dev] Build failures since 5.2
Thanks for tracking this down! Compiling with `-funisgned-char' on my
machine produced the same error.
I've corrected the problem (pushed to the git repo) and added a
release-time checklist item to try compiling with `-funisgned-char'.
At Sat, 18 Feb 2012 21:17:36 -0500, James McCoy wrote:
> Hi all,
>
> Since 5.2, racket has been failing to build on some of Debian's less
> mainstream architectures where it had been building fine with 5.1.3.
> The failure scenario below is common among a few of the architectures
> (armel[0], s390[1], s390x[2])
>
> [0]:
> https://buildd.debian.org/status/fetch.php?pkg=racket&arch=armel&ver=5.2.1%2Bdfs
> g1-1&stamp=1329603367
> [1]:
> https://buildd.debian.org/status/fetch.php?pkg=racket&arch=s390&ver=5.2.1%2Bdfsg
> 1-1&stamp=1329602283
> [2]:
> https://buildd.debian.org/status/fetch.php?pkg=racket&arch=s390x&ver=5.2.1%2Bdfs
> g1-1&stamp=1329601933
>
> make[4]: Entering directory `/build/racket-5.2.1+dfsg1/build/racket/gc2'
> mkdir xsrc/usr/bin/make xsrc/precomp.h
> make[5]: Entering directory `/build/racket-5.2.1+dfsg1/build/racket/gc2'
> env XFORM_PRECOMP=yes ../racketcgc -cqu
> /build/racket-5.2.1+dfsg1/src/racket/gc2/xform.rkt --setup . --cpp "gcc -E
> -I./.. -I/build/racket-5.2.1+dfsg1/src/racket/gc2/../include
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 " --keep-lines -o xsrc/precomp.h
> /build/racket-5.2.1+dfsg1/src/racket/gc2/precomp.c
> ...d/racket-5.2.1+dfsg1/collects/racket/private/reqprov.rkt:161:8: expand:
> unbound identifier in module (in phase 1, transformer environment) in: recur-pre
> make[5]: *** [xsrc/precomp.h] Error 1
> make[5]: Leaving directory `/build/racket-5.2.1+dfsg1/build/racket/gc2'
>
> I took a look at one of Debian's wiki pages[3] to see if there was any
> commonality among those architectures which could explain this.
>
> [3]: http://wiki.debian.org/ArchitectureSpecificsMemo
>
> They all, unlike many others, use unsigned char by default. Adding
> "-fsigned-char" to CFLAGS fixes the issue. So it seems something was
> added between 5.1.3 and 5.2 that is sensitive to char signedness but
> doesn't explicitly declare the sign for char, like a lot of the code
> base does.
>
> Cheers,
> --
> James
> GPG Key: 4096R/331BA3DB 2011-12-05 James McCoy <jamessan at debian.org>
>
> ------------------------------------------------------------------------------
> [application/pgp-signature "signature.asc"] [~/Desktop & open] [~/Temp & open]
> _________________________
> Racket Developers list:
> http://lists.racket-lang.org/dev