Re: third-party library dependencies

Stefan Seefeld via Boost-build <[email protected]>
Newsgroups gmane.comp.lib.boost.build
Message-ID <[email protected]>
ping ?


On 2018-05-23 09:26 AM, stefan wrote:
>
> On 2018-05-23 09:06 AM, Steven Watanabe via Boost-build wrote:
>
>> AMDG
>>
>> On 05/20/2018 02:03 PM, Stefan Seefeld via Boost-build wrote:
>>> I'm trying to add a few library dependencies to a (boost) project.
>>> https://boostorg.github.io/build/tutorial.html#best_practices  explains
>>> how to add
>>>
>>> lib xml : : <name>libxml <search>C:/lib : : <include>C:/include ;
>>>
>>>    to a user-config.jam file, then use it from a Jamfile via
>>> `<library>/user-config//xml`. This approach seems to require the
>>> user-config.jam file to contain a call to `lib xml`. Is there a way to
>>> make that optional (so a default `xml` target gets instantiated with
>>> default paths, only to be overridden if any custom paths or requirements
>>> are needed ? Or would that require an `xml` module to be created, as is
>>> done for a few other third-party packages b2 has builtin support for
>>> (zlib, libpng, etc.) ?
>>>
>>    You really should use a module.  All the module needs to
>> do is wrap up the logic for tracking whether the target
>> has been created yet.  The lib rule is not really designed
>> to handle this.  Hypothetically, I suppose you could make
>> a module that searches config files for targets.
>
> OK, I have done that. Actually I need to look for two libs (opencl and 
> clblas), so I created two modules. Now I want to add opencl as a 
> (usage) requirement to clblas, i.e. make it such that whenever a user 
> links to clblas//clblas, opencl gets linked also.
>
> Here are my two modules:
> https://github.com/stefanseefeld/boost.ublas/blob/opencl/opencl.jam
> https://github.com/stefanseefeld/boost.ublas/blob/opencl/clblas.jam
>
> how should I modify clblas.jam to add opencl to its usage requirements ?
>
> And finally, what would be the right place to put these modules, such 
> that users can see / use them ?
> While I'm of course happy to contribute them to Boost.Build itself, 
> I'm not sure this is the right solution in general. There needs to be 
> a mechanism for users to write and publish their own modules, but I 
> couldn't quite figure out how.
>
> (Also, as a side-note: the two modules above contain a lot of 
> boilerplate code. Is there a way to compact that, or even create 
> something like a module template that I could use and parametrize for 
> the specifics of a given library ?
>
>
> Many thanks,
>
> Stefan
> --
>
>        ...ich hab' noch einen Koffer in Berlin...
>      

Stefan

--

       ...ich hab' noch einen Koffer in Berlin...

_______________________________________________
Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.