aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils/boxbackup/Makefile
blob: 6d8ef6753c929369e812253f6d9af0b9ff97dd61 (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
# Created by: James O'Gorman <james@netinertia.co.uk>
# $FreeBSD$

PORTNAME=   boxbackup
PORTVERSION=    0.11.1
PORTREVISION=   4
CATEGORIES= sysutils
MASTER_SITES=   SF
PKGNAMESUFFIX=  ${CLIENT_OR_SERVER}
EXTRACT_SUFX=   .tgz

MAINTAINER= ports@FreeBSD.org
COMMENT=    Open source, completely automatic on-line backup system for Unix

LICENSE=    BSD GPLv2
LICENSE_COMB=   dual
LICENSE_FILE=   ${WRKSRC}/LICENSE-DUAL.txt

USES=       perl5
USE_OPENSSL=    yes
GNU_CONFIGURE=  yes
USE_AUTOTOOLS=  autoconf aclocal autoheader
ACLOCAL_ARGS+=  -I ${WRKSRC}/infrastructure/m4

MAKE_JOBS_UNSAFE=yes

CONFIGURE_ARGS+=--sysconfdir=${PREFIX}/etc

SUB_FILES=  pkg-message

OPTIONS_DEFINE= READLINE

OPTIONS_MULTI=  FLAVOUR
OPTIONS_MULTI_FLAVOUR=  CLIENT SERVER

CLIENT_DESC=    Install the bbackupd client
SERVER_DESC=    Install the bbstored server

OPTIONS_DEFAULT=CLIENT SERVER

NO_STAGE=   yes
.include <bsd.port.options.mk>

.if ${PORT_OPTIONS:MREADLINE}
CONFIGURE_ARGS+=--enable-gnu-readline
.endif

MANCOMPRESSED=  yes
.if ${PORT_OPTIONS:MCLIENT}
USE_RC_SUBR+=   bbackupd
PLIST_SUB+= CLIENT=""
SUB_LIST+=  CLIENT=""
ALL_TARGET+=    build-backup-client
INSTALL_TARGET+=install-backup-client
MAN5+=      bbackupd.conf.5
MAN8+=      bbackupd.8 bbackupctl.8 bbackupd-config.8 bbackupquery.8
SUB_FILES+= 999.boxbackup
.else
PLIST_SUB+= CLIENT="@comment "
SUB_LIST+=  CLIENT="@comment "
.endif

.if ${PORT_OPTIONS:MSERVER}
USE_RC_SUBR+=   bbstored
USERS+=     _bbstored
GROUPS+=    _bbstored
PLIST_SUB+= SERVER=""
SUB_LIST+=  SERVER=""
ALL_TARGET+=    build-backup-server
INSTALL_TARGET+=install-backup-server
MAN5+=      bbstored.conf.5 raidfile.conf.5
MAN8+=      bbstored.8 bbstoreaccounts.8 bbstored-certs.8 bbstored-config.8 raidfile-config.8
.else
PLIST_SUB+= SERVER="@comment "
SUB_LIST+=  SERVER="@comment "
.endif

.if ! ${PORT_OPTIONS:MCLIENT}
# if this is a server-only install, CONFLICT with an install of the CLIENT or both
CONFLICTS=  boxbackup-client-[0-9]* boxbackup-[0-9]*
CLIENT_OR_SERVER=-server
.elif ! ${PORT_OPTIONS:MSERVER}
# if this is a client-only install, CONFLICT with an install of the SERVER or both
CONFLICTS=  boxbackup-server-[0-9]* boxbackup-[0-9]*
CLIENT_OR_SERVER=-client
.else
# if we install boxbackup-[0-9]*, we should CONFLICT with a CLIENT or SERVER only install
# PKGNAMESUFFIX is empty at this point
CONFLICTS=  boxbackup-server-[0-9]* boxbackup-client-[0-9]*
.endif

post-patch:
    @${REINPLACE_CMD} -e '/html/d' ${WRKSRC}/parcels.txt

post-configure:
    @${REINPLACE_CMD} -e '/share.doc.boxbackup/d' \
        ${WRKSRC}/parcels/scripts/install-backup-*

post-install:
.if ${PORT_OPTIONS:MCLIENT}
    @${MKDIR} -m 0700 ${PREFIX}/etc/boxbackup/bbackupd
    @${MKDIR} ${PREFIX}/etc/periodic/monthly
    ${INSTALL_SCRIPT} ${WRKDIR}/999.boxbackup ${PREFIX}/etc/periodic/monthly
.endif
.if ${PORT_OPTIONS:MSERVER}
    @${MKDIR} -m 0700 ${PREFIX}/etc/boxbackup/bbstored
.endif
    @${CAT} ${PKGMESSAGE}

test:
     @${ECHO_CMD} "===> Running tests"
     @${MAKE} -C ${WRKSRC} test

.include <bsd.port.mk>