From: William E. Kempf (williamkempf_at_[hidden])
Date: 2002-07-24 13:13:36


----- Original Message -----
From: "Jeff Garland" <jeff_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Wednesday, July 24, 2002 12:47 PM
Subject: RE: [boost] Re: Re: Beta posted for new regression tests

> > This Jamfile may define all test targets itself or it could include
other
> > Jamfiles. For example for gdtl
> > $(BOOST_ROOT)/libs/gdtl/test/Jamfile should include
> > $(BOOST_ROOT)/libs/gdtl/gregorian/test/Jamfile and
> >
> > $(BOOST_ROOT)/libs/gdtl/posix_time/test/Jamfile
>
> So then the Jamfile in the /build should only build libraries
> and examples and have a separate Jamfile for the tests?

Actually, the directory structure is supposed to include a directory for
examples, AFAIK, and thus would have it's own Jamfile as well.

$(BOOST_ROOT)/libs/proj/example/Jamfile

> I'm
> no Jam expert here, but I presume in that structure the
> /build (library Jamfile) will have to be included in the
> /test Jamfile to ensure the library is built?

Yes. See Boost.Threads for how this is trivially done.

> > In general we should strive to keep all testing under <lib-name>/test
> > subdirectory; all build rules under <lib-name>/build all docs under
> > <lib-name>/docs. IOW I would prefer if gdtl testing structure would look
> > like
> > $(BOOST_ROOT)/libs/gdtl/test
> > $(BOOST_ROOT)/libs/gdtl/test/gregorian
> > $(BOOST_ROOT)/libs/gdtl/test/posix_time
> >
> > Even if library subcomponent are completely independent I would prefer
still
> > stick to per-library based building/testing/documenting and so on.
>
> That can be done, but then the structure is a bit inconsistent. If we
> do this then for consistency I would want:
> libs/gdtl/examples/gregorian
> examples/posix_time
> libs/gdtl/src/gregorian
> src/posix_time
>
> etc.

Yes.

> I think when this structure was invented we looked at other boost
libraries
> with sublibraries for guidance (numeric and math). You will note that the
> state of the practice is not consistent. For example:
>
> numeric <-- no test dir here
> numeric/ublas/test1
> numeric/ublas/test2
> ...
>
> math/test
> math/octoinion <-- test file here
> math/quaternion <-- test file here too

Did either of these exist before we discussed the proper structure? I'd
suspect these are historical artifacts, and that a firm decision by the
Build system could force them to be updated.

> So we decided to be at least self-consistent....

I'm wondering if the directory structure stuff needs revisiting and to be
properly enforced?

Bill Kempf