Alex,
It is a long term goal to replace as many shell tests as possible in the
langtools
repository, typically with Java equivalents. For the short term,
Martin's suggestion
is a good one. I'd be happy to work with you on short or medium term changes
if you want to help.
-- Jon
Martin Buchholz wrote:
Of course, the non-portable constructs in the shell scripts come from
a long term mindset of "if it's not solaris or linux, it must be windows."
Better would be "if it's not windows, it must be unix"
Very compactly (untested):
case "`uname -s`" in
Windows* | CYGWIN*) NULL=NUL PS=";" FS="\\" ;;
*) NULL=/dev/null PS=":" FS="/" ;;
esac
This would be a pervasive change.
Martin
On Tue, Jun 24, 2008 at 6:51 PM, Alex Potanin
<[EMAIL PROTECTED]> wrote:
Hello,
I am working on the javac extension and I tried to run the javac tests in
the OpenJDK's latest Mercurial repository.
em daqsh w3.org
I see that a few of them contain the following in the shell scripts:
# set platform-dependent variables
OS=`uname -s`
case "$OS" in
SunOS | Linux )
NULL=/dev/null
PS=":"
FS="/"
;;
Windows* )
NULL=NUL
PS=";"
FS="\\"
;;
* )
echo "Unrecognized system!"
exit 1;
;;
esac
Since I use NetBSD, my 'uname -s' returns NetBSD.
I had to add "| NetBSD" to the "SunOS | Linux" line to fix the test scripts
so that they don't return "Unrecognized system!".
Some of the affected scripts are:
tools/javac/4846262/Test.sh
tools/javac/6302184/T6302184.sh
tools/javac/ClassPathTest/ClassPathTest.sh
But there are others that I can find if required (I suspect grepping will do
a good job).
I was wondering if it can please be fixed to take NetBSD into account or
whether there is a better way of fixing this?
Thanks,
Alex.