Boost logo

Boost-Build :

Subject: Re: [Boost-build] Is it possible to override the CONFIG_COMMAND ?
From: Kuhl, Brian (brian.kuhl_at_[hidden])
Date: 2018-08-29 02:21:50


Steven,
Looking at some other generators I don't quite understand?
Once I create an alternate generator, what next? Do I just make an action specifically named for that generator?

Many Thanks,

Brian

g = [ new gcc-linking-generator gcc.vxworks.link
      : OBJ LIB
      : EXE
      : <toolset>gcc <target-os>vxworks ] ;
$(g).set-rule-name gcc.link ;
generators.register $(g) ;

generators.override gcc.vxworks.link : gcc.link ;

.LD ?= ldppc ;

actions gcc.vxworks.link bind LIBRARIES {
    {
    $(.LD) $(USER_OPTIONS) -L"$(LINKPATH)" -o "$(<)" $(CRT0_OBJ) "$(>)" $(START-GROUP) $(LIBRARIES) $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS)
  }

> -----Original Message-----
> From: Steven Watanabe via Boost-build
> Sent: Tuesday, August 28, 2018 6:41 PM
> To: Kuhl, Brian via Boost-build
> Subject: Re: [Boost-build] Is it possible to override the CONFIG_COMMAND ?
>
> AMDG
>
> On 08/28/2018 04:16 PM, Kuhl, Brian via Boost-build wrote:
> > Our toolchain developers have decided to link with "ld" instead of "gcc"
> > Propagating there cross-build gcc configuration to Boost jam environment is
> challenging.
> > there <linkflags> don't have "-Wl," prefix
> >
> > I'm considering a couple of options, but when I experiment with
> > <linker> option in init()
> >
> > # - linker tool other than default gcc++
> > local linker = [ feature.get-values <linker> : $(options) ] ;
> > if $(linker)
> > {
> > toolset.flags gcc.link CONFIG_COMMAND $(condition) : $(linker[1]) ;
> > }
> >
> > It's prepending instead of replacing ..
>
> That's the standard behavior of flags. You could change the action to use
> $(CONFIG_COMMAND[1]), but that's kind of hacky.
>
> > ldppc -m elf64ppc --oformat=elf64-powerpc ccppc -o .....
> >
> > How do I replace instead of prepend?
> > Do I need to define a "generator"
> >
>
> Yes, you need to define a generator. The existing link action hard-codes the -
> Wl, prefix, because it assumes that you are using gcc to link. There are already a
> couple alternate linking generators for mingw and cygwin.
>
> In Christ,
> Steven Watanabe
> _______________________________________________
> Unsubscribe & other changes:
> https://lists.boost.org/mailman/listinfo.cgi/boost-build


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk