##################################################################
#																 #
#	Top	section	taken from my 'tkConfig.sh'	or 'tclConfig.sh'	 #
#	generated by the tcl/tk	installation procedure				 #
#																 #
##################################################################

LIB_INSTALL_DIR = ${HOME}/lib
LIBS = 

TCL_DEFS= -DNO_STRERROR=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_TM_ZONE=1 -DHAVE_TIMEZONE_VAR=1 -Dstrtod=fixstrtod -DNO_UNION_WAIT=1 -DNEED_MATHERR=1 -Dvfork=fork 

# -DPIC -fpic
TCL_SHLIB_CFLAGS= 

TCL_SHLIB_LD=/usr/ccs/bin/ld -G -z text

TCL_SHLIB_LD_LIBS=${LIBS}

TCL_LD_SEARCH_FLAGS=-Wl,-R,${LIB_INSTALL_DIR}
TCL_RANLIB=ranlib
VERSION = 1.0

SHVERSION =

TK_XLIBDIR = /opt/X11R6
TK_XINCLUDES=-I${TK_XLIBDIR}/include
TK_XLIBSW = -L${TK_XLIBDIR}/lib -lX11

##############################################################################
# Items taken from "configMake.in"
# (this file is used for global parameters)
##############################################################################

# Base directory for entire package
CPPTCL_DIR = ${HOME}/Cpptcl

# In case you want to compile on multiple systems
ARCH = sun4
ARCHDEPDIR = ${HOME}
ARCHINDEPDIR = ${HOME}

# path for gcc, g++
GCCPATH = /Cygnus/B19/H-i386-cygwin32/bin
CC = gcc
CXX = gcc
GCC_INCLUDE = $(GCCPATH)/lib/g++-include/

# path for makedepend, requires a g++ include so it
# can find things like 'iostream.h' on my system
MAKEDEPEND = /network/software/packages/X/bin/makedepend 

# ranlib
RANLIB = ${TCL_RANLIB}

ARLIB_BUILD = ar q

SHLIB_BUILD = gcc -shared -fpic
#${TCL_SHLIB_LD}

SHLIB_CFLAGS = ${TCL_SHLIB_CFLAGS}

SHLIB_SUFFIX=.so
# You may want to remove the last four libraries from this line
SHLIBS = ${TCL_SHLIB_LD_LIBS} ${TCL_LD_SEARCH_FLAGS} \
	-lg++ -liostream -liberty -lgcc

LD_FLAGS=-L${HOME}/lib -L${HOME}/lib/itcl -L${TK_XLIBDIR}/lib \
	-L${GCCPATH}/lib 

#	-L${GCCPATH}/lib/gcc-lib/sparc-sun-solaris2.5/2.7.2/

# Remove '-Wall' and '-g' if desired.
CFLAGS = ${TCL_SHLIB_CFLAGS} -Wall -g -DNDEBUG -O4 \
	-DDOUBLE ${TCL_DEFS}

CXXFLAGS =  -fno-implicit-templates
PLPLOT_INCLUDE = $(HOME)/plplot/include

EVOXLIBDIR = ${ARCHDEPDIR}/lib






##############################################################################
#
# Makefile for 'Demos' part of EvoX under Unix.
#
##############################################################################

EVOX_INCLUDES = -I${CPPTCL_DIR}/Cpptcl/Headers \
	-I${CPPTCL_DIR}/Cpptclextra/Headers

INCLUDES =  -I$(HOME)/include -I$(TCL_INCLUDE) \
	-I$(GCC_INCLUDE) $(EVOX_INCLUDES)
		
LDFLAGS = -L${TCL_LIBS} -L$(HOME)/lib  \
	-L$(GCCPATH)/lib -L${EVOXLIBDIR} -L${LD_FLAGS}

LIBS =  -lcpptclextra -lcpptcl -ltcl -lg++ -lm 

all: Demoone Demotwo Demofour Tutorial Demothree

Demoone: Demoone.o ../libDemoone.so
	@echo 'Done Demoone'

Demotwo: Demotwo.o ../libDemotwo.so
	@echo 'Done Demotwo'

Demothree: Demothree.o ../libDemothree.so
	@echo 'Done Demothree'

Demofour: Demofour.o ../libDemofour.so
	@echo 'Done Demofour'

Tutorial: cpxTutorial.o cpxTutorial_tcl.o ../libCpxtutorial.so
	@echo 'Done Tutorial'

../libCpxtutorial.so: cpxTutorial.o cpxTutorial_tcl.o
	rm -f ../lib$*.so
	@echo 'Building '$*
	${SHLIB_BUILD} -o ../lib$*.so -h lib$*.so ${TCL_LD_SEARCH_FLAGS} \
		 cpxTutorial.o cpxTutorial_tcl.o ${LDFLAGS} ${SHLIBS}
	@echo ""

%.o : %.cc		
	@echo 'Compiling '$*
	${CXX} ${CXXFLAGS}  ${CFLAGS} ${INCLUDES} -c $*.cc -o $*.o 

%.o : %.c
	@echo 'Compiling '$*
	${CC} ${CFLAGS} ${INCLUDES} -c $*.c -o $*.o 

../lib%.so: %.o
	rm -f ../lib$*.so
	@echo 'Building '$*
	${SHLIB_BUILD} -o ../lib$*.so -h lib$*.so ${TCL_LD_SEARCH_FLAGS} \
		 $*.o ${LDFLAGS} ${SHLIBS}
	@echo ""

install:
	@echo 'No install procedure yet'

clean:
	@echo 'No clean procedure yet'	

##############################################################################
# Items taken from "configMake.end"
# (this file is used for global commands)
##############################################################################

# below are various common commands

installShared: 
	mv ../${SHAREDLIB} ${EVOXLIBDIR}/${SHAREDLIB}

installStatic: 
	mv ../${STATICLIB} ${EVOXLIBDIR}/${STATICLIB}
	ranlib ${EVOXLIBDIR}/${STATICLIB}


# DO NOT DELETE THIS LINE -- make depend depends on it.
