# Version Idenitfication: # @(#)makefile 1.7 02/10/98 # Copyright (c) 1998 The Regents of the University of California. # All rights reserved. # # Permission is hereby granted, without written agreement and without # license or royalty fees, to use, copy, modify, and distribute this # software and its documentation for any purpose, provided that the # above copyright notice and the following two paragraphs appear in all # copies of this software. # # IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY # FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES # ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF # THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # # THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE # PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF # CALIFORNIA HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, # ENHANCEMENTS, OR MODIFICATIONS. # # PT_COPYRIGHT_VERSION_2 # COPYRIGHTENDKEY ################################################### # Edit these to suit your local environment # See index.html for details. # Location of Brian Kernighan's Timing test sources and datafiles TOPDIR = /vol/wang/wang2/pt/cxh TIMINGTESTS = $(TOPDIR)/timingtests JAVADIR = $(TOPDIR)/jdk1.1.5 TCLDIR = $(TOPDIR)/tcl TCL7DIR = $(TOPDIR)/tcl7 TCLBLENDDIR = $(TOPDIR)/tclblend JACLDIR = $(TOPDIR)/jacl1.0b1 ###### # No need to edit below here (we hope) TESTPATH = $(JAVADIR)/bin:$(TCLDIR)/bin::$(TCL7DIR)/bin:$(TCLBLENDDIR)/bin:. ###### # Java tests time_java: jclass javatiming.sh JSRCS = \ $(TIMINGTESTS)/ack.java \ $(TIMINGTESTS)/array1.java \ $(TIMINGTESTS)/assoc.java \ $(TIMINGTESTS)/cat.java \ $(TIMINGTESTS)/cata.java \ $(TIMINGTESTS)/catb.java \ $(TIMINGTESTS)/catc.java \ $(TIMINGTESTS)/gtest.java \ $(TIMINGTESTS)/string.java \ $(TIMINGTESTS)/sum1.java \ $(TIMINGTESTS)/sumloop.java \ $(TIMINGTESTS)/tail.java \ $(TIMINGTESTS)/text.java \ $(TIMINGTESTS)/wc.java \ JCLASS = $(JSRCS:%.java=%.class) JAVAC = javac JCLASSDIR = classes JFLAGS = -d $(JCLASSDIR) .SUFFIXES: .class .java .java.class: rm -f `basename $< .java`.class CLASSPATH=$(CLASSPATH)$(AUXCLASSPATH) $(JAVAC) $(JFLAGS) $< jclass: $(JCLASSDIR) $(JCLASSDIR)/bib $(JCLASSDIR)/rn100 $(JCLASS) $(JCLASSDIR): if [ ! -d $@ ]; then mkdir $@; fi $(JCLASSDIR)/bib: $(TIMINGTESTS)/bib ln -s $< $@ $(JCLASSDIR)/rn100: $(TIMINGTESTS)/rn100 ln -s $< $@ ####################### # Run all the tests. # PLOTFILE = p.plt $(PLOTFILE): bib10k bib20k bib rn25 rn50 rn100 jacl tclsh tclsh7.6 PATH=$(TESTPATH):$(PATH) timing.sh $(TIMINGTESTS) #> $@ 2>&1 # 10000 lines of the Bible bib10k: $(TIMINGTESTS)/bib rm -f $@ head -10000 $< > $@ # 20000 lines of the Bible bib20k: $(TIMINGTESTS)/bib rm -f $@ head -20000 $< > $@ # All of the bible (31102 lines) bib: $(TIMINGTESTS)/bib rm -f $@ ln -s $< $@ # 25k random numbers rn25: $(TIMINGTESTS)/rn100 rm -f $@ head -25000 $< > $@ # 50k random numbers rn50: $(TIMINGTESTS)/rn100 rm -f $@ head -50000 $< > $@ # 100k random numbers rn100: $(TIMINGTESTS)/rn100 rm -f $@ ln -s $< $@ # Script to run jacl jacl: jaclscript.in rm -f $@ sed 's=@JACL@=$(JACLDIR)=' < $< > $@ chmod a+x $@ # tclsh binary tclsh: $(TCLDIR)/bin/tclsh8.0 ln -s $< $@ # tclsh7.6 binary tclsh7.6: $(TCL7DIR)/bin/tclsh7.6 ln -s $< $@ # Create a tar file of the apropriate files # Tar file TARDIST = driver.tar.gz # Files to ship DISTFILES = \ driver/index.html \ driver/jaclscript.in \ driver/java \ driver/js \ driver/makefile \ driver/timing.sh \ dist: driver.ex cd ..; gtar -zcf driver/$(TARDIST) -X driver/driver.ex $(DISTFILES) driver.ex: /bin/echo 'adm\nSCCS\ndriver.tar.gz\n*~\n*.class' > $@ clean: rm -f *~ realclean: clean rm $(PLOTFILE) rm -rf classes