summaryrefslogtreecommitdiff
path: root/t/java-rebuild.sh
diff options
context:
space:
mode:
Diffstat (limited to 't/java-rebuild.sh')
-rw-r--r--t/java-rebuild.sh124
1 files changed, 0 insertions, 124 deletions
diff --git a/t/java-rebuild.sh b/t/java-rebuild.sh
deleted file mode 100644
index 3f10a6499..000000000
--- a/t/java-rebuild.sh
+++ /dev/null
@@ -1,124 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2011-2017 Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <https://www.gnu.org/licenses/>.
-
-# Test rebuild rules for Java class files.
-
-required='javac'
-. test-init.sh
-
-cat >> configure.ac <<'END'
-AC_OUTPUT
-END
-
-cat > Makefile.am <<'END'
-AM_JAVACFLAGS = -verbose
-foodir = $(datadir)/java
-foo_JAVA = a.java
-dist_foo_JAVA = d.java
-nodist_foo_JAVA = n.java
-nobase_foo_JAVA = Nobase.java
-nobase_dist_foo_JAVA = NobaseDist.java
-nobase_nodist_foo_JAVA = NobaseNoDist.java
-END
-
-echo 'class _x {}' > a.java
-echo 'class x_ {}' > d.java
-echo 'class a {} class d {}' > n.java
-echo 'class Nobase_Foo {} class Nobase_Bar {}' > Nobase.java
-echo 'class NobaseDist {}' > NobaseDist.java
-echo 'class NobaseNoDist {}' > NobaseNoDist.java
-
-$ACLOCAL
-$AUTOCONF
-$AUTOMAKE
-
-all_classes='_x x_ a d Nobase_Foo Nobase_Bar NobaseDist NobaseNoDist'
-
-for vpath in : false; do
-
- if $vpath; then
- srcdir=..
- mkdir build
- cd build
- else
- srcdir=.
- fi
-
- $srcdir/configure
- $MAKE
- ls -l # For debugging.
-
- # Sanity check.
- test -f classfoo.stamp
- for cls in $all_classes; do
- test -f $cls.class
- done
-
- # When the stampfile is removed, all the *.class files should
- # be considered out-of-date.
- echo timestamp > older
- $sleep
- rm -f classfoo.stamp
- $MAKE
- for cls in $all_classes; do
- is_newest $cls.class older
- done
-
- # When only a java file is modified, only the *.class files derived from
- # it should be updated.
- # The strings we loop on here have the following format:
- # "JAVA-FILES-TO-BE-TOUCHED -- CLASSES-THAT-SHOULD-BE-UPDATED"
- for args in \
- 'a -- _x' \
- 'd -- x_' \
- 'n -- a d' \
- 'a d Nobase -- _x x_ Nobase_Foo Nobase_Bar' \
- 'n NobaseDist -- a d NobaseDist' \
- 'd NobaseNoDist -- x_ NobaseNoDist' \
- "a d n Nobase NobaseDist NobaseNoDist -- $all_classes" \
- ; do
- set $args
- touched_javas=
- while test $# -gt 0; do
- if test x"$1" = x"--"; then
- shift
- break
- else
- touched_javas="$touched_javas $1"
- shift
- fi
- done
- updated_classes=$*
- echo timestamp > older
- $sleep
- for j in $touched_javas; do
- touch $srcdir/$j.java
- done
- $MAKE
- is_newest classfoo.stamp older
- for cls in $all_classes; do
- case " $updated_classes " in
- *" $cls "*) is_newest $cls.class older;;
- *) is_newest older $cls.class;;
- esac
- done
- done # $args ...
-
- cd $srcdir
-
-done # $vpath ...
-
-: