Bug 205544 - java/openjdk8 - Build Fails
Summary: java/openjdk8 - Build Fails
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: freebsd-java (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-12-23 16:20 UTC by Ryan Frederick
Modified: 2016-01-13 18:14 UTC (History)
4 users (show)

See Also:
bugzilla: maintainer-feedback? (java)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ryan Frederick 2015-12-23 16:20:43 UTC
The build of java/openjdk8 version 8.66.17_1 fails on FreeBSD 10.1-RELEASE with the following:

/usr/ports/java/openjdk8/work/openjdk/jdk/src/share/classes/sun/security/x509/X509CertImpl.java:436: error: cannot access Instance
            sigVerf = Signature.getInstance(algId.getName(), sigProvider);
                               ^
  class file for sun.security.jca.GetInstance$Instance not found
/usr/ports/java/openjdk8/work/openjdk/jdk/src/share/classes/sun/security/jca/GetInstance.java:238: error: cannot find symbol
        return new Instance(s.getProvider(), instance);
                   ^
  symbol:   class Instance
  location: class GetInstance
/usr/ports/java/openjdk8/work/openjdk/jdk/src/share/classes/sun/security/jca/GetInstance.java:245: error: cannot find symbol
        return new Instance(s.getProvider(), instance);
                   ^
  symbol:   class Instance
  location: class GetInstance
/usr/ports/java/openjdk8/work/openjdk/jdk/src/share/classes/javax/net/ssl/SSLContext.java:155: error: cannot find symbol
        GetInstance.Instance instance = GetInstance.getInstance
                   ^
  symbol:   class Instance
  location: class GetInstance
/usr/ports/java/openjdk8/work/openjdk/jdk/src/share/classes/javax/net/ssl/SSLContext.java:198: error: cannot find symbol
        GetInstance.Instance instance = GetInstance.getInstance
                   ^
  symbol:   class Instance
  location: class GetInstance
/usr/ports/java/openjdk8/work/openjdk/jdk/src/share/classes/javax/net/ssl/SSLContext.java:235: error: cannot find symbol
        GetInstance.Instance instance = GetInstance.getInstance
                   ^
  symbol:   class Instance
  location: class GetInstance
6 errors
Writing java_util_concurrent_atomic_AtomicLong.h
Writing java_util_zip_Deflater.h
Writing java_util_prefs_FileSystemPreferences.h
Writing java_util_logging_FileHandler.h
Writing java_util_zip_CRC32.h
Writing java_util_zip_Inflater.h
Writing java_util_jar_JarFile.h
Writing java_util_zip_ZipFile.h
Writing java_util_zip_Adler32.h
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
CompileJavaClasses.gmk:344: recipe for target '/usr/ports/java/openjdk8/work/openjdk/build/bsd-x86_64-normal-server-release/jdk/classes/javac_state' failed
gmake[4]: *** [/usr/ports/java/openjdk8/work/openjdk/build/bsd-x86_64-normal-server-release/jdk/classes/javac_state] Error 255
gmake[4]: Leaving directory '/usr/ports/java/openjdk8/work/openjdk/jdk/make'
BuildJdk.gmk:64: recipe for target 'classes-only' failed
gmake[3]: *** [classes-only] Error 2
gmake[3]: Leaving directory '/usr/ports/java/openjdk8/work/openjdk/jdk/make'
/usr/ports/java/openjdk8/work/openjdk//make/Main.gmk:119: recipe for target 'jdk-only' failed
gmake[2]: *** [jdk-only] Error 2
gmake[2]: Leaving directory '/usr/ports/java/openjdk8/work/openjdk'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/java/openjdk8
*** Error code 1
Comment 1 Christian Ullrich 2015-12-28 08:38:25 UTC
This was caused by r403748, "Build with sjavac when we are self-hosting to improve build speed". Disabling the option added in that commit allows the build to finish.
Comment 2 commit-hook freebsd_committer freebsd_triage 2016-01-05 22:40:26 UTC
A commit references this bug:

Author: jkim
Date: Tue Jan  5 22:39:47 UTC 2016
New revision: 405320
URL: https://svnweb.freebsd.org/changeset/ports/405320

Log:
  - Partially implement getThreadUserTime() using getrusage(2).  Note we can
  only get usage for the current thread.  Return -1 if the requested function
  is not supported, i.e., user time for other threads, rather than crash. [1]
  - Properly implement os::elapsedVTime() using getrusage().  Basically, it is
  taken from Linux version.
  - Temporarily revert r403748 to fix bootstrapping with earlier OpenJDK8. [2]

  PR:		205523, 205843 [1]
  PR:		205544 [2]

Changes:
  head/java/openjdk8/Makefile
  head/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.cpp
Comment 3 Jung-uk Kim freebsd_committer freebsd_triage 2016-01-05 22:42:02 UTC
Reverted r403748 for now, thanks!
Comment 4 commit-hook freebsd_committer freebsd_triage 2016-01-13 18:14:35 UTC
A commit references this bug:

Author: jkim
Date: Wed Jan 13 18:13:57 UTC 2016
New revision: 406064
URL: https://svnweb.freebsd.org/changeset/ports/406064

Log:
  MFH:	r405058, r405320

  - Stub implementation of OperatingSystemImpl.
  - Partially implement getThreadUserTime() using getrusage(2).  Note we can
  only get usage for the current thread.  Return -1 if the requested function
  is not supported, i.e., user time for other threads, rather than crash.
  - Properly implement os::elapsedVTime() using getrusage().  Basically, it is
  taken from Linux version.
  - Temporarily revert r403748 to fix bootstrapping with earlier OpenJDK8.

  PR:		205229, 205523, 205544, 205843
  Approved by:	ports-secteam (feld)

Changes:
_U  branches/2016Q1/
  branches/2016Q1/java/openjdk8/Makefile
  branches/2016Q1/java/openjdk8/files/patch-hotspot_src_os_bsd_vm_os__bsd.cpp
  branches/2016Q1/java/openjdk8/files/patch-jdk-src-solaris-native-sun-management-BsdOperatingSystem.c