On Sun, Apr 14, 2019 at 06:42:56PM -0700, Mike Larkin wrote:
> On Sun, Apr 14, 2019 at 02:34:05PM -0600, Theo de Raadt wrote:
> > Christian Weisgerber <na...@mips.inka.de> wrote:
> > 
> > > By my count there remain five ports than can ONLY be built with
> > > base-gcc:
> > > 
> > >   audio/festival/core
> > >   devel/ti-msp430gcc
> > >   editors/TeXmacs
> > >   multimedia/avidemux
> > >   sysutils/firmware/vmm
> > > 
> > > These ports are living on borrowed time.  base-gcc WILL go away,
> > > and possibly sooner than you think, so they will need to move to
> > > clang or ports-gcc or they will die.
> > 
> > Yep.  All hands on deck...
> > 
> 
> I tried for most of the afternoon to fix vmm-firmware. I made a little
> progress but now I'm stumped.
> 
> Using ports-gcc 4.9.4, some of the 16 bit real mode binaries get built
> as x86_64, which results in a bunch of problems linking. I fiddled with
> the makefile for a while and then based on a comment in the ports Makefile
> that FreeBSD is building this with gcc8, I upgraded to ports gcc 8.3.
> 
> That got a little further (things get compiled in the right mode now) but
> it still fails to link the 16 bit part of the ROM. The way this appears
> to work is that it tries to fit things together really tightly using a
> python script that analyses all the .o files and produces a link script that
> is used to link the rom. The problem seems to be in that python scrip/link
> script; it emits directives that make sections overlap with each other. I
> enabled some of the commented out debugging and from what I can tell, the
> part of the .py script that is placing the "fixed sections" seems to be
> doing the right thing, and later phases don't know about those and end
> up placing things on top of each other.
> 
> Since the .py script gets its inputs by reading the symbol tables of the
> various .o files, it's clearly the case that the compiler is outputting
> something different. I just couldn't find what it was and realized that
> I was in over my head. Maybe with the above information, someone can
> make further progress.
> 
> -ml
> 
> 

FWIW sthen says gcc 8.3 works for him, so I'll drop this.

-ml

Reply via email to