summaryrefslogtreecommitdiffstats
path: root/Source/cmDependsFortran.cxx
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2005-01-28 17:01:26 (GMT)
committerBrad King <brad.king@kitware.com>2005-01-28 17:01:26 (GMT)
commit51750d055298acafc3d2f0168b85381c9f4acfad (patch)
treea52f073f5e712346db039db8349f23dbe3e27f5d /Source/cmDependsFortran.cxx
parentc16aca0643a86ceafd7acd50aa76820c42646213 (diff)
downloadCMake-51750d055298acafc3d2f0168b85381c9f4acfad.zip
CMake-51750d055298acafc3d2f0168b85381c9f4acfad.tar.gz
CMake-51750d055298acafc3d2f0168b85381c9f4acfad.tar.bz2
STYLE: Added another solution proposal for out-of-directory modules.
Diffstat (limited to 'Source/cmDependsFortran.cxx')
-rw-r--r--Source/cmDependsFortran.cxx17
1 files changed, 17 insertions, 0 deletions
diff --git a/Source/cmDependsFortran.cxx b/Source/cmDependsFortran.cxx
index cb4a98a..53cfaeb 100644
--- a/Source/cmDependsFortran.cxx
+++ b/Source/cmDependsFortran.cxx
@@ -215,6 +215,23 @@ bool cmDependsFortran::WriteDependencies(std::ostream& os)
@touch foo.mod.hack
@touch foo.mod.default
+ Solution 4:
+
+ When scanning dependencies and providing a module:
+ - Create a .mod.provided.
+ - Add .mod.proxy rule depending on corresponding .o.requires.
+
+ When scanning dependencies and requiring a module:
+ - Search the module path for a .mod.provided or a .mod.
+ - If a .mod.provided is found depend on the corresponding .mod.stamp
+ (it is provided by CMake in another directory)
+ - Else, if a .mod is found depend on it directly
+ (it is provided in another directory by a non-CMake project)
+ - Else:
+ - Add the empty proxy rule (if it is provided locally this will hook it)
+ - Depend on a local .mod.stamp (it might be provided locally)
+ - Create the dummy local .mod.stamp (it might not be provided locally)
+
*/
return true;