1#============================================================================== 2# Copyright (c) 2001-2011 Joel de Guzman 3# Copyright (c) 2001-2012 Hartmut Kaiser 4# Copyright (c) 2011 Bryce Lelbach 5# Copyright (c) 2016-2019 Nikita Kniazev 6# 7# Use, modification and distribution is subject to the Boost Software 8# License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 9# http://www.boost.org/LICENSE_1_0.txt) 10#============================================================================== 11 12import testing ; 13 14############################################################################### 15 16project spirit-qi 17 : requirements 18 <include>. 19 <c++-template-depth>512 20 ; 21 22############################################################################### 23 24cpp-pch pch : pch.hpp : : : <include>. <toolset>msvc:<cxxflags>"/FIpch.hpp" ; 25 26explicit pch ; 27 28############################################################################### 29 30local subproject-name = qi ; 31 32rule run ( sources + : args * : input-files * 33 : requirements * : target-name ? : default-build * ) 34{ 35 target-name ?= $(subproject-name)_$(sources[1]:D=:S=) ; 36 return [ testing.run $(sources) : $(args) : $(input-files) 37 : $(requirements) <pch>on-spirit:<source>pch : $(target-name) : $(default-build) ] ; 38} 39 40rule compile ( sources + : requirements * : target-name ? ) 41{ 42 target-name ?= $(subproject-name)_$(sources[1]:D=:S=) ; 43 return [ testing.compile $(sources) 44 : $(requirements) <pch>on-spirit:<source>pch : $(target-name) ] ; 45} 46 47rule compile-fail ( sources + : requirements * : target-name ? ) 48{ 49 target-name ?= $(subproject-name)_$(sources[1]:D=:S=) ; 50 return [ testing.compile-fail $(sources) 51 : $(requirements) <pch>on-spirit:<source>pch : $(target-name) ] ; 52} 53 54############################################################################### 55 56compile-fail grammar_fail.cpp ; 57compile-fail rule_fail.cpp ; 58run actions.cpp : : : <pch>off ; # Enable PCH when boostorg/proto#13 is merged. 59run actions2.cpp : : : <pch>off ; 60run alternative.cpp ; 61run attr.cpp ; 62run attribute1.cpp ; 63run attribute2.cpp ; 64run and_predicate.cpp ; 65run auto.cpp ; 66run binary.cpp ; 67run bool1.cpp ; 68run bool2.cpp ; 69run char1.cpp : : : <pch>off ; # Enable PCH after fixing interference from including auto. 70run char2.cpp ; 71run char_class.cpp : : : <pch>off ; 72run debug.cpp : : : <pch>off ; 73run difference.cpp ; 74run encoding.cpp ; 75run end.cpp ; 76run eps.cpp ; 77run expect.cpp ; 78run expectd.cpp ; 79run extract_int.cpp ; 80run grammar.cpp ; 81run int1.cpp ; 82run int2.cpp ; 83run int3.cpp ; 84run kleene.cpp ; 85run lazy.cpp ; 86run lexeme.cpp ; 87run lit1.cpp ; 88run lit2.cpp ; 89run list.cpp ; 90run hold.cpp ; 91run match_manip1.cpp ; 92run match_manip2.cpp ; 93run match_manip3.cpp ; 94run match_manip_attr.cpp ; 95run matches.cpp ; 96run no_case.cpp ; 97run no_skip.cpp ; 98run not_predicate.cpp ; 99run omit.cpp ; 100run optional.cpp ; 101run parse_attr.cpp ; 102run pass_container1.cpp ; 103run pass_container2.cpp ; 104run permutation.cpp ; 105run plus.cpp ; 106run range_run.cpp ; 107run raw.cpp ; 108run real1.cpp ; 109run real2.cpp ; 110run real3.cpp ; 111run real4.cpp ; 112run real5.cpp ; 113run repeat.cpp ; 114run rule1.cpp ; 115run rule2.cpp ; 116run rule3.cpp ; 117run rule4.cpp ; 118run sequence.cpp ; 119run sequential_or.cpp ; 120run skip.cpp ; 121run stream.cpp ; 122run symbols1.cpp ; 123run symbols2.cpp ; 124run terminal_ex.cpp ; 125run tst.cpp ; 126run uint1.cpp ; 127run uint2.cpp ; 128run uint3.cpp ; 129run uint_radix.cpp ; 130run utree1.cpp ; 131run utree2.cpp ; 132run utree3.cpp ; 133run utree4.cpp ; 134run iterator_check.cpp ; 135 136compile pass_container3.cpp ; 137compile regression_attr_with_action.cpp ; 138compile regression_container_attribute.cpp ; 139compile regression_debug_optional.cpp : <pch>off ; 140compile regression_fusion_proto_spirit.cpp ; 141compile regression_one_element_fusion_sequence.cpp ; 142compile regression_one_element_sequence_attribute.cpp ; 143 144run regression_adapt_adt.cpp ; 145run regression_clear.cpp ; 146#run regression_float_fraction.cpp ; 147run regression_lazy_repeat.cpp ; 148run regression_numeric_alternatives.cpp ; 149run regression_reorder.cpp ; 150run regression_repeat.cpp ; 151run regression_transform_assignment.cpp ; 152run regression_binary_action.cpp ; 153run regression_stream_eof.cpp ; 154 155run to_utf8.cpp : : : <pch>off ; 156