Gennadiy Rozental <rogeeff@gmail.com> schrieb:
Georg Sauthoff <g_sauthoff <at> web.de> writes:
Is it possible (and/or intended) to link a set of different testsuites in different translation together to one test executable?
Yes. It's possible if you are not using single header variant of UTF. Moreover you can have the same test suite spawn multiple translation units if you opt to.
Do you have any specific problems?
Yes, from the documentation I don't see how to do multiple translation units/testsuites and linking against utf library. I basically tried this: //a.cc #define BOOST_TEST_DYN_LINK #define BOOST_TEST_MODULE a #include <boost/test/unit_test.hpp> BOOST_AUTO_TEST_CASE( foo ) { } //b.cc #define BOOST_TEST_DYN_LINK #define BOOST_TEST_MODULE b #include <boost/test/unit_test.hpp> BOOST_AUTO_TEST_CASE( bar ) { } //main.cc #define BOOST_TEST_DYN_LINK #define BOOST_TEST_MAIN #include <boost/test/unit_test.hpp> $ g++ -c a.cc $ g++ -c b.cc $ g++ -c main.cc $ g++ a.o b.o main.o -lboost_unit_test_framework b.o: In function `main': b.cc:(.text+0x21c): multiple definition of `main' a.o:a.cc:(.text+0x21c): first defined here b.o: In function `init_unit_test()': b.cc:(.text+0x250): multiple definition of `init_unit_test()' a.o:a.cc:(.text+0x250): first defined here main.o: In function `init_unit_test()': main.cc:(.text+0x0): multiple definition of `init_unit_test()' a.o:a.cc:(.text+0x250): first defined here main.o: In function `main': main.cc:(.text+0x168): multiple definition of `main' a.o:a.cc:(.text+0x21c): first defined here collect2: ld returned 1 exit status Sure, this usage is just a wild guess, extrapolated from the working single translation unit usage I posted in the original mail. Perhaps I overlooked it in the boost utf documentation, but I found nothing specific about this use case there. Thus, the question is: How to do it right? Best regards Georg