Makefile 6.53 KB
Newer Older
1
2
3
# New ports collection makefile for: emulab-boss
# Date created:         28 January 2003
# Whom:                 ricci@cs.utah.edu
4
# Updated:              1 October 2009 jwalsh@atl.lmco.com
5

6
7
# Need the major version number to figure out to do.
OSMAJOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/\..*//'
8
OSMINOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/'
9

10
PORTNAME=	emulab-boss
11
12
13
.if ${OSMAJOR} > 6
PORTVERSION=	3.0
.else
Mike Hibler's avatar
Mike Hibler committed
14
.if ${OSMAJOR} > 5
15
16
17
.if ${OSMINOR} >= 3
PORTVERSION=	2.1
.else
18
PORTVERSION=	2.0
19
.endif
20
.else
21
PORTVERSION=	1.7
22
.endif
23
.endif
24
25
26
27
CATEGORIES=	misc
MASTER_SITES=	#none
DISTFILES=	#none
EXTRACT_ONLY=	#none
28
COMMENT=	"Meta-port for an emulab boss node"
29

30
31
MAINTAINER=	ricci@cs.utah.edu

32
33
34
#
# We set this so that the mysql server port doesn't do name resolution
#
35
.MAKEFLAGS+=	-DSKIP_DNS_CHECK
36

37
#
38
# We must make sure PERL is built with this.
39
#
40
.MAKEFLAGS+=	ENABLE_SUIDPERL=yes
41
.if ${PORTVERSION} == "3.0"
42
.MAKEFLAGS+=	PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach
43
.endif
44
45
46

#
# For SWIG, so that it doesn't feel the need to suck in php and apache
47
# XXX Something is broken on FreeBSD 6.X and SWIG_LANGUAGES='x y z' breaks.
48
#
49
50
.MAKEFLAGS+=	SWIG_LANGUAGES= 
.MAKEFLAGS+=    WANT_SWIG_PERL=yes WANT_SWIG_PYTHON=yes WANT_SWIG_TCL=yes
51

52
53
54
55
56
#
# Have not taken the plunge to PHP5
#
.MAKEFLAGS+=	PHP_VER=4

57
#
58
59
# Various ports need to agree on what version of apache. Make sure this
# agrees with what is in the emulab-ops and emulab-php4 metaports.
60
#
61
.MAKEFLAGS+=	-DWITH_APACHE
62
63
.MAKEFLAGS+=	APACHE_PORT=www/apache13-modssl

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

70
71
72
73
#
# XXX not really a build dependency, but needs to get installed before
# any attempt to install mysql50-* ports
#
74
.if (${PORTVERSION} == "2.1" || ${PORTVERSION} == "3.0")
75
76
77
78
79
80
81
BUILD_DEPENDS=	\
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/misc/p5-DBD-mysql50-old
.else
BUILD_DEPENDS=	\
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50
.endif

82
LIB_DEPENDS= gd.4:${PORTSDIR}/graphics/gd \
Mike Hibler's avatar
Mike Hibler committed
83
	lthread.[236]:${PORTSDIR}/devel/linuxthreads \
84
	mhash.2:${PORTSDIR}/security/mhash \
Kirk Webb's avatar
   
Kirk Webb committed
85
	mysqlclient.15:${PORTSDIR}/databases/mysql50-client \
86
	snmp.4:${PORTSDIR}/net-mgmt/net-snmp4 \
87
	ulsshxmlrpcpp.0:${PORTSDIR}/misc/ulsshxmlrpcpp
88

89
90
91
92
93
94
95
96
97
98
99
100
101
#
# Until/unless the pubsub Makefile is changed, we must include libelvin.
# This is because the pubsub libraries have to be built with ELVIN_COMPAT
# to talk to pubsub on ops, and building with compat means that the gateway
# will be built.  Building that requires elvin libraries...
#
.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

102
103
RUN_DEPENDS=	\
	${LOCALBASE}/etc/apache/ssl.crl:${PORTSDIR}/www/apache13-modssl \
104
	mod_auth_mysql>1:${PORTSDIR}/www/mod_auth_mysql \
105
	fping:${PORTSDIR}/net/fping \
106
	rsync:${PORTSDIR}/net/rsync \
107
	neato:${PORTSDIR}/graphics/graphviz \
108
        swish-e:${PORTSDIR}/www/swish-e \
Kirk Webb's avatar
   
Kirk Webb committed
109
	${LOCALBASE}/libexec/mysqld:${PORTSDIR}/databases/mysql50-server \
110
	anytopnm:${PORTSDIR}/graphics/netpbm \
Kirk Webb's avatar
   
Kirk Webb committed
111
	tclsh8.4:${PORTSDIR}/lang/tcl84 \
112
113
	otclsh:${PORTSDIR}/lang/otcl \
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/GD.pm:${PORTSDIR}/misc/p5-GD-old \
114
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/SNMP.pm:${PORTSDIR}/net-mgmt/p5-SNMP \
115
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/SNMP_Session.pm:${PORTSDIR}/net-mgmt/p5-SNMP_Session \
116
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/BSD/Resource.pm:${PORTSDIR}/devel/p5-BSD-Resource \
117
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Time/HiRes.pm:${PORTSDIR}/devel/p5-Time-HiRes \
118
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/MD5.pm:${PORTSDIR}/security/p5-MD5 \
Mike Hibler's avatar
Mike Hibler committed
119
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/IO/Pty.pm:${PORTSDIR}/devel/p5-IO-Tty \
120
	rpm:${PORTSDIR}/archivers/rpm \
121
	xvcg:${PORTSDIR}/graphics/vcg \
122
	${LOCALBASE}/libexec/tftpd:${PORTSDIR}/misc/emulab-tftp-hpa \
123
	sudo:${PORTSDIR}/security/sudo \
124
	wget:${PORTSDIR}/ftp/wget \
125
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/XML/Parser:${PORTSDIR}/textproc/p5-XML-Parser \
126
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/RPC/XML.pm:${PORTSDIR}/net/p5-RPC-XML \
127
	${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/security/py-m2crypto \
128
	gmake:${PORTSDIR}/devel/gmake \
129
	kmetis:${PORTSDIR}/math/metis \
130
        curl:${PORTSDIR}/ftp/curl \
Kirk Webb's avatar
   
Kirk Webb committed
131
132
	${PYTHON_SITELIBDIR}/MySQLdb/times.py:${PORTSDIR}/databases/py-MySQLdb \
	mysqlhotcopy:${PORTSDIR}/databases/mysql50-scripts
133

134
135
136
137
.if (${PORTVERSION} == "2.1" || ${PORTVERSION} == "3.0")
.if ${PORTVERSION} == "3.0"
RUN_DEPENDS+=	\
	dhcpd:${PORTSDIR}/net/isc-dhcp30-server \
138
	${LOCALBASE}/include/boost:${PORTSDIR}/devel/boost
139
140
141
142
143
.else
RUN_DEPENDS+=	\
	dhcpd:${PORTSDIR}/net/isc-dhcp3-server \
	${LOCALBASE}/include/boost:${PORTSDIR}/devel/boost
.endif
Mike Hibler's avatar
Mike Hibler committed
144
145
RUN_DEPENDS+=	\
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/XML/Parser.pm:${PORTSDIR}/textproc/p5-XML-Parser
146
147
148
# not sure why this is just needed for 6.3
RUN_DEPENDS+=	\
	${X11BASE}/libdata/xorg/libraries:${PORTSDIR}/x11/xorg-libraries
149
150
.endif

Kirk Webb's avatar
   
Kirk Webb committed
151
.if ${OSMAJOR} >= 6
152
RUN_DEPENDS+= \
153
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/DBI.pm:${PORTSDIR}/databases/p5-DBI \
Kirk Webb's avatar
   
Kirk Webb committed
154
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/XML/Simple.pm:${PORTSDIR}/textproc/p5-XML-Simple \
155
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/XML/LibXML.pm:${PORTSDIR}/textproc/p5-XML-LibXML \
Leigh B. Stoller's avatar
Leigh B. Stoller committed
156
157
	swig:${PORTSDIR}/devel/swig13 \
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/Date/Parse.pm:${PORTSDIR}/devel/p5-TimeDate
158
159
160
161
162
163
.else
RUN_DEPENDS+= cvsup:${PORTSDIR}/net/cvsup-without-gui \
	${LOCALBASE}/libexec/apache/libphp4.so:${PORTSDIR}/www/mod_php4 \
	${LOCALBASE}/include/php/ext/openssl/php_openssl.h:${PORTSDIR}/lang/php4-extensions \
	${LOCALBASE}/lib/tcl8.4/sql1.0/libTclMySQL.so.1:${PORTSDIR}/databases/tcl-Mysql \
	${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/DBI.pm:${PORTSDIR}/databases/p5-DBI-137 \
Kirk Webb's avatar
   
Kirk Webb committed
164
165
	swig1.1:${PORTSDIR}/devel/swig11 \
	${LOCALBASE}/sbin/named:${PORTSDIR}/dns/bind9
166
.endif
167

168
169
170
171
172
173
# this wasn't getting installed correctly
.if ${OSMAJOR} >= 7
RUN_DEPENDS+= \
	${LOCALBASE}/libexec/apache/libphp4.so:${PORTSDIR}/misc/emulab-php4
.endif

174
USE_PERL5=	yes
175
USE_PYTHON=	yes
176
177
178
179
180
181

NO_BUILD=	yes

do-install:	# empty

.include <bsd.port.mk>
182
183
184
185
186
187
188

vars:
	@echo "PORTVERSION=$(PORTVERSION)"
	@echo ".MAKEFLAGS=$(.MAKEFLAGS)"
	@echo "BUILD_DEPENDS=$(BUILD_DEPENDS)"
	@echo "LIB_DEPENDS=$(LIB_DEPENDS)"
	@echo "RUN_DEPENDS=$(RUN_DEPENDS)"