Subject: Re: [boost] [unit_test_framework] plans?
From: Gennadiy Rozental (rogeeff_at_[hidden])
Date: 2009-08-03 15:36:01


Dmitry Goncharov <dgoncharov <at> unison.com> writes:

>
>
> Thanks for your reply,
>
> Gennadiy Rozental wrote:
>
> > 1. This subject is discussed in length. Boost.Test opted for
> > portability in between platform, instead of interchangeability between
> > static and shared libraries. This is not a restriction, this is
> > feature ;)
> Can't really see how interchangeability between static and shared
> libraries prevents portability between platforms.

The problem is that main function can't reside inside the shared library (at
least not if portability is a concern), but it can inside the static one.
Later was a default which we wanted to continue to employ. To properly support
shared library usage variant I had to go with a bit different support scheme,
with main function outside. Thus we came to the current state of affairs.

> > 3. If answer is yes, do you ship your own makefiles?
> yes
> > if yes, you can enforce specific library there.
> It is possible to enforce a specific library. It's also uncomfortable
> for the user.

How? I believe you only need to add -static in proper place in command line.

> > 4. If not, you can use single header variant of UTF and do not depend
> > on library at all.
> That's right. This will increase compilation time.
>
> > It's not like your users are going to build your test modules over and
> > over.
> That's right, the users aren't going to build test modules over an over.
> The developer (e.g. me) builds tests modules over and over.

It should be trivial to have makefiles/test modules to support both variants, so
that you will use shared library, and your users will use single header variant.

Gennadiy