aboutsummaryrefslogtreecommitdiffstats
path: root/security/ossec-hids-server/Makefile
blob: 59ab81898f797ffde43efd8d81365658e25ed968 (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
111
112
113
114
115
116
117
118
119
120
121
# Created by: Valerio Daelli <valerio.daelli@gmail.com>
# $FreeBSD$

PORTNAME=   ossec-hids
PORTVERSION=    2.8
PORTREVISION?=  0
CATEGORIES= security
MASTER_SITES=   http://www.ossec.net/files/ \
        http://www.ossec.net/files/old/
PKGNAMESUFFIX=  -server

MAINTAINER= brd@FreeBSD.org
COMMENT?=   Security tool to monitor and check logs and intrusions

USE_RC_SUBR=    ossec-hids

CFLAGS+=    -ferror-limit=0

USES=       readline

.if defined(MAINTAINER_MODE)
UID_FILES+= ../../UIDs
GID_FILES+= ../../GIDs
.endif
USERS=      ossec ossecm ossecr
GROUPS=     ossec

.if !defined(CLIENT_ONLY)
OPTIONS_DEFINE= MYSQL PGSQL
.endif
OPTIONS_DEFINE+=    DOCS

SUB_LIST=   PORTNAME=${PORTNAME}
SUB_FILES=  pkg-message
PLIST_SUB=  PORTNAME=${PORTNAME}
PORTDOCS=   BUGS CONFIG CONTRIBUTORS INSTALL LICENSE

.include <bsd.port.pre.mk>
.if ${OSVERSION} < 800067
# Add string function that didn't exist until 8.x
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src__os_csyslogd__csyslogd.c
.endif

.if !defined(CLIENT_ONLY)
.if ${PORT_OPTIONS:MMYSQL}
WITH_DB=    yes
USE_MYSQL=  client
.endif

.if ${PORT_OPTIONS:MPGSQL}
WITH_DB=    yes
USE_PGSQL=  yes
.endif
.endif

.if defined(CLIENT_ONLY)
SUB_LIST+=  PRECMD=:
PKGNAMESUFFIX=  -client
CONFLICTS=  ossec-hids-server-[0-9]* ossec-hids-local-[0-9]*
.elif defined(LOCAL_ONLY)
SUB_LIST+=  PRECMD=ossechids_start_precmd
PKGNAMESUFFIX=  -local
CONFLICTS=  ossec-hids-client-[0-9]* ossec-hids-server-[0-9]*
.else
SUB_LIST+=  PRECMD=ossechids_start_precmd
CONFLICTS=  ossec-hids-client-[0-9]* ossec-hids-local-[0-9]*
.endif

post-patch:
    @${REINPLACE_CMD} 's|PREFIX|${PREFIX}/${PORTNAME}|' ${WRKSRC}/src/headers/defs.h
    @${ECHO} "DIR=\"${STAGEDIR}${PREFIX}/${PORTNAME}\"" > ${WRKSRC}/src/LOCATION

do-build:
.if defined(WITH_DB)
.if defined(CLIENT_ONLY)
    @cd ${WRKSRC}/src;${MAKE} setagent;${MAKE} all;${MAKE} build
.elif defined(LOCAL_ONLY)
    @cd ${WRKSRC}/src;${MAKE} setlocal;${MAKE} all;${MAKE} build
.else
    @cd ${WRKSRC}/src;${MAKE} setdb;${MAKE} all;${MAKE} build
.endif
.else
.if defined(CLIENT_ONLY)
    @cd ${WRKSRC}/src;${MAKE} setagent;${MAKE} all;${MAKE} build; \
        ${MAKE} unsetdb
.elif defined(LOCAL_ONLY)
    @cd ${WRKSRC}/src;${MAKE} setlocal;${MAKE} all;${MAKE} build; \
        ${MAKE} unsetdb
.else
    @cd ${WRKSRC}/src;${MAKE} all;${MAKE} build;${MAKE} unsetdb
.endif
.endif

do-install:
.if defined(CLIENT_ONLY)
    @cd ${WRKSRC}/src; ${MAKE} agent
.elif defined(LOCAL_ONLY)
    @cd ${WRKSRC}/src; ${MAKE} local
.else
    @cd ${WRKSRC}/src; ${MAKE} server
.endif

post-install:
    @${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME}/etc

.if defined(CLIENT_ONLY)
    @${CP} ${WRKSRC}/etc/ossec-agent.conf ${STAGEDIR}${PREFIX}/${PORTNAME}/etc/ossec.conf.sample
.elif defined(LOCAL_ONLY)
    ${CP} ${WRKSRC}/etc/ossec-local.conf ${STAGEDIR}${PREFIX}/${PORTNAME}/etc/ossec.conf.sample
.else
    ${CP} ${WRKSRC}/etc/ossec-server.conf ${STAGEDIR}${PREFIX}/${PORTNAME}/etc/ossec.conf.sample
.endif

.if ${PORT_OPTIONS:MDOCS}
    @${MKDIR} ${STAGEDIR}${DOCSDIR}
    @cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
.endif

    @${CAT} ${PKGMESSAGE}

.include <bsd.port.post.mk>