p4 is the client part of the Perforce Control System.

Update to 2009.2.238357

For the server-related parts, use devel/perforce

PR:		ports/145824
Submitted by:	gordon
Approved by:	tabthorpe (mentor)
This commit is contained in:
Rene Ladan 2010-05-03 20:23:28 +00:00
parent 8008888e4a
commit da2291f26d
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=253632
13 changed files with 69 additions and 334 deletions

View file

@ -1,120 +1,40 @@
# New ports collection makefile for: perforce
# Date created: 3 Mai 2000
# Whom: sam@inf.enst.fr
# New ports collection makefile for: p4
# Date created: 3 Apr 2010
# Whom: gordon@FreeBSD.org
#
# $FreeBSD$
#
PORTNAME= perforce
PORTVERSION= 08.2
PORTREVISION= 5
PORTEPOCH= 1
PORTNAME= p4
PORTVERSION= 2009.2.238357
CATEGORIES= devel
MASTER_SITES= ftp://ftp.perforce.com/pub/perforce/r${PORTVERSION}/bin.${PLATFORM}/ \
http://filehost.perforce.com/perforce/r${PORTVERSION}/bin.${PLATFORM}/
MASTER_SITES= ftp://ftp.perforce.com/perforce/${P4VERSION}/bin.${PLATFORM}/ \
http://filehost.perforce.com/perforce/${P4VERSION}/bin.${PLATFORM}/
DISTNAME= p4
EXTRACT_SUFX=
DISTFILES= ${BIN_FILES} ${SBIN_FILES}
EXTRACT_ONLY= # none
MAINTAINER= ports@FreeBSD.org
COMMENT= Perforce client and server
MAINTAINER= gordon@FreeBSD.org
COMMENT= Perforce client
ONLY_FOR_ARCHS= amd64 i386 sparc64
DIST_SUBDIR= perforce/${PORTVERSION}_${PORTREVISION}/${ARCH}
P4VERSION= r${PORTVERSION:S/^20//:C/\.[0-9]+$//}
DIST_SUBDIR= perforce/${PORTVERSION}/bin.${PLATFORM}
MD5_FILE= ${MASTERDIR}/distinfo.${PLATFORM}
BIN_FILES= p4
SBIN_FILES= p4d p4ftpd p4p p4web
REL_NOTES= http://www.perforce.com/perforce/doc.082/user/relnotes.txt
RESTRICTED= Restricted distribution
NO_BUILD= yes
NO_WRKSUBDIR= yes
PLIST_FILES= ${BIN_FILES:S+^+bin/+g} \
${SBIN_FILES:S+^+sbin/+g}
PLIST_FILES= bin/p4
.include <bsd.port.pre.mk>
# Figure out what to install
.if ${ARCH} == amd64
PLATFORM= freebsd60x86_64
.elif ${ARCH} == i386
PLATFORM= freebsd60x86
.elif ${ARCH} == sparc64
PLATFORM= freebsd61sparc64
.else
IGNORE= unsupported OS release, sorry
.endif
.if ${OSVERSION} >= 700043
LIB_DEPENDS+= c.6:${PORTSDIR}/misc/compat6x
.endif
# These variables are all configurable.
PERFORCE_USER?= p4admin
PERFORCE_UID?= 94
PERFORCE_GROUP?= p4admin
PERFORCE_GID?= 94
PERFORCE_HOME?= ${LOCALBASE}/perforce
PERFORCE_ROOT?= ${PERFORCE_HOME}/root
PERFORCE_LOGS?= ${PERFORCE_HOME}/logs
PERFORCE_PORT?= 1666
PERFORCE_CACHE?= ${PERFORCE_HOME}/cache
PERFORCE_TARGET?= perforce:1666
pre-everything::
@${ECHO} "If the checksums fail, try doing 'make distclean'"
@${ECHO} "to force getting the latest binaries from Perforce."
@${ECHO} ""
@${ECHO} "Read the release notes for this release to determine"
@${ECHO} "how to migrate the database to the new version. In"
@${ECHO} "most instances, it is done automatically. However,"
@${ECHO} "sometimes it must be done manually."
@${ECHO} ""
@${ECHO} "The release notes for this version are at"
@${ECHO} ${REL_NOTES}
@${ECHO} ""
@${ECHO} "Checkpoint and backup your data before installing!"
do-build:
${SED} -e "s,@PERFORCE_ROOT@,${PERFORCE_ROOT},g" \
-e "s,@PERFORCE_LOGS@,${PERFORCE_LOGS},g" \
-e "s,@PERFORCE_USER@,${PERFORCE_USER},g" \
-e "s,@PERFORCE_PORT@,${PERFORCE_PORT},g" \
-e "s,@PERFORCE_CACHE@,${PERFORCE_CACHE},g" \
-e "s,@PERFORCE_TARGET@,${PERFORCE_TARGET},g" \
< ${FILESDIR}/perforce.conf.in > ${WRKSRC}/perforce.conf
${SED} -e "s,@PREFIX@,${PREFIX},g" \
< ${FILESDIR}/perforce.sh.in > ${WRKSRC}/perforce.sh
pre-su-install:
${SETENV} PKG_PREFIX=${PREFIX} \
PERFORCE_USER=${PERFORCE_USER} \
PERFORCE_UID=${PERFORCE_UID} \
PERFORCE_GROUP=${PERFORCE_GROUP} \
PERFORCE_GID=${PERFORCE_GID} \
PERFORCE_HOME=${PERFORCE_HOME} \
PERFORCE_ROOT=${PERFORCE_ROOT} \
PERFORCE_LOGS=${PERFORCE_LOGS} \
${SH} ${PKGDIR}/pkg-install ${PORTNAME} PRE-INSTALL
.include "Makefile.inc"
do-install:
.for f in ${BIN_FILES}
${INSTALL_PROGRAM} ${_DISTDIR}/${f} ${PREFIX}/bin/
.endfor
.for f in ${SBIN_FILES}
${INSTALL_PROGRAM} ${_DISTDIR}/${f} ${PREFIX}/sbin/
.endfor
${INSTALL_DATA} ${WRKSRC}/perforce.conf ${PREFIX}/etc/perforce.conf.default; \
if [ ! -f ${PREFIX}/etc/perforce.conf ]; then \
${CP} -p ${PREFIX}/etc/perforce.conf.default ${PREFIX}/etc/perforce.conf; \
fi
${INSTALL_SCRIPT} ${WRKSRC}/perforce.sh ${PREFIX}/etc/rc.d/
post-install:
${ECHO_CMD} "@unexec ${RMDIR} ${PERFORCE_ROOT} ${PERFORCE_LOGS} ${PERFORCE_HOME} 2>/dev/null || true" >> ${TMPPLIST}
${INSTALL_PROGRAM} ${_DISTDIR}/p4 ${PREFIX}/bin/
.include <bsd.port.post.mk>

32
devel/p4/Makefile.inc Normal file
View file

@ -0,0 +1,32 @@
# Figure out what to install
.if ${ARCH} == amd64
. if ${OSVERSION} >= 700043
PLATFORM= freebsd70x86_64
. elif ${OSVERSION} >= 600033
PLATFORM= freebsd60x86_64
. elif ${OSVERSION} >= 504000
PLATFORM= freebsd54x86_64
. else
IGNORE= unsupported OS release, sorry
. endif
.elif ${ARCH} == i386
. if ${OSVERSION} >= 700043
PLATFORM= freebsd70x86
. elif ${OSVERSION} >= 600033
PLATFORM= freebsd60x86
. elif ${OSVERSION} >= 504000
PLATFORM= freebsd54x86
. else
IGNORE= unsupported OS release, sorry
. endif
.elif ${ARCH} == sparc64
. if ${OSVERSION} >= 700043
LIB_DEPENDS+= c.6:${PORTSDIR}/misc/compat6x
. endif
PLATFORM= freebsd61sparc64
.else
IGNORE= unsupported OS release, sorry
.endif

View file

@ -0,0 +1,3 @@
MD5 (perforce/2009.2.238357/bin.freebsd54x86/p4) = d2560fda4147d82c381c47f811d02829
SHA256 (perforce/2009.2.238357/bin.freebsd54x86/p4) = 763b5bd0f2ad6e35ff27cfb18759cc50e13107b1522bb5116d7361fbff7c9ec0
SIZE (perforce/2009.2.238357/bin.freebsd54x86/p4) = 719464

View file

@ -0,0 +1,3 @@
MD5 (perforce/2009.2.238357/bin.freebsd54x86_64/p4) = 879837acb4da861a7f3d03c7f4b95b70
SHA256 (perforce/2009.2.238357/bin.freebsd54x86_64/p4) = 9a435a79165edca5651966e25f0c30df8682309e3253d76f0874a57b95e0cf61
SIZE (perforce/2009.2.238357/bin.freebsd54x86_64/p4) = 789000

View file

@ -1,15 +1,3 @@
MD5 (perforce/08.2_5/i386/p4) = 53fdca9090ed49f924fd093fb658eadc
SHA256 (perforce/08.2_5/i386/p4) = 0c66ac826a47f41ebd31c2d6d3ddb606c0f4fb7017a762e99b4c1e1bf661cd52
SIZE (perforce/08.2_5/i386/p4) = 546008
MD5 (perforce/08.2_5/i386/p4d) = ad72254781904ae2bf32b4b592698a27
SHA256 (perforce/08.2_5/i386/p4d) = 788ded7749d8e41faf68755da4cd3dd1325bfbb72337b1ba7cb262cf1e9f5719
SIZE (perforce/08.2_5/i386/p4d) = 1590376
MD5 (perforce/08.2_5/i386/p4ftpd) = 46c234d7b1d6b21e3468eeafcb936b9f
SHA256 (perforce/08.2_5/i386/p4ftpd) = be9751424a085a4d96f054e0875d2d242ecedb8f09ef8fa516da00cf55d90166
SIZE (perforce/08.2_5/i386/p4ftpd) = 711840
MD5 (perforce/08.2_5/i386/p4p) = ee253deeab529151e8d50c91092ef1f6
SHA256 (perforce/08.2_5/i386/p4p) = 1b1131df308974f0ddd2bb6f70bde94b2161dc9f4fc4f382972e3471c0611c12
SIZE (perforce/08.2_5/i386/p4p) = 502496
MD5 (perforce/08.2_5/i386/p4web) = a86ad1a558aa4e1bb068f2ac5179cf7d
SHA256 (perforce/08.2_5/i386/p4web) = f34a5ad92df6af2ceb57471e7737f40b28051a1d95243f12999f5b04b953f58d
SIZE (perforce/08.2_5/i386/p4web) = 2170668
MD5 (perforce/2009.2.238357/bin.freebsd60x86/p4) = f7a1a534fca767deb574109d453d37dc
SHA256 (perforce/2009.2.238357/bin.freebsd60x86/p4) = 88c31c2b8c6ffa89741a5dc22e8d56c21b464c01ae4a241a591274b99ddc2c89
SIZE (perforce/2009.2.238357/bin.freebsd60x86/p4) = 679056

View file

@ -1,15 +1,3 @@
MD5 (perforce/08.2_5/amd64/p4) = 8ef290ee5ccc9c156ae0d12f7856d086
SHA256 (perforce/08.2_5/amd64/p4) = 96bee94925b162084a302ec3b73001b9913f97887d8e619e53c197d6690974b6
SIZE (perforce/08.2_5/amd64/p4) = 615544
MD5 (perforce/08.2_5/amd64/p4d) = d159653fd89dc540e4d8bd141098ba76
SHA256 (perforce/08.2_5/amd64/p4d) = f8ba9df0e73f263ac49294379ab3a82956f76b3d8f37cf6cffe71764ce724196
SIZE (perforce/08.2_5/amd64/p4d) = 1760104
MD5 (perforce/08.2_5/amd64/p4ftpd) = 5900ccdade68d9cbd46a29e4540b2c10
SHA256 (perforce/08.2_5/amd64/p4ftpd) = 67862a479d570e79bb1158653685d1c0980b83ac92eda77c9b79fb61a9ebe805
SIZE (perforce/08.2_5/amd64/p4ftpd) = 752704
MD5 (perforce/08.2_5/amd64/p4p) = 4375378956b424b9a132844b2e938682
SHA256 (perforce/08.2_5/amd64/p4p) = d95faabf9e93916648d0556df7bec20022c4e40b13ff285ed12a347ec521fabc
SIZE (perforce/08.2_5/amd64/p4p) = 602816
MD5 (perforce/08.2_5/amd64/p4web) = 5c6b9fb0eb220b83c3c10cabca1ff1ba
SHA256 (perforce/08.2_5/amd64/p4web) = ca69d11fe31c1bd5b5ddf18bed1c5bb5e7a3c6e3cb96b064d890cd1a75ec0830
SIZE (perforce/08.2_5/amd64/p4web) = 2370088
MD5 (perforce/2009.2.238357/bin.freebsd60x86_64/p4) = 44934f955b820916b5877f244a5dc102
SHA256 (perforce/2009.2.238357/bin.freebsd60x86_64/p4) = ef50502c501047150791dea21be5d4b844fe56533e3b4a4c88c1e8611546c856
SIZE (perforce/2009.2.238357/bin.freebsd60x86_64/p4) = 744904

View file

@ -1,15 +1,3 @@
MD5 (perforce/08.2_5/sparc64/p4) = d9ee5036dd09c0c398a9095f7858bc21
SHA256 (perforce/08.2_5/sparc64/p4) = 6cccdf7e3da105c415dbad701cb8c2d8b27fee4376227fec614749658f9632eb
SIZE (perforce/08.2_5/sparc64/p4) = 625480
MD5 (perforce/08.2_5/sparc64/p4d) = 8e2f6775b353e02e48bf758c7e3ac352
SHA256 (perforce/08.2_5/sparc64/p4d) = 05c8882992970a1f53a687d26cc05730d144b95cbeee95851cfe6cc051cad0b2
SIZE (perforce/08.2_5/sparc64/p4d) = 1777848
MD5 (perforce/08.2_5/sparc64/p4ftpd) = 5ac8d4cca51428a6f67857e136732e7e
SHA256 (perforce/08.2_5/sparc64/p4ftpd) = 199490569ce24d78653cd73af59213a4cd2a2b47157e713dc1144dc2ee452e6c
SIZE (perforce/08.2_5/sparc64/p4ftpd) = 896896
MD5 (perforce/08.2_5/sparc64/p4p) = ba53e566890df5e43dd462aaedaba11e
SHA256 (perforce/08.2_5/sparc64/p4p) = 170ccd9ad6e0d0704ef49344b7148c273b56add8da67b472a6c929f89be9e273
SIZE (perforce/08.2_5/sparc64/p4p) = 608368
MD5 (perforce/08.2_5/sparc64/p4web) = 07265f0fd255456a90c4c71e0889dab7
SHA256 (perforce/08.2_5/sparc64/p4web) = d4bd5bdd635cfbbe95febc8b37aa896c63ef7c67d7f35227853d2d7023ea88e4
SIZE (perforce/08.2_5/sparc64/p4web) = 2341312
MD5 (perforce/2009.2.238357/bin.freebsd61sparc64/p4) = 29ba9f691e9b445e119c1516f84cd3a4
SHA256 (perforce/2009.2.238357/bin.freebsd61sparc64/p4) = 4010e04fe6dc1fd4a7ef4031fdd76df4e6969075f2b6613736fdedc1668a703a
SIZE (perforce/2009.2.238357/bin.freebsd61sparc64/p4) = 752440

View file

@ -0,0 +1,3 @@
MD5 (perforce/2009.2.238357/bin.freebsd70x86/p4) = 32d86f2a6ffe3ecc96308677b6b6f66b
SHA256 (perforce/2009.2.238357/bin.freebsd70x86/p4) = 8bea5225cc0c5ac0f54fadf77a35efa61d3484a25dbce6b07dcf4a7e75ac8435
SIZE (perforce/2009.2.238357/bin.freebsd70x86/p4) = 693864

View file

@ -0,0 +1,3 @@
MD5 (perforce/2009.2.238357/bin.freebsd70x86_64/p4) = 4fdd39d883dff3d6a47f708f3e0ecba0
SHA256 (perforce/2009.2.238357/bin.freebsd70x86_64/p4) = 3aa2b16f7d9ffef0e25d167dd56a6eedefdb7ea457675c835780194e5b9a86a5
SIZE (perforce/2009.2.238357/bin.freebsd70x86_64/p4) = 716776

View file

@ -1,75 +0,0 @@
#
# Perforce FreeBSD configuration file
#
#
# $FreeBSD$
#
# Perforce ROOT
#
PERFORCE_ROOT="@PERFORCE_ROOT@"
#
# Perforce user (it is recommended to run p4d as a non-root user)
#
PERFORCE_USER="@PERFORCE_USER@"
#
# p4d/p4p port (default: 1666)
#
PERFORCE_PORT="@PERFORCE_PORT@"
#
# p4p cache directory
#
PERFORCE_PROXY_CACHE="@PERFORCE_CACHE@"
#
# p4p target server (default: perforce:1666)
#
PERFORCE_PROXY_TARGET="@PERFORCE_TARGET@"
#
# p4d options (see man p4d)
#
PERFORCE_OPTIONS="-d -p $PERFORCE_PORT -v server=1 -L @PERFORCE_LOGS@/p4d.log"
#
# Uncomment this line to have the server started automatically
#
#PERFORCE_START=yes
#
# p4ftpd options (see p4ftpd -h)
#
PERFORCE_FTPD_OPTIONS="-d -p $PERFORCE_PORT -v server=1 -L @PERFORCE_LOGS@/p4ftpd.log"
#
# Uncomment this line to have the server started automatically
#
#PERFORCE_FTPD_START=yes
#
# p4p options (see p4p -h)
#
PERFORCE_PROXY_OPTIONS="-d -p $PERFORCE_PORT -t $PERFORCE_PROXY_TARGET -r $PERFORCE_PROXY_CACHE -v server=1 -L @PERFORCE_LOGS@/p4p.log"
#
# Uncomment this line to have the proxy server started automatically
#
#PERFORCE_PROXY_START=yes
#
# p4web port
#
PERFORCE_WEB_PORT="6060"
#
# p4web options (see p4web -h)
#
PERFORCE_WEB_OPTIONS="-B -w $PERFORCE_WEB_PORT -p $PERFORCE_PORT -v server=1"
#
# Uncomment this line to have the web server started automatically
#
#PERFORCE_WEB_START=yes

View file

@ -1,62 +0,0 @@
#!/bin/sh
#
# $FreeBSD$
p4d=@PREFIX@/sbin/p4d
p4ftpd=@PREFIX@/sbin/p4ftpd
p4p=@PREFIX@/sbin/p4p
p4web=@PREFIX@/sbin/p4web
case $1 in
start)
[ -f @PREFIX@/etc/perforce.conf ] && . @PREFIX@/etc/perforce.conf
if [ -x $p4d -a x$PERFORCE_START = xyes ]; then
echo -n ' p4d'
umask 027
su -fm $PERFORCE_USER -c "$p4d -r $PERFORCE_ROOT $PERFORCE_OPTIONS"
fi
if [ -x $p4ftpd -a x$PERFORCE_FTPD_START = xyes ]; then
echo -n ' p4ftpd'
$p4ftpd $PERFORCE_FTPD_OPTIONS
fi
if [ -x $p4p -a x$PERFORCE_PROXY_START = xyes ]; then
echo -n ' p4p'
$p4p $PERFORCE_PROXY_OPTIONS
fi
if [ -x $p4web -a x$PERFORCE_WEB_START = xyes ]; then
echo -n ' p4web'
su -fm $PERFORCE_USER -c "$p4web $PERFORCE_WEB_OPTIONS &" >/dev/null 2>&1
fi
;;
stop)
[ -f @PREFIX@/etc/perforce.conf ] && . @PREFIX@/etc/perforce.conf
if [ -x $p4ftpd ]; then
killall -u 0 p4ftpd >/dev/null 2>&1 && echo -n ' p4ftpd'
fi
if [ -x $p4d ]; then
killall -u $PERFORCE_USER p4d >/dev/null 2>&1 && echo -n ' p4d'
fi
if [ -x $p4p ]; then
killall -u 0 p4p > /dev/null 2>&1 && echo -n ' p4p'
fi
if [ -x $p4web ]; then
killall -u $PERFORCE_USER p4web > /dev/null 2>&1 && echo -n ' p4web'
fi
;;
restart)
$0 stop
sleep 1
$0 start
;;
checkpoint)
[ -f @PREFIX@/etc/perforce.conf ] && . @PREFIX@/etc/perforce.conf
if [ -x $p4d -a x$PERFORCE_START = xyes ]; then
su -fm $PERFORCE_USER -c "$p4d -r $PERFORCE_ROOT -jc"
fi
;;
*)
echo "usage: $0 {start|stop|restart|checkpoint}"
exit 64
;;
esac

View file

@ -1,52 +0,0 @@
#! /bin/sh
#
# $FreeBSD$
PATH=/bin:/usr/sbin
PERFORCE_USER=${PERFORCE_USER:-p4admin}
PERFORCE_UID=${PERFORCE_UID:-94}
PERFORCE_GROUP=${PERFORCE_GROUP:-p4admin}
PERFORCE_GID=${PERFORCE_GID:-94}
PERFORCE_HOME=${PERFORCE_HOME:-$PKG_PREFIX/perforce}
PERFORCE_LOGS=${PERFORCE_LOGS:-$PERFORCE_HOME/logs}
PERFORCE_ROOT=${PERFORCE_ROOT:-$PERFORCE_HOME/root}
case $2 in
PRE-INSTALL)
USER=${PERFORCE_USER}
GROUP=${PERFORCE_GROUP}
UID=${PERFORCE_UID}
GID=${PERFORCE_GID}
if pw group show "${GROUP}" 2>/dev/null; then
echo "You already have a group \"${GROUP}\", so I will use it."
else
if pw groupadd ${GROUP} -g ${GID}; then
echo "Added group \"${GROUP}\"."
else
echo "Adding group \"${GROUP}\" failed..."
exit 1
fi
fi
if pw user show "${USER}" 2>/dev/null; then
echo "You already have a user \"${USER}\", so I will use it."
else
if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \
-d ${PERFORCE_HOME} -c "Perforce admin" -s /sbin/nologin
then
echo "Added user \"${USER}\"."
else
echo "Adding user \"${USER}\" failed..."
exit 1
fi
fi
if [ ! -d $PERFORCE_HOME ] ; then
mkdir -p $PERFORCE_HOME $PERFORCE_LOGS $PERFORCE_ROOT
chown -R $USER:$GROUP $PERFORCE_HOME
chmod 750 $PERFORCE_ROOT
fi
;;
esac

View file

@ -1,4 +0,0 @@
@unexec if cmp -s %D/etc/perforce.conf %D/etc/perforce.conf.default; then rm -f %D/etc/perforce.conf; fi
etc/perforce.conf.default
@exec [ ! -f %B/perforce.conf ] && cp -p %B/%f %B/perforce.conf || true
etc/rc.d/perforce.sh