Boost logo

Boost-Build :

Subject: [Boost-build] Unit tests and DLL hell
From: Joshua Boyce (raptorfactor_at_[hidden])
Date: 2011-04-24 11:04:19


I'm currently using Boost.Build as my library's build system, and I'm using
Boost.Test for the unit testing, however I've run into a problem with one of
my tests. The library I'm trying to test has two binary dependencies, which
I just 'install' (using the Boost.Build install rule) when I build my
application, however I can't work out how to drop the DLLs alongside the
unit tests binaries.

I have tried adding them as dependencies using the 'project' rule, but that
doesn't cause the files to be copied as part of the unit test build phase
(it works for the install rule however when my application is built).

Is there any way I can have Boost.Build copy over my dependencies to the
unit test's binary dir before it is run? If I can't do this is renders a
large portion of my library untestable using this system, as the DLLs are
critical to its operation.

In case it matters, the DLLs I'm referring to are the DbgHelp and SymSrv
DLLs from the redist dir of the latest "Debugging Tools for Windows"
package.

My library can be found here:
https://code.google.com/p/hadesmem/
Direct link to relevant files:
https://code.google.com/p/hadesmem/source/browse/trunk/Jamroot
https://code.google.com/p/hadesmem/source/browse/trunk/Src/Memory/Jamfile.v2
https://code.google.com/p/hadesmem/source/browse/trunk/Tests/Jamfile.v2

Thanks in advance.

P.S. Feel free to point out any problems you see with how I'm using the
build system, including ways I could simplify or improve my usage.



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