URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [libjava/] [testsuite/] [libjava.jar/] [jar.exp] - Rev 765
Compare with Previous | Blame | View Log
# Tests for .jar files.# Compile a single .jar file to an executable.# Returns 0 on failure.proc gcj_jar_link {jarfile mainclass} {}proc gcj_jar_compile_one {jarfile mainclass} {set base [file rootname [file tail $jarfile]]set out [file rootname $jarfile].outif {! [gcj_link $base $mainclass [list $jarfile]]} {return}gcj_invoke $base $out {}}proc gcj_jar_interpret {jarfile} {global INTERPRETER srcdirset gij [libjava_find_gij]set errname [dg-trim-dirname $srcdir $jarfile]# libjava_find_gij will return "" if it couldn't find the# program; in this case we want to skip the test.if {$INTERPRETER != "yes" || $gij == ""} {untested "$errname execution - gij test"untested "$errname output - gij test"return}set opts(_) {}set out [file rootname $jarfile].outlibjava_invoke $errname "gij test" opts $gij {} $out \"" -jar $jarfile}proc gcj_jar_run {} {global srcdir subdir envforeach jar [lsort [glob -nocomplain ${srcdir}/${subdir}/*.jar]] {set xff [file rootname $jar].xfailset main {}set interp 1foreach item [libjava_read_xfail $xff] {if {[string match main=* $item]} {set main [string range $item 5 end]break} elseif {$item == "no-interpret"} {set interp 0}}gcj_jar_compile_one $jar $mainif {$interp} {gcj_jar_interpret $jar}}# When we succeed we remove all our clutter.eval gcj_cleanup [glob -nocomplain -- ${main}.*] [list $main ]# Reset CLASSPATH that we do not look into testsuite/libjava.jar for *.jar# files which do not belong to the libgcj itself.set env(CLASSPATH) ""return 1}gcj_jar_run
