aboutsummaryrefslogtreecommitdiffstats
path: root/ports-mgmt/tinderbox/Makefile
blob: 0cadb6c980aadf7e7cb5d208c90da62949cee839 (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
122
123
124
125
126
127
128
# Ports collection makefile for:    misc/tinderbox
# Whom:         Edwin Groothuis <edwin@mavetju.org>
# Date created:     31 december 2005
#
# $FreeBSD$

PORTNAME=   tinderbox
PORTVERSION=    3.3
PORTREVISION=   3
CATEGORIES= ports-mgmt
MASTER_SITES=   http://tinderbox.marcuscom.com/ \
        http://T32.TecNik93.com/FreeBSD/ports/${PORTNAME}/sources/
DIST_SUBDIR=    ${PORTNAME}

MAINTAINER= itetcu@FreeBSD.org
COMMENT=    Port build tinderbox system

CONFLICTS=  tinderbox-devel-[0-9]*

OPTIONS=    PGSQL "With pgsql" Off \
        MYSQL "With mysql" On \
        CSUP  "Use csup for updates" On \
        CVSUP "Use cvsup for updates" Off \
        WEBUI   "Install web interface" On \
        APACHE "Use Apache for web interface" On \
        HIAWATHA "Use Hiawatha for web interface" Off \
        LIGHTTPD "Use LightHTTPD for web interface" Off \
        CHECK_FOR_ROOT "Check if ./tc is run by uid 0" On \
        LSOF "For killMountProcesses() when using nullfs" On

NO_BUILD=   yes
WANT_PERL=  yes
SUB_FILES=  pkg-message

MAN1=       tc-configCcache.1 tc-configDistfile.1 tc-configGet.1 \
        tc-configJail.1 tc-configTinderd.1 tc-init.1

#PATCH_STRIP=   -p2

.include <bsd.port.pre.mk>

.if !defined(WITH_PGSQL) && defined(WITHOUT_MYSQL)
IGNORE= is useless without a database. Please (re)run 'make config' and choose one of PGSQL and MYSQL
.endif

.if defined(WITH_WEBUI)
WANT_PHP_WEB=   yes
USE_PHP=    session
PLIST_SUB+= WEBUI=""
.else
PLIST_SUB+= WEBUI="@comment "
.endif

.if defined(WITH_PGSQL)
USE_PGSQL=  yes
.if defined(WITH_WEBUI)
RUN_DEPENDS+=   ${LOCALBASE}/share/pear/MDB2/Driver/pgsql.php:${PORTSDIR}/databases/pear-MDB2_Driver_pgsql
USE_PHP+=   pgsql
.endif
RUN_DEPENDS+=   ${SITE_PERL}/${PERL_ARCH}/DBD/Pg.pm:${PORTSDIR}/databases/p5-DBD-Pg
.endif

.if !defined(WITHOUT_MYSQL)
.if defined(WITH_WEBUI)
RUN_DEPENDS+=   ${LOCALBASE}/share/pear/MDB2/Driver/mysql.php:${PORTSDIR}/databases/pear-MDB2_Driver_mysql
USE_PHP+=   mysql
.endif
USE_MYSQL=  yes
IGNORE_WITH_MYSQL=  323 40
RUN_DEPENDS+=   ${SITE_PERL}/${PERL_ARCH}/DBD/mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql${MYSQL_VER:S/323//}
.endif

.if ! (${OSVERSION} > 700014 || ( ${OSVERSION} >= 601101 && ${OSVERSION} < 700000 ))
.if !defined(WITHOUT_CSUP)
RUN_DEPENDS+=   csup:${PORTSDIR}/net/csup
.endif
.endif

.if defined(WITH_CVSUP)
RUN_DEPENDS+=   cvsup:${PORTSDIR}/net/cvsup-without-gui
.endif

.if !defined(WITHOUT_APACHE) && defined(WITH_WEBUI)
USE_APACHE= 1.3+
.elif defined(WITH_LIGHTTPD) && defined(WITH_WEBUI)
RUN_DEPENDS+=   lighttpd:${PORTSDIR}/www/lighttpd
.elif defined(WITH_HIAWATHA) && defined(WITH_WEBUI)
RUN_DEPENDS+=   hiawatha:${PORTSDIR}/www/hiawatha
.endif

.if defined(WITH_LSOF)
RUN_DEPENDS+=   lsof:${PORTSDIR}/sysutils/lsof
.endif

pre-everything::
.if (!defined(WITHOUT_APACHE) || defined(WITH_LIGHTTPD) || defined(WITH_HIAWATHA)) && !defined(WITH_WEBUI)
    @${ECHO_CMD} "It doesn't make sense to depend on Apache, LightHTTPD or Hiawatha if not using any web interface."
    @${FALSE}
.endif

.if !defined(WITH_WEBUI)
post-extract:
    @${RM} -R ${WRKSRC}/webui
.endif

post-patch:
.ifdef WITHOUT_CHECK_FOR_ROOT
    ${REINPLACE_CMD} -e 's/^if \[ `id -u` != 0 \]; then/if false; then/' \
        ${WRKSRC}/tc
.endif
    @cd ${WRKSRC} && ${FIND} -E . -regex '.*(orig|bak)' -exec ${RM} {} \;

do-install:
    @${MKDIR} ${PREFIX}/tinderbox/scripts
    @${ECHO_CMD} "Installing man pages ..."
    cd ${WRKSRC}/man/man1 && ${INSTALL_MAN} ${MAN1} ${MAN1PREFIX}/man/man1 && \
        cd ${WRKSRC} && ${RM} -r ${WRKSRC}/man
    @${ECHO_CMD} "Installing rc script ..."
    ${INSTALL_SCRIPT} ${WRKSRC}/etc/rc.d/tinderd ${PREFIX}/etc/rc.d/${PORTNAME}
    @${ECHO_CMD} "Installing tinderbox ..."
    ${CP} -R ${WRKSRC}/* ${PREFIX}/tinderbox/scripts
    ${CP} ${WRKSRC}/.version ${PREFIX}/tinderbox/scripts
    @${ECHO_CMD} "All Done"

post-install:
    @${CAT} ${PKGMESSAGE}

.include <bsd.port.post.mk>