#!/bin/sh

TOOLKITS="
    axis_java_1.4 
    axis2_java_1.3 
    axis2_java_1.3_xmlbeans 
    dotnet_cs_2.0.50727.42
    ibm_rad_java_7.0 
    mono_cs_1.1.13.8_osx 
    gsoap2_2.7.10_c
    gsoap2_2.7.10_cpp
    php5_php_5.2.0 
    soap4r_ruby_20051204 
    soap4r_ruby_1.5.8 
    spring_java_1.0m3_castor_1.1
    spring_java_1.0m3_jaxb2 
    spring_java_1.0m3_xmlbeans_2.1.0
    wcf_cs_3.0
    weblogicserver_java_10.0
    xbinder_c_1.4 
    xfire_java_1.2.5 
    xfire_java_1.2.5_xmlbeans 
    zsi_python_2.0 
" 

OUTPUTFILE=Makefile

cat > $OUTPUTFILE <<EOF
# Defaults 

JAVA=java
JAVAFLAGS=-Xms128m -Xmx256m
JAVAC=javac
JAVACFLAGS=-O

CLASSPATH=xercesImpl.jar;.
EXAMPLEROOT=../../examples/6/09/

%.class: %.java 
	\$(JAVAC) \$(JAVACFLAGS) \$<

# Different toolkits we have tests run for now:
#
EOF
for i in $TOOLKITS ; do
    echo "# $i" >> $OUTPUTFILE
done
echo "#" >> $OUTPUTFILE
echo -n "WORKINGREPORTS=" >> $OUTPUTFILE
echo $TOOLKITS | sed 's,\([^ ]*\),report_\1.html,g' >> $OUTPUTFILE
cat >> $OUTPUTFILE <<EOF

all: basic.html advanced.html all.html Makefile

basic: basic.html Makefile

advanced: advanced.html Makefile

Makefile: buildit
	buildit internal

basic.html: \$(WORKINGREPORTS) dashboard.class dashboardTemplate.html Makefile
	\$(JAVA) \$(JAVAFLAGS) dashboard -root file:\$(EXAMPLEROOT) -basic -o basic.html \$(WORKINGREPORTS)

advanced.html: \$(WORKINGREPORTS) dashboard.class dashboardTemplate.html Makefile
	\$(JAVA) \$(JAVAFLAGS) dashboard -root file:\$(EXAMPLEROOT) -advanced -o advanced.html \$(WORKINGREPORTS)

all.html: \$(WORKINGREPORTS) dashboard.class dashboardTemplate.html Makefile
	\$(JAVA) \$(JAVAFLAGS) dashboard -root file:\$(EXAMPLEROOT) -all -o all.html \$(WORKINGREPORTS)

clean::
	rm -f report_*.html report_*.log verif.class dashboard.class all.html basic.html advanced.html

# now the "per report rules"

EOF
for i in $TOOLKITS ; do
    reportname=`echo $i | sed 's,\([^ ]*\),report_\1.html,'`
    cat >> $OUTPUTFILE <<EOF
$reportname: ../toolkits/$i/output.xml ../toolkits/$i/toolkit.xml  verif.class reportTemplate.html
	\$(JAVA) \$(JAVAFLAGS) verif -root file:\$(EXAMPLEROOT) -o \$@ \$< 2> \$@.log

EOF
done

if [ $# -eq 0 ]; then
	make
fi

