#
#	Makefile for TNSDrive Utilities
#

# Use Main Makefile to overwrite this options
CC	= gcc
CFLAGS	= -g -I.. -I../include -DEXTERN_APPS \
	-DHAVE_FTS_H -DHAVE_DIRENT_H -DHAVE_REGEXP_H \
	-DHAVE_KVM_GETPROCS -DHAVE_MMAP -DHAVE_FLOCK -DHAVE_CFMAKERAW \
	-DHAVE_GETLOADAVG -DHAVE_RANDOM -DHAVE_SNPRINTF -DHAVE_STRCASECMP
LIBS	= -L../lib -ltns -lkvm -lcompat

TNSPASSWD	= tnspasswd
TNSPASSWD_C	= tnspasswd.c
TNSPASSWD_O	= $(TNSPASSWD_C:.c=.o)

ONBOARD		= onboard
ONBOARD_C	= onboard.c io.c ipc.c userlist.c
ONBOARD_O	= $(ONBOARD_C:.c=.o)

BBSMAIL		= bbsmail
BBSMAIL_C	= bbsmail.c
BBSMAIL_O	= $(BBSMAIL_C:.c=.o)

FULLIDX		= fullidx
FULLIDX_C	= fullidx.c
FULLIDX_O	= $(FULLIDX_C:.c=.o)

SETUSER		= setuser
SETUSER_C	= setuser.c
SETUSER_O	= $(SETUSER_C:.c=.o)

BBSGROUP	= tnsgroup
BBSGROUP_C	= tnsgroup.c
BBSGROUP_O	= $(BBSGROUP_C:.c=.o)

MSGPACK		= msgpack
MSGPACK_C	= msgpack.c
MSGPACK_O	= $(MSGPACK_C:.c=.o)

PROG	= $(TNSPASSWD) $(ONBOARD) $(BBSMAIL) $(FULLIDX) $(SETUSER) \
	$(BBSGROUP) $(MSGPACK)
SRCS	= $(TNSPASSWD_C) $(ONBOARD_C) $(BBSMAIL_C) $(FULLIDX_C) $(SETUSER_C) \
	$(BBSGROUP_C) $(MSGPACK_C)
OBJS	= $(TNSPASSWD_O) $(ONBOARD_O) $(BBSMAIL_O) $(FULLIDX_O) $(SETUSER_O) \
	$(BBSGROUP_O) $(MSGPACK_O)

all: $(PROG)

$(TNSPASSWD): $(TNSPASSWD_O)
	$(CC) $(TNSPASSWD_O) $(LIBS) -o $(TNSPASSWD)

$(ONBOARD): $(ONBOARD_O)
	$(CC) $(ONBOARD_O) $(LIBS) -o $(ONBOARD)

$(BBSMAIL): $(BBSMAIL_O)
	$(CC) $(BBSMAIL_O) $(LIBS) -o $(BBSMAIL)

$(FULLIDX): $(FULLIDX_O)
	$(CC) $(FULLIDX_O) $(LIBS) -o $(FULLIDX)

$(SETUSER): $(SETUSER_O)
	$(CC) $(SETUSER_O) $(LIBS) -o $(SETUSER)

$(BBSGROUP): $(BBSGROUP_O)
	$(CC) $(BBSGROUP_O) $(LIBS) -o $(BBSGROUP)

$(MSGPACK): $(MSGPACK_O)
	$(CC) $(MSGPACK_O) $(LIBS) -o $(MSGPACK)

clean:
	@rm -f $(OBJS) $(PROG) .depend

depend:
	@mkdep $(CFLAGS) $(SRCS)

copy:
	@strip $(PROG)
	@cp $(PROG) ../bin
