File:  [LON-CAPA] / capa / capa51 / GUITools / Makefile
Revision 1.17: download - view: text, annotated - select for diffs
Mon Jul 2 19:45:01 2001 UTC (23 years, 4 months ago) by albertel
Branches: MAIN
CVS tags: version_2_9_X, version_2_9_99_0, version_2_9_1, version_2_9_0, version_2_8_X, version_2_8_99_1, version_2_8_99_0, version_2_8_2, version_2_8_1, version_2_8_0, version_2_7_X, version_2_7_99_1, version_2_7_99_0, version_2_7_1, version_2_7_0, version_2_6_X, version_2_6_99_1, version_2_6_99_0, version_2_6_3, version_2_6_2, version_2_6_1, version_2_6_0, version_2_5_X, version_2_5_99_1, version_2_5_99_0, version_2_5_2, version_2_5_1, version_2_5_0, version_2_4_X, version_2_4_99_0, version_2_4_2, version_2_4_1, version_2_4_0, version_2_3_X, version_2_3_99_0, version_2_3_2, version_2_3_1, version_2_3_0, version_2_2_X, version_2_2_99_1, version_2_2_99_0, version_2_2_2, version_2_2_1, version_2_2_0, version_2_1_X, version_2_1_99_3, version_2_1_99_2, version_2_1_99_1, version_2_1_99_0, version_2_1_3, version_2_1_2, version_2_1_1, version_2_1_0, version_2_12_X, version_2_11_X, version_2_11_5_msu, version_2_11_5, version_2_11_4_uiuc, version_2_11_4_msu, version_2_11_4, version_2_11_3_uiuc, version_2_11_3_msu, version_2_11_3, version_2_11_2_uiuc, version_2_11_2_msu, version_2_11_2_educog, version_2_11_2, version_2_11_1, version_2_11_0_RC3, version_2_11_0_RC2, version_2_11_0_RC1, version_2_11_0, version_2_10_X, version_2_10_1, version_2_10_0_RC2, version_2_10_0_RC1, version_2_10_0, version_2_0_X, version_2_0_99_1, version_2_0_2, version_2_0_1, version_2_0_0, version_1_99_3, version_1_99_2, version_1_99_1_tmcc, version_1_99_1, version_1_99_0_tmcc, version_1_99_0, version_1_3_X, version_1_3_3, version_1_3_2, version_1_3_1, version_1_3_0, version_1_2_X, version_1_2_99_1, version_1_2_99_0, version_1_2_1, version_1_2_0, version_1_1_X, version_1_1_99_5, version_1_1_99_4, version_1_1_99_3, version_1_1_99_2, version_1_1_99_1, version_1_1_99_0, version_1_1_3, version_1_1_2, version_1_1_1, version_1_1_0, version_1_0_99_3, version_1_0_99_2, version_1_0_99_1, version_1_0_99, version_1_0_3, version_1_0_2, version_1_0_1, version_1_0_0, version_0_99_5, version_0_99_4, version_0_99_3, version_0_99_2, version_0_99_1, version_0_99_0, version_0_6_2, version_0_6, version_0_5_1, version_0_5, version_0_4, stable_2002_spring, stable_2002_july, stable_2002_april, stable_2001_fall, loncapaMITrelate_1, language_hyphenation_merge, language_hyphenation, conference_2003, bz6209-base, bz6209, STABLE, HEAD, GCI_3, GCI_2, GCI_1, CAPA_5-1-6, BZ4492-merge, BZ4492-feature_horizontal_radioresponse, BZ4492-feature_Support_horizontal_radioresponse, BZ4492-Support_horizontal_radioresponse
- bumped version numbers

# Makefile for quizzer and grader and manager
#  Copyright (C) 1992-2000 Michigan State University
#
#  The CAPA system 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 of the
#  License, or (at your option) any later version.
#
#  The CAPA system 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 the CAPA system; see the file COPYING.  If not,
#  write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
#  Boston, MA 02111-1307, USA.
#
#  As a special exception, you have permission to link this program
#  with the TtH/TtM library and distribute executables, as long as you
#  follow the requirements of the GNU GPL in regard to all of the
#  software in the executable aside from TtH/TtM.

# Guy Albertelli II 1998
# The target all creates TCL/TK dependent programs.
# The target all.2 creates stand alone programs.

MAJORVER=\"5.1\"
QUIZZERMINORVER=\"6\"
GRADERMINORVER=\"6\"
MANAGERMINORVER=\"6\"
WEBPAGEMINORVER=\"6\"
UNAME=$(shell uname)

QUIZZERDEFS=-DQUIZZERMINORVER=$(QUIZZERMINORVER)
GRADERDEFS=-DGRADERMINORVER=$(GRADERMINORVER)
MANAGERDEFS=-DMANAGERMINORVER=$(MANAGERMINORVER)
WEBPAGEDEFS=-DWEBPAGEMINORVER=$(WEBPAGEMINORVER)
DEFS=$(QUIZZERDEFS) $(GRADERDEFS) $(MANAGERDEFS) $(WEBPAGEDEFS) \
	-DMAJORVER=$(MAJORVER) -DARCHSTR=\"$(UNAME)\" \
	-DCOMPILE_DATE=\"`date +'%b-%d-%Y'`\" 

ifeq ($(UNAME),Linux)

#CC=i486-linuxlibc1-gcc
#TCLTK=/home/albertel/tcltk/lib5/
#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
LIBPATH=-L/usr/lib/libc_debug/
CC=gcc
TCLTK=/home/albertel/tcltk/egcc
#TCLTK=/nfs/mileva/tcltk/egcc
#TCLTK=/mnt2/tcltk/egcc
ARCHLIB=-lfl $(TCLTK)/lib/libtk8.0.a $(TCLTK)/lib/libtcl8.0.a -lm $(LIBPATH) -lX11 -ldl 
ARCHLIBTCL=-lfl $(TCLTK)/lib/libtcl8.0.a -lm $(LIBPATH) -ldl 
LIBPATH=-L/usr/X11R6/lib/
ARCHCOPT=-O2 -Wall $(DEFS)
INC=-I. -I.. -I$(TCLTK)/include
TCLSH=$(TCLTK)/bin/tclsh8.0

else
ifeq ($(UNAME),OSF1)

CC=cc 
ARCHCOPT=-O3 -Olimit 768 $(DEFS)
#ARCHCOPT=-g $(DEFS)
INC=-I. -I.. -I/usr/local/include
ARCHLIB=-ly -ll -lm -lX11 \
    /usr/local/lib/libtk8.0.a /usr/local/lib/libtcl8.0.a 
ARCHLIBTCL=-ll /usr/local/lib/libtcl8.0.a -lm $(LIBPATH)
LIBPATH=-L/usr/X11/lib
TCLSH=tclsh8.0

else
ifeq ($(UNAME),SunOS)

CC=cc
TCLTK=/home/capa/source/tcl8.0/unix
ARCHLIB=-ldl -ly -ll -lm -lX11 -lsocket -lnsl $(TCLTK)/lib/libtk8.0.a $(TCLTK)/lib/libtcl8.0.a
ARCHLIBTCL=-ldl -ly -ll -lm -lsocket -lnsl $(TCLTK)/lib/libtcl8.0.a
LIBPATH=-L/usr/openwin/lib
ARCHCOPT=-xO3 $(DEFS)
INC=-I. -I.. -I$(TCLTK)/include -I/usr/openwin/include
TCLSH=$(TCLTK)/bin/tclsh8.0

else                 
ifeq ($(UNAME),IRIX)

CC=cc                          
ARCHCOPT=-O3 $(DEFS)          
INC=-I. -I.. -I/usr/people/capa/include                             
ARCHLIB=-ll -ltk8.0 -ltcl8.0 -lm -lX11 
LIBPATH=-L/usr/people/capa/lib
TCLSH=/usr/people/capa/bin/tclsh
endif

endif
endif
endif

LIB=$(DBUGLIB) $(ARCHLIB)
LIBTCL=$(DBUGLIB) $(ARCHLIBTCL)
COPT=$(ARCHCOPT) $(DBUGDEF)
CAPALIB=../pProj/$(UNAME)/libcapa5.1.a 

QUIZZEROBJ=$(UNAME)/quizzer.o $(UNAME)/quizzer.init.o $(UNAME)/common.funct.o $(UNAME)/quizzer.funct.o $(CAPALIB)
QUIZZEROBJ2=$(UNAME)/quizzer.init.o $(UNAME)/quizzer.tcl.o $(UNAME)/common.funct.o $(UNAME)/quizzer.funct.o $(CAPALIB)

GRADEROBJ=$(UNAME)/grader.o $(UNAME)/grader.init.o $(UNAME)/common.funct.o $(UNAME)/grader.funct.o $(CAPALIB)
GRADEROBJ2=$(UNAME)/grader.init.o $(UNAME)/grader.tcl.o $(UNAME)/common.funct.o $(UNAME)/grader.funct.o $(CAPALIB)

MANAGERGENOBJ=$(UNAME)/manager.init.o $(UNAME)/common.funct.o $(UNAME)/manager.funct.o $(UNAME)/scorer.funct.o \
	$(UNAME)/scorer.init.o $(UNAME)/scorertoset.o $(CAPALIB)
MANAGEROBJ=$(UNAME)/manager.o $(MANAGERGENOBJ)
MANAGEROBJ2=$(UNAME)/manager.tcl.o $(MANAGERGENOBJ)

WEBPAGEOBJ=$(UNAME)/webpage.o $(UNAME)/webpage.init.o $(UNAME)/common.funct.o $(UNAME)/webpage.funct.o $(CAPALIB)
WEBPAGEOBJ2=$(UNAME)/webpage.init.o $(UNAME)/webpage.tcl.o $(UNAME)/common.funct.o $(UNAME)/webpage.funct.o $(CAPALIB)

all:	$(UNAME) $(UNAME)/quizzer $(UNAME)/grader $(UNAME)/manager $(UNAME)/webpage $(UNAME)/answers

dmalloc:
	$(MAKE) $(UNAME)/quizzer DBUGDEF="-DDMALLOC -DDMALLOC_FUNC_CHECK" DBUGLIB="-ldmalloc"

all.2:	$(UNAME) $(UNAME)/quizzer.2 $(UNAME)/grader.2 $(UNAME)/manager.2 $(UNAME)/webpage.2 $(UNAME)/answers 

$(UNAME):
	mkdir $(UNAME)

$(UNAME)/answers:	$(UNAME)/answers.o
	$(CC) $(COPT) -o $@ $< $(LIBPATH) $(CAPALIB) $(DBUGLIB) -lm -ll

$(UNAME)/quizzer:	$(QUIZZEROBJ)
	$(CC) $(COPT) -o $@ $(QUIZZEROBJ) $(LIBPATH) $(LIB)

$(UNAME)/quizzer.2:	$(QUIZZEROBJ2)
	$(CC) $(COPT) -o $@ $(QUIZZEROBJ2) $(LIBPATH) $(LIB)

$(UNAME)/grader:	$(GRADEROBJ)
	$(CC) $(COPT) -o $@ $(GRADEROBJ) $(LIBPATH) $(LIB)

$(UNAME)/grader.2:	$(GRADEROBJ2)
	$(CC) $(COPT) -o $@ $(GRADEROBJ2) $(LIBPATH) $(LIB)

$(UNAME)/manager:	$(MANAGEROBJ)
	$(CC) $(COPT) -o $@ $(MANAGEROBJ) $(LIBPATH) $(LIB)

$(UNAME)/manager.2:	$(MANAGEROBJ2)
	$(CC) $(COPT) -o $@ $(MANAGEROBJ2) $(LIBPATH) $(LIB)

$(UNAME)/webpage:	$(WEBPAGEOBJ)
	$(CC) $(COPT) -o $@ $(WEBPAGEOBJ) $(LIBPATH) $(LIBTCL)

$(UNAME)/webpage.2:	$(WEBPAGEOBJ2)
	$(CC) $(COPT) -o $@ $(WEBPAGEOBJ2) $(LIBPATH) $(LIBTCL)

$(UNAME)/%.tcl.o:	%.tcl.c
	$(CC) $(COPT) $(INC) -c $< -o $@

quizzer.tcl.c:	quizzer.tcl $(UNAME)/tcl2c-qz common.tcl utils.tcl quizzer.templates.tcl
	./$(UNAME)/tcl2c-qz -qz -o $@ common.tcl utils.tcl quizzer.templates.tcl $<

grader.tcl.c:	grader.tcl $(UNAME)/tcl2c-qz common.tcl utils.tcl gradesubjective.tcl
	./$(UNAME)/tcl2c-qz -gd -o $@ common.tcl utils.tcl $<

manager.tcl.c:	manager.tcl $(UNAME)/tcl2c-qz common.tcl utils.tcl \
		scorer.tcl classl.tcl capastats.tcl seating.tcl groupemail.tcl 
	./$(UNAME)/tcl2c-qz -mn -o $@ common.tcl utils.tcl \
		$< scorer.tcl classl.tcl capastats.tcl \
		seating.tcl

webpage.tcl.c:	webpage.tcl $(UNAME)/tcl2c-qz 
	./$(UNAME)/tcl2c-qz -wb -o $@ $<

$(UNAME)/tcl2c-qz:
	$(CC) $(COPT) $(INC) -o $@ tcl2c-qz.c $(LIBPATH) $(LIB)

clean:
	rm -f $(UNAME)/*.o *[~#] $(UNAME)/quizzer $(UNAME)/quizzer.2 quizzer.tcl.c \
		$(UNAME)/grader $(UNAME)/grader.2 grader.tcl.c \
		$(UNAME)/manager $(UNAME)/manager.2 manager.tcl.c \
		$(UNAME)/webpage webpage.tcl.c \
		$(UNAME)/answers $(UNAME)/tcl2c-qz

managerclean:
	rm -f $(UNAME)/*.o *[~#] $(UNAME)/manager $(UNAME)/manager.2 manager.tcl.c

graderclean:
	rm -f $(UNAME)/*.o *[~#] $(UNAME)/grader $(UNAME)/grader.2 grader.tcl.c

quizzerclean:
	rm -f $(UNAME)/*.o *[~#] $(UNAME)/quizzer $(UNAME)/quizzer.2 quizzer.tcl.c 

$(UNAME)/%.o: %.c
	$(CC) $(COPT) $(INC) -c $< -o $@




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