tools/jpackage/linux - tests (from 8212780: Packaging Tool Implementation)

Baesken, Matthias matthias.baesken at sap.com
Tue Feb 11 12:15:03 UTC 2020


Hi  Alexey,  with rpmbuild  4.4  on SLES11   we get the  additional output   "rpmbuild: no spec files given for build"   when calling   rpmbuild --eval=%{_target_cpu}  , 
This seems to mess up the test   e.g.    jdk/test/jdk/tools/jpackage/linux/AppCategoryTest.java    :


rpmbuild --eval=%{_target_cpu}
x86_64
rpmbuild: no spec files given for build

> rpmbuild --version
RPM version 4.4.2.3


 While    on SLES12  with   rpmbuild 4.11    we do not get this additional  output :

rpmbuild --eval=%{_target_cpu}
x86_64
% rpmbuild --version
RPM version 4.11.2


What is the oldest rpmbuild  you can confirm to work ?

Best regards , Matthias



> 
> Message: 2
> Date: Fri, 7 Feb 2020 11:40:36 -0800
> From: Alexey Semenyuk <alexey.semenyuk at oracle.com>
> To: core-libs-dev at openjdk.java.net
> Subject: Re: tools/jpackage/linux - tests (from 8212780: Packaging
> 	Tool Implementation)
> Message-ID: <0e495cc2-000f-ee46-f0ac-b2f08b084d4c at oracle.com>
> Content-Type: text/plain; charset=utf-8; format=flowed
> 
> Hi Matthias,
> 
> On 2/7/2020 12:17 AM, Baesken, Matthias wrote:
> > Hello, I started to look a bit  into the   tools/jpackage/linux  - tests  (from
> 8212780).
> > So far I noticed the following issues , maybe someone could comment on
> them  ?
> >
> > rpm/rpmbuild version requirements
> > ------------------------------------------------------
> >
> > We still have some older Suse Linux 11 systems , but those systems  have
> rather old rpm/rpmbuild versions.  On those systems the
> tools/jpackage/linux - tests  do not work (probably because of old
> rpm(build)) .
> > For example  we have issues with this version:
> > rpmbuild --version
> > RPM version 4.4.2.3
> >
> > On  newer systems with RPM version 4.11.2  the tests do not show the
> issues.
> > Is there some   requirement for a  minimum rpm version (like 4.10 or  4.11)
> to run the tools/jpackage/linux - tests  ?
> Tests should pass with rpm v4.0 or newer.
> 
> >
> >
> > getting packages does not work everywhere/ on all distros ?
> > ---------------------------------------------------------------------------------------
> >
> > On our Ubuntu 18  linux ppc64le  test machine  ,  the  test
> tools/jpackage/linux/AppCategoryTest.java    (and maybe other tests)  tries
> to find out   rpm packages of various files .
> > However calling  rpm  whatprovides   fails  (maybe because it is Ubuntu ?) .
> >
> > Example :
> >
> > Running [rpm, -q, --queryformat, %{name}\\n, -q, --whatprovides,
> /lib/powerpc64le-linux-gnu/libbsd.so.0]
> > file /lib/powerpc64le-linux-gnu/libbsd.so.0 is not owned by any package
> > java.io.IOException: Command [rpm, -q, --queryformat, %{name}\\n, -q, --
> whatprovides, /lib/powerpc64le-linux-gnu/libbsd.so.0] exited with 1 code
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.Executor.executeExp
> ectSuccess(Executor.java:73)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.LinuxRpmBundler.la
> mbda$initLibProvidersLookup$7(LinuxRpmBundler.java:187)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.LibProvidersLookup.l
> ambda$execute$1(LibProvidersLookup.java:67)
> >                  at
> java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.
> java:195)
> >                  at
> java.base/java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.jav
> a:1694)
> >                  at
> java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:4
> 84)
> >                  at
> java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeli
> ne.java:474)
> >                  at
> java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(Reduc
> eOps.java:913)
> >                  at
> java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:2
> 34)
> >                  at
> java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:
> 578)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.LibProvidersLookup.
> execute(LibProvidersLookup.java:78)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.LinuxPackageBundler
> .getListOfNeededPackages(LinuxPackageBundler.java:184)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.LinuxPackageBundler
> .createDefaultReplacementData(LinuxPackageBundler.java:210)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.LinuxPackageBundler
> .execute(LinuxPackageBundler.java:140)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.Arguments.generate
> Bundle(Arguments.java:641)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.internal.Arguments.processA
> rguments(Arguments.java:514)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.main.Main.execute(Main.jav
> a:98)
> >                  at
> jdk.incubator.jpackage/jdk.incubator.jpackage.main.Main.main(Main.java:52
> )
> >
> > Do you expect  those  tests to work on Ubuntu ?
> No, rpm test are not supposed to pass on Ubuntu.
> To disable running rpm tests on Ubuntu please set
> "jpackage.test.disabledPackagers" system property to "rpm":
> -Djpackage.test.disabledPackagers=rpm.
> 
> - Alexey
> >
> >



More information about the core-libs-dev mailing list