nagios4/contrib/Makefile.in

119 lines
3.1 KiB
Makefile

###############################
# Makefile for contrib software
#
# Last Modified: 05-19-2008
###############################
CC=@CC@
CFLAGS=-I.. @CFLAGS@ @DEFS@
LDFLAGS=@LDFLAGS@ @LIBS@
# Source code directories
SRC_INCLUDE=../include
SRC_COMMON=../common
SRC_CGI=../cgi
SRC_LIB=../lib
# Generated automatically from configure script
SNPRINTF_O=@SNPRINTF_O@
INSTALL=@INSTALL@
INSTALL_OPTS=@INSTALL_OPTS@
prefix=@prefix@
exec_prefix=@exec_prefix@
CGIDIR=@cgibindir@
BINDIR=@bindir@
CGIS=traceroute.cgi daemonchk.cgi
UTILS=convertcfg
ALL=$(CGIS) $(UTILS)
CGI_C=$(SRC_CGI)/getcgi.c
CGI_O=$(SRC_CGI)/getcgi.o $(SNPRINTF_O)
CGI_H=$(SRC_INCLUDE)/getcgi.h
COMMON_H=$(SRC_INCLUDE)/config.h $(SRC_INCLUDE)/common.h $(SRC_INCLUDE)/locations.h
##############################################################################
# standard targets (all, clean, distclean, devclean, install)
all: $(ALL)
clean:
rm -f convertcfg daemonchk.cgi core *.o
rm -f */*/*~
rm -f */*~
rm -f *~
rm -rf rpmbuild *.rpm
distclean: clean
rm -f Makefile
devclean: distclean
install:
$(INSTALL) -m 775 $(INSTALL_OPTS) -d $(DESTDIR)$(CGIDIR)
$(INSTALL) -m 775 $(INSTALL_OPTS) -d $(DESTDIR)$(BINDIR)
for f in $(CGIS); do $(INSTALL) -m 775 $(INSTALL_OPTS) $$f $(DESTDIR)$(CGIDIR); done
for f in $(UTILS); do $(INSTALL) -m 775 $(INSTALL_OPTS) $$f $(DESTDIR)$(BINDIR); done
##############################################################################
# rules and dependencies for actual target programs
$(SRC_LIB)/libnagios.a:
make -C $(SRC_LIB) libnagios.a
daemonchk.cgi: daemonchk.o $(CGI_O) $(CGI_H) $(COMMON_H) $(SRC_LIB)/libnagios.a
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $< $(CGI_O) $(SRC_LIB)/libnagios.a
daemonchk.o: daemonchk.c
$(CC) $(CFLAGS) -c -o $@ $< -I$(SRC_INCLUDE)
nagios-worker: nagios-worker.c
$(CC) $(CFLAGS) -o $@ $< $(LDFLAGS) $(LIBS) $(SRC_LIB)/libnagios.a
##############################################################################
# dependencies
$(CGI_O): $(CGI_C)
cd $(SRC_CGI) && make $(CGI_O)
##############################################################################
# implicit rules
%.cgi : %.c
$(CC) $(CFLAGS) $(LDFLAGS) $< $(CGI_O) -o $@
##############################################################################
# rpm making automation for CentOS/RHEL.
ARCH ?= $(shell uname -m)
ifeq ($(ARCH),x86_64)
RPM_ARCH := x86_64
else
ifeq ($(ARCH),i686)
RPM_ARCH := i386
else
ifeq ($(ARCH),aarch64)
RPM_ARCH := aarch64
else
$(error Unknown arch "$(ARCH)".)
endif
endif
endif
rpm:
# create nagios tar ball.
@(cd ..;rm -f nagios-@VERSION@)
@(cd ..;ln -s . nagios-@VERSION@)
@(cd ..;tar zhcf nagios-@VERSION@.tar.gz --exclude nagios-@VERSION@/nagios-@VERSION@.tar.gz --exclude nagios-@VERSION@/nagios-@VERSION@ --exclude RCS --exclude CVS --exclude build-* --exclude *~ --exclude .git* nagios-@VERSION@/)
@(cd ..;rm -f nagios-@VERSION@)
# build the rpm using rpmbuild from ./rmbuild as topdir
@rm -rf rpmbuild && mkdir -p rpmbuild/SOURCES
@cp ../nagios-@VERSION@.tar.gz rpmbuild/SOURCES/nagios-@VERSION@.tar.gz
@rpmbuild -ba --define "_topdir ${PWD}/rpmbuild" ../nagios.spec
@mv rpmbuild/RPMS/$(RPM_ARCH)/*.rpm .
@ls -l *.rpm