Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Steven Watanabe <watanabesj <at> gmail.com>
Subject: Re: Native-built tools in a cross-compile environment
Newsgroups: gmane.comp.lib.boost.build
Date: Tuesday 23rd October 2012 19:36:57 UTC (over 4 years ago)
AMDG

On 10/22/2012 05:03 PM, Kylo Ginsberg wrote:
> Ok I spoke too soon.  That solution works *except* for the following:
> 
> The tool is linked against static libraries, and I have a target
> shared library which uses that tool.  For reasons I don't follow, the
> cross build of that shared library ends up linking against *native*
> versions of those static libraries.  Strange.
> 

The problem is in Boost.Build's handling of
static libraries (In some cases, static libraries
can be propagated upwards too far):

You can work around this with something like:

class kill-usage-requirements : alias-target-class
{
    import property-set ;
    rule compute-usage-requirements ( subvariant )
    {
        return [ property-set.empty ] ;
    }
}

import project ;
import targets ;
rule my-alias ( name : sources + )
{
  return [ targets.create-metatarget kill-usage-requirements
    : [ project.current ] : $(name) : $(sources) ] ;
}

my-alias text-to-c : text-to-c//text-to-c ;

I've made a reduced test case for this that
works with any toolset.  I'm not exactly
sure how to go about fixing it yet, though.

In Christ,
Steven Watanabe
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
 
CD: 2ms