2 # NagCollect -- Nagios Data Collector for Passive Checks
3 # Copyright (c)2009-2011 Alexander Barton, alex@barton.de
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 # Please read the file COPYING, README and AUTHORS for more information.
12 all: server client plugins
15 find . -name .DS_Store -delete
16 rm -rf client/lib/nagios
21 @echo " ** Use make targets 'install-client', 'install-server', 'install-plugins'"
22 @echo " ** or 'install-all' to install client, server and or plugin components!"
24 install-all: install-server install-client install-plugins
26 install-server: server
27 install -d -o nagios -g nagios -m 750 /var/lib/nagios3/collect
28 [ -r /etc/nagios3/system.cfg ] || \
29 install -D -o nagios -g root -m 640 -p \
30 server/etc/system.cfg /etc/nagios3/system.cfg
31 [ -r /etc/nagios3/nagcollect.keys ] || \
32 install -D -o nagios -g www-data -m 640 -p \
33 server/etc/nagcollect.keys /etc/nagios3/nagcollect.keys
34 install -D -o root -g root -m 755 -p \
35 server/bin/nagios-submit-host /usr/local/sbin/nagios-submit-host
36 install -D -o root -g root -m 755 -p \
37 server/bin/nagios-submit-service /usr/local/sbin/nagios-submit-service
38 install -D -o root -g root -m 644 -p \
39 server/web/nagcollect.php /var/www/nagcollect.php
40 [ -r contrib/Makefile.`uname` ] \
41 && make -f contrib/Makefile.`uname` "install-server" || true
43 install-client: client
44 install -d -o 0 -g 0 -m 755 /usr/local/sbin
45 install -c -o 0 -g 0 -m 755 -p \
46 client/bin/nagcollect /usr/local/sbin/nagcollect
47 install -c -o 0 -g 0 -m 755 -p \
48 client/bin/nagcollectreset /usr/local/sbin/nagcollectreset
49 install -d -o 0 -g 0 -m 755 /usr/local/etc
50 [ -r /usr/local/etc/nagcollect.conf ] || \
51 install -o 0 -g 0 -m 600 -p \
52 client/etc/nagcollect.conf /usr/local/etc/nagcollect.conf
53 install -d -o 0 -g 0 -m 755 /usr/local/lib/nagcollect
54 (cd client/lib/tests; find . -name '*.tst' | \
56 install -d -o 0 -g 0 -m 755 `dirname "/usr/local/lib/nagcollect/$$x"`; \
57 install -o 0 -g 0 -m 644 "$$x" "/usr/local/lib/nagcollect/$$x"; \
60 [ -r contrib/Makefile.`uname` ] \
61 && make -f contrib/Makefile.`uname` "install-client" || true
63 install-plugins: plugins
64 install -d -o 0 -g 0 -m 755 /usr/local/lib/nagios/plugins
65 (cd client/lib/nagios/plugins; find . -name 'check_nc_*' | \
67 install -o 0 -g 0 -m 755 "$$x" "/usr/local/lib/nagios/plugins/$$x"; \
74 rel=`grep "^NagCollect " ChangeLog|awk "{print \\\$$3 }"|head -n 1`; \
75 dir=`basename $${PWD}` \
77 && COPYFILE_DISABLE=true tar cvzf "NagCollect-R$${rel}.tar.gz" \
78 --exclude .git "$${dir}"
87 mkdir -p client/lib/nagios/plugins
88 (cd client/lib/tests; (ls -1 *.tst; ls -1 `uname`/*.tst) | \
90 name="check_nc_`basename "$$x" | cut -d'.' -f1 | tr '[A-Z]' '[a-z]'`"; \
91 dest="../nagios/plugins/$$name"; \
92 echo " * $$x -> $$name"; \
93 cat "../wrapper/wrapper-top.sh" >"$$dest"; \
94 cat "$$x" >>"$$dest"; \
95 cat "../wrapper/wrapper-bottom.sh" >>"$$dest"; \
101 rel=`grep "^NagCollect " ChangeLog|awk "{print \\\$$3 }"|head -n 1`; \
102 rm -rf "../NagCollect-R$${rel}.mpkg" \
104 --doc "contrib/NagCollect.pmdoc" \
105 --out "../NagCollect-R$${rel}.mpkg"
108 rel=`grep "^NagCollect " ChangeLog|awk "{print \\\$$3 }"|head -n 1`; \
109 rm -f "../NagCollect-R$${rel}.dmg" \
110 && hdiutil create -srcfolder \
111 "../NagCollect-R$${rel}.mpkg" "../NagCollect-R$${rel}.dmg"
113 nagcollecttestscripts:
114 COPYFILE_DISABLE=true tar -czvf nagcollecttestscripts.tgz \
115 -C client/lib/tests .
117 .PHONY: all install install-all install-server install-client \
118 install-plugins clean distclean check dist distcheck server client \
119 plugins osxpkg osxdmg nagcollecttestscripts