Bug#655804: update-manager: FTBFS: Error: `/usr/share/sphinx/themes/basic/static/jquery.js` and `/build/update-manager-OCasPf/update-manager-0.200.5/doc/build/html/_static/jquery.js` are the same file

Jakub Wilk jwilk at debian.org
Tue Jun 5 20:11:00 UTC 2012


Hi Simon and update-manager maintainers!

* Simon Paillard <spaillard at debian.org>, 2012-06-05, 21:01:
>update-manager builds cleanly in a sid pbuilder.
>
>Note python-sphinx is now 1.1.3+dfsg-4.

Thanks for bringing this bug to my attention.

>>> Exception occurred:
>>>   File "/usr/lib/pymodules/python2.7/sphinx/cmdline.py", line 188, in main
>>>     app.build(force_all, filenames)
>>>   File "/usr/lib/pymodules/python2.7/sphinx/application.py", line 207, in build
>>>     self.builder.build_update()
>>>   File "/usr/lib/pymodules/python2.7/sphinx/builders/__init__.py", line 198, in build_update
>>>     'out of date' % len(to_build))
>>>   File "/usr/lib/pymodules/python2.7/sphinx/builders/__init__.py", line 257, in build
>>>     self.finish()
>>>   File "/usr/lib/pymodules/python2.7/sphinx/builders/html.py", line 453, in finish
>>>     self.copy_static_files()
>>>   File "/usr/lib/pymodules/python2.7/sphinx/builders/html.py", line 547, in copy_static_files
>>>     self, self.globalcontext)
>>>   File "/usr/lib/pymodules/python2.7/sphinx/util/__init__.py", line 158, in copy_static_entry
>>>     exclude_matchers=exclude_matchers)
>>>   File "/usr/lib/pymodules/python2.7/sphinx/util/__init__.py", line 150, in copy_static_entry
>>>     copyfile(source, target)
>>>   File "/usr/lib/pymodules/python2.7/sphinx/util/osutil.py", line 114, in copyfile
>>>     shutil.copyfile(source, dest)
>>>   File "/usr/lib/python2.7/shutil.py", line 69, in copyfile
>>>     raise Error("`%s` and `%s` are the same file" % (src, dst))
>>> Error: `/usr/share/sphinx/themes/basic/static/jquery.js` and `/build/update-manager-OCasPf/update-manager-0.200.5/doc/build/html/_static/jquery.js` are the same file

This could happen if you:
0) Build documentation using Sphinx.
1) Mess with the documentation build directory by creating symlinks.
2) Build the documentation again.

The fix is to:
1) Not to mess with the build directory. Instead, install it (e.g. using 
dh_install) to debian/<package>/ and then create symlinks there (e.g. 
using dh_link or, preferably, dh_sphinxdoc).
2) Build the documentation only once.

(Either of the two things is sufficient to fix the problem, though you 
should do both.)

I haven't figured out yet why it doesn't fail anymore. But unless you 
fix your code, don't be surprised if it fails again in the future. :) 

-- 
Jakub Wilk





More information about the pkg-gnome-maintainers mailing list