#****************************************************************************
#                Makefile for RC Content Check daemon
#                -----------------------------------------
#
#    begin      : 2012/10/12
#    copyright  : (C) 2012 SolutionBox Inc.
#    author     : Service 1 Team
#    email      : svc1@solbox.com
#    version    : 3.2.0
#
#    CopyRight(C) 2005 SolutionBox Inc. All Rights reserved.
#    Redistribution and use in source and binary forms, with or with out
#    modification, are not permitted in outside of SolutionBox Inc.
#*****************************************************************************

# Program info
PROG_NAME		= rc_gcmd
REVISION		= 1370
BUILD_DATE		= `date +%Y%m%d%H%M%S`
PROG_VERSION	= 3.5.0.$(REVISION)-$(BUILD_DATE)
DEFAULT_CONFIG_FILE = /user/service/etc/rcts.conf


INSTALL_BIN  = /user/service/bin
INSTALL_CONF = /user/service/etc

# Compiler info
CC     = /usr/bin/g++

CFLAGS = -Wall -O3 -g -Wreturn-type -Wunused -Wuninitialized\
		 -Wparentheses -Wshadow -Wpointer-arith -Woverloaded-virtual\
		 -fno-rtti -D_THREAD_SAFE -D_REENTRANT -D_PTHREADS -Wno-unused  -Wno-non-virtual-dtor

LFLAGS = -lpthread 

# DEBUG or RELEASE Mode select
ifeq ($(DEBUG), yes)
PROG_VERSION = 3.3.0.$(REVISION)D-$(BUILD_DATE)

CFLAGS = -Wall -O0 -g -Wreturn-type -Wunused -Wuninitialized\
		 -Wparentheses -Wshadow -Wpointer-arith -Woverloaded-virtual\
		 -fno-rtti -D_THREAD_SAFE -D_REENTRANT -D_PTHREADS -Wno-unused  -Wno-non-virtual-dtor

DFLAGS = -D_DEBUG -DPROG_NAME=\"$(PROG_NAME)\" -DPROG_VERSION=\"$(PROG_VERSION)\" -DDEFAULT_CONFIG_FILE=\"$(DEFAULT_CONFIG_FILE)\"
else
DFLAGS = -DPROG_NAME=\"$(PROG_NAME)\" -DPROG_VERSION=\"$(PROG_VERSION)\" -DDEFAULT_CONFIG_FILE=\"$(DEFAULT_CONFIG_FILE)\"
endif


# Application Enviroment
APP = $(PROG_NAME) 

DIR_LIB     = -L../lib 

DIR_INCLUDE = -I./. -I../lib -I/user/db/pgsql/include
LIBS = ../lib/libInterCommon.a /user/db/pgsql/lib/libpq.a

OBJ = main.o GcmdConfig.o ProcessStatus.o Worker.o  \
	  Database.o DataQueue.o PreserveUpdater.o GetContentListThread.o \
	  CategorizeThread.o PhysicalDeleteThread.o FtsdSocketControl.o CompleteThread.o

############################

all:$(APP)
	sync

%.o: %.cpp
	$(CC) $(CFLAGS)  -o $@ -c $^ $(DFLAGS) $(DIR_INCLUDE) 
	
$(PROG_NAME): $(OBJ)
	$(CC) $(LFLAGS) -o $@ $^ $(DFLAGS) $(DIR_LIB) $(LIBS)

clean:
	-rm -f *.o core *.out *.log
	-rm -f $(APP)
	sync


install : $(APP)
	-cp $(APP) $(INSTALL_BIN)/$(APP)
	sync

# End of Makefile
