• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Boost Nowide Library test Jamfile
2
3# Copyright (c) 2003, 2006 Beman Dawes
4# Copyright (c) 2012 Artyom Beilis (Tonkikh)
5# Copyright (c) 2020 Alexander Grund
6#
7# Distributed under the Boost Software License, Version 1.0.
8# (See accompanying file LICENSE or www.boost.org/LICENSE_1_0.txt)
9# See library home page at http://www.boost.org/libs/nowide
10
11import testing ;
12import config : requires ;
13
14obj cxx11_moveable_fstreams : check_movable_fstreams.cpp ;
15explicit cxx11_moveable_fstreams ;
16
17rule require-windows ( properties * )
18{
19    local result ;
20    if ! <target-os>windows in $(properties)
21    {
22        result = <build>no ;
23    }
24    return $(result) ;
25}
26
27project : requirements
28  <library>/boost/nowide//boost_nowide
29  <warnings>pedantic
30  <warnings-as-errors>on
31  [ requires
32      cxx11_defaulted_functions
33      cxx11_noexcept
34      cxx11_rvalue_references
35      cxx11_static_assert
36  ]
37  [ check-target-builds cxx11_moveable_fstreams "std::fstream is moveable and swappable" : : <build>no ]
38  ;
39
40lib shell32 ;
41
42run test_codecvt.cpp ;
43run test_convert.cpp ;
44run test_env.cpp ;
45run test_env.cpp : : : <define>BOOST_NOWIDE_TEST_INCLUDE_WINDOWS=1 : test_env_win ;
46run test_fs.cpp : : : <library>/boost/filesystem//boost_filesystem/<warnings-as-errors>off : ;
47run test_fstream.cpp ;
48run test_fstream.cpp : : : <define>BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT=1 <target-os>windows:<build>no : test_internal_fstream ;
49run test_fstream_cxx11.cpp  ;
50run test_fstream_cxx11.cpp : : : <define>BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT=1 <target-os>windows:<build>no : test_internal_fstream_cxx11 ;
51run test_iostream.cpp ;
52run test_stackstring.cpp ;
53run test_stat.cpp ;
54run test_stdio.cpp ;
55run test_system.cpp : : : <define>BOOST_NOWIDE_TEST_USE_NARROW=1 <target-os>windows:<library>shell32 <target-os>darwin,<link>shared:<build>no : test_system_n ;
56run test_system.cpp : : : <define>BOOST_NOWIDE_TEST_USE_NARROW=0 <target-os>windows:<library>shell32 <conditional>@require-windows : test_system_w ;
57
58compile benchmark_fstream.cpp : <define>BOOST_NOWIDE_USE_WIN_FSTREAM=1 [ requires cxx11_hdr_chrono ] ;
59