# Compiler and linker Configuration
CC       	= gcc
LINK.c		= gcc	
INCLUDES 	= -I. -I../include -I/usr/local/include
MYCFLAGS	= -W -g -MMD
CFLAGS   	= $(MYCFLAGS)
CFLAGS         += -DDEBUG -D_REENTRANT
CFLAGS         += $(INCLUDES)
LFLAGS          = -L/usr/local/lib
LIBS	       += -lthread -lnsl 
RPCGENFLAGS     = -N -C -A 	

log_man_main.o:CFLAGS += -Wall

LGM = log_man

SOURCES = $(LGM)_svc.c $(LGM)_xdr.c $(LGM)_svc_proc.c $(LGM)_main.c $(LGM)_private.c

OBJS = $(SOURCES:.c=.o)
DEPENDENCIES = $(SOURCES:.c=.d)

all:	$(LGM)

$(LGM): $(OBJS)
	$(CC) -o $(LGM) $^ $(LFLAGS) $(LIBS)

$(LGM)_svc.o : $(LGM)_svc.c ../include/$(LGM).h

$(LGM)_main.o : $(LGM)_main.c ../include/$(LGM).h

#
# General	
#
%: %.o
	$(CC) -o $@ $^ $(LFLAGS) $(LIBS)

%.d: %.c
	touch $@

%.h: %.x
	rpcgen $(RPCGENFLAGS) -h -o $@ $^

%_xdr.c: ../include/%.x
	rpcgen $(RPCGENFLAGS) -c -o $@ $^

%_clnt.c: ../include/%.x
	rpcgen $(RPCGENFLAGS) -l -o $@ $^

%_svc.c: ../include/%.x
	rpcgen $(RPCGENFLAGS) -m -o $@ $^

#
# Cleanup
#
clean:
	rm -f *.o $(LGM) ../include/$(TM).h \
		  ../include/$(LGM).h *.d $(LGM)_svc.c $(LGM)_xdr.c

really_clean: clean
	rm -f *.d $(LGM)_svc.c $(LGM)_xdr.c 

include $(DEPENDENCIES)
