2016-02-29 31 views
0

setup.py有什麼辦法知道root_path變量。在setuptools中檢測root_path(--root)

root_path變量我指的是指定爲0​​的目錄。

例如,在這種情況下:

python2 setup.py install --root=/home/drizzt/test --optimize=1 

我需要找到一種方法,有/home/drizzt/test

回答

0

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