import os
-option_defaults = { 'force-cpp11': False }
-
def build(target, options):
cmd = './waf configure --prefix=%s' % target.directory
if target.platform == 'linux':
elif target.platform == 'windows':
cmd += ' --target-windows'
- # Centos 7 ships with glibmm 2.50.0 which requires C++11
- # but its compiler (gcc 4.8.5) defaults to C++97. Go figure.
- # I worry that this will cause ABI problems but I don't have
- # a better solution. Mageia 6 pulls the same stunt except it's
- # libxml++ that requires C++11
- force_cpp11 = False
- if target.platform == 'linux':
- if target.distro == 'centos' and target.version == '7':
- force_cpp11 = True
- if target.distro == 'mageia' and target.version == '6':
- force_cpp11 = True
- if target.platform == 'windows':
- force_cpp11 = True
- if force_cpp11 or options['force-cpp11']:
- cmd += ' --force-cpp11'
-
target.command(cmd)
target.command('./waf build install')
using std::string;
using std::list;
-using boost::shared_ptr;
+using std::shared_ptr;
using boost::optional;
cxml::Node::Node ()
/** @return namespace prefix of this node */
std::string namespace_prefix () const;
- boost::shared_ptr<Node> node_child (std::string) const;
- boost::shared_ptr<Node> optional_node_child (std::string) const;
+ std::shared_ptr<Node> node_child (std::string) const;
+ std::shared_ptr<Node> optional_node_child (std::string) const;
- std::list<boost::shared_ptr<Node> > node_children () const;
- std::list<boost::shared_ptr<Node> > node_children (std::string) const;
+ std::list<std::shared_ptr<Node> > node_children () const;
+ std::list<std::shared_ptr<Node> > node_children (std::string) const;
xmlpp::Node* node () const {
return _node;
mutable std::list<std::string> _taken;
};
-typedef boost::shared_ptr<cxml::Node> NodePtr;
-typedef boost::shared_ptr<const cxml::Node> ConstNodePtr;
+typedef std::shared_ptr<cxml::Node> NodePtr;
+typedef std::shared_ptr<const cxml::Node> ConstNodePtr;
class Document : public Node
{
using std::string;
using std::vector;
using std::list;
-using boost::shared_ptr;
+using std::shared_ptr;
BOOST_AUTO_TEST_CASE (test)
{
opt.add_option('--enable-debug', action='store_true', default=False, help='build with debugging information and without optimisation')
opt.add_option('--static', action='store_true', default=False, help='build statically')
opt.add_option('--disable-tests', action='store_true', default=False, help='disable building of tests')
- opt.add_option('--force-cpp11', action='store_true', default=False, help='force use of C++11')
def configure(conf):
conf.load('compiler_cxx')
if conf.options.enable_debug:
conf.env.append_value('CXXFLAGS', '-g')
- conf.env.append_value('CXXFLAGS', ['-Wall', '-Wextra', '-O2', '-Wno-deprecated-declarations'])
- if conf.options.force_cpp11:
- conf.env.append_value('CXXFLAGS', ['-std=c++11', '-DBOOST_NO_CXX11_SCOPED_ENUMS'])
+ conf.env.append_value('CXXFLAGS', ['-Wall', '-Wextra', '-O2', '-Wno-deprecated-declarations', '-std=c++11', '-DBOOST_NO_CXX11_SCOPED_ENUMS'])
conf.env.TARGET_WINDOWS = conf.options.target_windows
conf.env.STATIC = conf.options.static