Makefile 6.16 KB
Newer Older
1 2 3 4
# New ports collection makefile for: emulab-ops
# Date created:         28 January 2003
# Whom:                 ricci@cs.utah.edu

5
.include "../emulab-boss/Makefile.emulab"
6

7 8 9
# XXX deal with out-of-sync-edness of original boss/ops ports
.if ${EMULAB_PORTVERSION} == "1.7"
EMULAB_PORTVERSION=	1.4
Mike Hibler's avatar
Mike Hibler committed
10
.endif
11 12 13

PORTNAME=	emulab-ops
PORTVERSION=	${EMULAB_PORTVERSION}
14 15 16 17
CATEGORIES=	misc
MASTER_SITES=	#none
DISTFILES=	#none
EXTRACT_ONLY=	#none
18
COMMENT=	"Meta-port for an Emulab ops node"
19

20
MAINTAINER=	testbed-ops@flux.utah.edu
21

22 23 24 25 26 27 28 29 30
#
# We set this so that the mysql server port doesn't do name resolution
#
.MAKEFLAGS+=	-DSKIP_DNS_CHECK

#
# We must make sure PERL is built with this.
#
.MAKEFLAGS+=	ENABLE_SUIDPERL=yes
31
.if (${PORTVERSION} == "3.1" || ${PORTVERSION} == "4.0")
Mike Hibler's avatar
Mike Hibler committed
32
.MAKEFLAGS+=	PERL_VERSION=5.10.1 PERL_VER=5.10.1 PERL_ARCH=mach
33
.elif ${PORTVERSION} == "3.0"
34 35
.MAKEFLAGS+=	PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach
.endif
36

Robert Ricci's avatar
Robert Ricci committed
37 38
#
# For SWIG, so that it doesn't feel the need to suck in php and apache
39
# XXX Something is broken on FreeBSD 6.X and SWIG_LANGUAGES='x y z' breaks.
Robert Ricci's avatar
Robert Ricci committed
40
#
41 42 43
.MAKEFLAGS+=	SWIG_LANGUAGES= 
.MAKEFLAGS+=    WANT_SWIG_PERL=yes WANT_SWIG_PYTHON=yes WANT_SWIG_TCL=yes

44
#
Mike Hibler's avatar
Mike Hibler committed
45 46
# For PHP, specify the version and that we want the Apache module
# Version is specified via PHP_VER above.
47
#
Mike Hibler's avatar
Mike Hibler committed
48
.MAKEFLAGS+=	WANT_PHP_MOD=yes
49

50 51
#
# Various ports need to agree on what version of apache. Make sure this
Mike Hibler's avatar
Mike Hibler committed
52
# agrees with what is in the emulab-ops and emulab-php* metaports.
53
#
Mike Hibler's avatar
Mike Hibler committed
54
.MAKEFLAGS+=	-DWITH_APACHE
55 56 57 58
.if ${PORTVERSION} == "4.0"
.MAKEFLAGS+=	APACHE_PORT=www/apache22
.MAKEFLAGS+=	WITH_SUEXEC=yes
.else
59
.MAKEFLAGS+=	APACHE_PORT=www/apache13-modssl
60
.endif
Robert Ricci's avatar
Robert Ricci committed
61

62 63 64
#
# For samba, so that it doesn't suck in everything under the sun
#
65
.MAKEFLAGS+=	-DWITHOUT_WINBIND -DWITHOUT_LDAP -DWITHOUT_POPT -DWITHOUT_CUPS
66 67

#
68 69
# This prevents any ports from trying to run interactively - some, like the
# net-snmp port, ask silly questions without this option.
70 71 72
#
.MAKEFLAGS+=	-DBATCH

Mike Hibler's avatar
Mike Hibler committed
73
#
74 75
# XXX not really build dependencies, but these Emulab-specific ports need
# to get installed before any attempt to install the standard versions.
Mike Hibler's avatar
Mike Hibler committed
76
#
77
.if (${PORTVERSION} == "1.4" || ${PORTVERSION} == "2.0")
Mike Hibler's avatar
Mike Hibler committed
78
BUILD_DEPENDS=	\
79 80 81 82 83 84
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50
.elif (${PORTVERSION} == "4.0")
# back to a standard p5-DBD-mysql50 install
BUILD_DEPENDS=	\
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/DBD/mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50 \
	${LOCALBASE}/libexec/apache22/libphp${PHP_VER}.so:${PORTSDIR}/misc/emulab-php${PHP_VER}
Mike Hibler's avatar
Mike Hibler committed
85 86
.else
BUILD_DEPENDS=	\
87 88
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/misc/p5-DBD-mysql50-old \
	${LOCALBASE}/libexec/apache/libphp${PHP_VER}.so:${PORTSDIR}/misc/emulab-php${PHP_VER}
Mike Hibler's avatar
Mike Hibler committed
89 90
.endif

91
LIB_DEPENDS= ulsshxmlrpcpp.0:${PORTSDIR}/misc/ulsshxmlrpcpp
92

93 94
.if ${OSMAJOR} < 8
LIB_DEPENDS+= lthread.[236]:${PORTSDIR}/devel/linuxthreads
95
.endif
Kirk Webb's avatar
 
Kirk Webb committed
96
.if ${OSMAJOR} >= 6
97
LIB_DEPENDS+= mhash.2:${PORTSDIR}/security/mhash \
Kirk Webb's avatar
 
Kirk Webb committed
98
	mysqlclient.15:${PORTSDIR}/databases/mysql50-client
99
.endif
Mike Hibler's avatar
Mike Hibler committed
100 101 102
.if ${OSMAJOR} >= 7
LIB_DEPENDS+= xmlrpc.9:${PORTSDIR}/net/xmlrpc-c
.endif
103

104 105 106 107 108 109 110
.if defined(ELVIN_COMPAT)
LIB_DEPENDS+= vin4.2:${PORTSDIR}/misc/libelvin \
	pubsub.1:${PORTSDIR}/misc/emulab-pubsub-elvincompat
.else
LIB_DEPENDS+= pubsub.1:${PORTSDIR}/misc/emulab-pubsub
.endif

111 112 113 114 115 116
# We need the BUILD_DEPENDS above to wind up in the dependency list
RUN_DEPENDS:= ${BUILD_DEPENDS}

RUN_DEPENDS+=	\
	gmake:${PORTSDIR}/devel/gmake \
	git:${PORTSDIR}/devel/git \
117
	sudo:${PORTSDIR}/security/sudo \
118
	rsync:${PORTSDIR}/net/rsync \
119
	otclsh:${PORTSDIR}/lang/otcl \
120
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/BSD/Resource.pm:${PORTSDIR}/devel/p5-BSD-Resource \
121
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Time/HiRes.pm:${PORTSDIR}/devel/p5-Time-HiRes \
122
	wget:${PORTSDIR}/ftp/wget
123 124 125 126

.if defined(ELVIN_COMPAT)
RUN_DEPENDS+= ${LOCALBASE}/libexec/elvind:${PORTSDIR}/misc/elvind
.endif
Robert Ricci's avatar
Robert Ricci committed
127

128 129 130 131 132 133 134 135 136 137 138 139 140
# apache related ports
.if ${PORTVERSION} == "4.0"
RUN_DEPENDS+=	\
	${LOCALBASE}/libexec/apache22/mod_ssl.so:${PORTSDIR}/${APACHE_PORT} \
	${LOCALBASE}/libexec/apache22/mod_fastcgi.so:${PORTSDIR}/www/mod_fastcgi
.else
RUN_DEPENDS+=	\
	${LOCALBASE}/etc/apache/ssl.crl:${PORTSDIR}/${APACHE_PORT} \
	mod_auth_mysql>1:${PORTSDIR}/www/mod_auth_mysql
.endif

# m2crypto port
.if (${PORTVERSION} == "3.0" || ${PORTVERSION} == "3.1" || ${PORTVERSION} == "4.0")
141
# must handle patching of m2crypto when the port is built
142
# also needs swig to install!
143
RUN_DEPENDS+=	\
144 145
	${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/misc/emulab-py-m2crypto \
	swig:${PORTSDIR}/devel/swig13
146 147 148 149 150 151
.else
# for older version we can patch the standard m2crypto once installed
RUN_DEPENDS+=	\
	${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/security/py-m2crypto
.endif

152 153 154 155 156 157 158 159 160 161
# misc. old vs. new port stuff
.if ${PORTVERSION} == "4.0"
RUN_DEPENDS+=	\
	autoconf:${PORTSDIR}/devel/autoconf \
	libtool:${PORTSDIR}/devel/libtool
.else
RUN_DEPENDS+=	\
	autoconf-2.13:${PORTSDIR}/devel/autoconf213
.endif

Kirk Webb's avatar
 
Kirk Webb committed
162
.if ${OSMAJOR} >= 6
163
RUN_DEPENDS+= \
Kirk Webb's avatar
 
Kirk Webb committed
164
	${LOCALBASE}/libexec/mysqld:${PORTSDIR}/databases/mysql50-server \
165 166
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/DBI.pm:${PORTSDIR}/databases/p5-DBI \
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/XML/Parser:${PORTSDIR}/textproc/p5-XML-Parser \
Kirk Webb's avatar
 
Kirk Webb committed
167 168
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/XML/Simple.pm:${PORTSDIR}/textproc/p5-XML-Simple \
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/CGI/Session.pm:${PORTSDIR}/www/p5-CGI-Session \
Kirk Webb's avatar
 
Kirk Webb committed
169
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/GD/Graph.pm:${PORTSDIR}/graphics/p5-GD-Graph \
170
	${LOCALBASE}/sbin/cvsd:${PORTSDIR}/devel/cvsd \
Kirk Webb's avatar
 
Kirk Webb committed
171 172
        ${LOCALBASE}/share/adodb/adodb.inc.php:${PORTSDIR}/databases/adodb \
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/HTML/Parser.pm:${PORTSDIR}/www/p5-HTML-Parser \
173
	${PYTHON_PKGNAMEPREFIX}MySQLdb>0:${PORTSDIR}/databases/py-MySQLdb \
Kirk Webb's avatar
 
Kirk Webb committed
174
        curl:${PORTSDIR}/ftp/curl \
175
        snort:${PORTSDIR}/security/snort \
Kirk Webb's avatar
 
Kirk Webb committed
176
	mysqlhotcopy:${PORTSDIR}/databases/mysql50-scripts
177 178 179
.else
RUN_DEPENDS+= smbd:${PORTSDIR}/net/samba3
.endif
180

181 182 183
# make sure these get installed
RUN_DEPENDS+=	\
	${X11BASE}/libdata/xorg/libraries:${PORTSDIR}/x11/xorg-libraries
184

185
NO_BUILD=	yes
Robert Ricci's avatar
Robert Ricci committed
186
USE_PYTHON=	yes
187
USE_PERL5=	yes
188 189 190 191

do-install:	# empty

.include <bsd.port.mk>