.\" ======================================================================= .\" Copyright 2006 Domenico Andreoli .\" .\" Distributed under the Boost Software License, Version 1.0. (See .\" accompanying file LICENSE_1_0.txt or copy at .\" http://www.boost.org/LICENSE_1_0.txt) .\" ======================================================================= .TH BCP "1" "March 2006" "Boost C++ Libraries" "Boost C++ Libraries Documentation" .SH NAME bcp \- extract subsets of Boost .SH SYNOPSIS .B bcp \fB\-\-list\fR [\fIoptions\fR] \fImodule\-list\fR .br .B bcp [\fIoptions\fR] \fImodule\-list output\-path\fR .br .B bcp \fB\-\-report\fR [\fIoptions\fR] \fImodule\-list html\-file\fR .br .B bcp \fB\-\-help\fR .SH DESCRIPTION Copies all the files, including dependencies, found in \fImodule-list\fR to \fIoutput-path\fR. \fIoutput-path\fR must be an existing path. .PP With \fB\-\-list\fR, prints the list of all the files in \fImodule-list\fR, including dependencies. .PP With \fB\-\-report\fR, writes the HTML report to \fIhtml-file\fR. .PP With \fB\-\-help\fR, prints a quick usage reminder. .PP It is useful for Boost authors who want to distribute their library separately from Boost and for Boost users who want to distribute a subset of Boost with their application. .SS \fImodule-list\fR .PP When the --scan option is not used, a list of Boost files or library names to copy. It can be: .IP \- The name of a tool: for example "build" will find "tools/build". .IP \- The name of a library: for example "regex". .IP \- The title of a header: for example "scoped_ptr" will find "boost/scoped_ptr.hpp". .IP \- The name of a header: for example "scoped_ptr.hpp" will find "boost/scoped_ptr.hpp". .IP \- The name of a file: for example "boost/regex.hpp". .PP When the --scan option is used, a list of (probably non-boost) files to scan for Boost dependencies, the files in the module list are not therefore copied/listed. .SS File dependencies C++ source files are scanned for #includes, all #includes present in the Boost source tree will then be scanned for their dependencies and so on. .PP C++ source files are associated with the name of a library, if that library has source code (and possibly build data), then include that source in the dependencies. .PP C++ source files are checked for dependencies on Boost.Test (for example to see if they use cpp_main as an entry point). .PP HTML files are scanned for immediate dependencies (images and style sheets, but not links). .SS HTML report contains: .PP \- all the licenses in effect, plus the files using each license, and the copyright holders using each license .PP \- any files with no recognizable license (please report these to the Boost mailing lists) .PP \- any files with no recognizable copyright holders (please report these to the Boost mailing lists) .PP \- all the copyright holders and the files on which they hold copyright .PP \- file dependency information - indicates the reason for the inclusion of any particular file in the dependencies found .SH OPTIONS .TP \fB\-\-boost\fR=\fIpath\fR sets the location of the Boost tree to path .TP \fB\-\-scan\fR treat the module list as a list of (possibly non\-boost) files to scan for Boost dependencies .TP \fB\-\-cvs\fR only copy files under CVS version control .TP \fB\-\-unix\-lines\fR make sure that all copied files use Unix style line endings .SH EXAMPLES .TP \fBbcp\fR scoped_ptr /foo Copies boost/scoped_ptr.hpp and dependencies to /foo. .TP \fBbcp\fR boost/regex.hpp /foo Copies boost/regex.hpp and all dependencies including the regex source code (in libs/regex/src) and build files (in libs/regex/build) to /foo. Does not copy the regex documentation, test or example code. .TP \fBbcp\fR regex /foo Copies the full regex lib (in libs/regex) including dependencies (such as the Boost.Test source required by the regex test programs) to /foo. .TP \fBbcp\fR regex config build /foo Copies the full regex lib (in libs/regex) plus the config lib (libs/config) and the build system (tools/build) to /foo including all the dependencies. .TP \fBbcp \-\-scan \-\-boost\fR=/boost foo.cpp bar.cpp boost Scans the [non-boost] files foo.cpp and bar.cpp for Boost dependencies and copies those dependencies to the sub-directory boost. .TP \fBbcp \-\-report\fR regex.hpp boost-regex-report.html Creates a HTML report called boost-regex-report.html for the Boost module regex.hpp. .SH AUTHORS Author of bcp is John Maddock. .PP Author of this manpage is Domenico Andreoli, who copied stuff from bcp --help and the HTML documentation.