File: Jamfile.v2

package info (click to toggle)
boost1.90 1.90.0-1
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 593,120 kB
  • sloc: cpp: 4,190,908; xml: 196,648; python: 34,618; ansic: 23,145; asm: 5,468; sh: 3,774; makefile: 1,161; perl: 1,020; sql: 728; ruby: 676; yacc: 478; java: 77; lisp: 24; csh: 6
file content (80 lines) | stat: -rw-r--r-- 3,294 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
#  (C) Copyright Gennadiy Rozental 2001-2005.
#  (C) Copyright Juergen Hunold 2006.
#  Use, modification, and distribution are subject to the
#  Boost Software License, Version 1.0. (See accompanying file
#  LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
#
#  See http://www.boost.org/libs/test for the library home page.

# bring in the rules for testing
import testing ;
import os ;

# requirements
import-search /boost/config/checks ;
import config : requires ;

local HAS_UBSAN = "NO_UBSAN" ; # need to defined something
if [ os.environ UBSAN ]
{
    HAS_UBSAN = "HAS_UBSAN=" [ os.environ UBSAN ] ;
}

ECHO $(HAS_UBSAN:J) ;

# Project
project
    :
    : requirements
      <library>/boost/test//boost_test
      <toolset>clang:<cxxflags>-Wno-c99-extensions <define>$(HAS_UBSAN:J)
    ;

# Define aliases for the needed libs to get shorter names
alias prg_exec_monitor
    : # sources
        /boost/test//boost_prg_exec_monitor
    ;

alias unit_test_framework
    : # sources
        /boost/test//boost_unit_test_framework
    ;

# make aliases explicit so the libraries will only be built when requested
explicit unit_test_framework ;
explicit prg_exec_monitor ;

alias boost_test_examples
:
    # [ run      exec_mon_example.cpp prg_exec_monitor ]
    # [ run-fail prg_exec_example.cpp prg_exec_monitor ]

    [ run-fail test_case_template_example.cpp unit_test_framework/<link>static ]

    [ run-fail unit_test_example_01.cpp unit_test_framework ]
    [ run-fail unit_test_example_02.cpp unit_test_framework/<link>static ]
    [ run-fail unit_test_example_03.cpp unit_test_framework/<link>static ]
    [ run-fail unit_test_example_04.cpp unit_test_framework : : : [ requires cxx11_variadic_macros cxx11_decltype cxx11_auto_declarations ] ]
    [ run-fail unit_test_example_05.cpp unit_test_framework : : : [ requires cxx11_variadic_macros cxx11_decltype cxx11_auto_declarations ] ]
    [ run-fail unit_test_example_06.cpp unit_test_framework ]
    [ run      unit_test_example_07.cpp unit_test_framework : : : [ requires cxx11_variadic_macros cxx11_decltype cxx11_auto_declarations ]  ]
    [ run      unit_test_example_08.cpp unit_test_framework ]
    [ run      unit_test_example_09_1.cpp
               unit_test_example_09_2.cpp unit_test_framework ]
    [ run-fail unit_test_example_10.cpp unit_test_framework/<link>static : : : <library>/boost/lexical_cast//boost_lexical_cast ]
    [ run-fail unit_test_example_11.cpp unit_test_framework/<link>static ]
    [ link     unit_test_example_12.cpp unit_test_framework/<link>static ]
    [ run      unit_test_example_13.cpp ]
    [ run-fail unit_test_example_15.cpp : : : [ requires cxx11_decltype cxx11_hdr_random cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_variadic_macros cxx11_trailing_result_types cxx11_template_aliases ] ]
    # [ run      unit_test_example_16.cpp unit_test_framework ]

    [ run      named_param_example.cpp ]

    [ run      const_string_test.cpp ]

    # [ run-fail external_main_example_1.cpp unit_test_framework ]
    # [ run-fail external_main_example_2.cpp unit_test_framework ]
    [ run-fail external_main_example_3.cpp ]
    [ run-fail filtering_example.cpp unit_test_framework/<link>static : : : [ requires cxx11_variadic_macros cxx11_decltype cxx11_auto_declarations ] ]
;