# 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= alpha amd64 i386 sparc64 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} == amd64 || ${ARCH} == i386 || ${ARCH} == sparc64 VERSION= 07.3 REVISION= 2 BIN_FILES= p4 SBIN_FILES= p4d p4ftpd p4p p4web REL_NOTES= http://www.perforce.com/perforce/doc.073/user/relnotes.txt .elif ${ARCH} == alpha VERSION= 99.1 REVISION= 1 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 # Figure out what to install .if ${ARCH} == alpha PLATFORM= freebsdaxp .elif ${ARCH} == amd64 .if ${OSVERSION} >= 504000 && ${OSVERSION} < 600000 PLATFORM= freebsd54x86_64 .elif ${OSVERSION} >= 600000 PLATFORM= freebsd60x86_64 .endif .elif ${ARCH} == i386 .if ${OSVERSION} >= 504000 && ${OSVERSION} < 600000 PLATFORM= freebsd54x86 .elif ${OSVERSION} >= 600000 PLATFORM= freebsd60x86 .endif .elif ${ARCH} == sparc64 && ${OSVERSION} >= 601000 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 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