summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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