TCLVER = 8.4 TCLDIR = ../tcl8.4.6 TKDIR = ../tk8.4.6 BZDIR = ../bzip2-1.0.3 # Include Don Libes debugger support # Debug= -DINCLUDE_DEBUG # DebugFiles = Dbg.o # No Don Libes debugger support Debug= DebugFiles = # Use the STUBS LIBRARY: # Stubs = -DUSE_TCL_STUBS # Tcllibfile = -ltclstub$(TCLVER) # No stubs support Stubs = -DUSE_TCL_STUBS Tcllibfile = -ltcl$(TCLVER) # Symbols or optimize? Symbols = -g -fPIC # Optimize # Symbols = -O # Include files at: Includes = -I. BZOBJS = blocksort.o bzlib.o compress.o huffman.o crctable.o \ randtable.o decompress.o # BZLIBS = libbz2.a libbz2.so BZLIBS = libbz2.a SRCOBJS = $(BZDIR)/blocksort.o $(BZDIR)/bzlib.o $(BZDIR)/compress.o \ $(BZDIR)/huffman.o $(BZDIR)/crctable.o $(BZDIR)/bzlib.h \ $(BZDIR)/randtable.o $(BZDIR)/decompress.o #SRCLIBS= $(BZDIR)/libbz2.a $(BZDIR)/libbz2.so SRCLIBS= $(BZDIR)/libbz2.a CFLAGS = $(Symbols) $(Stubs) $(Debug) $(Includes) TCLINCL = -I$(TCLDIR)/generic -I$(TCLDIR)/unix TCLLIB = -L$(TCLDIR)/unix TKINCL = -I$(TKDIR)/generic -I$(TKDIR)/unix TKLIB = -L$(TKDIR)/unix -L/usr/X11/lib # For Solaris LIBS = $(TCLLIB) -ltcl$(TCLVER) -ldl -lgcc -lm -lposix4 # For Linux LIBS = $(TCLLIB) $(Tcllibfile) -ldl -lgcc -lm all: libbztclLite.so libbztclLite.a echo "DONE" winAll: libbz2.a bzip2 bzip2recover test libbzcrit.dll libbztclLite.so: bztclLiteCmd.o bztclLiteInit.o $(BZOBJS) gcc -shared bztclLiteCmd.o bztclLiteInit.o $(BZOBJS) \ -o libbztclLite.so $(LIBS) libbztclLite.a: bztclLiteCmd.o bztclLiteInit.o $(BZOBJS) $(BZLIBS) cp libbz2.a libbztclLite.a ar r libbztclLite.a bztclLiteCmd.o bztclLiteInit.o ranlib libbztclLite.a LDlibbztclLite.so: bztclLiteCmd.o bztclLiteInit.o $(DebugFiles) /usr/ccs/bin/ld -G -z text bztclLiteCmd.o bztclLiteInit.o $(DebugFiles) \ -o libdtl8.4.so \ -R /usr/local/lib:/opt/tcl/lib:/usr/openwin/lib \ -L/opt/TCL/tcl8.4.6/unix $(TCLLIB) $(Tcllibfile) \ -lsocket -lnsl -ldl -lm -lc bztclLitewish: bztclLiteCmd.o tkbztclLiteAppInit.o bztclLiteInit.o gcc -g -o bztclLitewish bztclLiteCmd.o tkbztclLiteAppInit.o bztclLiteInit.o \ $(CFLAGS) $(TKLIB) $(TCLLIB) -ltk$(TCLVER) -ltcl$(TCLVER) -lX11 -lXt -ldl tclbztclLiteAppInit.o: bztclLiteAppInit.c gcc -c -g bztclLiteAppInit.c $(CFLAGS) $(TCLINCL) \ -o tclbztclLiteAppInit.o tkbztclLiteAppInit.o: bztclLiteAppInit.c gcc -c -g bztclLiteAppInit.c $(CFLAGS) -DTK=1 $(TKINCL) $(TCLINCL) \ -o tkbztclLiteAppInit.o bztclLiteCmd.o: bztclLiteCmd.c bztclLiteInt.h gcc -c -g bztclLiteCmd.c $(CFLAGS) $(TCLINCL) bztclLiteInit.o: bztclLiteInit.c bztclLiteInt.h gcc -c -g bztclLiteInit.c $(CFLAGS) $(TCLINCL) clean: rm -rf *.o bztclLitetcl bztclLitewish libbztclLite.so *.a *.so \ lib test.bz2 init2 init3.txt test tmp* Dbg.o: Dbg.c echo "Unpack tcl-debug.tar, configure and make, and copy Dbg.o here" echo "If no Debug - (#ifdef'd out), delete the Dbg.o dependency" false ${BZOBJS}: ${SRCOBJS} make -C ${BZDIR} cp ${SRCOBJS} . ${BZLIBS}: make -C ${BZDIR} cp ${SRCLIBS} . libbzcrit.so: bzcrit.tcl bzReadCrit.c libbz2.a # /usr/local/lib/tcl8.4/critlib/critbind libbzcrit bzcrit.tcl tclkit /usr/local/bin/critcl.kit -pkg bzcrit bzcrit.tcl mv lib/bzcrit/Linux-x86/*.*so libbzcrit.so libbzcrit.dll: bzcrit.tcl bzReadCrit.c libbz2.a critcl.kit -pkg bzcrit bzcrit.tcl mv lib/bzcrit/Windows-x86/*dll .