Boost logo

Boost-Build :

Subject: [Boost-build] Jamfile syntax question
From: Robert Ramey (ramey_at_[hidden])
Date: 2016-12-23 12:03:27


My jam file includes the following

# these are used to shorten testing while in development. It permits
# testing to be applied to just a particular type of archive
if ! $(BOOST_ARCHIVE_LIST) {
     BOOST_ARCHIVE_LIST =
         "text_archive.hpp"
         "text_warchive.hpp"
         "binary_archive.hpp"
         "xml_archive.hpp"
         "xml_warchive.hpp"
     ;
     # enable the tests which don't depend on a particular archive
     BOOST_SERIALIZATION_TEST = true ;
}

in order to define a list of archive types to test. I would like to
alter this so that it does not include the warchive versions if the
target plaform doesn't support wstream_buf. I'm unclear as to how that
should be implemented. My first idea would be to use something like this:

if ! $(BOOST_ARCHIVE_LIST) {
     if [ requires std_wstreambuf ] {
         BOOST_ARCHIVE_LIST =
             "text_archive.hpp"
             "text_warchive.hpp"
             "binary_archive.hpp"
             "xml_archive.hpp"
             "xml_warchive.hpp"
         ;
     }
     else {
         BOOST_ARCHIVE_LIST =
             "text_archive.hpp"
             "binary_archive.hpp"
             "xml_archive.hpp"
         ;
     }

     # enable the tests which don't depend on a particular archive
     BOOST_SERIALIZATION_TEST = true ;
}

Will this work as want it to?

Robert Ramey


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