# copyright John Maddock 2003

subproject libs/regex/example ;

# bring in the rules for testing
import testing  ;

rule regex-test-run ( sources + : input * )
{
        return [ 
           run
             # sources
             $(sources)
             <template>../build/regex-options

             # dependencies
             <lib>../build/boost_regex
         :  # additional args
            $(input)
         :  # test-files
         :  # requirements
         <threading>multi
         :  # test name
        ] ;
}

test-suite regex-examples :

[ regex-test-run timer/regex_timer.cpp <template>../build/msvc-stlport-tricky : $(BOOST_ROOT)/libs/regex/example/timer/input_script.txt ]
[ regex-test-run jgrep/jgrep.cpp jgrep/main.cpp : -n boost/ $(BOOST_ROOT)/boost/regex.hpp ]
[ regex-test-run snippets/credit_card_example.cpp ]
[ regex-test-run snippets/partial_regex_grep.cpp : $(BOOST_ROOT)/libs/regex/index.htm ]
[ regex-test-run snippets/partial_regex_match.cpp : 1234-5678-8765-4 ]
[ regex-test-run snippets/regex_grep_example_1.cpp : $(BOOST_ROOT)/boost/rational.hpp ]
[ regex-test-run snippets/regex_grep_example_2.cpp : $(BOOST_ROOT)/boost/rational.hpp ]
[ regex-test-run snippets/regex_grep_example_3.cpp : $(BOOST_ROOT)/boost/rational.hpp ]
[ regex-test-run snippets/regex_grep_example_4.cpp : $(BOOST_ROOT)/boost/rational.hpp ]
[ regex-test-run snippets/regex_match_example.cpp : -auto ]
[ regex-test-run snippets/regex_merge_example.cpp : $(BOOST_ROOT)/boost/rational.hpp ]
[ regex-test-run snippets/regex_replace_example.cpp : $(BOOST_ROOT)/boost/rational.hpp ]
[ regex-test-run snippets/regex_search_example.cpp : $(BOOST_ROOT)/boost/rational.hpp ]
[ regex-test-run snippets/regex_split_example_1.cpp : -auto ]
[ regex-test-run snippets/regex_split_example_2.cpp : $(BOOST_ROOT)/libs/regex/doc/index.html ]
[ regex-test-run snippets/regex_token_iterator_eg_1.cpp : -auto ]
[ regex-test-run snippets/regex_token_iterator_eg_2.cpp : $(BOOST_ROOT)/libs/regex/doc/index.html ]
[ regex-test-run snippets/regex_iterator_example.cpp : $(BOOST_ROOT)/boost/rational.hpp ]

[ run
    # sources
    snippets/captures_example.cpp
    <template>../build/regex-options
    # dependencies
    <lib>../test/captures/boost_regex_extra
 :  # additional args
 :  # test-files
 :  # requirements
    <threading>multi
    <define>BOOST_REGEX_MATCH_EXTRA=1
    <define>BOOST_REGEX_NO_LIB=1
 :  # test name
    captures_example
 ]


;










