214 lines
5.9 KiB
Makefile
214 lines
5.9 KiB
Makefile
|
############################
|
||
|
# Makefile for Nagios
|
||
|
#
|
||
|
# Last Modified: 12-05-2008
|
||
|
############################
|
||
|
|
||
|
|
||
|
# Source code directories
|
||
|
SRC_COMMON=../common
|
||
|
SRC_INCLUDE=../include
|
||
|
SRC_XDATA=../xdata
|
||
|
|
||
|
CC=@CC@
|
||
|
CFLAGS=-Wall @CFLAGS@ @DEFS@ -DNSCORE
|
||
|
|
||
|
# Compiler flags for use with gprof
|
||
|
#CFLAGS=-pg -DHAVE_CONFIG_H -DNSCORE
|
||
|
|
||
|
# Compiler flags for use with Valgrind
|
||
|
#CFLAGS=-O0 -g -DHAVE_CONFIG_H -DNSCORE
|
||
|
|
||
|
# Compiler flags for optimization (overrides default)
|
||
|
#CFLAGS=-O3 -Wall -fno-strict-aliasing -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -DHAVE_CONFIG_H -DNSCORE
|
||
|
|
||
|
# Compiler flags for optimization (complements default)
|
||
|
#CFLAGS_WARN=-Wall -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs
|
||
|
#CFLAGS_DEBUG=-ggdb3 -g3
|
||
|
#CFLAGS_GPROF=-pg
|
||
|
#CFLAGS+=$(CFLAGS_WARN) $(CFLAGS_DEBUG) $(CFLAGS_GPROF)
|
||
|
|
||
|
LDFLAGS=@LDFLAGS@
|
||
|
LIBS=@LIBS@
|
||
|
|
||
|
prefix=@prefix@
|
||
|
exec_prefix=@exec_prefix@
|
||
|
LOGDIR=@localstatedir@
|
||
|
CFGDIR=@sysconfdir@
|
||
|
BINDIR=@bindir@
|
||
|
CGIDIR=@sbindir@
|
||
|
HTMLDIR=@datarootdir@
|
||
|
INSTALL=@INSTALL@
|
||
|
INSTALL_OPTS=@INSTALL_OPTS@
|
||
|
COMMAND_OPTS=@COMMAND_OPTS@
|
||
|
STRIP=@STRIP@
|
||
|
|
||
|
CGIURL=@cgiurl@
|
||
|
HTMURL=@htmurl@
|
||
|
|
||
|
MATHLIBS=-lm
|
||
|
PERLLIBS=@PERLLIBS@
|
||
|
PERLXSI_O=@PERLXSI_O@
|
||
|
SOCKETLIBS=@SOCKETLIBS@
|
||
|
THREADLIBS=@THREADLIBS@
|
||
|
BROKERLIBS=@BROKERLIBS@
|
||
|
|
||
|
BROKER_LDFLAGS=@BROKER_LDFLAGS@
|
||
|
|
||
|
CP=@CP@
|
||
|
|
||
|
# External data I/O code and headers
|
||
|
XSDC=@XSDC@
|
||
|
XSDH=@XSDH@
|
||
|
XCDC=@XCDC@
|
||
|
XCDH=@XCDH@
|
||
|
XRDC=@XRDC@
|
||
|
XRDH=@XRDH@
|
||
|
XODC=@XODC@
|
||
|
XODH=@XODH@
|
||
|
XPDC=@XPDC@
|
||
|
XPDH=@XPDH@
|
||
|
XDDC=@XDDC@
|
||
|
XDDH=@XDDH@
|
||
|
|
||
|
# Extra base code
|
||
|
BASEEXTRALIBS=@BASEEXTRALIBS@
|
||
|
|
||
|
# Generated automatically from configure script
|
||
|
SNPRINTF_O=@SNPRINTF_O@
|
||
|
BROKER_O=@BROKER_O@
|
||
|
BROKER_H=@BROKER_H@
|
||
|
|
||
|
# Object data
|
||
|
#ODATALIBS=$(SRC_COMMON)/objects.c $(SRC_XDATA)/$(XODC)
|
||
|
#ODATAHDRS=$(SRC_INCLUDE)/objects.h $(SRC_XDATA)/$(XODH)
|
||
|
ODATALIBS=objects-base.o xobjects-base.o
|
||
|
ODATAHDRS=
|
||
|
ODATADEPS=$(ODATALIBS)
|
||
|
|
||
|
# Retention data
|
||
|
#RDATALIBS=sretention.o $(SRC_XDATA)/$(XRDC)
|
||
|
#RDATAHDRS=$(SRC_INCLUDE)/sretention.h $(SRC_XDATA)/$(XRDH)
|
||
|
RDATALIBS=retention-base.o xretention-base.o
|
||
|
RDATAHDRS=
|
||
|
RDATADEPS=$(RDATALIBS)
|
||
|
|
||
|
# Comment data
|
||
|
#CDATALIBS=$(SRC_COMMON)/comments.c $(SRC_XDATA)/$(XCDC)
|
||
|
#CDATAHDRS=$(SRC_INCLUDE)/comments.h $(SRC_XDATA)/$(XCDH)
|
||
|
CDATALIBS=comments-base.o xcomments-base.o
|
||
|
CDATAHDRS=
|
||
|
CDATADEPS=$(CDATALIBS)
|
||
|
|
||
|
# Status data
|
||
|
#SDATALIBS=$(SRC_COMMON)/statusdata.c $(SRC_XDATA)/$(XSDC)
|
||
|
#SDATAHDRS=$(SRC_INCLUDE)/statusdata.h $(SRC_XDATA)/$(XSDH)
|
||
|
SDATALIBS=statusdata-base.o xstatusdata-base.o
|
||
|
SDATAHDRS=
|
||
|
SDATADEPS=$(SDATALIBS)
|
||
|
|
||
|
# Performance data
|
||
|
#PDATALIBS=perfdata.o $(SRC_XDATA)/$(XPDC)
|
||
|
#PDATAHDRS=$(SRC_INCLUDE)/perfdata.h $(SRC_XDATA)/$(XPDH)
|
||
|
PDATALIBS=perfdata-base.o xperfdata-base.o
|
||
|
PDATAHDRS=
|
||
|
PDATADEPS=$(PDATALIBS)
|
||
|
|
||
|
# Downtime data
|
||
|
#DDATALIBS=$(SRC_COMMON)/downtime.c $(SRC_XDATA)/$(XDDC)
|
||
|
#DDATAHDRS=$(SRC_INCLUDE)/downtime.h $(SRC_XDATA)/$(XDDH)
|
||
|
DDATALIBS=downtime-base.o xdowntime-base.o
|
||
|
DDATAHDRS=
|
||
|
DDATADEPS=$(DDATALIBS)
|
||
|
|
||
|
|
||
|
OBJS=$(BROKER_O) $(SRC_COMMON)/shared.o checks.o config.o commands.o events.o flapping.o logging.o macros-base.o netutils.o notifications.o sehandlers.o skiplist.o utils.o $(RDATALIBS) $(CDATALIBS) $(ODATALIBS) $(SDATALIBS) $(PDATALIBS) $(DDATALIBS) $(BASEEXTRALIBS) $(SNPRINTF_O) $(PERLXSI_O)
|
||
|
OBJDEPS=$(ODATADEPS) $(ODATADEPS) $(RDATADEPS) $(CDATADEPS) $(SDATADEPS) $(PDATADEPS) $(DDATADEPS) $(BROKER_H)
|
||
|
|
||
|
all: nagios nagiostats
|
||
|
|
||
|
|
||
|
######## REQUIRED FILES ##########
|
||
|
|
||
|
macros-base.o: $(SRC_COMMON)/macros.c $(SRC_INCLUDE)/macros.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_COMMON)/macros.c
|
||
|
|
||
|
skiplist.o: $(SRC_COMMON)/skiplist.c $(SRC_INCLUDE)/skiplist.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_COMMON)/skiplist.c
|
||
|
|
||
|
objects-base.o: $(SRC_COMMON)/objects.c $(SRC_INCLUDE)/objects.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_COMMON)/objects.c
|
||
|
|
||
|
xobjects-base.o: $(SRC_XDATA)/$(XODC) $(SRC_XDATA)/$(XODH)
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_XDATA)/$(XODC)
|
||
|
|
||
|
statusdata-base.o: $(SRC_COMMON)/statusdata.c $(SRC_INCLUDE)/statusdata.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_COMMON)/statusdata.c
|
||
|
|
||
|
xstatusdata-base.o: $(SRC_XDATA)/$(XSDC) $(SRC_XDATA)/$(XSDH)
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_XDATA)/$(XSDC)
|
||
|
|
||
|
comments-base.o: $(SRC_COMMON)/comments.c $(SRC_INCLUDE)/comments.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_COMMON)/comments.c
|
||
|
|
||
|
xcomments-base.o: $(SRC_XDATA)/$(XCDC) $(SRC_XDATA)/$(XCDH)
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_XDATA)/$(XCDC)
|
||
|
|
||
|
downtime-base.o: $(SRC_COMMON)/downtime.c $(SRC_INCLUDE)/downtime.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_COMMON)/downtime.c
|
||
|
|
||
|
xdowntime-base.o: $(SRC_XDATA)/$(XDDC) $(SRC_XDATA)/$(XDDH)
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_XDATA)/$(XDDC)
|
||
|
|
||
|
perfdata-base.o: perfdata.c $(SRC_INCLUDE)/perfdata.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ perfdata.c
|
||
|
|
||
|
xperfdata-base.o: $(SRC_XDATA)/$(XPDC) $(SRC_XDATA)/$(XPDH)
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_XDATA)/$(XPDC)
|
||
|
|
||
|
retention-base.o: sretention.c $(SRC_INCLUDE)/sretention.h
|
||
|
$(CC) $(CFLAGS) -c -o $@ sretention.c
|
||
|
|
||
|
xretention-base.o: $(SRC_XDATA)/$(XRDC) $(SRC_XDATA)/$(XRDH)
|
||
|
$(CC) $(CFLAGS) -c -o $@ $(SRC_XDATA)/$(XRDC)
|
||
|
|
||
|
$(SRC_COMMON)/shared.o: $(SRC_COMMON)/shared.c
|
||
|
$(CC) $(CFLAGS) -c -o $@ $<
|
||
|
|
||
|
|
||
|
########## NAGIOS ##########
|
||
|
|
||
|
nagios: nagios.c $(OBJS) $(OBJDEPS) $(SRC_INCLUDE)/nagios.h $(SRC_INCLUDE)/locations.h
|
||
|
$(CC) $(CFLAGS) -o $@ nagios.c $(OBJS) $(BROKER_LDFLAGS) $(LDFLAGS) $(PERLLIBS) $(MATHLIBS) $(SOCKETLIBS) $(THREADLIBS) $(BROKERLIBS) $(LIBS)
|
||
|
|
||
|
nagiostats: nagiostats.c $(SRC_INCLUDE)/locations.h
|
||
|
$(CC) $(CFLAGS) -o $@ nagiostats.c $(LDFLAGS) $(MATHLIBS) $(LIBS)
|
||
|
|
||
|
$(OBJS): $(SRC_INCLUDE)/locations.h
|
||
|
|
||
|
clean:
|
||
|
rm -f nagios nagiostats core *.o gmon.out
|
||
|
rm -f *~ *.*~
|
||
|
|
||
|
distclean: clean
|
||
|
rm -f perlxsi.c
|
||
|
rm -f Makefile
|
||
|
|
||
|
devclean: distclean
|
||
|
|
||
|
install:
|
||
|
$(MAKE) install-basic
|
||
|
$(MAKE) strip-post-install
|
||
|
|
||
|
install-unstripped:
|
||
|
$(MAKE) install-basic
|
||
|
|
||
|
install-basic:
|
||
|
$(INSTALL) -m 775 $(INSTALL_OPTS) -d $(DESTDIR)$(BINDIR)
|
||
|
$(INSTALL) -m 774 $(INSTALL_OPTS) @nagios_name@ $(DESTDIR)$(BINDIR)
|
||
|
$(INSTALL) -m 774 $(INSTALL_OPTS) @nagiostats_name@ $(DESTDIR)$(BINDIR)
|
||
|
|
||
|
strip-post-install:
|
||
|
$(STRIP) $(DESTDIR)$(BINDIR)/@nagios_name@
|
||
|
$(STRIP) $(DESTDIR)$(BINDIR)/@nagiostats_name@
|