######################################################## # The next few fields may need modification for different # revisions of Tcl/Tk ######################################################## # Set the TCLLIB and TKLIB to point to the .a files for the Tcl/Tk # you'll be linking with. # TCLLIB=/usr/local/lib/libtcl8.4.a # TKLIB=/usr/local/lib/libtk8.4.a TCLLIB=/usr/local/lib/libtcl8.5.a TKLIB=/usr/local/lib/libtk8.5.a # TCL_INIT, TK_INIT, TCL_LIB_INIT point to directories with Tcl # initialization scripts TCL_INIT=/usr/local/lib/tcl8.5 /usr/local/lib/tcl8 TK_INIT=/usr/local/lib/tk8.5 TCL_LIB_INIT=/usr/local/ActiveTcl/lib/tcllib1.7 # TCL_INIT=/usr/local/lib/tcl8.4 # TK_INIT=/usr/local/lib/tk8.4 # BZDIR is the bzip directory. BZDIR=../bzip2-1.0.3 ######################################################## # Lines below this should not need to be modified. ######################################################## BZTCLDIR = ../bzTcl MEMFILEDIR=../memFile LIBS = libbztclLite.so libbz2.a libbztclLite.a LIBSRC= ${BZTCLDIR}/libbztclLite.so ../bzip2-1.0.3/libbz2.a \ ${BZTCLDIR}/libbztclLite.a OBJS = ${BZDIR}/crctable.o ${BZDIR}/blocksort.o \ ${BZDIR}/decompress.o \ ${BZDIR}/huffman.o ${BZDIR}/bzlib.o ${BZDIR}/randtable.o \ ${BZDIR}/compress.o ../bzTcl/bztclLiteInit.o ../bzTcl/bztclLiteCmd.o \ ../memFile/memFileCmd.o ../memFile/memFile.o FLAGS=-I../memFile -I../bzTcl all: memTcl memTk memTcl: libtclsh.a main.c Makefile cc -static -g -o memTcl ${FLAGS} main.c libtclsh.a \ -lm -ldl memTk: main.c Makefile libwish.a cc -static -DUSE_TK -g -o memTk ${FLAGS} main.c libwish.a \ -L/usr/X11R6/lib -lX11 -lXss -lXext -ldl -lieee -lm -ldl -lz -lpthread libtclsh.a: ${OBJS} Makefile tclFileData.o memCreateTclInterp.o cp $(TCLLIB) libtclsh.a chmod 666 libtclsh.a ar r libtclsh.a ${OBJS} tclFileData.o memCreateTclInterp.o ranlib libtclsh.a go.sh: Makefile echo "\ mkdir tmp_tcl_lib; \ cd tmp_tcl_lib; \ ar x $(TCLLIB); \ cd ..; \ " >go.sh chmod 755 go.sh libwish.a: ${OBJS} Makefile tkFileData.o memCreateTkInterp.o go.sh cp $(TKLIB) libwish.a chmod 666 libwish.a rm -rf tmp_tcl_lib ./go.sh ar r libwish.a tmp_tcl_lib/* ar r libwish.a ${OBJS} tkFileData.o memCreateTkInterp.o ranlib libwish.a testFTN: testFTN.f95 libmemfile.a testMain.c Makefile ftcl.a g95 -g -o testFTN testFTN.f95 ftcl.a libmemfile.a libbz2.a \ $(TCLLIB) -lm -ldl libmemfile.a: ../memFile/libmemfile.a cp ../memFile/libmemfile.a . tclFileData.o: tclFileData.c cc -g -c tclFileData.c ${FLAGS} tkFileData.o: tkFileData.c cc -g -c tkFileData.c ${FLAGS} memCreateTclInterp.o: memCreateInterp.c sed s/_TIMESTAMP_/"`date`"/g tmp.c cc -g -o memCreateTclInterp.o -c tmp.c ${FLAGS} memCreateTkInterp.o: memCreateInterp.c sed s/_TIMESTAMP_/"`date`"/g tmp.c cc -g -o memCreateTkInterp.o -c -DUSE_TK tmp.c ${FLAGS} NOTCLLIB_tclFileData.c: /usr/local/lib memMain.tcl ${LIBS} tclsh makeCStructBZ.tcl tclFileData.c /usr/local/lib/tcl8.5/init.tcl \ ./memMain.tcl tkFileData.c: /usr/local/lib memMain.tcl $(LIBS) tclsh makeCStructBZ.tcl tkFileData.c $(TCL_INIT) $(TK_INIT) \ ./memMain.tcl tclFileData.c: /usr/local/lib memMain.tcl $(LIBS) tclsh makeCStructBZ.tcl tclFileData.c $(TCL_INIT) $(TCL_LIB_INIT) \ ./memMain.tcl clean: rm -rf *.o *.a *.so memTcl a.out testMain memTk tmp* tmp_tcl_lib go.sh veryclean: rm -rf *.o *.a tclFileData.* *.so memTcl a.out testMain memTk \ tkFileData.* tmp_tcl_lib go.sh tmp* ${LIBS}: make -C ${MEMFILEDIR} cp ${LIBSRC} .