Commit 2dfb6460 authored by Mike Hibler's avatar Mike Hibler

Update the port infrastructure for FreeBSD 8.2 support.

Still a work in progress.
parent abb3fb3d
...@@ -3,28 +3,10 @@ ...@@ -3,28 +3,10 @@
# Whom: ricci@cs.utah.edu # Whom: ricci@cs.utah.edu
# Updated: 1 October 2009 jwalsh@atl.lmco.com # Updated: 1 October 2009 jwalsh@atl.lmco.com
# Need the major version number to figure out to do. .include "../emulab-boss/Makefile.emulab"
OSMAJOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/\..*//'
OSMINOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/'
PORTNAME= emulab-boss PORTNAME= emulab-boss
.if ${OSMAJOR} > 6 PORTVERSION= ${EMULAB_PORTVERSION}
.if ${OSMINOR} > 2
PORTVERSION= 3.1
.else
PORTVERSION= 3.0
.endif
.else
.if ${OSMAJOR} > 5
.if ${OSMINOR} >= 3
PORTVERSION= 2.1
.else
PORTVERSION= 2.0
.endif
.else
PORTVERSION= 1.7
.endif
.endif
CATEGORIES= misc CATEGORIES= misc
MASTER_SITES= #none MASTER_SITES= #none
DISTFILES= #none DISTFILES= #none
...@@ -33,21 +15,6 @@ COMMENT= "Meta-port for an Emulab boss node" ...@@ -33,21 +15,6 @@ COMMENT= "Meta-port for an Emulab boss node"
MAINTAINER= testbed-ops@flux.utah.edu MAINTAINER= testbed-ops@flux.utah.edu
#
# Select PHP and Apache versions
# Fix up some port diffs
#
.if ${PORTVERSION} == "3.1"
PHP_VER= 5
PERL_VER= 5.10.1
BOOST_PORT= devel/boost-all
P5SNMP_PORT= misc/p5-SNMP
.else
PHP_VER= 4
BOOST_PORT= devel/boost
P5SNMP_PORT= net-mgmt/p5-SNMP
.endif
# #
# We set this so that the mysql server port doesn't do name resolution # We set this so that the mysql server port doesn't do name resolution
# #
...@@ -57,13 +24,11 @@ P5SNMP_PORT= net-mgmt/p5-SNMP ...@@ -57,13 +24,11 @@ P5SNMP_PORT= net-mgmt/p5-SNMP
# We must make sure PERL is built with this. # We must make sure PERL is built with this.
# #
.MAKEFLAGS+= ENABLE_SUIDPERL=yes .MAKEFLAGS+= ENABLE_SUIDPERL=yes
.if ${PORTVERSION} == "3.1" .if (${PORTVERSION} == "3.1" || ${PORTVERSION} == "4.0")
.MAKEFLAGS+= PERL_VERSION=5.10.1 PERL_VER=5.10.1 PERL_ARCH=mach .MAKEFLAGS+= PERL_VERSION=5.10.1 PERL_VER=5.10.1 PERL_ARCH=mach
.else .elif ${PORTVERSION} == "3.0"
.if ${PORTVERSION} == "3.0"
.MAKEFLAGS+= PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach .MAKEFLAGS+= PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach
.endif .endif
.endif
# #
# For SWIG, so that it doesn't feel the need to suck in php and apache # For SWIG, so that it doesn't feel the need to suck in php and apache
...@@ -83,7 +48,12 @@ P5SNMP_PORT= net-mgmt/p5-SNMP ...@@ -83,7 +48,12 @@ P5SNMP_PORT= net-mgmt/p5-SNMP
# agrees with what is in the emulab-ops and emulab-php* metaports. # agrees with what is in the emulab-ops and emulab-php* metaports.
# #
.MAKEFLAGS+= -DWITH_APACHE .MAKEFLAGS+= -DWITH_APACHE
.if ${PORTVERSION} == "4.0"
.MAKEFLAGS+= APACHE_PORT=www/apache22
.MAKEFLAGS+= WITH_SUEXEC=yes
.else
.MAKEFLAGS+= APACHE_PORT=www/apache13-modssl .MAKEFLAGS+= APACHE_PORT=www/apache13-modssl
.endif
# #
# Use the base version of openssl # Use the base version of openssl
...@@ -97,25 +67,32 @@ P5SNMP_PORT= net-mgmt/p5-SNMP ...@@ -97,25 +67,32 @@ P5SNMP_PORT= net-mgmt/p5-SNMP
.MAKEFLAGS+= -DBATCH .MAKEFLAGS+= -DBATCH
# #
# XXX not rbuild dependencies, but these Emulab-specific ports need to get # XXX not really build dependencies, but these Emulab-specific ports need
# installed before any attempt to install the standard versions. # to get installed before any attempt to install the standard versions.
# #
.if (${PORTVERSION} == "2.1" || ${PORTVERSION} == "3.0" || ${PORTVERSION} == "3.1") .if (${PORTVERSION} == "1.7" || ${PORTVERSION} == "2.0")
BUILD_DEPENDS= \ BUILD_DEPENDS= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/misc/p5-DBD-mysql50-old \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50
${LOCALBASE}/libexec/apache/libphp${PHP_VER}.so:${PORTSDIR}/misc/emulab-php${PHP_VER} .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}
.else .else
BUILD_DEPENDS= \ BUILD_DEPENDS= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50 ${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}
.endif .endif
LIB_DEPENDS= gd.4:${PORTSDIR}/graphics/gd \ LIB_DEPENDS= gd.4:${PORTSDIR}/graphics/gd \
lthread.[236]:${PORTSDIR}/devel/linuxthreads \
mhash.2:${PORTSDIR}/security/mhash \ mhash.2:${PORTSDIR}/security/mhash \
mysqlclient.15:${PORTSDIR}/databases/mysql50-client \ mysqlclient.15:${PORTSDIR}/databases/mysql50-client \
snmp.4:${PORTSDIR}/net-mgmt/net-snmp4 \ snmp.4:${PORTSDIR}/misc/net-snmp4 \
ulsshxmlrpcpp.0:${PORTSDIR}/misc/ulsshxmlrpcpp ulsshxmlrpcpp.0:${PORTSDIR}/misc/ulsshxmlrpcpp
.if ${OSMAJOR} < 8
LIB_DEPENDS+= lthread.[236]:${PORTSDIR}/devel/linuxthreads
.endif
.if ${OSMAJOR} >= 6 .if ${OSMAJOR} >= 6
LIB_DEPENDS+= xerces-c.27:${PORTSDIR}/textproc/xerces-c2 LIB_DEPENDS+= xerces-c.27:${PORTSDIR}/textproc/xerces-c2
.endif .endif
...@@ -140,8 +117,6 @@ LIB_DEPENDS+= pubsub.1:${PORTSDIR}/misc/emulab-pubsub ...@@ -140,8 +117,6 @@ LIB_DEPENDS+= pubsub.1:${PORTSDIR}/misc/emulab-pubsub
RUN_DEPENDS:= ${BUILD_DEPENDS} RUN_DEPENDS:= ${BUILD_DEPENDS}
RUN_DEPENDS+= \ RUN_DEPENDS+= \
${LOCALBASE}/etc/apache/ssl.crl:${PORTSDIR}/www/apache13-modssl \
mod_auth_mysql>1:${PORTSDIR}/www/mod_auth_mysql \
fping:${PORTSDIR}/net/fping \ fping:${PORTSDIR}/net/fping \
rsync:${PORTSDIR}/net/rsync \ rsync:${PORTSDIR}/net/rsync \
neato:${PORTSDIR}/graphics/graphviz \ neato:${PORTSDIR}/graphics/graphviz \
...@@ -166,14 +141,25 @@ RUN_DEPENDS+= \ ...@@ -166,14 +141,25 @@ RUN_DEPENDS+= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/RPC/XML.pm:${PORTSDIR}/net/p5-RPC-XML \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/RPC/XML.pm:${PORTSDIR}/net/p5-RPC-XML \
${LOCALBASE}/include/boost:${PORTSDIR}/${BOOST_PORT} \ ${LOCALBASE}/include/boost:${PORTSDIR}/${BOOST_PORT} \
gmake:${PORTSDIR}/devel/gmake \ gmake:${PORTSDIR}/devel/gmake \
autoconf-2.13:${PORTSDIR}/devel/autoconf213 \
git:${PORTSDIR}/devel/git \ git:${PORTSDIR}/devel/git \
kmetis:${PORTSDIR}/math/metis \ kmetis:${PORTSDIR}/math/metis \
curl:${PORTSDIR}/ftp/curl \ curl:${PORTSDIR}/ftp/curl \
${PYTHON_SITELIBDIR}/MySQLdb/times.py:${PORTSDIR}/databases/py-MySQLdb \ ${PYTHON_PKGNAMEPREFIX}MySQLdb>0:${PORTSDIR}/databases/py-MySQLdb \
mysqlhotcopy:${PORTSDIR}/databases/mysql50-scripts mysqlhotcopy:${PORTSDIR}/databases/mysql50-scripts
.if (${PORTVERSION} == "3.0" || ${PORTVERSION} == "3.1") # 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")
# must handle patching of m2crypto when the port is built # must handle patching of m2crypto when the port is built
RUN_DEPENDS+= \ RUN_DEPENDS+= \
${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/misc/emulab-py-m2crypto ${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/misc/emulab-py-m2crypto
...@@ -183,28 +169,39 @@ RUN_DEPENDS+= \ ...@@ -183,28 +169,39 @@ RUN_DEPENDS+= \
${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/security/py-m2crypto ${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/security/py-m2crypto
.endif .endif
.if (${PORTVERSION} == "2.1" || ${PORTVERSION} == "3.0" || ${PORTVERSION} == "3.1") # dhcpd port
.if ${PORTVERSION} != "2.1" .if ${PORTVERSION} == "4.0"
RUN_DEPENDS+= \
dhcpd:${PORTSDIR}/net/isc-dhcp42-server
.elif (${PORTVERSION} == "3.1" || ${PORTVERSION} == "3.0")
RUN_DEPENDS+= \ RUN_DEPENDS+= \
dhcpd:${PORTSDIR}/net/isc-dhcp30-server dhcpd:${PORTSDIR}/net/isc-dhcp30-server
.else .elif ${PORTVERSION} == "2.1"
RUN_DEPENDS+= \ RUN_DEPENDS+= \
dhcpd:${PORTSDIR}/net/isc-dhcp3-server dhcpd:${PORTSDIR}/net/isc-dhcp3-server
.endif .endif
# 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
.if (${PORTVERSION} == "1.7" || ${PORTVERSION} == "2.0")
# for old versions there used to be a problem with newer GD + older perl
RUN_DEPENDS+= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/GD.pm:${PORTSDIR}/misc/p5-GD-old
.else
RUN_DEPENDS+= \ RUN_DEPENDS+= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/GD.pm:${PORTSDIR}/graphics/p5-GD \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/XML/Parser.pm:${PORTSDIR}/textproc/p5-XML-Parser \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/XML/Parser.pm:${PORTSDIR}/textproc/p5-XML-Parser \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/RPC/Async.pm:${PORTSDIR}/misc/p5-RPC-Async \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/RPC/Async.pm:${PORTSDIR}/misc/p5-RPC-Async \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/Privileges/Drop.pm:${PORTSDIR}/misc/p5-Privileges-Drop \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/Privileges/Drop.pm:${PORTSDIR}/misc/p5-Privileges-Drop \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/IO/EventMux.pm:${PORTSDIR}/misc/p5-IO-EventMux \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/IO/EventMux.pm:${PORTSDIR}/misc/p5-IO-EventMux \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/IO/EventMux/Socket/MsgHdr.pm:${PORTSDIR}/misc/p5-IO-EventMux-Socket-MsgHdr ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/IO/EventMux/Socket/MsgHdr.pm:${PORTSDIR}/misc/p5-IO-EventMux-Socket-MsgHdr
# not getting installed via dependencies?
RUN_DEPENDS+= \
${X11BASE}/libdata/xorg/libraries:${PORTSDIR}/x11/xorg-libraries \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/GD.pm:${PORTSDIR}/graphics/p5-GD
.else
# for old versions there used to be a problem with newer GD + older perl
RUN_DEPENDS+= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/GD.pm:${PORTSDIR}/misc/p5-GD-old
.endif .endif
.if ${OSMAJOR} >= 6 .if ${OSMAJOR} >= 6
...@@ -224,6 +221,10 @@ RUN_DEPENDS+= cvsup:${PORTSDIR}/net/cvsup-without-gui \ ...@@ -224,6 +221,10 @@ RUN_DEPENDS+= cvsup:${PORTSDIR}/net/cvsup-without-gui \
${LOCALBASE}/sbin/named:${PORTSDIR}/dns/bind9 ${LOCALBASE}/sbin/named:${PORTSDIR}/dns/bind9
.endif .endif
# make sure these get installed
RUN_DEPENDS+= \
${X11BASE}/libdata/xorg/libraries:${PORTSDIR}/x11/xorg-libraries
USE_PERL5= yes USE_PERL5= yes
USE_PYTHON= yes USE_PYTHON= yes
...@@ -240,3 +241,4 @@ vars: ...@@ -240,3 +241,4 @@ vars:
@echo "LIB_DEPENDS=$(LIB_DEPENDS)" @echo "LIB_DEPENDS=$(LIB_DEPENDS)"
@echo "RUN_DEPENDS=$(RUN_DEPENDS)" @echo "RUN_DEPENDS=$(RUN_DEPENDS)"
@echo "PERL_VER/ARCH=${PERL_VER}/${PERL_ARCH}" @echo "PERL_VER/ARCH=${PERL_VER}/${PERL_ARCH}"
@echo "PYTHON_PKGNAMEPREFIX=${PYTHON_PKGNAMEPREFIX}"
#
# Common settings for Emulab ports.
#
.if !defined(EMULAB_PORTVERSION)
OSMAJOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/\..*//'
OSMINOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/'
.if ${OSMAJOR} > 7
EMULAB_PORTVERSION= 4.0
.else
. if ${OSMAJOR} > 6
. if ${OSMINOR} > 2
EMULAB_PORTVERSION= 3.1
. else
EMULAB_PORTVERSION= 3.0
. endif
. else
. if ${OSMAJOR} > 5
. if ${OSMINOR} >= 3
EMULAB_PORTVERSION= 2.1
. else
EMULAB_PORTVERSION= 2.0
. endif
. else
EMULAB_PORTVERSION= 1.7
. endif
. endif
.endif
#
# Select PHP and Apache versions
# Fix up some port diffs
#
.if ${EMULAB_PORTVERSION} == "4.0"
PHP_VER= 5
PERL_VER= 5.10.1
APACHE_PORT= www/apache22
BOOST_PORT= devel/boost-all
P5SNMP_PORT= misc/p5-SNMP
.elif ${EMULAB_PORTVERSION} == "3.1"
PHP_VER= 5
PERL_VER= 5.10.1
APACHE_PORT= www/apache13-modssl
BOOST_PORT= devel/boost-all
P5SNMP_PORT= misc/p5-SNMP
.else
PHP_VER= 4
APACHE_PORT= www/apache13-modssl
BOOST_PORT= devel/boost
P5SNMP_PORT= net-mgmt/p5-SNMP
.endif
.endif
# New ports collection makefile for: emulab-fs # New ports collection makefile for: emulab-fs
# #
# Need the major version number to figure out to do. .include "../emulab-boss/Makefile.emulab"
OSMAJOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/\..*//'
OSMINOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/'
PORTNAME= emulab-fs # XXX deal with out-of-sync-edness of original boss/ops ports
.if ${OSMAJOR} > 6 .if ${EMULAB_PORTVERSION} == "1.7"
.if ${OSMINOR} > 2 EMULAB_PORTVERSION= 1.4
PORTVERSION= 3.1
.else
PORTVERSION= 3.0
.endif
.else
.if ${OSMAJOR} > 5
.if ${OSMINOR} >= 3
PORTVERSION= 2.1
.else
PORTVERSION= 2.0
.endif
.else
PORTVERSION= 1.4
.endif
.endif .endif
PORTNAME= emulab-fs
PORTVERSION= ${EMULAB_PORTVERSION}
CATEGORIES= misc CATEGORIES= misc
MASTER_SITES= #none MASTER_SITES= #none
DISTFILES= #none DISTFILES= #none
...@@ -45,29 +32,37 @@ PHP_VER= 4 ...@@ -45,29 +32,37 @@ PHP_VER= 4
# We must make sure PERL is built with this. # We must make sure PERL is built with this.
# #
.MAKEFLAGS+= ENABLE_SUIDPERL=yes .MAKEFLAGS+= ENABLE_SUIDPERL=yes
.if ${PORTVERSION} == "3.1" .if (${PORTVERSION} == "3.1" || ${PORTVERSION} == "4.0")
.MAKEFLAGS+= PERL_VERSION=5.10.1 PERL_VER=5.10.1 PERL_ARCH=mach .MAKEFLAGS+= PERL_VERSION=5.10.1 PERL_VER=5.10.1 PERL_ARCH=mach
.else .elif ${PORTVERSION} == "3.0"
.if ${PORTVERSION} == "3.0"
.MAKEFLAGS+= PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach .MAKEFLAGS+= PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach
.endif .endif
.endif
# #
# For samba, so that it doesn't suck in everything under the sun # For samba, so that it doesn't suck in everything under the sun
# #
.MAKEFLAGS+= -DWITHOUT_WINBIND -DWITHOUT_LDAP -DWITHOUT_POPT -DWITHOUT_CUPS .MAKEFLAGS+= -DWITHOUT_WINBIND -DWITHOUT_LDAP -DWITHOUT_POPT -DWITHOUT_CUPS -DWITHOUT_IPV6
# #
# This prevents any ports from trying to run interactively - some, ask silly # This prevents any ports from trying to run interactively - some, like the
# questions without this option. # net-snmp port, ask silly questions without this option.
# #
.MAKEFLAGS+= -DBATCH .MAKEFLAGS+= -DBATCH
# We need the BUILD_DEPENDS above to wind up in the dependency list
RUN_DEPENDS:= ${BUILD_DEPENDS}
RUN_DEPENDS= gmake:${PORTSDIR}/devel/gmake \ RUN_DEPENDS= gmake:${PORTSDIR}/devel/gmake \
sudo:${PORTSDIR}/security/sudo \ sudo:${PORTSDIR}/security/sudo \
rsync:${PORTSDIR}/net/rsync \ rsync:${PORTSDIR}/net/rsync \
.if ${PORTVERSION} == "4.0"
RUN_DEPENDS+= \
smbd:${PORTSDIR}/net/samba36
.else
RUN_DEPENDS+= \
smbd:${PORTSDIR}/net/samba3 smbd:${PORTSDIR}/net/samba3
.endif
NO_BUILD= yes NO_BUILD= yes
......
...@@ -2,28 +2,15 @@ ...@@ -2,28 +2,15 @@
# Date created: 28 January 2003 # Date created: 28 January 2003
# Whom: ricci@cs.utah.edu # Whom: ricci@cs.utah.edu
# Need the major version number to figure out to do. .include "../emulab-boss/Makefile.emulab"
OSMAJOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/\..*//'
OSMINOR!= /usr/bin/uname -r | /usr/bin/sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/'
PORTNAME= emulab-ops # XXX deal with out-of-sync-edness of original boss/ops ports
.if ${OSMAJOR} > 6 .if ${EMULAB_PORTVERSION} == "1.7"
.if ${OSMINOR} > 2 EMULAB_PORTVERSION= 1.4
PORTVERSION= 3.1
.else
PORTVERSION= 3.0
.endif
.else
.if ${OSMAJOR} > 5
.if ${OSMINOR} >= 3
PORTVERSION= 2.1
.else
PORTVERSION= 2.0
.endif
.else
PORTVERSION= 1.4
.endif
.endif .endif
PORTNAME= emulab-ops
PORTVERSION= ${EMULAB_PORTVERSION}
CATEGORIES= misc CATEGORIES= misc
MASTER_SITES= #none MASTER_SITES= #none
DISTFILES= #none DISTFILES= #none
...@@ -32,17 +19,6 @@ COMMENT= "Meta-port for an Emulab ops node" ...@@ -32,17 +19,6 @@ COMMENT= "Meta-port for an Emulab ops node"
MAINTAINER= testbed-ops@flux.utah.edu MAINTAINER= testbed-ops@flux.utah.edu
#
# Select PHP and Apache versions
# Fix up some port diffs
#
.if ${PORTVERSION} == "3.1"
PHP_VER= 5
PERL_VER= 5.10.1
.else
PHP_VER= 4
.endif
# #
# We set this so that the mysql server port doesn't do name resolution # We set this so that the mysql server port doesn't do name resolution
# #
...@@ -52,13 +28,11 @@ PHP_VER= 4 ...@@ -52,13 +28,11 @@ PHP_VER= 4
# We must make sure PERL is built with this. # We must make sure PERL is built with this.
# #
.MAKEFLAGS+= ENABLE_SUIDPERL=yes .MAKEFLAGS+= ENABLE_SUIDPERL=yes
.if ${PORTVERSION} == "3.1" .if (${PORTVERSION} == "3.1" || ${PORTVERSION} == "4.0")
.MAKEFLAGS+= PERL_VERSION=5.10.1 PERL_VER=5.10.1 PERL_ARCH=mach .MAKEFLAGS+= PERL_VERSION=5.10.1 PERL_VER=5.10.1 PERL_ARCH=mach
.else .elif ${PORTVERSION} == "3.0"
.if ${PORTVERSION} == "3.0"
.MAKEFLAGS+= PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach .MAKEFLAGS+= PERL_VERSION=5.10.0 PERL_VER=5.10.0 PERL_ARCH=mach
.endif .endif
.endif
# #
# For SWIG, so that it doesn't feel the need to suck in php and apache # For SWIG, so that it doesn't feel the need to suck in php and apache
...@@ -78,7 +52,12 @@ PHP_VER= 4 ...@@ -78,7 +52,12 @@ PHP_VER= 4
# agrees with what is in the emulab-ops and emulab-php* metaports. # agrees with what is in the emulab-ops and emulab-php* metaports.
# #
.MAKEFLAGS+= -DWITH_APACHE .MAKEFLAGS+= -DWITH_APACHE
.if ${PORTVERSION} == "4.0"
.MAKEFLAGS+= APACHE_PORT=www/apache22
.MAKEFLAGS+= WITH_SUEXEC=yes
.else
.MAKEFLAGS+= APACHE_PORT=www/apache13-modssl .MAKEFLAGS+= APACHE_PORT=www/apache13-modssl
.endif
# #
# For samba, so that it doesn't suck in everything under the sun # For samba, so that it doesn't suck in everything under the sun
...@@ -86,34 +65,34 @@ PHP_VER= 4 ...@@ -86,34 +65,34 @@ PHP_VER= 4
.MAKEFLAGS+= -DWITHOUT_WINBIND -DWITHOUT_LDAP -DWITHOUT_POPT -DWITHOUT_CUPS .MAKEFLAGS+= -DWITHOUT_WINBIND -DWITHOUT_LDAP -DWITHOUT_POPT -DWITHOUT_CUPS
# #
# This prevents any ports from trying to run interactively - some, ask silly # This prevents any ports from trying to run interactively - some, like the
# questions without this option. # net-snmp port, ask silly questions without this option.
# #
.MAKEFLAGS+= -DBATCH .MAKEFLAGS+= -DBATCH
# #
# XXX not rbuild dependencies, but these Emulab-specific ports need to get # XXX not really build dependencies, but these Emulab-specific ports need
# installed before any attempt to install the standard versions. # to get installed before any attempt to install the standard versions.
# #
.if (${PORTVERSION} == "2.1" || ${PORTVERSION} == "3.0" || ${PORTVERSION} == "3.1") .if (${PORTVERSION} == "1.4" || ${PORTVERSION} == "2.0")
BUILD_DEPENDS= \ BUILD_DEPENDS= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/misc/p5-DBD-mysql50-old \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50
${LOCALBASE}/libexec/apache/libphp${PHP_VER}.so:${PORTSDIR}/misc/emulab-php${PHP_VER} .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}
.else .else
BUILD_DEPENDS= \ BUILD_DEPENDS= \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/Mysql.pm:${PORTSDIR}/databases/p5-DBD-mysql50 ${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}
.endif .endif
LIB_DEPENDS= lthread.[236]:${PORTSDIR}/devel/linuxthreads \ LIB_DEPENDS= ulsshxmlrpcpp.0:${PORTSDIR}/misc/ulsshxmlrpcpp
ulsshxmlrpcpp.0:${PORTSDIR}/misc/ulsshxmlrpcpp
.if defined(ELVIN_COMPAT) .if ${OSMAJOR} < 8
LIB_DEPENDS+= vin4.2:${PORTSDIR}/misc/libelvin \ LIB_DEPENDS+= lthread.[236]:${PORTSDIR}/devel/linuxthreads
pubsub.1:${PORTSDIR}/misc/emulab-pubsub-elvincompat
.else
LIB_DEPENDS+= pubsub.1:${PORTSDIR}/misc/emulab-pubsub
.endif .endif
.if ${OSMAJOR} >= 6 .if ${OSMAJOR} >= 6
LIB_DEPENDS+= mhash.2:${PORTSDIR}/security/mhash \ LIB_DEPENDS+= mhash.2:${PORTSDIR}/security/mhash \
mysqlclient.15:${PORTSDIR}/databases/mysql50-client mysqlclient.15:${PORTSDIR}/databases/mysql50-client
...@@ -122,12 +101,18 @@ LIB_DEPENDS+= mhash.2:${PORTSDIR}/security/mhash \ ...@@ -122,12 +101,18 @@ LIB_DEPENDS+= mhash.2:${PORTSDIR}/security/mhash \
LIB_DEPENDS+= xmlrpc.9:${PORTSDIR}/net/xmlrpc-c LIB_DEPENDS+= xmlrpc.9:${PORTSDIR}/net/xmlrpc-c
.endif .endif
.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
# We need the BUILD_DEPENDS above to wind up in the dependency list # We need the BUILD_DEPENDS above to wind up in the dependency list
RUN_DEPENDS:= ${BUILD_DEPENDS} RUN_DEPENDS:= ${BUILD_DEPENDS}
RUN_DEPENDS+= \ RUN_DEPENDS+= \
gmake:${PORTSDIR}/devel/gmake \ gmake:${PORTSDIR}/devel/gmake \
autoconf-2.13:${PORTSDIR}/devel/autoconf213 \
git:${PORTSDIR}/devel/git \ git:${PORTSDIR}/devel/git \
sudo:${PORTSDIR}/security/sudo \ sudo:${PORTSDIR}/security/sudo \
rsync:${PORTSDIR}/net/rsync \ rsync:${PORTSDIR}/net/rsync \
...@@ -140,7 +125,19 @@ RUN_DEPENDS+= \ ...@@ -140,7 +125,19 @@ RUN_DEPENDS+= \
RUN_DEPENDS+= ${LOCALBASE}/libexec/elvind:${PORTSDIR}/misc/elvind RUN_DEPENDS+= ${LOCALBASE}/libexec/elvind:${PORTSDIR}/misc/elvind
.endif .endif
.if (${PORTVERSION} == "3.0" || ${PORTVERSION} == "3.1") # 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")
# must handle patching of m2crypto when the port is built # must handle patching of m2crypto when the port is built
# also needs swig to install! # also needs swig to install!
RUN_DEPENDS+= \ RUN_DEPENDS+= \
...@@ -152,10 +149,18 @@ RUN_DEPENDS+= \ ...@@ -152,10 +149,18 @@ RUN_DEPENDS+= \
${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/security/py-m2crypto ${PYTHON_PKGNAMEPREFIX}m2crypto>0:${PORTSDIR}/security/py-m2crypto
.endif .endif
# 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
.if ${OSMAJOR} >= 6 .if ${OSMAJOR} >= 6
RUN_DEPENDS+= \ RUN_DEPENDS+= \
${LOCALBASE}/etc/apache/ssl.crl:${PORTSDIR}/www/apache13-modssl \
mod_auth_mysql>1:${PORTSDIR}/www/mod_auth_mysql \
${LOCALBASE}/libexec/mysqld:${PORTSDIR}/databases/mysql50-server \ ${LOCALBASE}/libexec/mysqld:${PORTSDIR}/databases/mysql50-server \
${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/DBI.pm:${PORTSDIR}/databases/p5-DBI \ ${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 \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/XML/Parser:${PORTSDIR}/textproc/p5-XML-Parser \
...@@ -165,7 +170,7 @@ RUN_DEPENDS+= \ ...@@ -165,7 +170,7 @@ RUN_DEPENDS+= \
${LOCALBASE}/sbin/cvsd:${PORTSDIR}/devel/cvsd \ ${LOCALBASE}/sbin/cvsd:${PORTSDIR}/devel/cvsd \
${LOCALBASE}/share/adodb/adodb.inc.php:${PORTSDIR}/databases/adodb \ ${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 \ ${LOCALBASE}/lib/perl5/site_perl/${PERL_VER}/${PERL_ARCH}/HTML/Parser.pm:${PORTSDIR}/www/p5-HTML-Parser \
${PYTHON_SITELIBDIR}/MySQLdb/times.py:${PORTSDIR}/databases/py-MySQLdb \ ${PYTHON_PKGNAMEPREFIX}MySQLdb>0:${PORTSDIR}/databases/py-MySQLdb \
curl:${PORTSDIR}/ftp/curl \ curl:${PORTSDIR}/ftp/curl \
snort:${PORTSDIR}/security/snort \ snort:${PORTSDIR}/security/snort \
mysqlhotcopy:${PORTSDIR}/databases/mysql50-scripts mysqlhotcopy:${PORTSDIR}/databases/mysql50-scripts
...@@ -173,10 +178,9 @@ RUN_DEPENDS+= \ ...@@ -173,10 +178,9 @@ RUN_DEPENDS+= \
RUN_DEPENDS+= smbd:${PORTSDIR}/net/samba3 RUN_DEPENDS+= smbd:${PORTSDIR}/net/samba3
.endif .endif
.if (${PORTVERSION} == "2.1" || ${PORTVERSION} == "3.0" || ${PORTVERSION} == "3.1") # make sure these get installed
# not sure why this is just needed for 6.3 RUN_DEPENDS+= \
RUN_DEPENDS+= ${X11BASE}/libdata/xorg/libraries:${PORTSDIR}/x11/xorg-libraries ${X11BASE}/libdata/xorg/libraries:${PORTSDIR}/x11/xorg-libraries
.endif
NO_BUILD= yes NO_BUILD= yes
USE_PYTHON= yes USE_PYTHON= yes
......
...@@ -2,6 +2,8 @@ ...@@ -2,6 +2,8 @@
# Date created: 09 February 2006 # Date created: 09 February 2006
# Whom: stoller@flux.utah.edu # Whom: stoller@flux.utah.edu
.include "../emulab-boss/Makefile.emulab"
# #
# These are for the php5-extensions port