Определить root_path (--root) в setuptools
Есть ли способ в setup.py
знать root_path
переменная.
С root_path
Переменная я ссылаюсь на каталог, указанный как --root
,
Например, в этом случае:
python2 setup.py install --root=/home/drizzt/test --optimize=1
Мне нужно найти способ иметь /home/drizzt/test
1 ответ
setup
функция возвращает setuptools.dist.Distribution
объект, который может быть использован для восстановления этой информации. Во-первых, он содержит словарь аргументов командной строки для подкоманд; который доступен через get_cmdline_options
метод. Во-вторых, вы можете попросить его вернуть вам командный объект (в данном случае "install", который на самом деле является экземпляром setuptools.command.install.install
), которая имеет свойство под названием root
он будет содержать корневой каталог, указанный в командной строке.
dist = setup(< all your setup arguments >)
print(dist.get_cmdline_options())
icmd = dist.get_command_obj('install')
print(icmd.root)
Должен производить что-то вроде...
< All your normal setup output >
...
{'install': {'root': '/home/drizzt/test', 'optimize': '1'}}
/home/drizzt/test