File:  [LON-CAPA] / capa / capa51 / GUITools / Makefile
Revision 1.3: download - view: text, annotated - select for diffs
Wed Jan 5 21:11:15 2000 UTC (24 years, 4 months ago) by albertel
Branches: MAIN
CVS tags: HEAD
- little fixes here and there
- Reset the FormulaParseOK variable before parsing a formula

    1: # Makefile for quizzer and grader and manager
    2: # Copyright Guy Albertelli II 1998
    3: # The target all creates TCL/TK dependent programs.
    4: # The target all.2 creates stand alone programs.
    5: 
    6: MAJORVER=\"5.1\"
    7: QUIZZERMINORVER=\"0\"
    8: GRADERMINORVER=\"0\"
    9: MANAGERMINORVER=\"0\"
   10: WEBPAGEMINORVER=\"0\"
   11: UNAME=$(shell uname)
   12: 
   13: QUIZZERDEFS=-DQUIZZERMINORVER=$(QUIZZERMINORVER)
   14: GRADERDEFS=-DGRADERMINORVER=$(GRADERMINORVER)
   15: MANAGERDEFS=-DMANAGERMINORVER=$(MANAGERMINORVER)
   16: WEBPAGEDEFS=-DWEBPAGEMINORVER=$(WEBPAGEMINORVER)
   17: DEFS=$(QUIZZERDEFS) $(GRADERDEFS) $(MANAGERDEFS) $(WEBPAGEDEFS) \
   18: 	-DMAJORVER=$(MAJORVER) -DARCHSTR=\"$(UNAME)\" \
   19: 	-DCOMPILE_DATE=\"`date +'%b-%d-%Y'`\" 
   20: 
   21: ifeq ($(UNAME),Linux)
   22: 
   23: #CC=i486-linuxlibc1-gcc
   24: #TCLTK=/home/albertel/tcltk/lib5/
   25: #ARCHLIB= $(TCLTK)/lib/libtk8.0.a $(TCLTK)/lib/libtcl8.0.a /usr/lib/libl.a $(LIBPATH)  /usr/i486-linuxlibc1/lib/libX11.a /usr/lib/libdl.a /usr/lib/libm.a /usr/lib/libc.a
   26: LIBPATH=-L/usr/lib/libc_debug/
   27: CC=gcc
   28: TCLTK=/home/albertel/tcltk/egcc
   29: #TCLTK=/nfs/mileva/tcltk/egcc
   30: #TCLTK=/mnt2/egcc
   31: ARCHLIB=-ll $(TCLTK)/lib/libtk8.0.a $(TCLTK)/lib/libtcl8.0.a -lm $(LIBPATH) -lX11 -ldl 
   32: ARCHLIBTCL=-ll $(TCLTK)/lib/libtcl8.0.a -lm $(LIBPATH) -ldl 
   33: LIBPATH=-L/usr/X11R6/lib/
   34: ARCHCOPT=-g $(DEFS)
   35: INC=-I. -I$(TCLTK)/include
   36: TCLSH=$(TCLTK)/bin/tclsh8.0
   37: 
   38: else
   39: ifeq ($(UNAME),OSF1)
   40: 
   41: CC=cc 
   42: ARCHCOPT=-O3 -Olimit 768 $(DEFS)
   43: #ARCHCOPT=-g $(DEFS)
   44: INC=-I. -I/usr/local/include
   45: ARCHLIB=-ly -ll -lm -lX11 \
   46:     /usr/local/lib/libtk8.0.a /usr/local/lib/libtcl8.0.a 
   47: ARCHLIBTCL=-ll /usr/local/lib/libtcl8.0.a -lm $(LIBPATH)
   48: LIBPATH=-L/usr/X11/lib
   49: TCLSH=tclsh8.0
   50: 
   51: else
   52: ifeq ($(UNAME),SunOS)
   53: 
   54: CC=cc
   55: TCLTK=/home/capa/source/tcl8.0/unix
   56: ARCHLIB=-ldl -ly -ll -lm -lX11 -lsocket -lnsl $(TCLTK)/lib/libtk8.0.a $(TCLTK)/lib/libtcl8.0.a
   57: ARCHLIBTCL=-ldl -ly -ll -lm -lsocket -lnsl $(TCLTK)/lib/libtcl8.0.a
   58: LIBPATH=-L/usr/openwin/lib
   59: ARCHCOPT=-xO3 $(DEFS)
   60: INC=-I. -I$(TCLTK)/include -I/usr/openwin/include
   61: TCLSH=$(TCLTK)/bin/tclsh8.0
   62: 
   63: else                 
   64: ifeq ($(UNAME),IRIX)
   65: 
   66: CC=cc                          
   67: ARCHCOPT=-O3 $(DEFS)          
   68: INC=-I. -I/usr/people/capa/include                             
   69: ARCHLIB=-ll -ltk8.0 -ltcl8.0 -lm -lX11 
   70: LIBPATH=-L/usr/people/capa/lib
   71: TCLSH=/usr/people/capa/bin/tclsh
   72: endif
   73: 
   74: endif
   75: endif
   76: endif
   77: 
   78: LIB=$(DBUGLIB) $(ARCHLIB)
   79: LIBTCL=$(DBUGLIB) $(ARCHLIBTCL)
   80: COPT=$(ARCHCOPT) $(DBUGDEF)
   81: CAPALIB=Capa/$(UNAME)/libcapa5.1.a 
   82: 
   83: QUIZZEROBJ=$(UNAME)/quizzer.o $(UNAME)/quizzer.init.o $(UNAME)/common.funct.o $(UNAME)/quizzer.funct.o $(CAPALIB)
   84: QUIZZEROBJ2=$(UNAME)/quizzer.init.o $(UNAME)/quizzer.tcl.o $(UNAME)/common.funct.o $(UNAME)/quizzer.funct.o $(CAPALIB)
   85: 
   86: GRADEROBJ=$(UNAME)/grader.o $(UNAME)/grader.init.o $(UNAME)/common.funct.o $(UNAME)/grader.funct.o $(CAPALIB)
   87: GRADEROBJ2=$(UNAME)/grader.init.o $(UNAME)/grader.tcl.o $(UNAME)/common.funct.o $(UNAME)/grader.funct.o $(CAPALIB)
   88: 
   89: MANAGERGENOBJ=$(UNAME)/manager.init.o $(UNAME)/common.funct.o $(UNAME)/manager.funct.o $(UNAME)/scorer.funct.o \
   90: 	$(UNAME)/scorer.init.o $(UNAME)/scorertoset.o $(CAPALIB)
   91: MANAGEROBJ=$(UNAME)/manager.o $(MANAGERGENOBJ)
   92: MANAGEROBJ2=$(UNAME)/manager.tcl.o $(MANAGERGENOBJ)
   93: 
   94: WEBPAGEOBJ=$(UNAME)/webpage.o $(UNAME)/webpage.init.o $(UNAME)/common.funct.o $(UNAME)/webpage.funct.o $(CAPALIB)
   95: WEBPAGEOBJ2=$(UNAME)/webpage.init.o $(UNAME)/webpage.tcl.o $(UNAME)/common.funct.o $(UNAME)/webpage.funct.o $(CAPALIB)
   96: 
   97: all:	$(UNAME)/quizzer $(UNAME)/grader $(UNAME)/manager $(UNAME)/webpage $(UNAME)/answers
   98: 
   99: dmalloc:
  100: 	$(MAKE) $(UNAME)/quizzer DBUGDEF="-DDMALLOC -DDMALLOC_FUNC_CHECK" DBUGLIB="-ldmalloc"
  101: 
  102: all.2:	$(UNAME)/quizzer.2 $(UNAME)/grader.2 $(UNAME)/manager.2 $(UNAME)/webpage.2 $(UNAME)/answers 
  103: 
  104: $(UNAME)/answers:	$(UNAME)/answers.o
  105: 	$(CC) $(COPT) -o $@ $< $(LIBPATH) $(CAPALIB) $(DBUGLIB) -lm -ll
  106: 
  107: $(UNAME)/quizzer:	$(QUIZZEROBJ)
  108: 	$(CC) $(COPT) -o $@ $(QUIZZEROBJ) $(LIBPATH) $(LIB)
  109: 
  110: $(UNAME)/quizzer.2:	$(QUIZZEROBJ2)
  111: 	$(CC) $(COPT) -o $@ $(QUIZZEROBJ2) $(LIBPATH) $(LIB)
  112: 
  113: $(UNAME)/grader:	$(GRADEROBJ)
  114: 	$(CC) $(COPT) -o $@ $(GRADEROBJ) $(LIBPATH) $(LIB)
  115: 
  116: $(UNAME)/grader.2:	$(GRADEROBJ2)
  117: 	$(CC) $(COPT) -o $@ $(GRADEROBJ2) $(LIBPATH) $(LIB)
  118: 
  119: $(UNAME)/manager:	$(MANAGEROBJ)
  120: 	$(CC) $(COPT) -o $@ $(MANAGEROBJ) $(LIBPATH) $(LIB)
  121: 
  122: $(UNAME)/manager.2:	$(MANAGEROBJ2)
  123: 	$(CC) $(COPT) -o $@ $(MANAGEROBJ2) $(LIBPATH) $(LIB)
  124: 
  125: $(UNAME)/webpage:	$(WEBPAGEOBJ)
  126: 	$(CC) $(COPT) -o $@ $(WEBPAGEOBJ) $(LIBPATH) $(LIBTCL)
  127: 
  128: $(UNAME)/webpage.2:	$(WEBPAGEOBJ2)
  129: 	$(CC) $(COPT) -o $@ $(WEBPAGEOBJ2) $(LIBPATH) $(LIBTCL)
  130: 
  131: $(UNAME)/%.tcl.o:	%.tcl.c
  132: 	$(CC) $(COPT) $(INC) -c $< -o $@
  133: 
  134: quizzer.tcl.c:	quizzer.tcl $(UNAME)/tcl2c-qz common.tcl utils.tcl quizzer.templates.tcl
  135: 	./$(UNAME)/tcl2c-qz -qz -o $@ common.tcl utils.tcl quizzer.templates.tcl $<
  136: 
  137: grader.tcl.c:	grader.tcl $(UNAME)/tcl2c-qz common.tcl utils.tcl gradesubjective.tcl
  138: 	./$(UNAME)/tcl2c-qz -gd -o $@ common.tcl utils.tcl $<
  139: 
  140: manager.tcl.c:	manager.tcl $(UNAME)/tcl2c-qz common.tcl utils.tcl \
  141: 		scorer.tcl classl.tcl capastats.tcl seating.tcl
  142: 	./$(UNAME)/tcl2c-qz -mn -o $@ common.tcl utils.tcl \
  143: 		$< scorer.tcl classl.tcl capastats.tcl \
  144: 		seating.tcl
  145: 
  146: webpage.tcl.c:	webpage.tcl $(UNAME)/tcl2c-qz 
  147: 	./$(UNAME)/tcl2c-qz -wb -o $@ $<
  148: 
  149: $(UNAME)/tcl2c-qz:
  150: 	$(CC) $(COPT) $(INC) -o $@ tcl2c-qz.c $(LIBPATH) $(LIB)
  151: 
  152: clean:
  153: 	rm -f $(UNAME)/*.o *[~#] $(UNAME)/quizzer $(UNAME)/quizzer.2 quizzer.tcl.c \
  154: 		$(UNAME)/grader $(UNAME)/grader.2 grader.tcl.c \
  155: 		$(UNAME)/manager $(UNAME)/manager.2 manager.tcl.c \
  156: 		$(UNAME)/webpage webpage.tcl.c \
  157: 		$(UNAME)/answers $(UNAME)/tcl2c-qz
  158: 
  159: managerclean:
  160: 	rm -f $(UNAME)/*.o *[~#] $(UNAME)/manager $(UNAME)/manager.2 manager.tcl.c
  161: 
  162: graderclean:
  163: 	rm -f $(UNAME)/*.o *[~#] $(UNAME)/grader $(UNAME)/grader.2 grader.tcl.c
  164: 
  165: quizzerclean:
  166: 	rm -f $(UNAME)/*.o *[~#] $(UNAME)/quizzer $(UNAME)/quizzer.2 quizzer.tcl.c 
  167: 
  168: $(UNAME)/%.o: %.c
  169: 	$(CC) $(COPT) $(INC) -c $< -o $@
  170: 
  171: 
  172: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>