sön 2014-07-06 klockan 19:14 +0000 skrev bastien ROUCARIES:
> Package: gsoap
> Version: 2.8.16-3
> user: lintian-ma...@debian.org
> usertags: source-is-missing
> severity: serious
> X-Debbugs-CC: ftpmas...@debian.org
> 
> Hi,
> 
> Your package seems to include some files that lack sources
> in prefered forms of modification:
> 
> gsoap/bin/linux386/soapcpp2
> gsoap/bin/linux386/wsdl2h
> gsoap/doc/dom/html/jquery.js
> gsoap/doc/httpda/html/jquery.js
> gsoap/doc/wsa/html/jquery.js
> gsoap/doc/wsdd/html/jquery.js
> gsoap/doc/wsrm/html/jquery.js
> gsoap/doc/wsse/html/jquery.js
> gsoap/doc/xml-rpc-json/html/jquery.js
> gsoap/samples/databinding/html/jquery.js
> 
> You override this warning using this file:
> # These binaries are not used during the build nor are they packaged
> source-is-missing gsoap/bin/linux386/*
> # These bundled copies of jquery.js are replaced by symlinks during the build
> source-is-missing gsoap/doc/*/html/jquery.js
> source-is-missing gsoap/samples/databinding/html/jquery.js

The code for precompiled binaries in upstream's distribution are in the
sources. If they were not it would not be possible to compile the
version of the binaries that are installed from the sources.

The source for soapcpp2 is ./gsoap/src
The source for wsdl2h is ./gsoap/wsdl

So the sources are not missing.

Regarding the jquery.js files I am not sure what to say. These jquery.js
files are part of doxygen generated documentation that is pre-generated
by upstream and included in their source distribution.

When lintian started to complain about the presence of the jquery.js
files in the documentation I made lintian no longer complain about that
by replacing them with symlinks to debian's system version. This of
course only works if the debian system jquery.js is compatible with the
jquery.js that doxygen provides as part if the documentation it
generates. I have since then found that this is not the case and that
replacing the doxygen jquery.js with debian's version is a broken
solution to the problem.

The /usr/share/doc/doxygen/README.jquery file says a lot of things, but
ends with:

"It is not considered a problem for Doxygen or packages using Doxygen to
embed jquery. In fact replacing the `jquery.js` file created by Doxygen
likely results in broken documentation. Packages doing that are buggy.
Lintian will have to learn that a `jquery.js` embedded by Doxygen is a
normal thing."

So in order to implement the recommendations from the doxygen maintainer
I should revert my attempt to make lintian happy by replacing the
jquery.js with a symlink.

The jquery.js that is part of the documentation is the one that is
embedded in the doxygen binary on the computer that is generating the
documentation. So this will either be the copy of doxygen that is
installed on the upstream developer's machine when the documentation is
generated (in case the doxygen generated documentation is pre-generated
and part of the sources) or the copy of doxygen in the package build
root (in case the doxygen documentation is generated or regenerated as
part of the build).

The source of this jquery.js file will never be part of the source
package of the package that installs it. It will always come from an
embedded copy inside doxygen which, at least at present, can not be
replaced by the debian system version.

Do the ftp-masters as a collective have a consensus point of view on
doxygen generated documentation? Is packaging of pre-generated
documentation that is part of upstream's sources acceptable, or must all
doxygen generated documentation be regenerated as part of the package
build? If packaging of pre-generated documentation is allowed, then
having jsquery.js files in the source tarball must be allowed. If all
copies of jquery.js must be purged from all source tarballs this means
the all pre-generated doxygen documentation is banned.

        Mattias

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to