deep-c-rsc/JCGO/mkjcgo/test-java.sh

127 lines
7.1 KiB
Bash
Executable File

#!/bin/sh
set -ex
# Compile JCGO Java source files explicitly for self-testing.
#
# Prerequisites:
# * Oracle JDK 1.6.0
# * curl ftp://ftp.gnu.org/gnu/classpath/classpath-0.93.tar.gz | tar zxf -
# Default environment variables:
if [ -z "$X_PREFER_SOURCE" ]; then
X_PREFER_SOURCE=-Xprefer:source
fi
if [ -z "$PATHSEP" ]; then
# Assuming Cygwin:
PATHSEP=";"
fi
# Set current working directory to JCGO root:
cd $(dirname "$0")/..
# Test simple examples source:
mkdir -p .build_tmp/test-examples-simple
javac -d .build_tmp/test-examples-simple examples/simple/*.java
# Note: ignore warning about deprecated API usage.
# Test clsp_pgk/pqt/res, noopmain source:
mkdir -p .build_tmp/test-clsp_pgk .build_tmp/test-clsp_pqt .build_tmp/test-clsp_res
javac -d .build_tmp/test-clsp_pgk -source 1.3 goclsp/clsp_pgk/gnu/classpath/*
javac -d .build_tmp/test-clsp_pqt -source 1.3 goclsp/clsp_pqt/gnu/classpath/*
(cd goclsp/clsp_res; javac -d ../../.build_tmp/test-clsp_res -source 1.3 gnu/classpath/* \
gnu/java/locale/* gnu/java/security/*)
mkdir -p .build_tmp/test-noopmain
javac -d .build_tmp/test-noopmain -source 1.3 goclsp/noopmain/*
# Test classpath-0.93 bootclasspath classes source:
CLSP_BOOT_RELPATH=.build_tmp/classpath-0.93-bootclasspath
mkdir -p $CLSP_BOOT_RELPATH
javac $X_PREFER_SOURCE -d $CLSP_BOOT_RELPATH -source 1.4 \
-sourcepath "classpath-0.93${PATHSEP}classpath-0.93/external/relaxngDatatype${PATHSEP}classpath-0.93/external/sax${PATHSEP}classpath-0.93/external/w3c_dom${PATHSEP}classpath-0.93/vm/reference${PATHSEP}goclsp/clsp_res" \
classpath-0.93/java/lang/*.java classpath-0.93/javax/crypto/CipherSpi.java \
classpath-0.93/javax/swing/JTable.java classpath-0.93/gnu/java/awt/peer/gtk/GtkToolkit.java
# Note: ignore warning about deprecated API usage.
# Test clsp_ldr, fpvm, vm_str source:
mkdir -p .build_tmp/test-clsp_ldr .build_tmp/test-fpvm .build_tmp/test-vm_str
javac $X_PREFER_SOURCE -d .build_tmp/test-clsp_ldr -source 1.3 \
-bootclasspath $CLSP_BOOT_RELPATH goclsp/clsp_ldr/java/lang/* \
goclsp/clsp_ldr/java/security/*
javac -d .build_tmp/test-fpvm -source 1.3 -bootclasspath $CLSP_BOOT_RELPATH \
goclsp/fpvm/java/lang/*
javac -d .build_tmp/test-vm_str -source 1.3 -bootclasspath $CLSP_BOOT_RELPATH \
goclsp/vm_str/java/lang/*
# Test goclsp/vm source:
mkdir -p .build_tmp/test-vm
(cd goclsp/vm; javac $X_PREFER_SOURCE -d ../../.build_tmp/test-vm -source 1.4 \
-bootclasspath ../../$CLSP_BOOT_RELPATH -sourcepath ../../classpath-0.93 \
gnu/classpath/*.j* gnu/classpath/jdwp/* gnu/java/lang/*.j* gnu/java/lang/management/* \
gnu/java/net/* gnu/java/nio/*.j* gnu/java/nio/charset/iconv/* java/io/* java/lang/*.j* \
java/lang/management/* java/lang/ref/* java/lang/reflect/* java/net/* java/nio/*.j* \
java/nio/channels/* java/security/* java/util/* sun/misc/* sun/reflect/*.j* \
sun/reflect/misc/*)
# Test clsp_fix source:
mkdir -p .build_tmp/test-clsp_fix .build_tmp/test-clsp_fix2
(cd goclsp/clsp_fix; javac $X_PREFER_SOURCE -d ../../.build_tmp/test-clsp_fix -source 1.4 \
-bootclasspath $CLSP_BOOT_RELPATH \
-sourcepath "../../classpath-0.93${PATHSEP}../../classpath-0.93/external/sax${PATHSEP}../../classpath-0.93/external/w3c_dom${PATHSEP}../../classpath-0.93/vm/reference${PATHSEP}../clsp_res" \
gnu/classpath/*.j* gnu/classpath/tools/common/* gnu/classpath/tools/getopt/* \
gnu/java/awt/peer/gtk/* gnu/java/awt/peer/headless/* gnu/java/awt/peer/qt/* gnu/java/io/* \
gnu/java/net/*.j* gnu/java/net/loader/* gnu/java/net/protocol/file/* \
gnu/java/net/protocol/http/* gnu/java/nio/*.j* gnu/java/nio/charset/* \
gnu/java/security/*.j* gnu/java/security/der/* gnu/java/security/hash/* \
gnu/java/security/jce/sig/* gnu/java/security/key/dss/* gnu/java/security/key/rsa/* \
gnu/java/security/pkcs/* gnu/java/security/provider/* gnu/java/security/sig/rsa/* \
gnu/java/security/x509/*.j* gnu/java/security/x509/ext/* gnu/java/util/*.j* \
gnu/java/util/jar/* gnu/java/util/prefs/*; \
javac $X_PREFER_SOURCE -d ../../.build_tmp/test-clsp_fix2 -source 1.4 \
-bootclasspath $CLSP_BOOT_RELPATH \
-sourcepath "../../classpath-0.93${PATHSEP}../../classpath-0.93/external/relaxngDatatype${PATHSEP}../../classpath-0.93/external/sax${PATHSEP}../../classpath-0.93/external/w3c_dom${PATHSEP}../../classpath-0.93/vm/reference${PATHSEP}../clsp_res" \
../vm/java/lang/VMDouble.java ../vm/java/lang/VMFloat.java \
gnu/javax/crypto/key/dh/* gnu/javax/crypto/key/srp6/* gnu/javax/crypto/prng/* \
gnu/javax/net/ssl/provider/* gnu/javax/print/* gnu/javax/security/auth/login/* \
gnu/javax/swing/plaf/gnu/* gnu/xml/dom/* gnu/xml/validation/relaxng/* \
gnu/xml/validation/xmlschema/* java/applet/* java/io/* java/lang/*.j* java/lang/ref/* \
java/lang/reflect/* java/net/* java/nio/*.j* java/nio/channels/* java/nio/charset/* \
java/security/* java/sql/* java/text/* java/util/*.j* java/util/logging/* \
java/util/prefs/* java/util/regex/* java/util/zip/* javax/print/*.j* \
javax/print/attribute/standard/* javax/sound/midi/* javax/sound/sampled/*.j* \
javax/sound/sampled/spi/* javax/swing/*.j* javax/swing/colorchooser/* \
javax/swing/filechooser/* javax/swing/plaf/basic/* javax/swing/plaf/metal/* \
javax/swing/text/*.j* javax/swing/text/html/* javax/swing/tree/*)
# Test clsp_asc source:
mkdir -p .build_tmp/test-clsp_asc
javac $X_PREFER_SOURCE -d .build_tmp/test-clsp_asc -source 1.4 \
-bootclasspath $CLSP_BOOT_RELPATH -sourcepath "goclsp/vm${PATHSEP}classpath-0.93" \
goclsp/clsp_asc/java/io/*
if [ ! -d "rflg_out" ]; then
# Testing of 'rflg_out' content skipped since build-java.sh not executed.
exit 0
fi
mkdir -p .build_tmp/test-rflg_out
(cd rflg_out; javac -d ../.build_tmp/test-rflg_out -source 1.3 \
-sourcepath ../miscsrc/jpropjav gnu/classpath/tools/appletviewer/* \
gnu/classpath/tools/common/* gnu/classpath/tools/getopt/* gnu/io/* \
gnu/java/awt/dnd/peer/gtk/* gnu/java/awt/peer/gtk/* gnu/java/awt/peer/qt/* \
gnu/java/awt/peer/wce/*.j* gnu/java/awt/peer/wce/font/* gnu/java/locale/* \
gnu/java/net/local/* gnu/java/nio/charset/iconv/* gnu/java/util/prefs/gconf/* \
gnu/java/util/regex/* gnu/javax/comm/wce/* gnu/javax/print/* \
gnu/javax/security/auth/callback/* gnu/javax/sound/midi/alsa/* \
gnu/javax/sound/sampled/wce/* gnu/xml/libxmlj/dom/* gnu/xml/libxmlj/sax/* \
gnu/xml/libxmlj/transform/* java/util/* javax/imageio/plugins/jpeg/* \
org/eclipse/swt/internal/*.j* org/eclipse/swt/internal/accessibility/gtk/* \
org/eclipse/swt/internal/cairo/* org/eclipse/swt/internal/carbon/* \
org/eclipse/swt/internal/cde/* org/eclipse/swt/internal/cocoa/* \
org/eclipse/swt/internal/gdip/* org/eclipse/swt/internal/gnome/* \
org/eclipse/swt/internal/gtk/* org/eclipse/swt/internal/image/* \
org/eclipse/swt/internal/motif/* org/eclipse/swt/internal/mozilla/*.j* \
org/eclipse/swt/internal/mozilla/init/* org/eclipse/swt/internal/ole/win32/* \
org/eclipse/swt/internal/opengl/glx/* org/eclipse/swt/internal/opengl/win32/* \
org/eclipse/swt/internal/photon/* org/eclipse/swt/internal/win32/* \
org/eclipse/swt/internal/wpf/* org/ietf/jgss/*)