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 | ada3add535204d69b5f29a41fe03ed71330d4cfd (patch) | |
tree | 7baaf187de01c826dea239094c2d9d4007e6459e /waflib/Tools/fc.py | |
parent | 72741e7bc14a1b3286d2b545426387e874c10c68 (diff) | |
parent | 69deb1ab7f622d04e9f1ef132cf3577abf9053a0 (diff) | |
download | jalv-ada3add535204d69b5f29a41fe03ed71330d4cfd.tar.gz jalv-ada3add535204d69b5f29a41fe03ed71330d4cfd.tar.bz2 jalv-ada3add535204d69b5f29a41fe03ed71330d4cfd.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): """ |