diff options
author | David Robillard <d@drobilla.net> | 2018-09-15 14:51:03 +0200 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2018-09-15 14:51:03 +0200 |
commit | 425cbb48dc333294954897ed7e783f9469ef8b13 (patch) | |
tree | 78f197a5770b9cda2c4ac3af5970fe730ea8b752 /waflib/extras/lv2.py | |
parent | 3dd24e7fa4330452336b79bd6f2f6e9cd4ec9449 (diff) | |
parent | c2b0355b0de23f6ec83b5fa5be038bcce208e26f (diff) | |
download | sratom-425cbb48dc333294954897ed7e783f9469ef8b13.tar.gz sratom-425cbb48dc333294954897ed7e783f9469ef8b13.tar.bz2 sratom-425cbb48dc333294954897ed7e783f9469ef8b13.zip |
Merge commit 'c2b0355b0de23f6ec83b5fa5be038bcce208e26f' as 'waflib'
Diffstat (limited to 'waflib/extras/lv2.py')
-rw-r--r-- | waflib/extras/lv2.py | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/waflib/extras/lv2.py b/waflib/extras/lv2.py new file mode 100644 index 0000000..815987f --- /dev/null +++ b/waflib/extras/lv2.py @@ -0,0 +1,47 @@ +import os +import sys + +from waflib import Logs +from waflib import Options + +def options(opt): + conf_opts = opt.get_option_group('Configuration options') + conf_opts.add_option('--lv2-user', action='store_true', default=False, dest='lv2_user', + help='install LV2 bundles to user location') + conf_opts.add_option('--lv2dir', type='string', + help='LV2 bundles [Default: LIBDIR/lv2]') + +def configure(conf): + def env_path(parent_dir_var, name): + parent = os.getenv(parent_dir_var) + if parent: + return os.path.join(parent, name) + else: + Logs.warn('Environment variable %s unset, using LIBDIR\n' % parent_dir_var) + return os.path.join(conf.env['LIBDIR'], name) + + def normpath(path): + if sys.platform == 'win32': + return os.path.normpath(path).replace('\\', '/') + else: + return os.path.normpath(path) + + if Options.options.lv2dir: + conf.env['LV2DIR'] = Options.options.lv2dir + elif Options.options.lv2_user: + if conf.env.DEST_OS == 'darwin': + conf.env['LV2DIR'] = env_path('HOME', 'Library/Audio/Plug-Ins/LV2') + elif conf.env.DEST_OS == 'win32': + conf.env['LV2DIR'] = env_path('APPDATA', 'LV2') + else: + conf.env['LV2DIR'] = env_path('HOME', '.lv2') + else: + if conf.env.DEST_OS == 'darwin': + conf.env['LV2DIR'] = '/Library/Audio/Plug-Ins/LV2' + elif conf.env.DEST_OS == 'win32': + conf.env['LV2DIR'] = env_path('COMMONPROGRAMFILES', 'LV2') + else: + conf.env['LV2DIR'] = os.path.join(conf.env['LIBDIR'], 'lv2') + + conf.env['LV2DIR'] = normpath(conf.env['LV2DIR']) + |