Re: How do I specify a dependency for a feature?

Uri Moszkowicz via Boost-build <[email protected]> Thu, 29 Oct 2020 14:04:10 -0500
Newsgroups gmane.comp.lib.boost.build
Message-ID <CAMJd5ATwCkzQVz5o8-4JPx+U4xrdWUm6=OcFfEW_ARq8DMPYSw@mail.gmail.com>
--===============3413467404394748048==
Content-Type: multipart/alternative; boundary="000000000000910e7605b2d3f205"

--000000000000910e7605b2d3f205
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi Brian,
Appreciate the reply. That's not quite what I was looking for. Rather than
a single definition of the vxworks value, can you create two definitions?
One for each version of GCC.

It occurs to me that I can also have two different values for cross-compile
too but I'd like to know if it's possible for the same value.

Thanks,
Uri

On Sat, Oct 24, 2020 at 12:24 PM Kuhl, Brian <[email protected]>
wrote:

> Hi Uri,
>
> Yes, here=E2=80=99s the example I did for our VxWorks wrapper for Boost.
>
> We cross-compile on Windows and Linux, so it just make sure the defaults
> from the host environment aren=E2=80=99t used.
>
> The *feature.feature* declares a feature called *cross-compile* with a
> possible option of *vxworks*
>
> The *feature.compose* declares what selecting the option *vxworks* does.
>
>
>
> feature.feature cross-compile
>
>     : vxworks
>
>     : composite propagated optional ;
>
>
>
> feature.compose <cross-compile>vxworks
>
>   : <target-os>vxworks
>
>     <threadapi>pthread
>
>     <threading>multi
>
>     <inlining>full
>
>     <optimization>speed
>
>     <binary-format>elf
>
>     <abi>sysv
>
>   ;
>
>
>
> *From:* Boost-build <[email protected]> *On Behalf Of *=
Uri
> Moszkowicz via Boost-build
> *Sent:* Friday, October 16, 2020 1:57 PM
> *To:* [email protected]
> *Cc:* Uri Moszkowicz <[email protected]>
> *Subject:* [Boost-build] How do I specify a dependency for a feature?
>
>
>
> Hi,
>
> I'd like to specify a dependency for a feature, like below:
>
>
>
> feature.compose <MyFeature>yes :
>
>   <define>MY_FEATURE
>
>   <toolset>gcc-6.0.0:<include>$(dir-6.0.0)/include
>
>   <toolset>gcc-10.0.0:<include>$(dir-10.0.0)/include
>
>
>
> Is there a way I can do this with Boost::build?
>
>
>
> Thanks,
>
> Uri
>

--000000000000910e7605b2d3f205
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi Brian,<div>Appreciate the reply. That&#39;s not quite w=
hat I was looking for. Rather than a single definition of the vxworks value=
, can you create two definitions? One for each version of GCC.</div><div><b=
r></div><div>It occurs to me that I can also have two different values for =
cross-compile too but I&#39;d like to know if it&#39;s possible for the sam=
e value.</div><div><br></div><div>Thanks,</div><div>Uri</div></div><br><div=
 class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sat, Oct 24=
, 2020 at 12:24 PM Kuhl, Brian &lt;<a href=3D"mailto:[email protected]=
om">[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"g=
mail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204=
,204,204);padding-left:1ex">





<div lang=3D"EN-US">
<div class=3D"gmail-m_4693587859923595740WordSection1">
<p class=3D"MsoNormal">Hi Uri,<u></u><u></u></p>
<p class=3D"MsoNormal">Yes, here=E2=80=99s the example I did for our VxWork=
s wrapper for Boost.<u></u><u></u></p>
<p class=3D"MsoNormal">We cross-compile on Windows and Linux, so it just ma=
ke sure the defaults from the host environment aren=E2=80=99t used.
<u></u><u></u></p>
<p class=3D"MsoNormal">The <b>feature.feature</b> declares a feature called=
 <b>cross-compile</b> with a possible option of
<b>vxworks</b><u></u><u></u></p>
<p class=3D"MsoNormal">The <b>feature.compose</b> declares what selecting t=
he option
<b>vxworks</b> does.<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">feature.feature cross-compile<u></u><u></u></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 : vxworks<u></u><u></u></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 : composite propagated optional ;=
<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal">feature.compose &lt;cross-compile&gt;vxworks<u></u><=
u></u></p>
<p class=3D"MsoNormal">=C2=A0 : &lt;target-os&gt;vxworks<u></u><u></u></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 &lt;threadapi&gt;pthread<u></u><u=
></u></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 &lt;threading&gt;multi<u></u><u><=
/u></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 &lt;inlining&gt;full<u></u><u></u=
></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 &lt;optimization&gt;speed<u></u><=
u></u></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 &lt;binary-format&gt;elf<u></u><u=
></u></p>
<p class=3D"MsoNormal">=C2=A0=C2=A0=C2=A0 &lt;abi&gt;sysv<u></u><u></u></p>
<p class=3D"MsoNormal">=C2=A0 ;<u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<p class=3D"MsoNormal"><b>From:</b> Boost-build &lt;<a href=3D"mailto:boost=
[email protected]" target=3D"_blank">boost-build-bounces@lists=
.boost.org</a>&gt;
<b>On Behalf Of </b>Uri Moszkowicz via Boost-build<br>
<b>Sent:</b> Friday, October 16, 2020 1:57 PM<br>
<b>To:</b> <a href=3D"mailto:[email protected]" target=3D"_blank"=
>[email protected]</a><br>
<b>Cc:</b> Uri Moszkowicz &lt;<a href=3D"mailto:[email protected]" target=3D"_b=
lank">[email protected]</a>&gt;<br>
<b>Subject:</b> [Boost-build] How do I specify a dependency for a feature?<=
u></u><u></u></p>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
<div>
<div>
<p class=3D"MsoNormal">Hi,<u></u><u></u></p>
</div>
<p class=3D"MsoNormal">I&#39;d like to specify a dependency for a feature, =
like below:<u></u><u></u></p>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">feature.compose &lt;MyFeature&gt;yes :<u></u><u></u>=
</p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0 &lt;define&gt;MY_FEATURE<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0 &lt;toolset&gt;gcc-6.0.0:&lt;include&gt;$(dir=
-6.0.0)/include<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">=C2=A0 &lt;toolset&gt;gcc-10.0.0:&lt;include&gt;$(di=
r-10.0.0)/include<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Is there a way I can do this with Boost::build?<u></=
u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Thanks,<u></u><u></u></p>
</div>
<div>
<p class=3D"MsoNormal">Uri<u></u><u></u></p>
</div>
</div>
</div>
</div>

</blockquote></div>

--000000000000910e7605b2d3f205--

--===============3413467404394748048==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build

--===============3413467404394748048==--