[Bug 1766995] Re: [SRU] ceph: replace javah usage with a call to javac
Launchpad Bug Tracker
1766995 at bugs.launchpad.net
Thu May 24 17:30:58 UTC 2018
This bug was fixed in the package ceph - 12.2.4-0ubuntu1.1
---------------
ceph (12.2.4-0ubuntu1.1) bionic; urgency=medium
* d/p/update-java-source-target-flags.patch: Use --release instead
of -source/-target and set release to 7 as that is the minimum
required for OpenJDK 11 (LP: #1766998).
* d/p/replace-javah-usage.patch: call -h during compilation time to
generate native header files and remove the javah call as the binary
is no longer part of openjdk-10 - javah has been deprecated since
openjdk-9 (LP: #1766995).
-- Tiago Stürmer Daitx <tiago.daitx at ubuntu.com> Wed, 25 Apr 2018
01:45:34 +0000
** Changed in: ceph (Ubuntu Bionic)
Status: Fix Committed => Fix Released
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ceph in Ubuntu.
https://bugs.launchpad.net/bugs/1766995
Title:
[SRU] ceph: replace javah usage with a call to javac
Status in ceph package in Ubuntu:
Fix Released
Status in ceph source package in Bionic:
Fix Released
Bug description:
[Impact]
Currently ceph 12.2.4-0ubuntu1 FTBFS on Bionic because it can't find the javah binary.
The javah binary has been removed from OpenJDK 10 and the java
compiler should be used in its place to build native headers by
calling "javac -h".
[Test Case]
Build ceph 12.2.4-0ubuntu1 in Bionic with a current default-jdk (ie. depends on openjdk-11-jdk), it should FTBFS with:
[ 41%] Generating native/com_ceph_fs_CephMount.h
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/java && Java_JAVAH_EXECUTABLE-NOTFOUND -classpath /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/java/libcephfs.jar -jni -o /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/java/native/com_ceph_fs_CephMount.h com.ceph.fs.CephMount
/bin/sh: 1: Java_JAVAH_EXECUTABLE-NOTFOUND: not found
When fixed the build is build is expected to succeed.
[Regression Potential]
No regression is expected as the generated headers are the same.
[Other Info]
* This SRU should not be backported to any Ubuntu release were the default-jdk depends on openjdk-8 (although it is supposed to be supported, I haven't tested that).
* The javac -h option has been available since OpenJDK 8 - see JEP-313 and JDK-8182758 [1].
* Please note that it is not usually possible to simply replace "javah" calls with "javac -h": the syntax and expected arguments are different; the "-h <output header directory>" argument should be added to the existing javac calls.
[References]
[1] https://bugs.java.com/view_bug.do?bug_id=JDK-8182758
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1766995/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list