On Thu, Jan 31, 2019 at 09:58:56AM +0100, Uwe Kleine-König wrote: > Hello, > > I packaged sparse 0.6.0 for Debian and some architectures failed to > build the package because of a failure of the preprocessor/predef-lp64.c > test. Affected are: > > mips > mipsel > powerpc > > The failure looks as follows: > > TEST predefined macros for LP64 (preprocessor/predef-lp64.c) > Using command : test-linearize -Wno-decl -m64 $file Note the '-m64'. These tests are some ugly hack from me to limit the amount of assumptions made in them. They shouldn't run an architectures that doesn't support a flag '-m64' because the test in them are only relevant for LP64. I'll see what I can do. > I didn't look into details (yet). > > There are a few more failures, see at > > https://buildd.debian.org/status/package.php?p=sparse&suite=sid I'll look at them. > For the m68k I already sent a patch. On Hurd the problem is: > > env CHECK=./sparse ./cgcc -no-compile memops.c > ./cgcc: invalid specs: gnu Does 'uname -m' or 'uname -s' returns 'gnu' on Hurd? > and on x32 I got: > > /usr/bin/ld: compile-i386.o: relocation R_X86_64_32S against `.data' can not be used when making a PIE object; recompile with -fPIC > /usr/bin/ld: final link failed: nonrepresentable section on output > collect2: error: ld returned 1 exit status I didn't had this when testing on x32 but I see that here the compiler is called here with: -specs=/usr/share/dpkg/pie-link.specs -Wl,-z,relro -Wl,-z,now The first one is clearly part of the problem, maybe in combination with the other two. >From where do they come? Why? It's not used for amd64 and other archs. This doesn't seem at all like a problem specific to sparse, surely other packages have the same problem on 86-x32. Thanks for this report. -- Luc