DRDE/AusRegCliever/Makefile

157 lines
4.5 KiB
Makefile

LOCATION=DEBIAN_7
ARTKENABLED=132
#LOCATION=DEBIAN_6
#LOCATION=OSX_10_8
#
# Add other locations and move target differences into the macros as needed,
# setup for my primary development and testing hosts.
#
CC=g++
Cc=gcc
BOSTLIB=-L/usr/lib/boost
BOSINCL=-I/usr/include/boost
LOG4LIB=-L/usr/lib
CLIENT=drde
ifeq ($(LOCATION),DEBIAN_7)
ifneq ($(ARTKENABLED),0)
ARTKLIB=-L/home/jdaugherty/clients/reg.de/git/ACTK1_0/lib
ARTKINCL=-I/home/jdaugherty/clients/reg.de/git/ACTK1_0
endif
endif
ifeq ($(LOCATION),DEBIAN_6)
ARTKLIB=-L/home/jdaugherty/dnseppus/ACTK1_0/lib
ARTKINCL=-I/home/jdaugherty/dnseppus/ACTK1_0
endif
ifeq ($(LOCATION),OSX_10_8)
ARTKLIB=-L/Users/juand/dnseppus/ACTK1_0/lib
ARTKINCL=-I/Users/juand/dnseppus/ACTK1_0
endif
ifeq ($(LOCATION),DEBIAN_7)
ifneq ($(ARTKENABLED),0)
XALAN_LIB_DIR = /usr/local/lib
XALAN_LIB = xalan-c
XALAN_INC_DIR = /usr/local/include/xalanc
XERCES_LIB_DIR = /usr/local/lib/
XERCES_LIB = xerces-c
XERCES_INC_DIR = /usr/local/include/xercesc/
endif
endif
ifeq ($(LOCATION),DEBIAN_6)
XALAN_LIB_DIR = /usr/lib/
XALAN_LIB = xalan-c
XALAN_INC_DIR = /usr/include/xalanc/
XERCES_LIB_DIR = /usr/lib/
XERCES_LIB = xerces-c
XERCES_INC_DIR = /usr/include/xercesc/
endif
ifeq ($(LOCATION),OSX_10_8)
XALAN_LIB_DIR = /opt/local/lib/
XALAN_LIB = xalan-c
XALAN_INC_DIR = /opt/local/include/xalanc/
XERCES_LIB_DIR = /opt/local/lib/
XERCES_LIB = xerces-c
XERCES_INC_DIR = /opt/local/include/xercesc/
endif
SLIBS= -L/usr/lib $(BOSTLIB) $(LOG4LIB) $(ARTKLIB) -l boost_system -l boost_thread -l log4cpp -l ACTK1_0 -l jsoncpp
DLIBS= -L/usr/lib $(BOSTLIB) $(LOG4LIB) $(ARTKLIB) -l boost_system -l boost_thread -l log4cpp
SINCL= -I include -I /usr/include/log4cpp -I /usr/include/jsoncpp $(BOSINCL)
CFLAGS= -DCURRENT_DEBUG=1000 -ggdb3 -DARTKENABLED=$(ARTKENABLED) -DAC_MD
#
# ---------- Should not need to change below
#
CLIBS= -L$(USRLIB)
CLFLAGS= -Wall -Wundef -Wpointer-arith -Wshadow \
-Wcast-align -Winline -Wmissing-declarations -Wredundant-decls \
-Wmissing-prototypes -Wnested-externs \
-Wstrict-prototypes -Waggregate-return -Wno-implicit
ACOBJS= build/cliever.o build/mdLogger.o build/masterDaemonConfig.o build/masterDaemon.o \
build/mdHost.o build/mdState.o build/mdAusReg.o build/mdJSON.o
MDOBJS= build/md.o build/mdLogger.o build/masterDaemonConfig.o build/masterDaemon.o \
build/mdHost.o build/mdState.o
ARTKDEPS = -L$(ARTK_LIB_DIR) -lACTK1_0 \
-L$(XALAN_LIB_DIR) -lxalan-c -lxalanMsg\
-L$(XERCES_LIB_DIR) -lxerces-c \
-lssl \
-lrt
# --- targets
#
all: cliever md
cliever: build/$(CLIENT)-cliever
md: build/ausreg-md
.c.o:
$(Cc) -c $(CLFLAGS) -o $<
build/mdLogger.o: server/mdLogger.cpp include/mdLogger.h
$(CC) $(CFLAGS) server/mdLogger.cpp -c -o build/mdLogger.o $(SINCL) $(ARTKINCL)
build/cliever.o: server/cliever-md.cpp include/cliever-md.h
$(CC) $(CFLAGS) server/cliever-md.cpp -c -o build/cliever.o $(SINCL) $(ARTKINCL)
build/md.o: server/cliever-md.cpp include/cliever-md.h
$(CC) $(CFLAGS) server/cliever-md.cpp -c -o build/md.o $(SINCL)
build/masterDaemonConfig.o: server/masterDaemonConfig.cpp include/masterDaemonConfig.h
$(CC) $(CFLAGS) server/masterDaemonConfig.cpp -c -o build/masterDaemonConfig.o $(SINCL) $(ARTKINCL)
build/mdHost.o: server/mdHost.cpp include/mdHost.h
$(CC) $(CFLAGS) server/mdHost.cpp -c -o build/mdHost.o $(SINCL) $(ARTKINCL)
build/mdState.o: server/mdState.cpp include/mdState.h
$(CC) $(CFLAGS) server/mdState.cpp -c -o build/mdState.o $(SINCL) $(ARTKINCL)
build/masterDaemon.o: server/masterDaemon.cpp include/masterDaemon.h
$(CC) $(CFLAGS) server/masterDaemon.cpp -c -o build/masterDaemon.o $(SINCL) $(ARTKINCL)
build/mdJSON.o: server/mdJSON.cpp include/mdJSON.hpp include/RegistryXOTE.h
$(CC) $(CFLAGS) server/mdJSON.cpp -c -o build/mdJSON.o $(SINCL) $(ARTKINCL)
build/mdAusReg.o: server/mdAusReg.cpp include/ausRegTK.h
$(CC) $(CFLAGS) server/mdAusReg.cpp -c -o build/mdAusReg.o $(SINCL) $(ARTKINCL) $(ARTKLIB) -l libACTK1_0.so
build/ausreg-md: $(MDOBJS)
$(CC) $(CFLAGS) -o build/ausreg-md $(SINCL) $(LIBS) $(MDOBJS) $(DLIBS)
build/drde-cliever: $(ACOBJS)
$(CC) $(CFLAGS) -o build/drde-cliever $(SINCL) $(LIBS) $(ACOBJS) $(SLIBS) $(ARTKDEPS)
doxygen/index.html: etc/doxygen.config
doxygen etc/doxygen.config
#distclean:
# clrbak
# rm -rf build
# rm -rf doxygen
# mkdir doxygen
# mkdir build
# touch etc/doxygen.config
clean:
clrbak
find ./build -name "*.o" -print | perl -ne "print;chop;unlink"
find ./build -name "*.rpo" -print | perl -ne "print;chop;unlink"
rm build/$(CLIENT)-cliever
rm build/ausreg-md