2015-12-15 41 views
2

在Python documentation for distribution中聲明清單模板名爲MANIFEST.in默認。然後它似乎沒有說明如何更改該默認值。使用除MANIFEST.in以外的名稱作爲Distutils清單模板

對於混合語言項目的緣故,我想命名MANIFEST.in更多的東西一樣PYTHON-MANIFEST.in或一些這樣的,以避免對誰需要知道什麼屬於什麼語言(我們不能只是把開發商的心理負荷Python子項目放入子目錄中,因爲它需要訪問根目錄下的傘項目項目)。

這可能嗎?如果是這樣,怎麼樣?

回答

2

命令行幫助Distutils的sdist命令有答案:

$ python3 ./setup.py sdist --help 
[…] 
Options for 'sdist' command: 
    --template (-t)  name of manifest template file [default: MANIFEST.in] 
[…] 

所以,你能說出你的「manifest template」文件,你喜歡的任何名稱,然後指定與template選擇模板文件名 for sdist

我在Distutils文檔中找不到答案,這確實需要一些專門的改進和維護。

0

上面的答案給了我一個地方看,並找到一種方法來做到這一點編程。

當使用setuptools它可以簡單地重新分配這是我們用來發現清單模板變量:

setuptools.command.egg_info.manifest_maker.template = 'your-manifest-template-here.in' 

我想,類似的事情將有可能純distutilsdistutils.command.sdist.sdist派生並改變什麼self.template是分配給一個被覆蓋的finalize_options(當然,進一步將它分配爲你自定義的sdist命令)。

相關問題