Code

icinga-module.cfg: Provide a sample Icinga module configuration.
[pkg-pnp4nagios.git] / debian / rules
1 #!/usr/bin/make -f
2 # debian/rules for PNP4Nagios
3 #
4 # Written by Sven Velt <sven@velt.de> and Sebastian Harl <tokkee@debian.org>.
6 include /usr/share/quilt/quilt.make
8 # Uncomment this to turn on verbose mode.
9 #export DH_VERBOSE=1
11 # These are used for cross-compiling and for saving the configure script
12 # from having to guess our platform (since we know it already)
13 DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
14 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
16 ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
17 CROSS= --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
18 else
19 CROSS= --build $(DEB_BUILD_GNU_TYPE)
20 endif
22 get-orig-source:
23         uscan --force --verbose --rename
25 config.status: configure
26         dh_testdir
28         for file in config.guess config.sub; do \
29                 mv $$file $$file.upstream; \
30                 ln -s /usr/share/misc/$$file .; \
31         done
33         ./configure $(CROSS) \
34                                 --with-layout=debian \
35                                 --mandir=/usr/share/man \
36                                 --infodir=/usr/share/info \
37                                 --without-kohana \
38                                 --with-kohana_system=/usr/share/php/kohana2/system \
39                                 --with-httpd-conf=/etc/apache2/conf.d \
40                                 CFLAGS="$(CFLAGS)"
42 build: build-arch build-indep
44 build-arch: build-stamp
46 build-indep: build-stamp
48 build-stamp: $(QUILT_STAMPFN) config.status
49         dh_testdir
51         # Check whether all patches have been applied.
52         ( cd debian/patches/; for patch in *; do \
53                 if test "$$patch" != "series"; then \
54                         grep "$$patch" series > /dev/null \
55                                 || ( echo "$$patch not enabled\!"; exit 1 ); \
56                 fi; done )
58         $(MAKE) all
60         touch $@
62 clean: unpatch
63         dh_testdir
64         dh_testroot
65         rm -f build-stamp
67         for file in config.guess config.sub; do \
68                 if [ -e $$file.upstream ]; then \
69                         rm -f $$file; \
70                         mv $$file.upstream $$file; \
71                 fi \
72         done
74         [ ! -f Makefile ] || $(MAKE) distclean
76         dh_clean
77         rm -f scripts/rrd_modify.pl
78         debconf-updatepo
80 install: build
81         dh_testdir
82         dh_testroot
83         dh_prep
84         dh_installdirs
86         $(MAKE) DESTDIR=$(CURDIR)/debian/tmp \
87                 INSTALL_OPTS="--owner=root --group=root" install install-config
89         # Ignore install.php (for future debugging don't delete it)
90         touch debian/tmp/usr/share/pnp4nagios/html/install.ignore
92         mkdir -p debian/tmp/usr/share/doc/pnp4nagios/examples/
94         # Move template config dir to /etc/pnp4nagios/templates
95         rmdir debian/tmp/usr/share/pnp4nagios/html/templates
96         mkdir debian/tmp/etc/pnp4nagios/templates
97         mv debian/tmp/usr/share/pnp4nagios/html/templates.special \
98                 debian/tmp/usr/share/doc/pnp4nagios/examples/
99         mkdir debian/tmp/etc/pnp4nagios/templates.special
101         mkdir -p debian/tmp/usr/sbin/
102         mv debian/tmp/usr/bin/npcd \
103                 debian/tmp/usr/sbin/
105         mv debian/tmp/etc/pnp4nagios/rra.cfg-sample \
106                 debian/tmp/etc/pnp4nagios/rra.cfg
108         mv debian/tmp/etc/pnp4nagios/nagios.cfg-sample \
109                 debian/tmp/usr/share/doc/pnp4nagios/examples/nagios.cfg
111         mv debian/tmp/etc/pnp4nagios/misccommands.cfg-sample \
112                 debian/tmp/usr/share/doc/pnp4nagios/examples/misccommands.cfg
114         mkdir debian/tmp/usr/share/doc/pnp4nagios/examples/check_commands
115         mv debian/tmp/etc/pnp4nagios/check_commands/check_nwstat.cfg-sample \
116                 debian/tmp/usr/share/doc/pnp4nagios/examples/check_commands/check_nwstat.cfg
118         mkdir debian/tmp/usr/share/doc/pnp4nagios/examples/pages
119         mv debian/tmp/etc/pnp4nagios/pages/web_traffic.cfg-sample \
120                 debian/tmp/usr/share/doc/pnp4nagios/examples/pages/web_traffic.cfg
122         cp -av contrib/ssi debian/tmp/usr/share/doc/pnp4nagios/examples/
123         rm -fv debian/tmp/usr/share/doc/pnp4nagios/examples/ssi/*.in
125         # Icinga module sample configuration
126         cp debian/icinga-module.cfg debian/tmp/usr/share/doc/pnp4nagios/examples/
128         # Remove external PHP classes/libraries: FPDF, FPDF-TPL, FPDI
129         rm -r debian/tmp/usr/share/pnp4nagios/html/application/vendor/fpdf
131         # Remove external JavaScript files: jQuery and jQuery-UI
132         rm debian/tmp/usr/share/pnp4nagios/html/media/js/jquery-min.js
133         rm debian/tmp/usr/share/pnp4nagios/html/media/js/jquery-ui.min.js
135         # Clean up some files
136         rmdir debian/tmp/usr/bin
137         mv debian/tmp/etc/pnp4nagios/check_commands/check_all_local_disks.cfg-sample \
138                 debian/tmp/etc/pnp4nagios/check_commands/check_all_local_disks.cfg
139         rm debian/tmp/etc/pnp4nagios/check_commands/check_nrpe.cfg-sample
141         # Add Debian specific config and placeholder files
142         #touch debian/tmp/etc/pnp4nagios/pages/.placeholder
143         cp -av debian/nagios.cfg debian/tmp/etc/pnp4nagios/
144         cp -av debian/check_commands/* debian/tmp/etc/pnp4nagios/check_commands/
146         cp -av sample-config/httpd.conf debian/tmp/etc/pnp4nagios/apache.conf
148         # Remove unnecessary config files (duplicates)
149         rm -f debian/tmp/etc/pnp4nagios/config_local.php
150         rm -f debian/tmp/etc/pnp4nagios/config.php.0.6*
152         # Add subdirs to /var/spool/pnp4nagios/ to prepare for different modes
153         mkdir debian/tmp/var/spool/pnp4nagios/nagios
154         mkdir debian/tmp/var/spool/pnp4nagios/npcd
156         # Delete not used and empty directories
157         #rmdir debian/tmp/usr/share/pnp4nagios/html/application/logs/
158         rmdir debian/tmp/usr/share/pnp4nagios/html/application/cache/
159         rmdir debian/tmp/usr/share/pnp4nagios/html/application/hooks/
160         #rmdir debian/tmp/usr/share/pnp4nagios/html/application/libraries/
162         mkdir debian/tmp/etc/pnp4nagios/templates.d
163         cp debian/README.templates.d debian/tmp/etc/pnp4nagios/templates.d/README
165         dh_install --sourcedir=debian/tmp --fail-missing
167 # Build architecture-independent files here.
168 binary-indep: build install
169         dh_testdir
170         dh_testroot
171         dh_installchangelogs -i ChangeLog
172         dh_installdocs -A -i AUTHORS README debian/README.Debian
173         dh_installexamples -i
174         dh_installdebconf -i
175         dh_installinit -i
176         dh_installman -i
177         dh_link -i
178         dh_compress -i
179         dh_fixperms -i
180         dh_installdeb -i
181         dh_gencontrol -i
182         dh_md5sums -i
183         dh_builddeb -i
185 # Build architecture-dependent files here.
186 binary-arch: build install
187         dh_testdir
188         dh_testroot
189         dh_installchangelogs -a ChangeLog
190         dh_installdocs -A -a AUTHORS README debian/README.Debian
191         dh_installexamples -a
192         dh_installdebconf -a
193         dh_installinit -ppnp4nagios-bin --name=npcd
194         dh_installinit -ppnp4nagios-bin --name=pnp_gearman_worker
195         dh_installman -a
196         dh_link -a
197         dh_strip -a
198         dh_compress -a
199         dh_fixperms -a
200         dh_installdeb -a
201         dh_shlibdeps -a
202         dh_gencontrol -a
203         dh_md5sums -a
204         dh_builddeb -a
206 binary: binary-indep binary-arch
207 .PHONY: build clean binary-indep binary-arch binary install