######################################################################### 
#									# 
#   File: scorpion/src/idlbrowse/Makefile 
#				 					# 
#   Copyright (C) 1991 Marco Chierotti
#									# 
#   The Scorpion System is free software in the public domain; you can  # 
#   redistribute it and/or modify it as you wish. We ask that you 	# 
#   retain credits referencing the University of Arizona and that you	# 
#   identify any changes you make.					# 
#									# 
#   Report problems to scorpion-project@cs.arizona.edu			# 
#   Direct all inquiries to:	The Scorpion Project			# 
#				Department of Computer Science		# 
#				Gould-Simpson Building			# 
#				University of Arizona			# 
#				Tucson, AZ 85721			# 
#				U.S.A.					# 
#									# 
#   Revision Log:							# 
#	$Log:$ 
#									# 
#   Edit Log:								# 
#									# 
######################################################################### 

#Imported variables
SHELL=/bin/sh
BINDIR=/usr/local/scorpion/bin
LIBDIR=/usr/local/scorpion/lib
INCDIR=/usr/local/scorpion/include
MISCDIR=/usr/local/scorpion/misc
SPECSDIR=/usr/local/scorpion/src/specs
CC=cc
IDLC=$(BINDIR)/idlc
PC=pc
CFLAGS=-I$(INCDIR)
IDLCFLAGS=-v
IDLBROWSEFILE=/tmp/IDLbrowse.temp
PFLAGS=
CP=cp
MV=mv
RM=rm -f
LEX=lex
MAKE=make
YACC=yacc

LINT=/usr/bin/lint
LINTFLAGS=-abx

UTILITYVARS='CC=$(CC)' 'IDLC=$(IDLC)' 'PC=$(PC)' 'CFLAGS=$(CFLAGS)' \
              'IDLCFLAGS=$(IDLCFLAGS)' 'PFLAGS=$(PFLAGS)' 'CP=$(CP)' \
              'MV=$(MV)' 'RM=$(RM)' 'LEX=$(LEX)' 'MAKE=$(MAKE)' \
              'YACC=$(YACC)'
CI=ci
CO=co -l

# LOCAL VARIABLES
LINTINC=-I$(INCDIR)
LINTLIB=$(LIBDIR)/lintlib/llib-llibidl.ln
LINTFLAGSLOC=-DIDLBROWSEFILE=\"$(IDLBROWSEFILE)\"
CANDIR=$(SPECSDIR)/Candle
LIB=$(LIBDIR)/libidl.a
OBJ=main.o command.o windows.o help.o candle.o global.o idlbrowse.o signal.o
LINTSRC=main.c command.c windows.c help.c candle.c global.c idlbrowse.c signal.c
LINTLIB2=curses
IDLCFLAGSLOC=-I$(CANDIR) -h -k -nc
###################################################

System: idlbrowse

idlbrowse: $(OBJ) $(LIB)
	$(CC) $(CFLAGS) $(OBJ) $(LIB) -lm -lcurses -ltermcap -o idlbrowse

idlbrowse.h: idlbrowse.idl $(CANDIR)/UNCCandle.idl \
		$(CANDIR)/Candle.idl \
		$(CANDIR)/CandleRep.idl $(CANDIR)/CandleSemantic.idl \
		$(CANDIR)/CandleSyntax.idl
	$(IDLC) $(IDLCFLAGS) $(IDLCFLAGSLOC) -C idlbrowse.Cdl idlbrowse.idl

.c.o:
	$(CC) -c $(CFLAGS) $*.c

candle.o : candle.c global.h idlbrowse.h candle.h 
command.o : command.c global.h command.h windows.h candle.h help.h 
global.o : global.c global.h 
help.o : help.c global.h help.h 
	$(CC) -c $(CFLAGS) -DHELP_FILE_NAME=\"$(MISCDIR)/idlbrowse.hlp\" $*.c
idlbrowse.o : idlbrowse.c idlbrowse.h 
main.o : main.c global.h candle.h help.h command.h 
signal.o: signal.c
	$(CC) -c $(CFLAGS) -DIDLBROWSEFILE=\"$(IDLBROWSEFILE)\" $*.c
windows.o : windows.c global.h windows.h 

Clean:
	$(RM) *.o a.out core *.list

Install:
	$(RM) $(BINDEST)/idlbrowse
	$(INSTALL) idlbrowse $(BINDEST)

Lint:
	echo "*** IGNORE warnings from /usr/include/curses.h ***"
	echo "*** IGNORE warnings about 2nd argument of stty"
	$(LINT) $(LINTFLAGS) $(LINTFLAGSLOC) $(LINTINC) $(LINTLIB) \
		-l$(LINTLIB2) $(LINTSRC)
