[PATCH 0 of 6] Build documentation using distutils - v3
Dan Villiom Podlaski Christiansen
danchr at gmail.com
Sun Nov 29 16:37:39 CST 2009
On 29 Nov 2009, at 22:21, Gilles Moris wrote:
> On Sunday 29 November 2009 08:11:53 pm Martin Geisler wrote:
>>> * The RPM build specification has been updated to use distutils
>>> exclusively. In theory, it works; I haven't been able to test it.
>>
>> Okay, I have also no clue about RPM packages... What does our RPM guys
>> say to this?
>
> Without being a RPM guy, the change in mercurial.spec seems OK, but I am
> having problems with 'setup.py install --install-doc' on my Fedora 8.
>
> It runs Python 2.5.1 but does not seem to recognize the --install-man option:
>
> + python setup.py
> install --root /var/tmp/mercurial-1.4+55-093befa89ec7-root --prefix /usr --install-doc /doc/- --install-man /usr/share/man
> running install
> error: error in command line: command 'install' has no such
> option 'install_man'
> error: Bad exit status from /var/tmp/rpm-tmp.39462 (%install)
>
> Curiously, the help for install reference --install-doc as a valid option.
> Looking at the sources of distutils, it seems that the option is commented. At
> first, I thought it could be Fedora specific, but it seems it's already
> commented in the pristine Python 2.5.1 sources.
>
> So I think I will rely on the distutils guys to understand what could be the
> problem, but it seems that the '--install-doc' suffers some compatibility
> issue. What version of Python are you running ? Could be worth trying on
> Python 2.4.
I did try the patches on Python 2.4, but not the actual arguments :) I can reproduce this on my machine, so I'll look into it!
Thanks for pointing out the commented mentions of install_man in the Python sources; I wasn't aware of them. Both flags are home-grown, but I'll change the definitions to match those in the comments.
For what it's worth, I've included the actual occurrences of install_man from all four (!) Python versions I have on my system.
--
Dan Villiom Podlaski Christiansen
danchr at gmail.com
--
/opt/local/lib/python2.4/distutils/command/install.py
Python 2.4 (MacPorts)
--
('force', 'f',
"force installation (overwrite any existing files)"),
('skip-build', None,
"skip rebuilding everything (for testing/debugging)"),
# Where to install documentation (eventually!)
#('doc-format=', None, "format of documentation to generate"),
#('install-man=', None, "directory for Unix man pages"),
#('install-html=', None, "directory for HTML documentation"),
#('install-info=', None, "directory for GNU info files"),
('record=', None,
"filename in which to record list of installed files"),
--
self.build_base = None
self.build_lib = None
# Not defined yet because we don't know anything about
# documentation yet.
#self.install_man = None
#self.install_html = None
#self.install_info = None
self.record = None
--
/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/distutils/command/install.py
Python 2.3 (Apple)
--
('force', 'f',
"force installation (overwrite any existing files)"),
('skip-build', None,
"skip rebuilding everything (for testing/debugging)"),
# Where to install documentation (eventually!)
#('doc-format=', None, "format of documentation to generate"),
#('install-man=', None, "directory for Unix man pages"),
#('install-html=', None, "directory for HTML documentation"),
#('install-info=', None, "directory for GNU info files"),
('record=', None,
"filename in which to record list of installed files"),
--
self.build_base = None
self.build_lib = None
# Not defined yet because we don't know anything about
# documentation yet.
#self.install_man = None
#self.install_html = None
#self.install_info = None
self.record = None
--
/System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/distutils/command/install.py
Python 2.5 (Apple)
--
('force', 'f',
"force installation (overwrite any existing files)"),
('skip-build', None,
"skip rebuilding everything (for testing/debugging)"),
# Where to install documentation (eventually!)
#('doc-format=', None, "format of documentation to generate"),
#('install-man=', None, "directory for Unix man pages"),
#('install-html=', None, "directory for HTML documentation"),
#('install-info=', None, "directory for GNU info files"),
('record=', None,
"filename in which to record list of installed files"),
--
self.build_base = None
self.build_lib = None
# Not defined yet because we don't know anything about
# documentation yet.
#self.install_man = None
#self.install_html = None
#self.install_info = None
self.record = None
--
/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/distutils/command/install.py
Python 2.6 (Apple)
--
('force', 'f',
"force installation (overwrite any existing files)"),
('skip-build', None,
"skip rebuilding everything (for testing/debugging)"),
# Where to install documentation (eventually!)
#('doc-format=', None, "format of documentation to generate"),
#('install-man=', None, "directory for Unix man pages"),
#('install-html=', None, "directory for HTML documentation"),
#('install-info=', None, "directory for GNU info files"),
('record=', None,
"filename in which to record list of installed files"),
--
self.build_base = None
self.build_lib = None
# Not defined yet because we don't know anything about
# documentation yet.
#self.install_man = None
#self.install_html = None
#self.install_info = None
self.record = None
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 1943 bytes
Desc: not available
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20091129/630046f9/attachment.bin>
More information about the Mercurial-devel
mailing list