##############################################################
#  Makefile for PowerSoft                                    #
#                                                            #
#  To modify for your configuration, add or remove the #     #
#                                                            #
##############################################################
# -b i686-pc-linux-gnu isn't used at now

#Your compiler. If gcc doesn't work, try CC
CC = gcc


PLATFORM = 'Linux'
#DEBUG = -D_USE_TRACE -D_TRACE_MSG2
DEBUGSTAT = -D_USE_DBGF
C_OPTS = -Wall -D_GNU_SOURCE $(DEBUG) $(DEBUGSTAT)

O_MAIN_FILES = powersoft.o utils.o strman.o conf.o comm.o pslock.o ups.o threads.o fifo.o
O_STAT_FILES = psstat.o utils.o strman.o conf.o threads.o fifo.o
O_CGI_FILES = psnet.o utils.o strman.o conf.o fifo.o
LOADLIBS = -lpanel -lform -lmenu -lncurses

all:	powersoft psstat psnet

clean:
	rm -f *.o
	rm -f powersoft
	rm -f psstat
	rm -f psnet.cgi

install:	powersoft psstat
	./install

powersoft:	$(O_MAIN_FILES)
	$(CC) $(C_OPTS) $(O_MAIN_FILES) -o powersoft
	@strip powersoft

psstat:		$(O_STAT_FILES)
	$(CC) $(C_OPTS) $(LOADLIBS) $(O_STAT_FILES) -o psstat
	@strip psstat

psnet:		$(O_CGI_FILES)
	$(CC) $(C_OPTS) $(O_CGI_FILES) -o psnet.cgi

powersoft.o:	powersoft.c utils.h strman.h conf.h comm.h pslock.h ups.h threads.h fifo.h
	$(CC) $(C_OPTS) -c powersoft.c

psstat.o:	psstat.c utils.h strman.h conf.h threads.h fifo.h
	$(CC) $(C_OPTS) -c psstat.c

psnet.o:	psnet.c utils.h strman.h conf.h fifo.h
	$(CC) $(C_OPTS) -c psnet.c

utils.o:	utils.c
	$(CC) $(C_OPTS) -c utils.c

strman.o:	strman.c
	$(CC) $(C_OPTS) -c strman.c

conf.o:		conf.c strman.h defs.h
	$(CC) $(C_OPTS) -c conf.c

comm.o:		comm.c defs.h
	$(CC) $(C_OPTS) -c comm.c

pslock.o:	pslock.c defs.h
	$(CC) $(C_OPTS) -c pslock.c

ups.o:		ups.c defs.h
	$(CC) $(C_OPTS) -c ups.c

threads.o:	threads.c defs.h
	$(CC) $(C_OPTS) -c threads.c

fifo.o:		fifo.c defs.h
	$(CC) $(C_OPTS) -c fifo.c
