Boost logo

Boost-Build :

Subject: Re: [Boost-build] make more than one target with one custom command
From: Paulo Márcio Figueiredo Alves (pauloalves1986_at_[hidden])
Date: 2015-09-29 07:51:52


I have one example that does that. It follows annexed.

Here is how to use it:

*# build.jam*
path-constant SOURCE_DIR : externals ;

files = zip unzip ioapi ;

lib minizip : dependencies.svn :
    <include>$(SOURCE_DIR)
    <include>$(SOURCE_DIR)/minizip
    <link>static
    [ conditional <target-os>darwin :
        <define>fopen64=fopen
        <define>fseeko64=fseeko
        <define>ftello64=ftello
        ]
    <svn-output-root>$(SOURCE_DIR)
    <svn-output-header>minizip/$(files).h
    <svn-output-source>minizip/$(files).c
  : # default-build
  : # usage-requirements
    <include>$(SOURCE_DIR)
    <include>$(SOURCE_DIR)/minizip
  ;

*# dependencies.svn*
https://your.svn.server/minizip/v1.1 $(root)/minizip

On Tue, Sep 29, 2015 at 8:46 AM Roman Matsybora <matsic_at_[hidden]> wrote:

> This example invokes 2 actions for 2 targets
> What if 1 action makes 2 targets?
>
> 29 сентября 2015, 14:33:52, от "Paulo Márcio Figueiredo Alves" <
> pauloalves1986_at_[hidden]>:
>
> If you take a look at
> https://github.com/boostorg/build/blob/develop/example/generator/soap.jam line
> 64 you will see an example on how to create two targets.
>
> On Tue, Sep 29, 2015 at 5:42 AM Roman Matsybora <matsic_at_[hidden]> wrote:
>
> I know all the files that will be produced.
> Can you provide example with 2 files generated and then sourced to exe?
>
> --- Исходное сообщение ---
> От кого: "Steven Watanabe" <watanabesj_at_[hidden]>
> Дата: 28 сентября 2015, 20:29:57
>
> AMDG
>
> On 09/28/2015 11:02 AM, Roman Matsybora wrote:
> > In Custom Command section of boost-build documentation there are 3 ways to use custom command: * using make rule
> > * using notfile rule * using generate rule
> > But all of these ways make only one target.
>
> Actually generate can produce multiple
> targets (as long as you know all the
> files that will be produced). Just
> create a list of all the targets and
> return it from the generating rule.
>
> > If project has some procedure that generates many source files at once, how can I declare them?
> > Example:
> > program make_sources creates a1.cpp and a2.cpp a1.cpp and a2.cpp are not available before build.
> >
> > main target is exe a : a1.cpp a2.cpp ;
> > How to declare a1.cpp and a2.cpp targets?
> >
>
> In Christ,
> Steven Watanabe
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
> _______________________________________________
> Unsubscribe & other changes:
> http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build
>
> _______________________________________________
> Unsubscribe & other changes:
> http://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