diff options
| author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-11-10 21:30:10 +0000 |
|---|---|---|
| committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-11-10 21:30:10 +0000 |
| commit | 2adccd409ba54c662b8d60d1b57092976812843d (patch) | |
| tree | 0bc5d5364e12e76e5abaeca7cd197657a558fbc7 /libjava/testsuite/libjava.jar | |
| parent | e7b2d6bcdbfae9edf7a2aa223b4d11067d9ef48d (diff) | |
| download | ppe42-gcc-2adccd409ba54c662b8d60d1b57092976812843d.tar.gz ppe42-gcc-2adccd409ba54c662b8d60d1b57092976812843d.zip | |
For PR java/12996:
* libjava.jar/simple.jar: New file.
* libjava.jar/simple.xfail: New file.
* libjava.jar/simple.out: New file.
* libjava.jar/simple.java: New file.
* libjava.jar/jar.exp: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@73426 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/testsuite/libjava.jar')
| -rw-r--r-- | libjava/testsuite/libjava.jar/jar.exp | 59 | ||||
| -rw-r--r-- | libjava/testsuite/libjava.jar/simple.jar | bin | 0 -> 700 bytes | |||
| -rw-r--r-- | libjava/testsuite/libjava.jar/simple.java | 7 | ||||
| -rw-r--r-- | libjava/testsuite/libjava.jar/simple.out | 1 | ||||
| -rw-r--r-- | libjava/testsuite/libjava.jar/simple.xfail | 1 |
5 files changed, 68 insertions, 0 deletions
diff --git a/libjava/testsuite/libjava.jar/jar.exp b/libjava/testsuite/libjava.jar/jar.exp new file mode 100644 index 00000000000..70a176ee43c --- /dev/null +++ b/libjava/testsuite/libjava.jar/jar.exp @@ -0,0 +1,59 @@ +# 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].out + + if {! [gcj_link $base $mainclass [list $jarfile]]} { + return + } + + gcj_invoke $base $out {} +} + +proc gcj_jar_interpret {jarfile} { + global INTERPRETER srcdir + + set gij [libjava_find_gij] + # libjava_find_gij will return `gij' if it couldn't find the + # program; in this case we want to skip the test. + if {$INTERPRETER != "yes" || $gij == "gij"} { + untested "$jarfile execution - gij test" + untested "$jarfile output - gij test" + return + } + + set opts(_) {} + set out [file rootname $jarfile].out + libjava_invoke $jarfile "gij test" opts $gij {} $out \ + -jar $jarfile +} + +proc gcj_jar_run {} { + global srcdir subdir + foreach jar [lsort [glob -nocomplain ${srcdir}/${subdir}/*.jar]] { + set xff [file rootname $jar].xfail + set main {} + set interp 1 + foreach 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 $main + if {$interp} { + gcj_jar_interpret $jar + } + } +} + +gcj_jar_run diff --git a/libjava/testsuite/libjava.jar/simple.jar b/libjava/testsuite/libjava.jar/simple.jar Binary files differnew file mode 100644 index 00000000000..e11666fc875 --- /dev/null +++ b/libjava/testsuite/libjava.jar/simple.jar diff --git a/libjava/testsuite/libjava.jar/simple.java b/libjava/testsuite/libjava.jar/simple.java new file mode 100644 index 00000000000..848ebe12640 --- /dev/null +++ b/libjava/testsuite/libjava.jar/simple.java @@ -0,0 +1,7 @@ +public class simple +{ + public static void main(String[] args) + { + System.out.println("hi"); + } +} diff --git a/libjava/testsuite/libjava.jar/simple.out b/libjava/testsuite/libjava.jar/simple.out new file mode 100644 index 00000000000..45b983be36b --- /dev/null +++ b/libjava/testsuite/libjava.jar/simple.out @@ -0,0 +1 @@ +hi diff --git a/libjava/testsuite/libjava.jar/simple.xfail b/libjava/testsuite/libjava.jar/simple.xfail new file mode 100644 index 00000000000..478dfc79460 --- /dev/null +++ b/libjava/testsuite/libjava.jar/simple.xfail @@ -0,0 +1 @@ +main=simple |

