JDK-6531149 : Use right LP64 definition for 64 bit conditional build of hotspot
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 7
  • Priority: P4
  • Status: Closed
  • Resolution: Fixed
  • OS: solaris
  • CPU: generic
  • Submitted: 2007-03-05
  • Updated: 2012-10-08
  • Resolved: 2007-03-15
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 JDK 7 Other
6u4Fixed 7Fixed hs10Fixed
In $(hotspot_ws)/build/solaris/makefiles/rules.make, it have different build rules for 64 bit and 32 bit. Currently, it explicitly tests whether LP64 equals to 1 or not. This works only when one set LP64=1 as the build option (or ARCH_DATA_MODEL=64). If one set LP64=true or something else, it won't work. The right way of testing whether it is performing 64 bit build or 32 bit is to test whether LP64 exists or not. So we need to change:
ifeq ($(LP64), 1) to
ifdef LP64

EVALUATION Fix is described in the description section.