#
# Which system are we going to run on? Uncomment your choice.
#
# Use CFLAGS and LDFLAGS to define any non-standard options required by
# your system.
#

#
#	SunOs 4.x (either gcc or cc)
#
TARGET = sunos
CC = gcc -Wall
CFLAGS = $(INCLUDEPATH)
LDFLAGS = $(LIBPATH) 

#
#	Solaris 2.x with gcc
#
# TARGET = solaris
# CC = gcc -Wall
# CFLAGS = $(INCLUDEPATH)
# LDFLAGS = $(LIBPATH) -ldl -lnsl -lsocket -lelf -L/lib/ucblib -lucb

#
#	OSF/1
# TARGET = osf1
# CFLAGS = $(INCLUDEPATH)
# LDFLAGS = $(LIBPATH)

#
#	HP-UX 8.x/9.x
#
# TARGET = hpux
# CFLAGS = $(INCLUDEPATH)
# LDFLAGS = $(LIBPATH) -ldld


##############################################################################

#
# where are tcl/tk base libraries and include files?
#
INCLUDEPATH = -I/usr/local/include 
LIBPATH = -L/usr/local/lib

#
# if tcl and tk are kept separate, specify here their libs
#
#TCL_LIB_DETAIL = -L/usr/tools/tcl-7.1/lib
#TK_LIB_DETAIL = -L/usr/tools/tk-3.4/lib

#
# where are you going to install dtclsh and dwish?
#
BASEDIR = /usr/local
BINDIR = $(BASEDIR)/bin
MANDIR = $(BASEDIR)/man

#
# which sections do you want man pages to be installed into?
#
MAN1 = l
MAN3 = n

#
# which program and flags will you use to install software?
#  (hp-ux native install has a different behaviour, use rather "cp")
#
INSTALL = install -c
BINIFLAGS = -m 775
MANIFLAGS = -m 664

## End of Configurable Parameters #########################################


VERSION = 1.1

BINS = dtclsh dwish

CMDS = dwish dtclsh 
PROCS = load 

TCLOBJS = $(TARGET).o tclAppInit.o
TCLLIBS = $(TCL_LIB_DETAIL) -ltcl -lm

TKOBJS = $(TARGET).o tkAppInit.o
TKLIBS = $(TK_LIB_DETAIL) -ltk $(TCL_LIB_DETAIL) -ltcl -lX11 -lm

DIRS = demo

## Rules ##################################################################

all : $(BINS)

version.h :
	echo "#define VERSION \"$(REV)\"" > $@

dtclsh : $(TCLOBJS) 
	$(CC) -o $@ $(TCLOBJS) $(LDFLAGS) $(TCLLIBS)

dwish : $(TKOBJS) 
	$(CC) -o $@ $(TKOBJS) $(LDFLAGS) $(TKLIBS)

libdemo : 
	(cd demo; $(MAKE) INCLUDEPATH="$(INCLUDEPATH)" LIBPATH="$(LIBPATH)")

clean :
	rm -f $(BINS) version.h core *.o *~ *.err
	-for i in $(DIRS); \
		do (cd $$i; if [ -f Makefile ]; then make clean; fi); done

install : $(BINS)
	if [ ! -d $(BINDIR) ] ; then mkdir -p $(BINDIR); fi
	$(INSTALL) $(BINIFLAGS) $(BINS) $(BINDIR)
	if [ ! -d $(MANDIR)/man$(MAN1) ] ; \
		then mkdir -p $(MANDIR)/man$(MAN1) ; fi
	for i in $(CMDS) ; do \
		$(INSTALL) $(MANIFLAGS) doc/$$i.man $(MANDIR)/man$(MAN1)/$$i.$(MAN1); \
	done
	if [ ! -d $(MANDIR)/man$(MAN3) ] ; \
		then mkdir -p $(MANDIR)/man$(MAN3) ; fi
	for i in $(PROCS) ; do \
		$(INSTALL) $(MANIFLAGS) doc/$$i.man $(MANDIR)/man$(MAN3)/$$i.$(MAN3); \
	done

