Hi, Andreas Tille a écrit le 29/04/2020 à 11:59 : > Hi Pierre, > > On Tue, Apr 28, 2020 at 10:40:31PM +0200, Pierre Gruet wrote: >> Hi everyone, >> >> I have been trying to package libsis-jhdf5-java, after Andreas imported the >> last upstream version. >> This package builds a java package with a .jar file and a jni package with >> native code used by the .jar. >> >> I have been able to: >> - refresh patches; >> - get rid of the private header H5private.h of source package hdf5, which is >> not shipped by any package. Only a few simple preprocessor directives of >> that file were used; >> - update the list of build-depends; >> - have the package build, including the override of dh_auto_test that caused >> issues previously. > > Thanks a lot. That's all very helpful! > >> Yet: >> - it seems that only a few upstream-provided tests are run in dh_auto_test, >> so having the build complete is maybe not so meaningful :-( ; >> - I have begun designing tests for the autopkgtest testsuite, using >> upstream-provided tests, and while around 30 of them pass, there remains a >> lot of failing tests. It seems that the linking of the jni with the jar is >> not correctly done at build-time. >> >> At that point I would need help, as this package is complicated: the build >> processes of the jar and the jni are somehow entangled and I do not have >> enough knowledge of Java packaging to be able to solve the issues I'm facing. >> >> Maybe there does not remain so much to be done; if someone has Java >> knowledge and could look to the current packaging I have put into Salsa [1], >> this would be really great. > > I've put debian-java@l.d.o in CC since the competence in debian-med for > Java is not that widely spread.
I've cloned the git repo and attempted a build. But the dh_auto_test part doesn't execute any test actually: debian/rules override_dh_auto_test make[1]: Entering directory '/build/libsis-jhdf5-java-F7hNyP/libsis-jhdf5-java-19.04.0+dfsg' # Run the tests that come with the upstream source. # The contortions with the CLASSPATH are to try and confirm that the MANIFEST is # supplying the correct deps automatically - ie. we should not be feeding any # extra JARs in order to make the tests pass. # The version of testng on trusty does requires us to specifically add jcommander.jar to the # CLASSPATH when invoking TestNG. This seems to be a bug in the testng package. # Finally, the tests need to be run in the Zurich timezone. export CLASSPATH="sourceTest/java:`readlink -f targets/gradle/libs/sis-jhdf5-1.jar`:$TESTCLASSPATH" \ JNIPATH="`readlink -f source/c`:/usr/lib/jni" \ TZ=Europe/Zurich LC_ALL=C ; \ find sourceTest/java -name '*.java' | env CLASSPATH="$CLASSPATH:/usr/share/java/commons-lang3.jar:/usr/share/java/commons-io.jar:/usr/share/java/sis-base.jar:/usr/share/java/jarhdf5.jar" xargs javac && \ java -Xmx2048M -Djava.library.path="$JNIPATH" org.testng.TestNG -verbose 2 sourceTest/java/tests.xml Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. [TestNGContentHandler] [WARN] It is strongly recommended to add "<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >" at the top of your file, otherwise TestNG may fail or not work as expected. [TestNG] Running: /build/libsis-jhdf5-java-F7hNyP/libsis-jhdf5-java-19.04.0+dfsg/sourceTest/java/tests.xml [Utils] Attempting to create /build/libsis-jhdf5-java-F7hNyP/libsis-jhdf5-java-19.04.0+dfsg/test-output/All/All.xml [Utils] Directory /build/libsis-jhdf5-java-F7hNyP/libsis-jhdf5-java-19.04.0+dfsg/test-output/All exists: true =============================================== All Tests run: 0, Failures: 0, Skips: 0 =============================================== =============================================== All Total tests run: 0, Failures: 0, Skips: 0 =============================================== Best, _g.