* new upstream release (2.7)
[ossec-hids.git] / debian / rules
1 #!/usr/bin/make -f
2
3 # Uncomment this to turn on verbose mode.
4 #export DH_VERBOSE=1
5
6 # Directories
7 SRCDIR = $(CURDIR)/src
8 PKGDIR = $(CURDIR)/debian/ossec-hids
9 DESTDIR = $(PKGDIR)/var/ossec
10
11 # OSSEC INSTALL SUBDIRS
12 SUBDIRS = .ssh active-response active-response/bin agentless bin etc etc/shared logs logs/alerts logs/archives logs/firewall queue queue/agent-info queue/agentless queue/alerts queue/diff queue/fts queue/ossec queue/rids queue/rootcheck queue/syscheck rules stats tmp var var/run
13
14 ###################### main ######################
15
16 build: build-stamp
17 build-stamp:
18         dh_testdir
19         dh_clean
20
21         $(MAKE) -C $(SRCDIR) setlocal all build
22
23         touch build-stamp
24
25 clean:
26         dh_testdir
27         dh_testroot
28         rm -f build-stamp
29
30         # Add here commands to clean up after the build process.
31         $(MAKE) -C $(SRCDIR) clean
32
33         # additional clean
34         rm -f $(SRCDIR)/Config.OS \
35                 $(SRCDIR)/analysisd/compiled_rules/compiled_rules.h \
36                 $(SRCDIR)/analysisd/ossec-logtest \
37                 $(SRCDIR)/isbigendian \
38                 $(SRCDIR)/isbigendian.c \
39                 $(SRCDIR)/analysisd/ossec-makelists
40         rm -rf $(CURDIR)/bin
41
42         dh_clean
43
44 install: build
45         dh_testdir
46         dh_testroot
47         dh_prep
48         dh_installdirs
49
50         # ugly directory creation
51         for i in $(SUBDIRS); do \
52                 mkdir -p -m 700 $(DESTDIR)/$$i; \
53         done
54
55         # various files installation
56         install -m 644 etc/internal_options.conf $(DESTDIR)/etc
57         install -m 644 etc/decoder.xml $(DESTDIR)/etc
58         install -m 644 src/rootcheck/db/*.txt $(DESTDIR)/etc/shared
59         if [ -e ossec-debian.conf ]; then \
60                 install -m 440 ossec-debian.conf $(DESTDIR)/etc/ossec.conf; \
61         else \
62                 install -m 440 etc/ossec-local.conf $(DESTDIR)/etc/ossec.conf; \
63         fi
64         install -m 440 etc/ossec-*.conf $(DESTDIR)/etc
65         cp -r etc/rules/* $(DESTDIR)/rules
66         install -m 750 src/agentlessd/scripts/* $(DESTDIR)/agentless
67         install -s -m 755 bin/* $(DESTDIR)/bin
68         install -m 755 src/init/ossec-*.sh $(DESTDIR)/bin
69         ln -s ossec-local.sh $(DESTDIR)/bin/ossec-control
70         install -m 755 active-response/*.sh $(DESTDIR)/active-response/bin
71         install -m 755 active-response/firewalls/*.sh \
72                 $(DESTDIR)/active-response/bin
73
74         # attrs
75         chmod -R 550 $(DESTDIR)
76         chmod -R 770 $(DESTDIR)/queue/alerts
77         chmod -R 770 $(DESTDIR)/queue/ossec
78         chmod -R 750 $(DESTDIR)/queue/fts
79         chmod -R 750 $(DESTDIR)/queue/syscheck
80         chmod -R 750 $(DESTDIR)/queue/rootcheck
81         chmod -R 750 $(DESTDIR)/queue/diff
82         chmod -R 755 $(DESTDIR)/queue/agent-info
83         chmod -R 755 $(DESTDIR)/queue/rids
84         chmod -R 755 $(DESTDIR)/queue/agentless
85         chmod -R 750 $(DESTDIR)/stats
86         chmod -R 750 $(DESTDIR)/logs
87         chmod -R 550 $(DESTDIR)/rules
88         chmod 770 $(DESTDIR)/var/run
89         chmod 550 $(DESTDIR)/etc
90         chmod 440 $(DESTDIR)/etc/internal_options.conf
91         chmod -R 770 $(DESTDIR)/etc/shared
92         chmod 700 $(DESTDIR)/.ssh
93         chmod 755 $(DESTDIR)/active-response/bin/*
94         chmod 550 $(DESTDIR)/bin/*
95         chmod 440 $(DESTDIR)/etc/ossec.conf
96
97         # fixups: no need for execute bits on files there
98         find $(DESTDIR)/rules -type f -exec chmod ugo-x '{}' ';'
99         find $(DESTDIR)/etc -type f -exec chmod ugo-x '{}' ';'
100
101         # system init script
102         mkdir -p $(PKGDIR)/etc/init.d
103         if [ -e ossec-hids-debian.init ]; then \
104                 install -m 755 ossec-hids-debian.init \
105                         $(PKGDIR)/etc/init.d/ossec-hids; \
106         else \
107                 install -m 755 src/init/ossec-hids.init \
108                         $(PKGDIR)/etc/init.d/ossec-hids; \
109         fi
110
111         # system ossec-init
112         echo "DIRECTORY=\"/var/ossec\""      >  $(PKGDIR)/etc/ossec-init.conf
113         echo "VERSION=\"`cat src/VERSION`\"" >> $(PKGDIR)/etc/ossec-init.conf
114         echo "DATE=\"$(shell date --utc -d "$(shell dpkg-parsechangelog | sed -ne 's/Date: //p')")\""   >> $(PKGDIR)/etc/ossec-init.conf
115         echo "TYPE=\"local\""                >> $(PKGDIR)/etc/ossec-init.conf
116
117 # Build architecture-independent files here.
118 binary-indep: build install
119 # We have nothing to do by default.
120
121 # Build architecture-dependent files here.
122 binary-arch: build install
123         dh_testdir
124         dh_testroot
125         dh_installchangelogs
126         dh_installdocs
127 #       dh_installexamples
128 #       dh_installmenu
129 #       dh_installdebconf
130 #       dh_installlogrotate
131 #       dh_installemacsen
132 #       dh_installcatalogs
133 #       dh_installpam
134 #       dh_installmime
135 #       dh_installinit
136 #       dh_installcron
137 #       dh_installinfo
138 #       dh_undocumented
139         dh_lintian
140         dh_installman
141         dh_link
142         dh_compress
143         dh_fixperms
144 #       dh_perl
145 #       dh_python
146         dh_installdeb
147         dh_shlibdeps
148         dh_gencontrol
149         dh_md5sums
150         dh_builddeb
151
152 binary: binary-indep binary-arch
153 .PHONY: build clean binary-indep binary-arch binary install