summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschmonz <schmonz@pkgsrc.org>2002-09-01 02:25:04 +0000
committerschmonz <schmonz@pkgsrc.org>2002-09-01 02:25:04 +0000
commit76f8f380746937f23375d51011c73ec8230a6e69 (patch)
tree2d57c4a0fde310d61ab4447647c1fa4abca8413a
parent3e6bfff126b272f3cbd97747724fb576a8817210 (diff)
downloadpkgsrc-76f8f380746937f23375d51011c73ec8230a6e69.tar.gz
Initial import of Perforce SCM server, release 2002.1.
P4D, the Perforce Server, manages the Perforce central file repository (the "depot"), tracks Perforce user operations, and records activity in the Perforce SCM database. You need one Perforce Server to support all of the users in your enterprise.
-rw-r--r--devel/p4/DESCR9
-rw-r--r--devel/p4/Makefile35
-rw-r--r--devel/p4/PLIST5
-rw-r--r--devel/p4/distinfo42
-rw-r--r--devel/p4/files/p4d.sh108
-rw-r--r--devel/p4d/DESCR4
-rw-r--r--devel/p4d/Makefile40
-rw-r--r--devel/p4d/PLIST3
-rw-r--r--devel/p4d/distinfo22
-rw-r--r--devel/p4d/files/p4d.sh108
10 files changed, 343 insertions, 33 deletions
diff --git a/devel/p4/DESCR b/devel/p4/DESCR
index 5d04fc80c8e..19ad6365d61 100644
--- a/devel/p4/DESCR
+++ b/devel/p4/DESCR
@@ -1,5 +1,4 @@
-P4 is a small, self-contained Perforce client program that offers
-access to all Perforce SCM (software configuration management)
-features through a command line. It can be used in command shells
-and scripts, and is the ideal interface for automated processes
-that perform SCM tasks.
+P4D, the Perforce Server, manages the Perforce central file repository
+(the "depot"), tracks Perforce user operations, and records activity
+in the Perforce SCM database. You need one Perforce Server to
+support all of the users in your enterprise.
diff --git a/devel/p4/Makefile b/devel/p4/Makefile
index 799ac203769..a5349cb93df 100644
--- a/devel/p4/Makefile
+++ b/devel/p4/Makefile
@@ -1,15 +1,40 @@
-# $NetBSD: Makefile,v 1.1.1.1 2002/09/01 02:22:54 schmonz Exp $
+# $NetBSD: Makefile,v 1.1.1.2 2002/09/01 02:25:04 schmonz Exp $
#
-DISTNAME= p4
-HOMEPAGE= http://www.perforce.com/perforce/products/p4.html
-COMMENT= Perforce SCM command-line client
+DISTNAME= p4d
+HOMEPAGE= http://www.perforce.com/perforce/products/p4d.html
+COMMENT= Perforce SCM server
P4BINONLY= # defined
.include "../../devel/p4/Makefile.common"
+FILES_SUBST+= P4USER=${P4USER:Q}
+FILES_SUBST+= P4ROOT=${P4ROOT:Q}
+FILES_SUBST+= P4PORT=${P4PORT:Q}
+FILES_SUBST+= P4LOG=${P4LOG:Q}
+FILES_SUBST+= P4JOURNAL=${P4JOURNAL:Q}
+
+PKG_GROUPS?= ${P4GROUP}
+PKG_USERS?= ${P4USER}:${P4GROUP}::Perforce\\ Server:${P4ROOT}
+
+OWN_DIRS_PERMS= ${P4ROOT} ${P4USER} ${P4GROUP} 750
+
+RCD_SCRIPTS= p4d
+
+.include "../../mk/bsd.prefs.mk"
+
+P4USER?= perforce
+P4GROUP?= p4admin
+P4ROOT?= /var/perforce
+P4PORT?= 1666
+P4LOG?= log
+P4JOURNAL?= journal
+
do-install:
- ${INSTALL_PROGRAM} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME} ${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME} ${PREFIX}/sbin
+ @${SED} ${FILES_SUBST_SED} ${FILESDIR}/p4d.sh > ${WRKDIR}/p4d
+ ${INSTALL_SCRIPT} ${WRKDIR}/p4d ${RCD_SCRIPTS_EXAMPLEDIR}
+.include "../../mk/bsd.pkg.install.mk"
.include "../../mk/bsd.pkg.mk"
diff --git a/devel/p4/PLIST b/devel/p4/PLIST
index f78b99d64c8..afdf0432aae 100644
--- a/devel/p4/PLIST
+++ b/devel/p4/PLIST
@@ -1,2 +1,3 @@
-@comment $NetBSD: PLIST,v 1.1.1.1 2002/09/01 02:22:54 schmonz Exp $
-bin/p4
+@comment $NetBSD: PLIST,v 1.1.1.2 2002/09/01 02:25:04 schmonz Exp $
+etc/rc.d/p4d
+sbin/p4d
diff --git a/devel/p4/distinfo b/devel/p4/distinfo
index fa661210d10..12c45c88a1a 100644
--- a/devel/p4/distinfo
+++ b/devel/p4/distinfo
@@ -1,22 +1,22 @@
-$NetBSD: distinfo,v 1.1.1.1 2002/09/01 02:22:54 schmonz Exp $
+$NetBSD: distinfo,v 1.1.1.2 2002/09/01 02:25:04 schmonz Exp $
-SHA1 (perforce/darwinppc/p4) = 6e8e92ca35d15dd112c81785745a896f377eaaff
-Size (perforce/darwinppc/p4) = 500120 bytes
-SHA1 (perforce/linux24x86/p4) = 83bc0824494aee612b71ce141ab71b7bedfa66fd
-Size (perforce/linux24x86/p4) = 451808 bytes
-SHA1 (perforce/linux52sparc/p4) = 7f8ce1b8974d8a07e0f9a0a89c4051f1d64d764b
-Size (perforce/linux52sparc/p4) = 436892 bytes
-SHA1 (perforce/linuxarm/p4) = fdfe0f9179d163662b09371d22c04d2e4b266d70
-Size (perforce/linuxarm/p4) = 472656 bytes
-SHA1 (perforce/linuxppc/p4) = 3f48346303291383b62ce23c2857a21a9666c658
-Size (perforce/linuxppc/p4) = 840812 bytes
-SHA1 (perforce/netbsdaxp/p4) = b39fb6ade9b37a84cbc600cd8fa1550d80198780
-Size (perforce/netbsdaxp/p4) = 607552 bytes
-SHA1 (perforce/netbsdx86/p4) = 778266ebc5c8051b24090ba5a1857b65abaaa2e9
-Size (perforce/netbsdx86/p4) = 447312 bytes
-SHA1 (perforce/solaris26/p4) = e22b8d1b616d5c300330eb1b5946e68e60fff2ff
-Size (perforce/solaris26/p4) = 607448 bytes
-SHA1 (perforce/solaris26x86/p4) = 8218891d7be40643f2034a6661a81fb0b57c870b
-Size (perforce/solaris26x86/p4) = 426116 bytes
-SHA1 (perforce/sunos/p4) = cb690dc9333f73eba9b629ce6968c69e8ef8124d
-Size (perforce/sunos/p4) = 548864 bytes
+SHA1 (perforce/darwinppc/p4d) = 749e716e08227e2a711e641e20e0e3948c12e9b2
+Size (perforce/darwinppc/p4d) = 1285352 bytes
+SHA1 (perforce/linux24x86/p4d) = 156282fea8fdab66fd4a2c5524fcb8cdbdf7019b
+Size (perforce/linux24x86/p4d) = 1122120 bytes
+SHA1 (perforce/linux52sparc/p4d) = dd94e8c2f9acd01f17103de21e7bab06481aa126
+Size (perforce/linux52sparc/p4d) = 1044836 bytes
+SHA1 (perforce/linuxarm/p4d) = 00351c4e649ac4dd31b61938198e6518719e1404
+Size (perforce/linuxarm/p4d) = 1459148 bytes
+SHA1 (perforce/linuxppc/p4d) = 22a4071a5763e9d68c8f4870be5d28210b1d3271
+Size (perforce/linuxppc/p4d) = 1703324 bytes
+SHA1 (perforce/netbsdaxp/p4d) = d5779f27d204bbc9fceac6c2571f8ef409c482fe
+Size (perforce/netbsdaxp/p4d) = 1991936 bytes
+SHA1 (perforce/netbsdx86/p4d) = 3edca6ab97c1974f69339df120c69d6764d3965b
+Size (perforce/netbsdx86/p4d) = 1174524 bytes
+SHA1 (perforce/solaris26/p4d) = 6c5fe8a455d055218ca36c280ebaaa6265a6da2b
+Size (perforce/solaris26/p4d) = 1505272 bytes
+SHA1 (perforce/solaris26x86/p4d) = 4ed4ffd657cbf5c44ecd61b1fbe9d528d05a3092
+Size (perforce/solaris26x86/p4d) = 927208 bytes
+SHA1 (perforce/sunos/p4d) = b6ca9a7b4e6ed3ae781515d6c43a2e0eacaca619
+Size (perforce/sunos/p4d) = 933888 bytes
diff --git a/devel/p4/files/p4d.sh b/devel/p4/files/p4d.sh
new file mode 100644
index 00000000000..e8878462667
--- /dev/null
+++ b/devel/p4/files/p4d.sh
@@ -0,0 +1,108 @@
+#!/bin/sh
+#
+# $NetBSD: p4d.sh,v 1.1.1.1 2002/09/01 02:25:04 schmonz Exp $
+#
+# Perforce SCM server
+#
+# PROVIDE: p4d
+# REQUIRE: DAEMON
+
+[ -f /etc/rc.subr ] && . /etc/rc.subr
+
+name="p4d"
+rcvar=${name}
+command="@PREFIX@/sbin/p4d"
+start_cmd="p4d_start"
+license_cmd="p4d_license"
+extra_commands="license"
+
+p4d_start()
+{
+ p4d_run ${p4d_flags} -d -q
+}
+
+p4d_license()
+{
+ p4d_run -V
+}
+
+p4d_run()
+{
+ eval "@SU@ -m @P4USER@ -c 'umask 037; @SETENV@ - `p4d_getenv` ${command} $@'"
+}
+
+p4d_getenv()
+{
+ p4d_getenv_debug
+ p4d_getenv_journalfile
+ p4d_getenv_logfile
+ p4d_getenv_port
+ p4d_getenv_rootdir
+ p4d_getenv_tmp
+}
+
+p4d_getenv_debug()
+{
+ # Possibly specify debug output
+ # p4d default: none
+ if [ ! -z ${P4DEBUG} ]; then
+ @ECHO@ -n " P4DEBUG=${P4DEBUG}"
+ fi
+}
+
+p4d_getenv_journalfile()
+{
+ # Possibly specify the journal file
+ # p4d default: "journal" if it exists, else none
+ if [ ! -z ${P4JOURNAL} ]; then
+ @ECHO@ -n " P4JOURNAL=${P4JOURNAL}"
+ fi
+}
+
+p4d_getenv_logfile()
+{
+ # Always specify the log file
+ # p4d default: stderr
+ if [ -z ${P4LOG} ]; then
+ P4LOG=@P4LOG@
+ fi
+ @ECHO@ -n " P4LOG=${P4LOG}"
+}
+
+p4d_getenv_port()
+{
+ # Possibly specify the port number
+ # p4d default: 1666
+ if [ ! -z ${P4PORT} ]; then
+ @ECHO@ -n " P4PORT=${P4PORT}"
+ fi
+}
+
+p4d_getenv_rootdir()
+{
+ # Always specify the root dir
+ # p4d default: working directory
+ if [ -z ${P4ROOT} ]; then
+ P4ROOT=@P4ROOT@
+ fi
+ @ECHO@ -n " P4ROOT=${P4ROOT}"
+}
+
+p4d_getenv_tmp()
+{
+ # Possibly specify temp dir
+ # p4d default: /tmp
+ if [ ! -z ${TEMP} ]; then
+ @ECHO@ -n " TMP=${TEMP}"
+ elif [ ! -z ${TMP} ]; then
+ @ECHO@ -n " TMP=${TMP}"
+ fi
+}
+
+if [ -f /etc/rc.subr ]; then
+ load_rc_config $name
+ run_rc_command "$1"
+else
+ echo -n " ${name}"
+ ${start_cmd}
+fi
diff --git a/devel/p4d/DESCR b/devel/p4d/DESCR
new file mode 100644
index 00000000000..19ad6365d61
--- /dev/null
+++ b/devel/p4d/DESCR
@@ -0,0 +1,4 @@
+P4D, the Perforce Server, manages the Perforce central file repository
+(the "depot"), tracks Perforce user operations, and records activity
+in the Perforce SCM database. You need one Perforce Server to
+support all of the users in your enterprise.
diff --git a/devel/p4d/Makefile b/devel/p4d/Makefile
new file mode 100644
index 00000000000..6219708eccf
--- /dev/null
+++ b/devel/p4d/Makefile
@@ -0,0 +1,40 @@
+# $NetBSD: Makefile,v 1.1.1.1 2002/09/01 02:26:08 schmonz Exp $
+#
+
+DISTNAME= p4d
+HOMEPAGE= http://www.perforce.com/perforce/products/p4d.html
+COMMENT= Perforce SCM server
+
+P4BINONLY= # defined
+
+.include "../../devel/p4/Makefile.common"
+
+FILES_SUBST+= P4USER=${P4USER:Q}
+FILES_SUBST+= P4ROOT=${P4ROOT:Q}
+FILES_SUBST+= P4PORT=${P4PORT:Q}
+FILES_SUBST+= P4LOG=${P4LOG:Q}
+FILES_SUBST+= P4JOURNAL=${P4JOURNAL:Q}
+
+PKG_GROUPS?= ${P4GROUP}
+PKG_USERS?= ${P4USER}:${P4GROUP}::Perforce\\ Server:${P4ROOT}
+
+OWN_DIRS_PERMS= ${P4ROOT} ${P4USER} ${P4GROUP} 750
+
+RCD_SCRIPTS= p4d
+
+.include "../../mk/bsd.prefs.mk"
+
+P4USER?= perforce
+P4GROUP?= p4admin
+P4ROOT?= /var/perforce
+P4PORT?= 1666
+P4LOG?= log
+P4JOURNAL?= journal
+
+do-install:
+ ${INSTALL_PROGRAM} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME} ${PREFIX}/sbin
+ @${SED} ${FILES_SUBST_SED} ${FILESDIR}/p4d.sh > ${WRKDIR}/p4d
+ ${INSTALL_SCRIPT} ${WRKDIR}/p4d ${RCD_SCRIPTS_EXAMPLEDIR}
+
+.include "../../mk/bsd.pkg.install.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/p4d/PLIST b/devel/p4d/PLIST
new file mode 100644
index 00000000000..5d2cff91974
--- /dev/null
+++ b/devel/p4d/PLIST
@@ -0,0 +1,3 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2002/09/01 02:26:08 schmonz Exp $
+etc/rc.d/p4d
+sbin/p4d
diff --git a/devel/p4d/distinfo b/devel/p4d/distinfo
new file mode 100644
index 00000000000..4ba96a93645
--- /dev/null
+++ b/devel/p4d/distinfo
@@ -0,0 +1,22 @@
+$NetBSD: distinfo,v 1.1.1.1 2002/09/01 02:26:08 schmonz Exp $
+
+SHA1 (perforce/darwinppc/p4d) = 749e716e08227e2a711e641e20e0e3948c12e9b2
+Size (perforce/darwinppc/p4d) = 1285352 bytes
+SHA1 (perforce/linux24x86/p4d) = 156282fea8fdab66fd4a2c5524fcb8cdbdf7019b
+Size (perforce/linux24x86/p4d) = 1122120 bytes
+SHA1 (perforce/linux52sparc/p4d) = dd94e8c2f9acd01f17103de21e7bab06481aa126
+Size (perforce/linux52sparc/p4d) = 1044836 bytes
+SHA1 (perforce/linuxarm/p4d) = 00351c4e649ac4dd31b61938198e6518719e1404
+Size (perforce/linuxarm/p4d) = 1459148 bytes
+SHA1 (perforce/linuxppc/p4d) = 22a4071a5763e9d68c8f4870be5d28210b1d3271
+Size (perforce/linuxppc/p4d) = 1703324 bytes
+SHA1 (perforce/netbsdaxp/p4d) = d5779f27d204bbc9fceac6c2571f8ef409c482fe
+Size (perforce/netbsdaxp/p4d) = 1991936 bytes
+SHA1 (perforce/netbsdx86/p4d) = 3edca6ab97c1974f69339df120c69d6764d3965b
+Size (perforce/netbsdx86/p4d) = 1174524 bytes
+SHA1 (perforce/solaris26/p4d) = 6c5fe8a455d055218ca36c280ebaaa6265a6da2b
+Size (perforce/solaris26/p4d) = 1505272 bytes
+SHA1 (perforce/solaris26x86/p4d) = 4ed4ffd657cbf5c44ecd61b1fbe9d528d05a3092
+Size (perforce/solaris26x86/p4d) = 927208 bytes
+SHA1 (perforce/sunos/p4d) = b6ca9a7b4e6ed3ae781515d6c43a2e0eacaca619
+Size (perforce/sunos/p4d) = 933888 bytes
diff --git a/devel/p4d/files/p4d.sh b/devel/p4d/files/p4d.sh
new file mode 100644
index 00000000000..7df60e5ce2a
--- /dev/null
+++ b/devel/p4d/files/p4d.sh
@@ -0,0 +1,108 @@
+#!/bin/sh
+#
+# $NetBSD: p4d.sh,v 1.1.1.1 2002/09/01 02:26:09 schmonz Exp $
+#
+# Perforce SCM server
+#
+# PROVIDE: p4d
+# REQUIRE: DAEMON
+
+[ -f /etc/rc.subr ] && . /etc/rc.subr
+
+name="p4d"
+rcvar=${name}
+command="@PREFIX@/sbin/p4d"
+start_cmd="p4d_start"
+license_cmd="p4d_license"
+extra_commands="license"
+
+p4d_start()
+{
+ p4d_run ${p4d_flags} -d -q
+}
+
+p4d_license()
+{
+ p4d_run -V
+}
+
+p4d_run()
+{
+ eval "@SU@ -m @P4USER@ -c 'umask 037; @SETENV@ - `p4d_getenv` ${command} $@'"
+}
+
+p4d_getenv()
+{
+ p4d_getenv_debug
+ p4d_getenv_journalfile
+ p4d_getenv_logfile
+ p4d_getenv_port
+ p4d_getenv_rootdir
+ p4d_getenv_tmp
+}
+
+p4d_getenv_debug()
+{
+ # Possibly specify debug output
+ # p4d default: none
+ if [ ! -z ${P4DEBUG} ]; then
+ @ECHO@ -n " P4DEBUG=${P4DEBUG}"
+ fi
+}
+
+p4d_getenv_journalfile()
+{
+ # Possibly specify the journal file
+ # p4d default: "journal" if it exists, else none
+ if [ ! -z ${P4JOURNAL} ]; then
+ @ECHO@ -n " P4JOURNAL=${P4JOURNAL}"
+ fi
+}
+
+p4d_getenv_logfile()
+{
+ # Always specify the log file
+ # p4d default: stderr
+ if [ -z ${P4LOG} ]; then
+ P4LOG=@P4LOG@
+ fi
+ @ECHO@ -n " P4LOG=${P4LOG}"
+}
+
+p4d_getenv_port()
+{
+ # Possibly specify the port number
+ # p4d default: 1666
+ if [ ! -z ${P4PORT} ]; then
+ @ECHO@ -n " P4PORT=${P4PORT}"
+ fi
+}
+
+p4d_getenv_rootdir()
+{
+ # Always specify the root dir
+ # p4d default: working directory
+ if [ -z ${P4ROOT} ]; then
+ P4ROOT=@P4ROOT@
+ fi
+ @ECHO@ -n " P4ROOT=${P4ROOT}"
+}
+
+p4d_getenv_tmp()
+{
+ # Possibly specify temp dir
+ # p4d default: /tmp
+ if [ ! -z ${TEMP} ]; then
+ @ECHO@ -n " TMP=${TEMP}"
+ elif [ ! -z ${TMP} ]; then
+ @ECHO@ -n " TMP=${TMP}"
+ fi
+}
+
+if [ -f /etc/rc.subr ]; then
+ load_rc_config $name
+ run_rc_command "$1"
+else
+ echo -n " ${name}"
+ ${start_cmd}
+fi