buildworld failure in /usr/src/sys/boot/i386/boot2 this morning

Garance A Drosihn drosih at rpi.edu
Mon Feb 16 16:18:06 PST 2004


At 6:41 AM -0500 2/16/04, Mike Berning wrote:
>
>Fritz Heinrichmeyer wrote:
>
>>cc -Os  -fno-guess-branch-probability -fomit-frame-pointer
>>    -mno-align-long-strings  -mrtd  -DUFS1_AND_UFS2
>>    -I/usr/src/sys/boot/i386/boot2/../../common
>>    -I/usr/src/sys/boot/i386/boot2/../btx/lib -I.
>>    -Wall -Waggregate-return -Wbad-function-cast -Wcast-align
>>    -Wmissing-declarations -Wmissing-prototypes -Wnested-externs
>>    -Wpointer-arith -Wshadow -Wstrict-prototypes -Wwrite-strings
>>    -ffreestanding -mpreferred-stack-boundary=2
>>    -c /usr/src/sys/boot/i386/boot2/sio.S
>>/var/tmp//ccrYtMTN.s: Assembler messages:
>>/var/tmp//ccrYtMTN.s:84: Error: undefined symbol `SIOSPD' in 
>>operation setting `SIO_DIV'
>>/var/tmp//ccrYtMTN.s:35: Error: undefined symbol `SIO_FMT' in operation
>>/var/tmp//ccrYtMTN.s:39: Error: value of 115200 too large for field 
>>of 2 bytes at 13

In a different thread, Simon <heath at cng.fr> suggested that:

    "Adding an edited copy of the boot1.o target for sio.o to the
    Makefile seemed to work for me (at least I ended up with a
    boot2 binary identical to my existing /boot/boot2 - I haven't
    rebooted yet as I'm still building the kernel)."

Based on that advice, I added the rule:

sio.o: sio.s
	${CPP} ${CFLAGS} ${.CURDIR}/sio.s | \
	    ${AS} ${AFLAGS} -o ${.TARGET}

before the line that starts with "CLEANFILES+=   boot2"
in /usr/src/sys/boot/i386/boot2/Makefile

This seems to have solved the problem for me.  I have not
committed this change, though, as it may be that some other
change would be more appropriate.

-- 
Garance Alistair Drosehn            =   gad at gilead.netel.rpi.edu
Senior Systems Programmer           or  gad at freebsd.org
Rensselaer Polytechnic Institute    or  drosih at rpi.edu


More information about the freebsd-current mailing list