CFLAGS = -O2 -pipe -Wcomment -Wall
SHELL = /bin/sh
PREFIX=/usr
CC=gcc
RM=rm -f
STRIP=strip
INSTALL=install

############################################################
OBJECTS		= main.o asyncio.o config.o util.o status.o
PLUGINS		= http.o banner.o
BIN		= lvsmon
INCLUDE		= ../include
GINCLUDE	= $(INCLUDE)/lvsmon.h
############################################################

TARGET=all
CFLAGS+=-I$(INCLUDE)

all: $(BIN) 

$(BIN):	$(OBJECTS) $(PLUGINS)
	$(CC) $(CFLAGS) -o $(BIN) $(OBJECTS) $(PLUGINS) $(LIBS)

install: all
	$(INSTALL) --strip -m 755 $(BIN) $(PREFIX)/bin/$(BIN)
	
uninstall:
	$(RM) $(PREFIX)/bin/$(BIN)

clean: 
	-$(RM) core *~
	-$(RM) $(BIN)
	-$(RM) $(OBJECTS) $(PLUGINS)

############################################################
main.o:		main.c		$(INCLUDE)/main.h	$(GINCLUDE)
asyncio.o:	asyncio.c	$(INCLUDE)/asyncio.h	$(GINCLUDE)
config.o:	config.c	$(INCLUDE)/config.h	$(GINCLUDE)
status.o:	status.c	$(INCLUDE)/status.h	$(GINCLUDE)
util.o:		util.c		$(INCLUDE)/util.h	$(GINCLUDE)

http.o:		http.c		$(INCLUDE)/main.h	$(GINCLUDE)
banner.o:	banner.c	$(INCLUDE)/banner.h	$(GINCLUDE)
############################################################
