aboutsummaryrefslogtreecommitdiffstats
path: root/security/logcheck/Makefile
blob: 60c3cf8170bab8653f14427c3c847436d82b86fb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# Ports collection makefile for:    logcheck
# Date created:     9 December 1999
# Whom:         Dan Langille <dan@freebsddiary.org>
#
# $FreeBSD$
#

PORTNAME=   logcheck
PORTVERSION=    1.3.13
CATEGORIES= security
MASTER_SITES=   ${MASTER_SITE_DEBIAN_POOL}
DISTNAME=   ${PORTNAME}_${PORTVERSION}

MAINTAINER= glarkin@FreeBSD.org
COMMENT=    Auditing tool for system logs on Unix boxes

RUN_DEPENDS=    mime-construct:${PORTSDIR}/mail/mime-construct \
        lockfile:${PORTSDIR}/mail/procmail \
        bash:${PORTSDIR}/shells/bash

PORTSCOUT=  limit:^1\.2\.

LOGCHECK_USER=  logcheck
LOGCHECK_UID=   915
LOGCHECK_GROUP= ${LOGCHECK_USER}
LOGCHECK_GID=   ${LOGCHECK_UID}

# Enable Perl dependency for logtail script
USE_PERL5=  5.8.0+

WRKSRC=     ${WRKDIR}/${PORTNAME}
BINMODE=    755
SHAREMODE=  640
SUB_LIST+=  LOGCHECK_USER=${LOGCHECK_USER} \
        LOGCHECK_UID=${LOGCHECK_UID} \
        LOGCHECK_GROUP=${LOGCHECK_GROUP} \
        LOGCHECK_GID=${LOGCHECK_GID} \
        PW=${PW}
SUB_FILES=  pkg-install pkg-deinstall pkg-message
CONFIG_DIRS=    cracking.d ignore.d.paranoid ignore.d.server \
        ignore.d.workstation violations.d violations.ignore.d
DOCS=       AUTHORS CHANGES CREDITS LICENSE TODO docs/README*
PORTDOCS=   ${DOCS:T}
MAN8=       logcheck.8 logtail.8 logtail2.8

PATCH_LIST= extra-patch-debian__logcheck.cron.d \
        extra-patch-docs__logcheck.8 \
        extra-patch-etc__logcheck.conf \
        extra-patch-src__logcheck \
        extra-patch-src__logtail2
EXTRA_PATCHES=  ${PATCH_LIST:C|^|${WRKDIR}/|g}

pre-patch:
.for patch in ${PATCH_LIST}
    @${SED} ${_SUB_LIST_TEMP} ${FILESDIR}/${patch}.in > ${WRKDIR}/${patch}
.endfor

do-build:
    @${REINPLACE_CMD} -e 's!/var/log/syslog!/var/log/messages!' \
        ${WRKSRC}/etc/logcheck.logfiles
    @${REINPLACE_CMD} -e "s|#!/usr/bin/perl|#!${PERL}|" \
        ${WRKSRC}/src/logtail

do-install:
    ${INSTALL_SCRIPT} ${WRKSRC}/src/logcheck ${PREFIX}/sbin
    ${INSTALL_SCRIPT} ${WRKSRC}/src/logtail ${PREFIX}/sbin
    ${INSTALL_SCRIPT} ${WRKSRC}/src/logtail2 ${PREFIX}/sbin
    @PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
    @${INSTALL} -d /var/db/logcheck
    @${INSTALL} -d /var/run/logcheck
    ${CHOWN} ${LOGCHECK_USER}:${LOGCHECK_GROUP} /var/db/logcheck
    @${ECHO_CMD} '@exec ${CHOWN} -R ${LOGCHECK_USER}:${LOGCHECK_GROUP} \
        /var/db/logcheck' >> ${TMPPLIST}
    ${CHOWN} ${LOGCHECK_USER}:${LOGCHECK_GROUP} /var/run/logcheck
    @${ECHO_CMD} '@exec ${CHOWN} -R ${LOGCHECK_USER}:${LOGCHECK_GROUP} \
        /var/run/logcheck' >> ${TMPPLIST}
    @${INSTALL} -d ${ETCDIR}
    @${INSTALL_DATA} ${WRKSRC}/etc/logcheck.conf \
        ${ETCDIR}/logcheck.conf.sample
    @${INSTALL_DATA} ${WRKSRC}/etc/logcheck.logfiles \
        ${ETCDIR}/logcheck.logfiles.sample
.for i in ${CONFIG_DIRS}
    @${INSTALL} -d ${ETCDIR}/${i}
    @${INSTALL_DATA} ${WRKSRC}/rulefiles/linux/${i}/* ${ETCDIR}/${i}
.endfor
    @${INSTALL} -d ${DATADIR}/detectrotate
    @${INSTALL_DATA} ${WRKSRC}/src/detectrotate/*.dtr ${DATADIR}/detectrotate
.if !defined(NOPORTEXAMPLES)
    @${INSTALL} -d ${EXAMPLESDIR}
    @${INSTALL_DATA} ${WRKSRC}/debian/logcheck.cron.d \
        ${EXAMPLESDIR}/crontab.in
.endif
    ${CHOWN} -R root:${LOGCHECK_GROUP} ${ETCDIR}
    @${ECHO_CMD} '@exec ${CHOWN} -R root:${LOGCHECK_GROUP} \
        ${ETCDIR:S|^${PREFIX}/|%D/|}' >> ${TMPPLIST}
    ${CHOWN} -R root:${LOGCHECK_GROUP} ${DATADIR}
    @${ECHO_CMD} '@exec ${CHOWN} -R root:${LOGCHECK_GROUP} \
        ${DATADIR:S|^${PREFIX}/|%D/|}' >> ${TMPPLIST}
    @PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
    @${INSTALL_MAN} ${WRKSRC}/docs/*.8 ${MAN8PREFIX}/man/man8

post-install:
.if !defined(NOPORTDOCS)
    @${INSTALL} -d ${DOCSDIR}
    @cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR}
    @${CHMOD} 644 ${DOCSDIR}/*
.endif
    @${CAT} ${PKGMESSAGE}

.include <bsd.port.mk>