[11] RFR(S) 8200383: Can't build on SPARC Hotspot with code which use math functions

Vladimir Kozlov vladimir.kozlov at oracle.com
Wed Mar 28 22:35:28 UTC 2018


On 3/28/18 2:51 PM, Magnus Ihse Bursie wrote:
> On 2018-03-28 23:01, Vladimir Kozlov wrote:
>> http://cr.openjdk.java.net/~kvn/8200383/webrev.00/
>> https://bugs.openjdk.java.net/browse/JDK-8200383
>>
>> Changes for JDK-8200303 added calls to log2f() math function and it 
>> hit problem building Hotspot on SPARC - it can't find this function.
>>
>> For Hotspot build on Solaris we had hack to support old Solaris 
>> versions which did not have libm.so.2:
>>
>> http://hg.openjdk.java.net/jdk6/jdk6/hotspot/file/a74480137e6e/make/solaris/makefiles/vm.make#l102 
>>
>>
>> We don't support Solaris 8 and 9 anymore and it is safe to remove the 
>> hack.
>>
>> Tested with tier1 Builds and Hotspot testing (similar to submit-hs).
> 
> Yay, that's wonderful to get it cleaned out!

Thank you.

> 
> However, there's a similar hack in Awt2dLibraries.gmk:
> LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2

Based on history it was done for 6307603 in 2010 and reason is the same:

http://hg.openjdk.java.net/jdk/hs/rev/1a5e995a710b

Is next fix correct?:

make/lib/Awt2dLibraries.gmk
@@ -409,8 +409,8 @@
      LDFLAGS := $(LDFLAGS_JDKLIB) \
          $(call SET_SHARED_LIBRARY_ORIGIN), \
      LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
-    LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \
      LIBS_unix := -lawt -ljvm -ljava $(LCMS_LIBS), \
+    LIBS_solaris := $(LIBM), \
      LIBS_linux := $(LIBM), \
      LIBS_macosx := $(LIBM), \
      LIBS_aix := $(LIBM),\

or

make/lib/Awt2dLibraries.gmk
@@ -409,11 +409,7 @@
      LDFLAGS := $(LDFLAGS_JDKLIB) \
          $(call SET_SHARED_LIBRARY_ORIGIN), \
      LDFLAGS_unix := -L$(INSTALL_LIBRARIES_HERE), \
-    LDFLAGS_solaris := /usr/lib$(OPENJDK_TARGET_CPU_ISADIR)/libm.so.2, \
-    LIBS_unix := -lawt -ljvm -ljava $(LCMS_LIBS), \
-    LIBS_linux := $(LIBM), \
-    LIBS_macosx := $(LIBM), \
-    LIBS_aix := $(LIBM),\
+    LIBS_unix := -lawt -ljvm -ljava $(LCMS_LIBS) $(LIBM), \
      LIBS_windows := $(WIN_AWT_LIB) $(WIN_JAVA_LIB), \
  ))

Thanks,
Vladimir

> 
> Maybe you can/should remove that as well?
> 
> /Magnus
> 



More information about the build-dev mailing list