# HG changeset patch # User erikj # Date 1354106916 -3600 # Node ID a973c0a1bd5d445a0d7bcba82f1a0f79a94571fa # Parent 2f85b948660b10f88f8c60e78b1fdfdafe944307 8003528: build-infra: Diffs in libjava and hotspot libs on solaris. Summary: Linking against server jvm first if available. Adding filters and exceptions for hotspot lib compare on solaris. Reviewed-by: ohair, ohrstrom diff -r 2f85b948660b -r a973c0a1bd5d common/autoconf/generated-configure.sh --- a/common/autoconf/generated-configure.sh Wed Nov 28 13:40:17 2012 +0100 +++ b/common/autoconf/generated-configure.sh Wed Nov 28 13:48:36 2012 +0100 @@ -3672,7 +3672,7 @@ #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1354104798 +DATE_WHEN_GENERATED=1354106772 ############################################################################### # @@ -27585,9 +27585,11 @@ -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}" # On some platforms (mac) the linker warns about non existing -L dirs. - # Only add client dir if client is being built. Otherwise server should - # be enough - if test "x$JVM_VARIANT_CLIENT" = xtrue; then + # Add server first if available. Linking aginst client does not always produce the same results. + # Only add client dir if client is being built. Default to server for other variants. + if test "x$JVM_VARIANT_SERVER" = xtrue; then + LDFLAGS_JDKLIB="${LDFLAGS_JDKLIB} -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}/server" + elif test "x$JVM_VARIANT_CLIENT" = xtrue; then LDFLAGS_JDKLIB="${LDFLAGS_JDKLIB} -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}/client" else LDFLAGS_JDKLIB="${LDFLAGS_JDKLIB} -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}/server" diff -r 2f85b948660b -r a973c0a1bd5d common/autoconf/toolchain.m4 --- a/common/autoconf/toolchain.m4 Wed Nov 28 13:40:17 2012 +0100 +++ b/common/autoconf/toolchain.m4 Wed Nov 28 13:48:36 2012 +0100 @@ -941,9 +941,11 @@ -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}" # On some platforms (mac) the linker warns about non existing -L dirs. - # Only add client dir if client is being built. Otherwise server should - # be enough - if test "x$JVM_VARIANT_CLIENT" = xtrue; then + # Add server first if available. Linking aginst client does not always produce the same results. + # Only add client dir if client is being built. Default to server for other variants. + if test "x$JVM_VARIANT_SERVER" = xtrue; then + LDFLAGS_JDKLIB="${LDFLAGS_JDKLIB} -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}/server" + elif test "x$JVM_VARIANT_CLIENT" = xtrue; then LDFLAGS_JDKLIB="${LDFLAGS_JDKLIB} -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}/client" else LDFLAGS_JDKLIB="${LDFLAGS_JDKLIB} -L${JDK_OUTPUTDIR}/lib${OPENJDK_TARGET_CPU_LIBDIR}/server" diff -r 2f85b948660b -r a973c0a1bd5d common/bin/compare_exceptions.sh.incl --- a/common/bin/compare_exceptions.sh.incl Wed Nov 28 13:40:17 2012 +0100 +++ b/common/bin/compare_exceptions.sh.incl Wed Nov 28 13:48:36 2012 +0100 @@ -291,6 +291,14 @@ ./jre/plugin/i386/ns4/libjavaplugin.so ./jre/plugin/i386/ns7/libjavaplugin_oji.so ./jre/lib/i386/server/libjvm.so +./jre/lib/i386/client/64/libjvm_db.so +./jre/lib/i386/client/64/libjvm_dtrace.so +./jre/lib/i386/client/libjvm_db.so +./jre/lib/i386/client/libjvm_dtrace.so +./jre/lib/i386/server/64/libjvm_db.so +./jre/lib/i386/server/64/libjvm_dtrace.so +./jre/lib/i386/server/libjvm_db.so +./jre/lib/i386/server/libjvm_dtrace.so ./bin/appletviewer ./bin/extcheck ./bin/idlj @@ -348,7 +356,9 @@ SKIP_FULLDUMP_DIFF="true" # Filter random C++ symbol strings. -DIS_DIFF_FILTER="$SED -e s/\.[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g" +# Some numbers differ randomly. +# Can't use space in these expressions as the shell will mess with them. +DIS_DIFF_FILTER="$SED -e s/\.[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g -e s/\([0-9a-f][0-9a-f].\)\{2,8\}[0-9a-f][0-9a-f]/<NUMS>/g -e s/\(0x\)[0-9a-f]*\([,(>]\)/\1<HEX>\2/g -e s/\(0x\)[0-9a-f]*$/\1<HEX>/g -e s/\(\#.\)[0-9a-f]*\(.<\)/\1<HEX>\2/g -e s/[\.A-Za-z0-9%]\{16,16\}$/<BIN>/g" fi @@ -426,6 +436,9 @@ ./jre/lib/amd64/libzip.so ./jre/lib/amd64/server/64/libjvm_db.so ./jre/lib/amd64/server/64/libjvm_dtrace.so +./jre/lib/amd64/server/libjvm.so +./jre/lib/amd64/server/libjvm_db.so +./jre/lib/amd64/server/libjvm_dtrace.so ./bin/amd64/appletviewer ./bin/amd64/extcheck ./bin/amd64/idlj @@ -480,7 +493,9 @@ SKIP_FULLDUMP_DIFF="true" # Filter random C++ symbol strings. -DIS_DIFF_FILTER="$SED -e s/\.[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g" +# Some numbers differ randomly. +# Can't use space in these expressions as the shell will mess with them. +DIS_DIFF_FILTER="$SED -e s/\.[a-zA-Z0-9_\$]\{15,15\}/<SYM>/g -e s/\([0-9a-f][0-9a-f].\)\{2,8\}[0-9a-f][0-9a-f]/<NUMS>/g -e s/\(0x\)[0-9a-f]*\([,(>]\)/\1<HEX>\2/g -e s/\(0x\)[0-9a-f]*$/\1<HEX>/g -e s/\(\#.\)[0-9a-f]*\(.<\)/\1<HEX>\2/g -e s/[\.A-Za-z0-9%]\{16,16\}$/<BIN>/g" fi