9c81cc06b1
Bugs fixed (from release notes): #113339 ** 'p4 opened -a //...' was being adversely affected by the optimization in change #109212. It is now back to its previous performance. (Bug #23307) #113270 ** Files changed from type ktext to text would be stored at the server with the keywords unexpanded even if the files had been submitted with the keywords expanded. This behavior, present only in release 2006.1, has been fixed. (Bug #23258) #112408 ** 'p4 depot' will not abort when it encounters a UNC path in the Map field so long as the path also ends in '...'. UNC path handling in the depot form was broken by change 93286, but it has now been fixed. (Bug #23191) #94339 ** 'p4 changes @changelist' could be slower in 2005.2 than it was in 2005.1 due to an optimization intended to speed up changelist ranges (@changelist,changelist). The optimization has been tuned to be no slower than 2005.1. (Bug #20192). For complete list of changes, see: http://www.perforce.com/perforce/doc.061/user/relnotes.txt PR: ports/107137 Submitted by: gabor
153 lines
4.3 KiB
Makefile
153 lines
4.3 KiB
Makefile
# New ports collection makefile for: perforce
|
|
# Date created: 3 Mai 2000
|
|
# Whom: sam@inf.enst.fr
|
|
#
|
|
# $FreeBSD$
|
|
#
|
|
|
|
PORTNAME= perforce
|
|
PORTVERSION= ${VERSION}
|
|
PORTREVISION= ${REVISION}
|
|
PORTEPOCH= 1
|
|
CATEGORIES= devel
|
|
MASTER_SITES= ftp://ftp.perforce.com/pub/perforce/r${PORTVERSION}/bin.${PLATFORM}/ \
|
|
http://filehost.perforce.com/perforce/r${PORTVERSION}/bin.${PLATFORM}/
|
|
EXTRACT_SUFX=
|
|
DISTFILES= ${BIN_FILES} ${SBIN_FILES}
|
|
EXTRACT_ONLY= # none
|
|
|
|
MAINTAINER= lth@FreeBSD.org
|
|
COMMENT= Perforce client and server
|
|
|
|
ONLY_FOR_ARCHS= i386 amd64 alpha
|
|
DIST_SUBDIR= perforce/${VERSION}/${ARCH}
|
|
MD5_FILE= ${MASTERDIR}/distinfo.${PLATFORM}
|
|
|
|
#
|
|
# This is a kludge. I don't know a better way to set PORTVERSION and
|
|
# PORTREVISION such that pkg_version figures out an update is needed
|
|
#
|
|
ARCH!= /usr/bin/uname -p
|
|
ARCH?= i386
|
|
|
|
.if (${ARCH} == i386) || (${ARCH} == amd64)
|
|
VERSION= 06.1
|
|
REVISION= 5
|
|
BIN_FILES= p4
|
|
SBIN_FILES= p4d p4ftpd p4p p4web
|
|
REL_NOTES= http://www.perforce.com/perforce/doc.061/user/relnotes.txt
|
|
.elif ${ARCH} == alpha
|
|
VERSION= 99.1
|
|
REVISION= 1
|
|
PLATFORM= freebsdaxp
|
|
BIN_FILES= p4
|
|
SBIN_FILES= p4d
|
|
REL_NOTES= http://www.perforce.com/perforce/doc.991/user/relnotes.txt
|
|
.else
|
|
VERSION= 0
|
|
IGNORE= unsupported platform, sorry
|
|
.endif
|
|
|
|
# End of kludge
|
|
|
|
RESTRICTED= Restricted distribution
|
|
|
|
NO_WRKSUBDIR= yes
|
|
|
|
PLIST_FILES= ${BIN_FILES:S+^+bin/+g} \
|
|
${SBIN_FILES:S+^+sbin/+g}
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
# Figure out what to install
|
|
.if (${ARCH} == i386) || (${ARCH} == amd64)
|
|
.if ${OSVERSION} > 504000
|
|
.if ${ARCH} == amd64
|
|
PLATFORM= freebsd54x86_64
|
|
.else
|
|
PLATFORM= freebsd54x86
|
|
.endif
|
|
.elif ${OSVERSION} > 400000
|
|
PLATFORM= freebsd4
|
|
.else
|
|
IGNORE= only supported on FreeBSD 4.x and greater
|
|
.endif
|
|
.endif
|
|
|
|
.if (${ARCH} == amd64) && (${OSVERSION} < 504000)
|
|
IGNORE= amd64 is only supported on FreeBSD 5.4 and later
|
|
.endif
|
|
|
|
# Add compatability dependencies.
|
|
.if ${OSVERSION} > 600000
|
|
LIB_DEPENDS+= c_r.5:${PORTSDIR}/misc/compat5x
|
|
.elif (${OSVERSION} < 504000) && (${OSVERSION} > 500000)
|
|
LIB_DEPENDS+= c_r.4:${PORTSDIR}/misc/compat4x
|
|
.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
|
|
|
|
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}
|
|
|
|
.include <bsd.port.post.mk>
|