From: Mark Evans (evans_mark_at_[hidden])
Date: 2006-04-26 10:20:07
How did you search / find the references you posted. Good stuff.
I hammered a little on the recursive-find rule of JoÃÂ£o Abecasis and arrived at the following interface:
# Recursively find files matching a given pattern in a set of filesystem
# trees. Files that match a file-skip pattern (parameter skip-patterns-or-files)
# are pruned from the result set. Similarly, directories that match a
# directory-skip pattern (parameter skip-patterns-or-dirs) are pruned.
# The number of recursion levels can be limited with optional max-depth
# argument. For example, max-depth of 1 limits the search to 1 level of
# subdirectories. By default, there is no recursion limit.
# [ recursive-find . : *.cpp *.h : bar* : bum* : 5 ]
# searches the current directory (of invoking jamfile) for *.cpp and *.h
# files, excluding any files that match "bar*" and excluding any
# directories that match "bum*". Subdirectory depth is limited to 5.
rule recursive-find (
search-dirs + # trees to search
: patterns-or-files * # patterns to search for
: skip-patterns-or-files * # patterns for files to be pruned
: skip-patterns-or-dirs * # patterns for directories to be pruned
: max-depth ? # maximum number of recursion levels
Changes from the original are:
- addition of skip-patterns-or-dirs parameter; this parameter applies
to directories while skip-patterns-or-files applies to files.
- addition of max-depth parameter
Attached is recursive-find.jam file. Would you suggest incorporating this into the bjam distribution (either as a stand-alone util/recursive-find.jam module or as an addition to util/path.jam)? I would like to write a python test script except that I haven't got past python hanging (on Cygwin) as I reported yesterday. Do you know if anyone has had success in running the python test suite on Cygwin?
Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk