[PATCH] Update RPATH to make loading libjawt possible
Andrew Hughes
ahughes at redhat.com
Tue Aug 14 09:17:45 UTC 2012
----- Original Message -----
> I have pointed out some changes below, but there is a serious
> problem.
> You are checking for the system arch using uname but the
> java architecture may not be the same.
>
> For example we run 32-bit jdk on a 64bit system, this will cause test
> failures
> since we will be using the wrong path names.
>
> You can use the following to determine the java arch.
>
> % java -XshowSettings:props -version 2>&1 | grep os.arch
>
This doesn't work (at least for me) unless the '-version' is removed.
I also note that this seems to only be present in 7 and later (i.e. not 6), not that this will matter in this case.
> other diffs follow.....
>
> @@ -22,16 +22,17 @@
> # questions.
>
> # @test runtest.sh
> -# @bug 9999999
> +# @bug 7190813
> # @summary Native code linked against libjawt.so should be
> sufficent
> for libjawt.so to be found
> # @run shell runtest.sh
>
> -if [ "${TESTSRC}" = "" ]
> -then TESTSRC=.
> +set -x
> +
> +if [ "${TESTSRC}" = "" ]; then
> + TESTSRC=.
> fi
>
> -if [ "${TESTJAVA}" = "" ]
> -then
> +if [ "${TESTJAVA}" = "" ]; then
> PARENT=`dirname \`which java\``
> TESTJAVA=`dirname ${PARENT}`
> echo "TESTJAVA not set, selecting " ${TESTJAVA}
> @@ -46,14 +47,10 @@
> PS=":"
> FS="/"
> ;;
> - SunOS | Windows_* )
> - echo "Test passed; only valid for Linux"
> + * )
> + echo "Warning: test passes vacuously for non linux systems"
> exit 0;
> ;;
> - * )
> - echo "Unrecognized system!"
> - exit 1;
> - ;;
> esac
>
> # Get ARCH specifics
> @@ -71,13 +68,13 @@
>
> gcc -v > /dev/null 2>&1
> if [ "$?" != 0 ] ; then
> - echo "No compiler found"
> - exit 1
> + echo "Warning: No gcc compiler found, test passes vacuously"
> + exit 0
> fi
>
> -JAVAC=${TEST_JAVA}${FS}bin${FS}javac
> -JAVAH=${TEST_JAVA}${FS}bin${FS}javah
> -JAVA=${TEST_JAVA}${FS}bin${FS}java
> +JAVAC=${TESTJAVA}${FS}bin${FS}javac
> +JAVAH=${TESTJAVA}${FS}bin${FS}javah
> +JAVA=${TESTJAVA}${FS}bin${FS}java
>
> $JAVAC -d . ${TESTSRC}${FS}TestJawt.java || exit 1
> $JAVAH TestJawt || exit 1
>
>
> Thanks
> Kumar
>
> > On 08/13/2012 10:39 AM, Anthony Petrov wrote:
> >> The test looks great, and I like that it doesn't depend on the
> >> JAWT
> >> machinery, but tests the actual problematic RPATH entry only.
> > I generally go for tests that verify behaviour (that jawt-linked
> > programs are working) rather than implementation details (which
> > changed,
> > for example, when we switched from LD_LIBRARY_PATH to RPATHS).
> >
> >> +1 from me.
> > Yes, good to have something that guards us from changing something
> > unintentionally. Looks fine to me too.
> >
> > Cheers,
> > Omair
>
>
--
Andrew :)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07
More information about the build-dev
mailing list