On Fri, Aug 11, 2017 at 05:29:23PM -0400, Jeremie Courreges-Anglas wrote: > On Fri, Aug 11 2017, Jeremie Courreges-Anglas <j...@wxcvbn.org> wrote: > > On Fri, Aug 11 2017, Christian Weisgerber <na...@mips.inka.de> wrote: > >> On 2017-08-10, Jeremie Courreges-Anglas <j...@wxcvbn.org> wrote: > >> > >>> +# XXX base gcc > >>> +CC= /usr/bin/gcc > > > > Thanks for the test reports, which confirm that I'm the only one unable > > to run memtest86+ on my machines... > > > >> That isn't a solution. > > > > It is a solution, just not a long-term one. ;) > > > > So here's a diff I just cooked up (I don't know where I've put the > > previous version...). While here, respect CC. Note that as(1) is still > > used once, which could be a problem on a clang-only box. > > > > Tests welcome. > > So with this diff memtest86+ doesn't work any more on naddy's x230 > (it did with /usr/bin/gcc). Using gcc from ports doesn't help. >
I was trying just now to take a look at why it fails (since I also have an x230) but it doesn't even build for me with clang at all: cc -c -O2 -pipe -Wall -march=i486 -m32 -O2 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -fno-stack-protector -fno-pie -fno-strict-aliasing reloc.c reloc.c:50:10: warning: variable 'got' is uninitialized when used here [-Wuninitialized] return *got; ^~~ reloc.c:49:26: note: initialize the variable 'got' to silence this warning register Elf32_Addr *got asm ("%ebx"); ^ = NULL 1 warning generated. cc -O2 -pipe -Wall -march=i486 -m32 -O2 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC -fno-stack-protector -fno-pie -c -o main.o main.c main.c:115:7: warning: passing 'volatile ulong *' (aka 'volatile unsigned long *') to parameter of type 'const void *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers] goto *p; ^~ main.c:115:2: error: indirect goto in function with no address-of-label expressions goto *p; ^ 1 warning and 1 error generated. gmake: *** [<builtin>: main.o] Error 1 *** Error 2 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2705 '/usr/ports/pobj/memtest86+-4.20/.build_done') *** Error 1 in /usr/ports/sysutils/memtest86+ (/usr/ports/infrastructure/mk/bsd.port.mk:2408 'all') If someone can give me a clue why, I can see if I can debug it further. -ml > We have several options: > - mark it broken > - force the use of /usr/bin/gcc, which obviously work work any more when > we unlink gcc on i386/amd64. > - build a binary snapshot with /usr/bin/gcc and then just use that > binary snapshot as a distfile. After all, these are standalone > programs. > > Marking it BROKEN would be a shame, memtest86+ is a useful tool. As > discussed with naddy I don't know yet which solution we'll choose in the > end, opinions welcome. > > -- > jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE >