[gccsdk] OSLib cross-build fail

John Tytgat John.Tytgat at aaug.net
Mon Nov 28 17:02:08 PST 2011

In message <20111128235829.GL27827 at chiark.greenend.org.uk>
          Theo Markettos <theo at markettos.org.uk> wrote:

> I'm trying to build OSLib with the autobuilder using a GCCSDK checked out a
> few days ago from trunk, and getting some errors.  Looks like defmod isn't
> doing the right thing somehow.  Log below... the problem is with this line:
> /auto/homes/atm26/gccsdk/git/autobuilder/oslib/!OSLib/Source/../Bin/defmod
> /-asmtype gccelf -fpu soft -l -o l/ADFS -byte_wide
> Warning: type "FileCore_DiscAddress" not defined in this module - assuming
> it's a word
> l/ADFS/0x40240x.001.s: Assembler messages:
> l/ADFS/0x40240x.001.s: Error: .size expression for adfsdiscop_verify does
> not evaluate to a constant
> FileCore.swi does define FileCore_DiscAddress.  0x40240x.001.s contains
> the below, which indeed doesn't mention adfsdiscop_verify at all.
> @ GNU AS file
> 	.title	"ADFSDiscOp_Verify"
> @ Written by DefMod (Nov 28 2011) on Mon Nov 28 23:48:31 2011
> @ Jonathan Coxhead, jonathan at doves.demon.co.uk, 21 Aug 1995
> 	.ident	"DefMod (Nov 28 2011)"
> R	.req	r0
>         .global xadfsdiscop_verify
>         .type   xadfsdiscop_verify, %function
>         .text
> xadfsdiscop_verify:
> [ARM code snipped]
>         SWI     0x60240
> [ARM code snipped]
>         .size   adfsdiscop_verify, . - adfsdiscop_verify
> @Registers available for scratch use: {R0}
>         .end
> I don't really understand the defmod build system... does anyone know what's
> going on?

Yes, you're right, it is a bug in DefMod2 and gets triggered by binutils
2.21.1 (at gccsdk trunk we're now using binutils 2.22).  I've commited
a fix.

John Tytgat, in his comfy chair at home                                 BASS
John.Tytgat at aaug.net                             ARM powered, RISC OS driven

More information about the gcc mailing list