diff options
author | David Robillard <d@drobilla.net> | 2019-04-14 18:03:16 +0200 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2019-04-14 18:24:08 +0200 |
commit | 7887266eaf79f020dae2dd0126dbf732e167a751 (patch) | |
tree | 3a22565bc33f5b15c191d8585bc84599836c33f7 /waflib/Tools/fc.py | |
parent | ee834a83860e614d565f5bb38cdfb8681ffa5f16 (diff) | |
parent | 4806680e7b17a83c14ea2b64c8ab6277a8b380b1 (diff) | |
download | pugl-7887266eaf79f020dae2dd0126dbf732e167a751.tar.gz pugl-7887266eaf79f020dae2dd0126dbf732e167a751.tar.bz2 pugl-7887266eaf79f020dae2dd0126dbf732e167a751.zip |
Update autowaf
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): """ |