Bug#919803: Bug#919802: libjstun-java: FTBFS (The code being documented uses packages in the unnamed module)

Gilles Filippini pini at debian.org
Tue Jan 29 20:44:40 GMT 2019


Hi,

Gilles Filippini a écrit le 21/01/2019 à 16:58 :
> Hi,
> 
> On Sun, 20 Jan 2019 13:28:57 +0800 "Ying-Chun Liu (PaulLiu)"
> <paulliu at debian.org> wrote:
>> Santiago Vila 於 2019/1/20 上午1:35 寫道:
>>> Package: src:libjstun-java
>>> Version: 0.7.3+dfsg-1
>>> Severity: serious
>>> Tags: ftbfs
>>>
>>> Dear maintainer:
>>>
>>> I tried to build this package in buster but it failed:
>>>
>>> --------------------------------------------------------------------------------
>>> [...]
>>>  debian/rules build-indep
>>> dh build-indep --with javahelper
>>>    dh_update_autotools_config -i
>>>    jh_linkjars -i
>>>    jh_build -i
>>> find src/de -name *.java -and -type f -print0 | xargs -s 512000 -0 /usr/lib/jvm/default-java/bin/javac -g -cp /usr/share/java/slf4j-jdk14.jar:/usr/share/java/slf4j-api.jar:/usr/share/java/junit.jar:debian/_jh_build.libjstun-java -d debian/_jh_build.libjstun-java -source 1.7 -target 1.7 -encoding ISO8859-1
>>> warning: [options] bootstrap class path not set in conjunction with -source 7
>>> Note: src/de/javawi/jstun/test/demo/ice/ICENegociator.java uses unchecked or unsafe operations.
>>> Note: Recompile with -Xlint:unchecked for details.
>>> 1 warning
>>> find src/de -name *.java -and -type f -print0 | xargs -s 512000 -0 /usr/lib/jvm/default-java/bin/javadoc -locale en_US -link /usr/share/doc/default-jdk-doc/api -link /usr/share/doc/default-jre-headless/api -classpath /usr/share/java/slf4j-jdk14.jar:/usr/share/java/slf4j-api.jar:/usr/share/java/junit.jar:debian/_jh_build.libjstun-java -d debian/_jh_build.javadoc/api -quiet -encoding ISO8859-1 -notimestamp -source 1.7
>>> Creating destination directory: "debian/_jh_build.javadoc/api/"
>>> javadoc: error - The code being documented uses packages in the unnamed module, but the packages defined in /usr/share/doc/default-jdk-doc/api/ are in named modules.
>>> javadoc: error - The code being documented uses packages in the unnamed module, but the packages defined in /usr/share/doc/default-jre-headless/api/ are in named modules.
>>> 2 errors
>>> make: *** [debian/rules:11: build-indep] Error 123
>>> dpkg-buildpackage: error: debian/rules build-indep subprocess returned exit status 2
>>> --------------------------------------------------------------------------------
>>>
>>> (The above is just how the builds ends and not necessarily the most relevant part)
>>>
>>> The build was made in my autobuilder with "dpkg-buildpackage -A"
>>> and it also fails here:
>>>
>>> https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/libjstun-java.html
>>>
>>> where you can get a full build log if you need it.
>>>
>>> If this is really a bug in one of the build-depends, please use reassign and affects,
>>> so that this is still visible in the BTS web page for this package.
>>>
>>> Thanks.
>>>
>>
>> Hi Santiago,
>>
>> It seems to me that this line causes the problem.
>> find src/de -name *.java -and -type f -print0 | xargs -s 512000 -0
>> /usr/lib/jvm/default-java/bin/javadoc -locale en_US -link
>> /usr/share/doc/default-jdk-doc/api -link
>> /usr/share/doc/default-jre-headless/api -classpath
>> /usr/share/java/slf4j-jdk14.jar:/usr/share/java/slf4j-api.jar:/usr/share/java/junit.jar:debian/_jh_build.libjstun-java
>> -d debian/_jh_build.javadoc/api -quiet -encoding ISO8859-1 -notimestamp
>> -source 1.7
>>
>> But if remove "-link /usr/share/doc/default-jdk-doc/api -link
>> /usr/share/doc/default-jre-headless/api", then it will pass.
>>
>> I'm wondering if javahelper needs to call javadoc in different way.
> 
> I've got the very same result for #919803 affecting src:mac-widgets.

Looking at the jh_build code, the list of -link javadoc options is constructed from this snippet:
   CLASSPATHDOCS="`for i in $(grep-dctrl --no-field-names --show-field Build-Depends,Build-Depends-Indep -F source "$pkg" debian/control | tr , ' ' | sed 's/([^)]*)//g') ; do dpkg -L $i 2>/dev/null | grep /usr/share/doc/.*/api$; done | sed 's/^/-link /' | xargs`"

Then dropping default-jdk-doc from Build-Depends did the trick!

Thanks,

_g.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-java-maintainers/attachments/20190129/c9802dde/attachment.sig>


More information about the pkg-java-maintainers mailing list