~ubuntu-branches/ubuntu/intrepid/nagios3/intrepid-security

« back to all changes in this revision

Viewing changes to debian/rules

  • Committer: Bazaar Package Importer
  • Author(s): Alexander Wirt
  • Date: 2008-04-08 20:39:11 UTC
  • Revision ID: james.westby@ubuntu.com-20080408203911-urwlvtfpv0k6vpep
Tags: 3.0.1-1
* New upstream version (Closes: #475041)
* Move cfg_dir=/etc/nagios3/conf.d to the end of nagios.cfg to
  allow overwriting variables from nagios.cfg in conf.đ/
* Disable external_commands in nagios.cfg as they are now enabled by 
  default

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/make -f
 
2
# debian/rules makefile for nagios3
 
3
# Last modified:
 
4
# $Id: rules 1400 2008-03-21 20:03:56Z formorer $
 
5
 
 
6
# export DH_VERBOSE=1
 
7
 
 
8
b := $(shell pwd)/debian
 
9
bnc := $b/nagios3-common
 
10
bnd := $b/nagios3-doc
 
11
 
 
12
export DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 
13
export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
14
 
 
15
# -Wall disabled until source is fixed to not print tons of warnings with it. :)
 
16
#CFLAGS = -Wall -g
 
17
CFLAGS = -g
 
18
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
 
19
CFLAGS += -O0
 
20
else
 
21
CFLAGS += -O2
 
22
endif
 
23
 
 
24
SHELL           = /bin/sh -e
 
25
CONFIGURE       = CFLAGS='$(CFLAGS)' ./configure --prefix=/usr \
 
26
                                --mandir=/usr/share/man \
 
27
                                --bindir=/usr/sbin \
 
28
                                --sbindir=/usr/lib/cgi-bin/nagios3 \
 
29
                                --datadir=/usr/share/nagios3/htdocs \
 
30
                                --sysconfdir=/etc/nagios3 \
 
31
                                --infodir=/usr/share/info \
 
32
                                --libexecdir=/usr/lib/nagios/plugins \
 
33
                                --localstatedir=/var/lib/nagios3 \
 
34
                                --enable-event-broker \
 
35
                                --enable-embedded-perl \
 
36
                                --with-nagios-user=nagios \
 
37
                                --with-nagios-group=nagios \
 
38
                                --with-command-user=nagios \
 
39
                                --with-command-group=nagios \
 
40
                                --with-init-dir=/etc/init.d \
 
41
                                --with-lockfile=/var/run/nagios3/nagios3.pid \
 
42
                                --with-mail=/usr/bin/mail \
 
43
                                --with-perlcache \
 
44
                                --build=$(DEB_BUILD_GNU_TYPE) \
 
45
                                --host=$(DEB_HOST_GNU_TYPE) \
 
46
                                --with-htmurl=/nagios3 \
 
47
                                --with-cgiurl=/cgi-bin/nagios3
 
48
 
 
49
unpack-configs: unpack-configs-stamp
 
50
unpack-configs-stamp: configure-stamp
 
51
        mkdir -p debian-configs
 
52
        for cfg in $$(ls debian/cfg-*.diff); do \
 
53
          TARGETNAME=$$(basename $$cfg .diff | sed 's/^cfg-//'); \
 
54
          echo $$TARGETNAME; \
 
55
          DISTNAME="sample-config/$$TARGETNAME"; \
 
56
          if ! [ -e "$$DISTNAME" ]; then \
 
57
            DISTNAME="sample-config/template-object/$$TARGETNAME"; \
 
58
          fi; \
 
59
          echo patch -o debian-configs/$$TARGETNAME $$DISTNAME $$cfg; \
 
60
          patch -o debian-configs/$$TARGETNAME $$DISTNAME $$cfg; \
 
61
        done; \
 
62
        if [ -e "debian-configs/*.rej" ]; then \
 
63
          echo "diffs to config file didn't match. Stop."; \
 
64
          exit 1; \
 
65
        fi
 
66
        touch unpack-configs-stamp
 
67
 
 
68
pack-configs: patch
 
69
        for cfg in $$(ls debian-configs/*); do \
 
70
          TARGETNAME=$$(basename $$cfg); \
 
71
          DISTNAME="sample-config/$$TARGETNAME"; \
 
72
          if ! [ -e "$$DISTNAME" ]; then \
 
73
            DISTNAME="sample-config/template-object/$$TARGETNAME"; \
 
74
          fi; \
 
75
          echo diff -u $$DISTNAME $$cfg; \
 
76
          diff -uN $$DISTNAME $$cfg > debian/cfg-$${TARGETNAME}.diff || true; \
 
77
        done
 
78
        rm -f unpack-configs-stamp
 
79
 
 
80
clean: clean-patched unpatch
 
81
clean-patched:
 
82
        dh_testdir -a
 
83
        dh_testroot -a
 
84
        #-rm -Rf docs examples {build,config}-nagios-{text,pgsql,mysql}-stamp
 
85
        if test -f Makefile; then make distclean; fi
 
86
        #-rm -Rf {cgi,base}/*.{mysql,pgsql,text}
 
87
        rm -f {patch,install,configure,build,unpack-configs}-stamp
 
88
        rm -rf debian-configs
 
89
        #-rm debian/templates.merged subst
 
90
        find -type d -name autom4te.cache -print0 | xargs -0 -r rm -rf \;
 
91
        -rm -f platform.h auto-include.h
 
92
        find -type d -name build -print0 | xargs -0 -r rm -rf \;
 
93
        find \( -name config.sub -o -name config.guess \) -print0 | xargs -0 -r rm -f \;
 
94
        dh_clean
 
95
        debconf-updatepo
 
96
 
 
97
configure: configure-stamp
 
98
configure-stamp:
 
99
        dh_testdir -a
 
100
        @echo "Doing $@"
 
101
        if test -f Makefile; then make clean; fi
 
102
        ln -sf /usr/share/misc/config.sub .
 
103
        ln -sf /usr/share/misc/config.guess .
 
104
        rm -f config.cache
 
105
        $(CONFIGURE)
 
106
        touch configure-stamp
 
107
 
 
108
build: build-stamp
 
109
build-stamp: patch-stamp configure-stamp
 
110
        dh_testdir -a
 
111
        @echo "Doing $@"
 
112
        $(MAKE) all
 
113
        touch build-stamp
 
114
 
 
115
patch: patch-stamp
 
116
patch-stamp:
 
117
        @echo "Doing $@"
 
118
        dpatch  --with-cpp apply-all
 
119
        dpatch  --with-cpp cat-all >patch-stamp 
 
120
 
 
121
unpatch:
 
122
        @echo "Doing $@"
 
123
        dpatch --with-cpp deapply-all
 
124
        rm -rf patch-stamp debian/patched
 
125
 
 
126
install: install-stamp
 
127
install-stamp: build-stamp unpack-configs-stamp
 
128
        @echo "Doing $@"
 
129
        dh_testdir -a
 
130
        dh_testroot -a
 
131
        dh_installdirs -a -i
 
132
        # zero out INSTALL_OPTS to prevent chowning at build-time
 
133
        make install-unstripped DESTDIR=$b/nagios3 INSTALL_OPTS=""
 
134
        # move some arch-indep stuff to the other packages
 
135
        cp -a $b/nagios3/usr/share/nagios3/htdocs ${bnd}/usr/share/nagios3/
 
136
        rm -rf $b/nagios3/usr/share/nagios3
 
137
        # remove empty directory
 
138
        rmdir --ignore-fail-on-non-empty -p $b/nagios3/var/lib/nagios3/archives
 
139
        # remove empty directory 
 
140
        rmdir --ignore-fail-on-non-empty -p $b/nagios3/usr/lib/nagios/plugins
 
141
        # set up /var/cache/nagios3 for access by www-data
 
142
        chgrp www-data ${bnc}/var/cache/nagios3
 
143
        chmod g+s ${bnc}/var/cache/nagios3
 
144
        chown root:www-data ${bnc}/var/lib/nagios3/rw
 
145
        chmod 700 ${bnc}/var/lib/nagios3/rw
 
146
        # alter some installed filenames/locations
 
147
        mv ${b}/nagios3/usr/sbin/nagios ${b}/nagios3/usr/sbin/nagios3
 
148
        mv ${b}/nagios3/usr/sbin/nagiostats ${b}/nagios3/usr/sbin/nagios3stats
 
149
        mv ${b}/nagios3/usr/sbin/p1.pl ${b}/nagios3/usr/lib/nagios3/p1.pl
 
150
        mv ${b}/nagios3-doc/usr/share/nagios3/htdocs/stylesheets/* ${b}/nagios3-doc/etc/nagios3/stylesheets
 
151
        rmdir ${b}/nagios3-doc/usr/share/nagios3/htdocs/stylesheets/
 
152
        chmod 755 ${b}/nagios3/usr/lib/nagios3/p1.pl
 
153
        dh_link              -i
 
154
        dh_installdocs       -i
 
155
        dh_installman        -a -pnagios3
 
156
        dh_installlogrotate
 
157
        dh_installchangelogs -i
 
158
        dh_install           -i
 
159
        dh_installinit       --name nagios3 -- defaults 30 18
 
160
        dh_installexamples   -i
 
161
        # and now set up the "nagios1 version" of the apache2.conf
 
162
        sed -e 's,^#\(ScriptAlias /cgi-bin/nagios /usr/lib/cgi-bin/nagios3\),\1,' \
 
163
            -e 's,^#\(ScriptAlias /nagios/cgi-bin /usr/lib/cgi-bin/nagios3\),\1,' \
 
164
                -e 's,^#\(Alias /nagios /usr/share/nagios3/htdocs\),\1,' \
 
165
                -e 's,^ #\(AuthUserFile /etc/nagios/htpasswd.users\),   \1,' \
 
166
                ${bnc}/usr/share/doc/nagios3-common/examples/apache2.conf > ${bnc}/usr/share/doc/nagios3-common/examples/apache2.nagios1.conf
 
167
        touch install-stamp
 
168
 
 
169
binary: binary-arch binary-indep
 
170
binary-arch: install-stamp
 
171
        @echo "Doing $@"
 
172
        dh_testdir           -a
 
173
        dh_testroot          -a
 
174
        dh_link              -a
 
175
        dh_installchangelogs -a
 
176
        dh_installdocs       -a
 
177
        dh_install           -a
 
178
        chmod 600 ${b}/nagios3-common/etc/nagios3/resource.cfg
 
179
        dh_strip             -a  --dbg-package=nagios3-dbg
 
180
        dh_compress          -a
 
181
        dh_fixperms          -a -X/var/cache/nagios3
 
182
        dh_installdeb        -a
 
183
        dh_perl              -a
 
184
        dh_shlibdeps         -a
 
185
        dh_gencontrol        -a
 
186
        dh_makeshlibs        -a -V
 
187
        dh_md5sums           -a
 
188
        dh_builddeb          -a
 
189
 
 
190
binary-indep: install-stamp
 
191
        # XXX some stuff below here is commented out
 
192
        #install -m 755 cgi/grouplist.cgi.in debian/$@/usr/lib/cgi-bin/nagios/grouplist.cgi
 
193
        dh_link              -i
 
194
        dh_compress          -i
 
195
        dh_fixperms          -i -Xnagios3/resource.cfg
 
196
        dh_installdebconf    -i
 
197
        dh_perl              -i
 
198
        dh_installdeb        -i
 
199
        dh_gencontrol        -i
 
200
        dh_md5sums           -i
 
201
        dh_builddeb          -i
 
202
 
 
203
.PHONY: binary-indep binary-arch build configure binary install patch unpatch