summaryrefslogtreecommitdiffstats
path: root/Source/cmDependsC.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2005-02-07 21:11:01 (GMT)
committerBrad King <brad.king@kitware.com>2005-02-07 21:11:01 (GMT)
commit337ad802c64d10904700457939a8b5e0a48439be (patch)
tree5bee5711c158e1ae87afdacb0061d880d8a6ff43 /Source/cmDependsC.h
parentc44e6d30e5127457060f8e027fbff17ac89e98a5 (diff)
downloadCMake-337ad802c64d10904700457939a8b5e0a48439be.zip
CMake-337ad802c64d10904700457939a8b5e0a48439be.tar.gz
CMake-337ad802c64d10904700457939a8b5e0a48439be.tar.bz2
ENH: Implemented support for include/complain regular expressions for dependency scanning. This now includes the possibility that scanning will return failure and the build will stop.
Diffstat (limited to 'Source/cmDependsC.h')
-rw-r--r--Source/cmDependsC.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/Source/cmDependsC.h b/Source/cmDependsC.h
index 70691b7..936997f 100644
--- a/Source/cmDependsC.h
+++ b/Source/cmDependsC.h
@@ -34,9 +34,10 @@ public:
/** Scanning need to know the build directory name, the relative
path from the build directory to the target file, the source
file from which to start scanning, and the include file search
- path. */
+ path. It also uses the include file regular expressions. */
cmDependsC(const char* dir, const char* targetFile,
- const char* sourceFile, std::vector<std::string> const& includes);
+ const char* sourceFile, std::vector<std::string> const& includes,
+ const char* scanRegex, const char* complainRegex);
/** Virtual destructor to cleanup subclasses properly. */
virtual ~cmDependsC();
@@ -56,7 +57,12 @@ protected:
std::vector<std::string> const* m_IncludePath;
// Regular expression to identify C preprocessor include directives.
- cmsys::RegularExpression m_IncludeLineRegex;
+ cmsys::RegularExpression m_IncludeRegexLine;
+
+ // Regular expressions to choose which include files to scan
+ // recursively and which to complain about not finding.
+ cmsys::RegularExpression m_IncludeRegexScan;
+ cmsys::RegularExpression m_IncludeRegexComplain;
// Data structures for dependency graph walk.
std::set<cmStdString> m_Encountered;