#########################################################################
#
#       MAKEFILE FOR STAND-ALONE XT CODE APPLICATION.  
#
#       EXECUTABLE      is the name of the executable to be created 
#       MAIN            is the .c file containing your main() function 
#       INTERFACES      is a list of the generated C code files
#       APP_OBJS        is a (possibly empty) list of the object code
#                       files that form the non-interface portion of
#                       your application
#
#       In the first three statements, the variables on the right 
#	of the equal sign will be replaced with their corresponding
#       values when the makefile is automatically generated.
#
#       This template is used for makefiles which do not reference 
#       the Ux runtime library.
#
#  	$Date: 2006-12-14 17:23:23 -0500 (Thu, 14 Dec 2006) $ 		$Revision: 18081 $
#########################################################################
CUR_REL_PATH := "iris/window"

include ../../config.mk

CFLAGS_ALL	= -D${MACH_OS} -DMOTIF -DSYSV -DXT_CODE -DXOPEN_CATALOG \
                  -I./  -I../../include -I${IRIS_ROOT}/include

CFLAGS		= -c ${DEBUGFLAG} ${C_OPT}  ${CFLAGS_ALL}
CXXFLAGS        = -c ${DEBUGFLAG} ${CC_OPT} ${CFLAGS_ALL}
CCFLAGS = ${CXXFLAGS}

LDFLAGS        =  -L./ -L../../libs/lib -L${IRIS_ROOT}/libs/lib ${LPATH_X11}

LANGUAGE        = C++
EXECUTABLE	= window
MAIN		= window.C

INTERFACES =	windowXParams.C \
		windowApplShell.C \
		cursorTool.C \
		cursorToolDiag.C \
		trackTool.C \
		trackToolDiag.C \
		animationTool.C \
		animationToolDiag.C \
		slideShowTool.C \
		slideShowToolDiag.C \
		forecastTool.C \
		forecastToolDiag.C \
		xSectTool.C \
		xSectToolDiag.C \
		setLonLatTool.C \
		setLonLatToolDiag.C \
		productTool.C \
		productToolDiag.C \
		productTimeTool.C \
		productTimeToolDiag.C \
		xSectWindow.C \
		xSectWindowDiag.C \
		siteTool.C \
		siteToolDiag.C \
		liveTool.C \
		liveToolDiag.C \
		exportTool.C \
		exportToolDiag.C \
		multiLayerTool.C \
		multiLayerToolDiag.C \
		privilegeTool.C \
		privilegeToolDiag.C \
		warnTool.C \
		warnToolDiag.C \
		errorDiag.C \
		errorToolDiag.C

APPL_SRCS       = 
APPL_OBJS       = ${APPL_SRCS:.C=.o}

MISC_CC_SRCS =	windowParams.C \
		windowDraw.C \
		imageReceive.C \
		imageMagAndRedraw.C \
		irisServer.C \
		irisServerDecode.C \
		cursorFunc.C \
		trackFunc.C \
		loopFunc.C \
		liveFunc.C \
		slideShowFunc.C \
                catchWindowDiag.C \
                gageWindowDiag.C \
		CCAccessFunc.C
MISC_CC_OBJS    = ${MISC_CC_SRCS:.C=.o}

MISC_C_SRCS     = rpcFunc.c \
                  dpyOptToolDiag.c
MISC_C_OBJS     = ${MISC_C_SRCS:.c=.o}

WINDOW_C_SRCS = $(MAIN) $(INTERFACES) $(APPL_SRCS) $(MISC_CC_SRCS) $(MISC_C_SRCS)
WINDOW_C_OBJS = $(MAIN:.C=.o) $(INTERFACES:.C=.o) \
                $(APPL_OBJS) $(MISC_CC_OBJS) $(MISC_C_OBJS)

CLNT_RECV              = clntRecv
CLNT_RECV_C_SRCS       = clntRecv.c
CLNT_RECV_C_OBJS       = ${CLNT_RECV_C_SRCS:.c=.o}

CLNT_RECV_IMAGE         = clntRecvImage
CLNT_RECV_IMAGE_C_SRCS  = clntRecvImage.c
CLNT_RECV_IMAGE_C_OBJS  = ${CLNT_RECV_IMAGE_C_SRCS:.c=.o}


# nsl library required on HPUX 11.00 for rpc's 

LLIBS_WIN       =  -luxsig -lxsig -lbxutils -ltvsubs -lXpm -lXm -lX11 -lXt \
                   -lvtv -lmisc -lfileformats -lconfig\
                   ${LTIFF} ${LJPEG} -ldspi -lhimath -luser \
		   -lm ${LNSL} ${LSEARCH_BSD}

MKDEPEND_CSRCS = ${WINDOW_C_SRCS} ${CLNT_RECV_C_SRCS} ${CLNT_RECV_IMAGE_C_SRCS}

all: $(EXECUTABLE) $(CLNT_RECV) ${EXECUTABLE}.rf.tmp

depend: makefile.d

makefile.d: ${MKDEPEND_CSRCS}
	touch makefile.d
	makedepend -fmakefile.d -- ${CFLAGS} -- ${MKDEPEND_CSRCS}

$(EXECUTABLE): $(WINDOW_C_OBJS)
	$(CXX) $(LD_OPT) $^ $(LDFLAGS) $(LLIBS_WIN) -o $@

$(CLNT_RECV): $(CLNT_RECV_C_OBJS)
	$(CXX) $(LD_OPT) $^ $(LDFLAGS) -lmisc -luser ${LNSL} ${LSEARCH_BSD} -o $@

$(CLNT_RECV_IMAGE): $(CLNT_RECV_IMAGE_C_OBJS)
	$(CXX) $(LD_OPT) $^ $(LDFLAGS) ${LNSL} ${LSEARCH_BSD} -o $@

${EXECUTABLE}.rf.tmp: window.rf dpyOptToolDiag.rf
	cat $^ > $@

install: all ${IRIS_BIN} ${IRIS_APP_DEFAULTS}
	install -m 0775 -o ${IRIS_USER} -g ${IRIS_GROUP} -s ${EXECUTABLE} $(CLNT_RECV) ${IRIS_BIN}
	install -m 0664 -o ${IRIS_USER} -g ${IRIS_GROUP} ${EXECUTABLE}.rf.tmp ${IRIS_APP_DEFAULTS}/${EXECUTABLE}
	install -m 0664 ${EXECUTABLE}.rf.tmp ${SYS_APP_DEFAULTS}/${EXECUTABLE}

uninstall:
	rm -f ${SYS_APP_DEFAULTS}/${EXECUTABLE} ${IRIS_APP_DEFAULTS}/${EXECUTABLE}
	cd  ${IRIS_BIN}; rm -f ${EXECUTABLE} $(CLNT_RECV)

cleanexe:
	rm -f $(EXECUTABLE) $(CLNT_RECV) $(CLNT_RECV_IMAGE) core

clean: cleanexe
	rm -f *.o *~ *.rf.tmp *.d *.d.bak

install_src: ${INST_SRC_DIR}
	install -m 0664 -o ${IRIS_USER} -g ${IRIS_GROUP} Makefile *.[cCh] *.uil *.rf ${INST_SRC_DIR}

uninstall_src:
	rm -rf ${INST_SRC_DIR}

-include makefile.d
