#####################################################
# Makefile for XMGR4                                #
#####################################################
# You should not change anything here.              #
# Please read INSTALL file in the upper directory   #
#####################################################

TOP=..

include $(TOP)/Make.conf

.SUFFIXES: .c $(O)

GRBATCH=grbatch$(EXE)

CEPHES_LIB=-L$(TOP)/cephes -lcephes

CFLAGS=$(CFLAGS0) -I$(TOP) -I. -DGR_HOME=\"$(GR_HOME)\" $(GUI) $(XBAE) $(LIBHELP) $(EDITRES) $(HELPVIEWER) $(NETCDF) -DPRINT_CMD=\"$(PRINT_CMD)\"

LIBS=$(GUI_LIBS) $(CEPHES_LIB) $(NETCDF_LIBS) $(NOGUI_LIBS)


all: $(ACEGR)

include Make.common

xmgr: $(GROBJS) $(GUIOBJS)
	$(CC) $(CFLAGS) $(GROBJS)  $(GUIOBJS) -o xmgr $(LDFLAGS) $(LIBS)

gr: $(GROBJS)
	$(CC) $(CFLAGS) $(GROBJS) -o gr $(LDFLAGS) $(LIBS)


as274c$(O): as274c.h
binio$(O): defines.h globals.h
checkon$(O): globals.h
chersh$(O): hersh.h
compute$(O): globals.h
computils$(O): symdefs.h globals.h
compwin$(O): globals.h motifinc.h
comwin$(O): globals.h motifinc.h
defaults$(O): globals.h
draw$(O): symdefs.h draw.h externs.h symfunc.h
drawticks$(O): globals.h externs.h
drawwin$(O): globals.h motifinc.h
eblockwin$(O): globals.h motifinc.h
editpwin$(O): globals.h motifinc.h
events$(O): globals.h draw.h motifinc.h
files$(O): globals.h
fileswin$(O): globals.h motifinc.h
fit$(O): defines.h
framewin$(O): globals.h motifinc.h
getparms$(O): globals.h
graphu1$(O): globals.h draw.h
graphu2$(O): globals.h
graphwin$(O): globals.h motifinc.h
helpwin$(O): globals.h
hotwin$(O): globals.h motifinc.h
hp$(O): externs.h 
labelwin$(O): globals.h motifinc.h
leaf$(O): externs.h 
lmdif1$(O): globals.h f2c.h
locatewin$(O): globals.h motifinc.h
main$(O): globals.h patchlevel.h
mif$(O): externs.h 
misc$(O): globals.h
miscwin$(O): globals.h motifinc.h
monwin$(O): globals.h motifinc.h
motifutils$(O): defines.h globals.h motifinc.h
nonlwin$(O): globals.h motifinc.h
objutils$(O): globals.h
pagewin$(O): globals.h motifinc.h
params$(O): globals.h
pars$(O): globals.h
plotone$(O): globals.h symdefs.h draw.h
printwin$(O): globals.h motifinc.h 
ps$(O): externs.h defines.h patterns.h globals.h symfunc.h ps.h
ptswin$(O): globals.h motifinc.h
regionutils$(O): globals.h
regionwin$(O): globals.h motifinc.h
rotated$(O): rotated.h
setprops$(O): globals.h
setutils$(O): globals.h
setwin$(O): globals.h motifinc.h
statuswin$(O): patchlevel.h globals.h motifinc.h
strwin$(O): globals.h draw.h motifinc.h
symfunc$(O): draw.h symfunc.h
symwin$(O): globals.h motifinc.h
tickwin$(O): globals.h motifinc.h
worldwin$(O): globals.h motifinc.h
xmgr$(O): globals.h motifinc.h bitmaps.h
xvlib$(O): externs.h patterns.h rotated.h
globals.h: pars.h

pars.h: pars.c
	
pars.c: pars.yacc
	$(YACC) -dt pars.yacc
	mv y.tab.c pars.c
	mv y.tab.h pars.h

install: $(ACEGR)
	$(INSTALL) -d -m 755 $(GR_HOME)/bin
	$(INSTALL) -s -m 755 $(ACEGR) $(GR_HOME)/bin/$(ACEGR)
	cd $(GR_HOME)/bin; $(RM) $(GRBATCH); $(LN_S) $(ACEGR) $(GRBATCH)

tests: dummy

links: $(ACEGR)
	$(INSTALL) -d -m 755 $(PREFIX)/bin
	cd $(PREFIX)/bin; $(RM) $(ACEGR); $(LN_S) $(GR_HOME)/bin/$(ACEGR) $(ACEGR)
	cd $(PREFIX)/bin; $(RM) $(GRBATCH); $(LN_S) $(GR_HOME)/bin/$(ACEGR) $(GRBATCH)

clean: 
	$(RM) $(GROBJS) $(GUIOBJS)

distclean: 
	$(RM) $(ACEGR) $(GROBJS) $(GUIOBJS) \
	tags *.orig *.*gr .gdb_history
	
devclean: 
	$(RM) $(ACEGR) $(GROBJS) $(GUIOBJS) \
	tags *.orig *.*gr .gdb_history pars.c pars.h

tags: $(GRSRCS) $(GUISRCS)
	ctags $(GRSRCS) $(GUISRCS)
	
lint:
	lint  $(GRINCS) $(GUIINCS) $(GRSRCS) $(GUISRCS)

rcs: Makefile pars.yacc $(GRINCS) $(GUIINCS) $(GRSRCS) $(GUISRCS)
	ci -l $?
	touch rcs

dummy:
