include ../../Configure
HOME    =       $(ROOT)/src/uniphot
CONFIG  =	$(ROOT)/config
PROGRAM =       uniphot

BIN	=	$(HOME)/bin
LIB	=	$(HOME)/lib
INC	= 	$(HOME)/include
SRC	=	$(HOME)/src
MAN	=	$(HOME)/doc
DESTBIN	=	$(BINDIR)
DESTLIB	=	$(LIBDIR)
DESTINC	=	$(INCDIR)
DESTMAN	=	$(MANDIR)

#
CFLAGS	=	-I$(INC) -I$(INCDIR) $(INCDIRS)
LFLAGS	=	-L$(LIB) -L$(LIBDIR) $(LIBDIRS) -ldvo -lFITS -lohana $(LIBFLAGS) 

UNIPHOT = \
$(SRC)/uniphot.$(ARCH).o	    \
$(SRC)/initialize.$(ARCH).o	    \
$(SRC)/ConfigInit.$(ARCH).o	    \
$(SRC)/args.$(ARCH).o		    \
$(SRC)/liststats.$(ARCH).o	    \
$(SRC)/load_images.$(ARCH).o	    \
$(SRC)/subset_images.$(ARCH).o	    \
$(SRC)/find_image_tgroups.$(ARCH).o \
$(SRC)/find_image_sgroups.$(ARCH).o \
$(SRC)/fit_groups.$(ARCH).o	    \
$(SRC)/update.$(ARCH).o		    \
$(SRC)/update_catalog.$(ARCH).o	    \
$(SRC)/SetSignals.$(ARCH).o	    \
$(SRC)/Shutdown.$(ARCH).o	    \
$(SRC)/sort.$(ARCH).o

OBJ = $(UNIPHOT)

default: $(PROGRAM)

$(UNIPHOT): $(INC)/uniphot.h

# dependancy rules for binary code ##########################
$(PROGRAM): $(BIN)/$(PROGRAM).$(ARCH)

$(BIN)/$(PROGRAM).$(ARCH): $(OBJ)
	@if [ ! -d $(BIN) ]; then mkdir -p $(BIN); fi
	$(CC) $(OBJ) -o $(BIN)/$(PROGRAM).$(ARCH) $(LFLAGS)

install: $(DESTBIN)/$(PROGRAM)

$(DESTBIN)/$(PROGRAM): $(BIN)/$(PROGRAM).$(ARCH)
	@if [ ! -d $(DESTBIN) ]; then mkdir -p $(DESTBIN); fi
	rm -f $(DESTBIN)/$(PROGRAM)
	cp $(BIN)/$(PROGRAM).$(ARCH) $(DESTBIN)/$(PROGRAM)

# utilities #################################################
clean:	
	rm -f $(BIN)/*.$(ARCH)
	rm -f `find . -name "*.o"`
	rm -f `find . -name "*~"`
	rm -f `find . -name "#*"`

.PRECIOUS: %.$(ARCH).o
.PRECIOUS: $(BIN)/%.$(ARCH)

%.$(ARCH).o : %.c
	$(CC) $(CFLAGS) -c $< -o $@
