DiskErrors.tst: dont't assume "encoder error" as disk I/O error
[nagcollect.git] / Makefile
1 #
2 # NagCollect -- Nagios Data Collector for Passive Checks
3 # Copyright (c)2009-2010 Alexander Barton, alex@barton.de
4 #
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.
10 #
11
12 all:
13
14 clean:
15         find . -name .DS_Store -delete
16
17 distclean: clean
18
19 install:
20         @echo " ** Use make targets 'install-client', 'install-server' and 'install-all'"
21         @echo " ** to install client and/or server components!"
22
23 install-all: install-server install-client
24
25 install-server:
26         install -d -o nagios -g nagios -m 750 /var/lib/nagios3/collect
27         [ -r /etc/nagios3/system.cfg ] || \
28          install -D -o nagios -g root -m 640 -p \
29                 server/etc/system.cfg /etc/nagios3/system.cfg
30         [ -r /etc/nagios3/nagcollect.keys ] || \
31          install -D -o nagios -g www-data -m 640 -p \
32                 server/etc/nagcollect.keys /etc/nagios3/nagcollect.keys
33         install -D -o root -g root -m 755 -p \
34                 server/bin/nagios-submit-host /usr/local/sbin/nagios-submit-host
35         install -D -o root -g root -m 755 -p \
36                 server/bin/nagios-submit-service /usr/local/sbin/nagios-submit-service
37         install -D -o root -g root -m 644 -p \
38                 server/web/nagcollect.php /var/www/nagcollect.php
39         [ -r contrib/Makefile.`uname` ] \
40                 && make -f contrib/Makefile.`uname` "install-server" || true
41
42 install-client:
43         install -d -o 0 -g 0 -m 755 /usr/local/sbin
44         install -c -o 0 -g 0 -m 755 -p \
45                 client/bin/nagcollect /usr/local/sbin/nagcollect
46         install -c -o 0 -g 0 -m 755 -p \
47                 client/bin/nagcollectreset /usr/local/sbin/nagcollectreset
48         install -d -o 0 -g 0 -m 755 /usr/local/etc
49         [ -r /usr/local/etc/nagcollect.conf ] || \
50          install -o 0 -g 0 -m 600 -p \
51                 client/etc/nagcollect.conf /usr/local/etc/nagcollect.conf
52         install -d -o 0 -g 0 -m 755 /usr/local/lib/nagcollect
53         (cd client/lib/tests; find . -name '*.tst' | \
54          while read x; do \
55           install -d -o 0 -g 0 -m 755 `dirname "/usr/local/lib/nagcollect/$$x"`; \
56           install -o 0 -g 0 -m 644 "$$x" "/usr/local/lib/nagcollect/$$x"; \
57          done \
58         )
59         [ -r contrib/Makefile.`uname` ] \
60                 && make -f contrib/Makefile.`uname` "install-client" || true
61
62 check:
63
64 dist: distclean
65         rel=`grep "^NagCollect " ChangeLog|awk "{print \\\$$3 }"|head -n 1`; \
66          dir=`basename $${PWD}` \
67          && cd .. \
68          && COPYFILE_DISABLE=true tar cvzf "NagCollect-R$${rel}.tar.gz" \
69              --exclude .git "$${dir}"
70
71 distcheck: check dist
72
73 osxpkg:
74         rel=`grep "^NagCollect " ChangeLog|awk "{print \\\$$3 }"|head -n 1`; \
75          rm -rf "../NagCollect-R$${rel}.mpkg" \
76          && packagemaker \
77              --doc "contrib/NagCollect.pmdoc" \
78              --out "../NagCollect-R$${rel}.mpkg"
79
80 osxdmg: osxpkg
81         rel=`grep "^NagCollect " ChangeLog|awk "{print \\\$$3 }"|head -n 1`; \
82          rm -f "../NagCollect-R$${rel}.dmg" \
83          && hdiutil create -srcfolder \
84              "../NagCollect-R$${rel}.mpkg" "../NagCollect-R$${rel}.dmg"
85
86 nagcollecttestscripts:
87         COPYFILE_DISABLE=true tar -czvf nagcollecttestscripts.tgz \
88          -C client/lib/tests .
89
90 .PHONY: all install install-all install-server install-client \
91         clean distclean check dist distcheck nagcollecttestscripts
92
93 # -eof-