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-karma 17 : requirements 18 <include>. 19 <c++-template-depth>512 20 ; 21 22############################################################################### 23 24cpp-pch pch : pch.hpp : : : <include>. <force-include>pch.hpp ; 25 26explicit pch ; 27 28############################################################################### 29 30local subproject-name = karma ; 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 ; 59run alternative1.cpp ; 60run alternative2.cpp ; 61run and_predicate.cpp ; 62run attribute.cpp ; 63run auto1.cpp ; 64run auto2.cpp ; 65run auto3.cpp ; 66run binary1.cpp ; 67run binary2.cpp ; 68run binary3.cpp ; 69run bool.cpp ; 70run buffer.cpp ; 71run case_handling1.cpp ; 72run case_handling2.cpp ; 73run case_handling3.cpp ; 74run center_alignment.cpp ; 75run char1.cpp ; 76run char2.cpp ; 77run char3.cpp ; 78run char_class.cpp ; 79run columns.cpp ; 80run debug.cpp : : : <pch>off ; 81run delimiter.cpp ; 82run duplicate.cpp ; 83run encoding.cpp ; 84run eol.cpp ; 85run eps.cpp ; 86run format_manip.cpp ; 87run format_manip_attr.cpp ; 88run format_pointer_container.cpp ; 89run generate_attr.cpp ; 90run grammar.cpp ; 91run int1.cpp ; 92run int2.cpp ; 93run int3.cpp ; 94run kleene.cpp ; 95run lazy.cpp ; 96run left_alignment.cpp ; 97run list.cpp ; 98run lit.cpp ; 99run maxwidth.cpp ; 100run not_predicate.cpp ; 101run omit.cpp ; 102run optional.cpp ; 103run pattern1.cpp ; 104run pattern2.cpp ; 105run pattern3.cpp ; 106run pattern4.cpp ; 107run plus.cpp ; 108run real1.cpp ; 109run real2.cpp ; 110run real3.cpp ; 111run repeat1.cpp ; 112run repeat2.cpp ; 113run right_alignment.cpp ; 114run sequence1.cpp ; 115run sequence2.cpp ; 116run stream.cpp ; 117run symbols1.cpp ; 118run symbols2.cpp ; 119run symbols3.cpp ; 120run tricky_alignment.cpp ; 121run uint_radix.cpp ; 122run utree1.cpp ; 123run utree2.cpp ; 124run utree3.cpp ; 125run wstream.cpp ; 126 127compile regression_const_real_policies.cpp ; 128run regression_adapt_adt.cpp ; 129run regression_center_alignment.cpp ; 130run regression_container_variant_sequence.cpp ; 131run regression_iterator.cpp ; 132run regression_optional_double.cpp ; 133run regression_real_0.cpp ; 134run regression_real_policy_sign.cpp ; 135run regression_real_scientific.cpp ; 136run regression_semantic_action_attribute.cpp ; 137run regression_unicode_char.cpp : : : <pch>off ; 138