]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/tools/inspect/license_check.cpp
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / tools / inspect / license_check.cpp
1 // license_check implementation --------------------------------------------//
2
3 // Copyright Beman Dawes 2002-2003.
4 // Distributed under the Boost Software License, Version 1.0.
5 // (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
7
8 #include "boost/regex.hpp"
9 #include "license_check.hpp"
10
11 namespace
12 {
13 boost::regex license_regex(
14 //~ The next two lines change the regex so that it detects when the license
15 //~ doesn't follow the prefered statement. Disabled because it currently
16 //~ generates a large number of issues.
17 //~ "Distributed[\\s\\W]+"
18 //~ "under[\\s\\W]+the[\\s\\W]+"
19 "boost[\\s\\W]+software[\\s\\W]+license",
20 boost::regbase::normal | boost::regbase::icase);
21
22 } // unnamed namespace
23
24 namespace boost
25 {
26 namespace inspect
27 {
28 license_check::license_check() : m_files_with_errors(0)
29 {
30 }
31
32 void license_check::inspect(
33 const string & library_name,
34 const path & full_path, // example: c:/foo/boost/filesystem/path.hpp
35 const string & contents ) // contents of file to be inspected
36 {
37 if (contents.find( "boostinspect:" "nolicense" ) != string::npos) return;
38
39 if ( !boost::regex_search( contents, license_regex ) )
40 {
41 ++m_files_with_errors;
42 error( library_name, full_path, name() );
43 }
44 }
45 } // namespace inspect
46 } // namespace boost
47
48