diff options
author | David Robillard <d@drobilla.net> | 2019-03-17 17:31:03 +0100 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2019-03-17 18:14:27 +0100 |
commit | dc15972a98d7b60bd81f9a6b456ecccaeb7c654d (patch) | |
tree | 1bb62d4a902388d4a0440c4524ab838a03aee9ea /waflib/Tools/fc.py | |
parent | ccc9b971ab206fa3dc32a432a3e76db976192f58 (diff) | |
parent | 8cb9c6430dc0056f8d40b4d8e0bdc616ff397e1f (diff) | |
download | ganv-dc15972a98d7b60bd81f9a6b456ecccaeb7c654d.tar.gz ganv-dc15972a98d7b60bd81f9a6b456ecccaeb7c654d.tar.bz2 ganv-dc15972a98d7b60bd81f9a6b456ecccaeb7c654d.zip |
Update autowaf and adapt to new API
Diffstat (limited to 'waflib/Tools/fc.py')
-rw-r--r-- | waflib/Tools/fc.py | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/waflib/Tools/fc.py b/waflib/Tools/fc.py index d9e8d8c..fd4d39c 100644 --- a/waflib/Tools/fc.py +++ b/waflib/Tools/fc.py @@ -28,10 +28,24 @@ def modfile(conf, name): Turns a module name into the right module file name. Defaults to all lower case. """ - return {'lower' :name.lower() + '.mod', - 'lower.MOD' :name.lower() + '.MOD', - 'UPPER.mod' :name.upper() + '.mod', - 'UPPER' :name.upper() + '.MOD'}[conf.env.FC_MOD_CAPITALIZATION or 'lower'] + if name.find(':') >= 0: + # Depending on a submodule! + separator = conf.env.FC_SUBMOD_SEPARATOR or '@' + # Ancestors of the submodule will be prefixed to the + # submodule name, separated by a colon. + modpath = name.split(':') + # Only the ancestor (actual) module and the submodule name + # will be used for the filename. + modname = modpath[0] + separator + modpath[-1] + suffix = conf.env.FC_SUBMOD_SUFFIX or '.smod' + else: + modname = name + suffix = '.mod' + + return {'lower' :modname.lower() + suffix.lower(), + 'lower.MOD' :modname.lower() + suffix.upper(), + 'UPPER.mod' :modname.upper() + suffix.lower(), + 'UPPER' :modname.upper() + suffix.upper()}[conf.env.FC_MOD_CAPITALIZATION or 'lower'] def get_fortran_tasks(tsk): """ |