prebuild step and "make" rule questions

View: New views
4 Messages — Rating Filter:   Alert me  

prebuild step and "make" rule questions

by Fadi Beyrouti :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello, I am a newbie to boost build and I am sure the questions I will be asking
have been asked before in one way or another, but I wasn't very lucky with my
search results. So sorry if you have seen this before.

1. In MSVC there we can run-a prebuild event, like for instance copying a file
from directory X to directory Y. What is the easiest way to express this in
boost build when I want to compile a library for instance? (with the "lib" rule)


2. I am trying to use the "make" rule to actually copy a file from directory X
to the current directory in which the jamfile exists but boost build is actually
copying the file to bin\msvc-9.0\debug\threading-multi which is really not what
I want. What can I do to make it achieve what I am after?

Thanks for your time.

--
Fadi,

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

Re: prebuild step and "make" rule questions

by Matthew Chambers-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

1. You seem to already be doing this with #2. You can also copy the file
with a SHELL call while parsing the Jamfiles, but if it's a source file
the current bjam has a bug that sometimes won't let you use it (because
it caches the results of scanning directories).

2. The <location> feature in requirements will set the output location
of the made targets. <location>. will be the current Jamfile's directory.

-Matt


Fadi Beyrouti wrote:

> Hello, I am a newbie to boost build and I am sure the questions I will be asking
> have been asked before in one way or another, but I wasn't very lucky with my
> search results. So sorry if you have seen this before.
>
> 1. In MSVC there we can run-a prebuild event, like for instance copying a file
> from directory X to directory Y. What is the easiest way to express this in
> boost build when I want to compile a library for instance? (with the "lib" rule)
>
>
> 2. I am trying to use the "make" rule to actually copy a file from directory X
> to the current directory in which the jamfile exists but boost build is actually
> copying the file to bin\msvc-9.0\debug\threading-multi which is really not what
> I want. What can I do to make it achieve what I am after?
>
> Thanks for your time.
>
> --
> Fadi,
>  
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build

Re: prebuild step and

by Fadi Beyrouti :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Matthew Chambers <matthew.chambers <at> vanderbilt.edu> writes:

>
> 1. You seem to already be doing this with #2. You can also copy the file
> with a SHELL call while parsing the Jamfiles, but if it's a source file
> the current bjam has a bug that sometimes won't let you use it (because
> it caches the results of scanning directories).

Thanks for the quick answer. I should precise though that what I really
want to do is to establish a dependency between my lib target and
my "prebuild" event (to use the MSVC jargon) which is copying the file from
dir X and dir Y. It is really establishing this dependency that I cannot
figure out how to do. Any ideas?

>
> 2. The <location> feature in requirements will set the output location
> of the made targets. <location>. will be the current Jamfile's directory.
>

Can you please tell me where I can see the requirements?

Thanks



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

Re: prebuild step and

by Matthew Chambers-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Fadi Beyrouti wrote:
> It is really establishing this dependency that I cannot figure out how to do. Any ideas?
>  
lib foo
: # sources
  source1.cpp source2.cpp
: # requirements
  <dependency>your-make-target-name
: # default-build
: # usage-requirements
;
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build