Boost logo

Boost-Build :

From: Mark Evans (evans_mark_at_[hidden])
Date: 2006-04-26 10:20:07


Hi Vladimir,

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.
#
# Example:
#
# [ 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?

Best regards,
Mark

  




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