public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] proj/openrc:master commit in: src/librc/, runlevels/, man/, init.d/, etc/
@ 2012-02-21 15:19 William Hubbs
  0 siblings, 0 replies; 2+ messages in thread
From: William Hubbs @ 2012-02-21 15:19 UTC (permalink / raw
  To: gentoo-commits

commit:     3247184d860aea7ccc2c58d399f62c088978e973
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 25 17:42:32 2012 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Feb 21 13:27:16 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=3247184d

Remove prefix support

I spoke with the prefix team sometime back and was told that they do not
have an interest in using OpenRC on prefix systems.

---
 etc/rc.conf.FreeBSD    |    4 +---
 etc/rc.conf.Linux      |    5 +----
 etc/rc.conf.NetBSD     |    4 +---
 init.d/adjkerntz.in    |    2 +-
 init.d/bootmisc.in     |    2 +-
 init.d/consolefont.in  |    2 +-
 init.d/devd.in         |    2 +-
 init.d/devfs.in        |    2 +-
 init.d/dumpon.in       |    2 +-
 init.d/fsck.in         |    2 +-
 init.d/hostid.in       |    2 +-
 init.d/hostname.in     |    2 +-
 init.d/hwclock.in      |    2 +-
 init.d/keymaps.in      |    2 +-
 init.d/killprocs.in    |    5 -----
 init.d/localmount.in   |    2 +-
 init.d/mixer.in        |    2 +-
 init.d/modules.in      |    2 +-
 init.d/mount-ro.in     |    2 +-
 init.d/moused.in       |    2 +-
 init.d/mtab.in         |    1 -
 init.d/net.lo.in       |    2 +-
 init.d/netmount.in     |    2 +-
 init.d/network.in      |    2 +-
 init.d/newsyslog.in    |    1 -
 init.d/numlock.in      |    2 +-
 init.d/pf.in           |    2 +-
 init.d/powerd.in       |    2 +-
 init.d/procfs.in       |    2 +-
 init.d/rc-enabled.in   |    1 -
 init.d/root.in         |    2 +-
 init.d/savecore.in     |    2 +-
 init.d/staticroute.in  |    2 +-
 init.d/swap-blk.in     |    2 +-
 init.d/swap.in         |    2 +-
 init.d/swclock.in      |    2 +-
 init.d/syscons.in      |    2 +-
 init.d/sysctl.BSD.in   |    1 -
 init.d/sysctl.Linux.in |    2 +-
 init.d/sysfs.in        |    2 +-
 init.d/syslogd.in      |    1 -
 init.d/termencoding.in |    2 +-
 init.d/ttys.in         |    1 -
 init.d/urandom.in      |    2 +-
 init.d/wscons.in       |    1 -
 man/runscript.8        |    7 ++-----
 runlevels/Makefile     |   18 ++++--------------
 src/librc/librc.c      |    6 ------
 src/librc/rc.h.in      |    1 -
 49 files changed, 43 insertions(+), 82 deletions(-)

diff --git a/etc/rc.conf.FreeBSD b/etc/rc.conf.FreeBSD
index d2b6d94..92640e8 100644
--- a/etc/rc.conf.FreeBSD
+++ b/etc/rc.conf.FreeBSD
@@ -4,9 +4,7 @@
 # This is the subsystem type. Valid options on FreeBSD:
 # ""        - nothing special
 # "jail"    - FreeBSD jails
-# "prefix"  - Prefix
-# If this is commented out, automatic detection will be attempted.
-# Note that automatic detection does not work in a prefix environment.
+# If this is commented out, automatic detection will be used.
 #
 # This should be set to the value representing the environment this file is
 # PRESENTLY in, not the virtualization the environment is capable of.

diff --git a/etc/rc.conf.Linux b/etc/rc.conf.Linux
index d79165d..ee23bc3 100644
--- a/etc/rc.conf.Linux
+++ b/etc/rc.conf.Linux
@@ -5,14 +5,11 @@
 # ""        - nothing special
 # "lxc"     - Linux Containers
 # "openvz"  - Linux OpenVZ
-# "prefix"  - Prefix
 # "uml"     - Usermode Linux
 # "vserver" - Linux vserver
 # "xen0"    - Xen0 Domain
 # "xenU"    - XenU Domain
-# If this is commented out, automatic detection will be attempted.
-# Note that autodetection will not work in a prefix environment or in a
-# linux container.
+# If this is commented out, automatic detection will be used.
 #
 # This should be set to the value representing the environment this file is
 # PRESENTLY in, not the virtualization the environment is capable of.

diff --git a/etc/rc.conf.NetBSD b/etc/rc.conf.NetBSD
index af7adf6..633e2a1 100644
--- a/etc/rc.conf.NetBSD
+++ b/etc/rc.conf.NetBSD
@@ -3,11 +3,9 @@
 
 # This is the subsystem type. Valid options on NetBSD:
 # ""        - nothing special
-# "prefix"  - Prefix
 # "xen0"    - Xen0 Domain
 # "xenU"    - XenU Domain
-# If this is commented out, automatic detection will be attempted.
-# Note that automatic detection does not work in a prefix environment.
+# If this is commented out, automatic detection will be used.
 #
 # This should be set to the value representing the environment this file is
 # PRESENTLY in, not the virtualization the environment is capable of.

diff --git a/init.d/adjkerntz.in b/init.d/adjkerntz.in
index 76ad175..21fc1df 100644
--- a/init.d/adjkerntz.in
+++ b/init.d/adjkerntz.in
@@ -22,7 +22,7 @@ depend()
 	   [ "$clock" != "UTC" -a ! -e /etc/wall_cmos_clock ]; then
 		need root
 	fi
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start()

diff --git a/init.d/bootmisc.in b/init.d/bootmisc.in
index a2afbf9..3144875 100644
--- a/init.d/bootmisc.in
+++ b/init.d/bootmisc.in
@@ -7,7 +7,7 @@ depend()
 	need localmount
 	before logger
 	after clock sysctl
-	keyword -prefix -timeout
+	keyword -timeout
 }
 
 : ${wipe_tmp:=${WIPE_TMP:-yes}}

diff --git a/init.d/consolefont.in b/init.d/consolefont.in
index 66b780d..53c43af 100644
--- a/init.d/consolefont.in
+++ b/init.d/consolefont.in
@@ -8,7 +8,7 @@ depend()
 {
 	need localmount termencoding
 	after hotplug bootmisc
-	keyword -openvz -prefix -uml -vserver -xenu -lxc
+	keyword -openvz -uml -vserver -xenu -lxc
 }
 
 start()

diff --git a/init.d/devd.in b/init.d/devd.in
index b474b75..7943e0d 100644
--- a/init.d/devd.in
+++ b/init.d/devd.in
@@ -10,7 +10,7 @@ depend() {
 	need localmount
 	after bootmisc
 	before net.lo0
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start_pre() {

diff --git a/init.d/devfs.in b/init.d/devfs.in
index 6a41354..ff43f1e 100644
--- a/init.d/devfs.in
+++ b/init.d/devfs.in
@@ -6,7 +6,7 @@ description="Mount system critical filesystems in /dev."
 
 depend() {
 	use dev
-	keyword -prefix -vserver
+	keyword -vserver
 }
 
 start() {

diff --git a/init.d/dumpon.in b/init.d/dumpon.in
index 4450bf9..282e236 100644
--- a/init.d/dumpon.in
+++ b/init.d/dumpon.in
@@ -6,7 +6,7 @@ description="Configures a specific kernel dump device."
 
 depend() {
 	need swap
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start() {

diff --git a/init.d/fsck.in b/init.d/fsck.in
index 049caad..d53a7ed 100644
--- a/init.d/fsck.in
+++ b/init.d/fsck.in
@@ -9,7 +9,7 @@ _IFS="
 depend()
 {
 	use dev clock modules
-	keyword -jail -openvz -prefix -timeout -vserver -lxc
+	keyword -jail -openvz -timeout -vserver -lxc
 }
 
 _abort() {

diff --git a/init.d/hostid.in b/init.d/hostid.in
index b682b3d..a028c90 100644
--- a/init.d/hostid.in
+++ b/init.d/hostid.in
@@ -9,7 +9,7 @@ depend()
 {
 	use root
 	before devd net
-	keyword -jail -prefix
+	keyword -jail
 }
 
 _set()

diff --git a/init.d/hostname.in b/init.d/hostname.in
index 2b0ec81..f5b6fc8 100644
--- a/init.d/hostname.in
+++ b/init.d/hostname.in
@@ -5,7 +5,7 @@
 description="Sets the hostname of the machine."
 
 depend() {
-	keyword -prefix -lxc
+	keyword -lxc
 }
 
 start()

diff --git a/init.d/hwclock.in b/init.d/hwclock.in
index eb44f62..de6e869 100644
--- a/init.d/hwclock.in
+++ b/init.d/hwclock.in
@@ -28,7 +28,7 @@ depend()
 	else
 		before *
 	fi
-	keyword -openvz -prefix -uml -vserver -xenu -lxc
+	keyword -openvz -uml -vserver -xenu -lxc
 }
 
 setupopts()

diff --git a/init.d/keymaps.in b/init.d/keymaps.in
index a55a0e0..86aed3e 100644
--- a/init.d/keymaps.in
+++ b/init.d/keymaps.in
@@ -8,7 +8,7 @@ depend()
 {
 	need localmount termencoding
 	after bootmisc
-	keyword -openvz -prefix -uml -vserver -xenu -lxc
+	keyword -openvz -uml -vserver -xenu -lxc
 }
 
 start()

diff --git a/init.d/killprocs.in b/init.d/killprocs.in
index 7f1cf91..ea1e84b 100644
--- a/init.d/killprocs.in
+++ b/init.d/killprocs.in
@@ -4,11 +4,6 @@
 
 description="Kill all processes so we can unmount disks cleanly."
 
-depend()
-{
-	keyword -prefix
-}
-
 start()
 {
 	ebegin "Terminating remaining processes"

diff --git a/init.d/localmount.in b/init.d/localmount.in
index 68b33db..158bafc 100644
--- a/init.d/localmount.in
+++ b/init.d/localmount.in
@@ -9,7 +9,7 @@ depend()
 	need fsck
 	use lvm modules mtab
 	after lvm modules
-	keyword -jail -prefix -vserver -lxc
+	keyword -jail -openvz -vserver -lxc
 }
 
 start()

diff --git a/init.d/mixer.in b/init.d/mixer.in
index a08aea1..7163f86 100644
--- a/init.d/mixer.in
+++ b/init.d/mixer.in
@@ -7,7 +7,7 @@ extra_commands="restore"
 depend()
 {
 	need localmount
-	keyword -jail -prefix
+	keyword -jail
 }
 
 restore()

diff --git a/init.d/modules.in b/init.d/modules.in
index 72f14e7..1100680 100644
--- a/init.d/modules.in
+++ b/init.d/modules.in
@@ -7,7 +7,7 @@ description="Loads a user defined list of kernel modules."
 depend()
 {
 	use isapnp
-	keyword -openvz -prefix -vserver -lxc
+	keyword -openvz -vserver -lxc
 }
 
 start()

diff --git a/init.d/mount-ro.in b/init.d/mount-ro.in
index 79b2e02..4b07457 100644
--- a/init.d/mount-ro.in
+++ b/init.d/mount-ro.in
@@ -7,7 +7,7 @@ description="Re-mount filesytems read-only for a clean reboot."
 depend()
 {
 	need killprocs savecache
-	keyword -prefix -openvz -vserver -lxc
+	keyword -openvz -vserver -lxc
 }
 
 start()

diff --git a/init.d/moused.in b/init.d/moused.in
index cdcf36a..8ce8ffa 100644
--- a/init.d/moused.in
+++ b/init.d/moused.in
@@ -16,7 +16,7 @@ depend()
 {
 	need localmount
 	after bootmisc
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start()

diff --git a/init.d/mtab.in b/init.d/mtab.in
index 0be5adb..69b3b49 100644
--- a/init.d/mtab.in
+++ b/init.d/mtab.in
@@ -7,7 +7,6 @@ description="Update /etc/mtab to match what the kernel knows about"
 depend()
 {
 	need root
-	keyword -prefix
 }
 
 start()

diff --git a/init.d/net.lo.in b/init.d/net.lo.in
index 3439bec..8a186a0 100644
--- a/init.d/net.lo.in
+++ b/init.d/net.lo.in
@@ -20,7 +20,7 @@ depend()
 
 	need localmount
 	after bootmisc
-	keyword -jail -prefix -vserver
+	keyword -jail -vserver
 
 	case "${IFACE}" in
 		lo|lo0) provide lo;;

diff --git a/init.d/netmount.in b/init.d/netmount.in
index 963ad26..cf5971c 100644
--- a/init.d/netmount.in
+++ b/init.d/netmount.in
@@ -35,7 +35,7 @@ depend()
 	need net $pmap
 	use afc-client amd autofs openvpn
 	use dns nfs nfsmount portmap rpcbind rpc.statd rpc.lockd
-	keyword -jail -prefix -vserver
+	keyword -jail -vserver
 }
 
 start()

diff --git a/init.d/network.in b/init.d/network.in
index 1c70785..d65a6a9 100644
--- a/init.d/network.in
+++ b/init.d/network.in
@@ -13,7 +13,7 @@ depend()
 	need localmount
 	after bootmisc
 	provide net
-	keyword -jail -prefix -vserver
+	keyword -jail -vserver
 }
 
 uniqify()

diff --git a/init.d/newsyslog.in b/init.d/newsyslog.in
index 6cf72e6..878bf4d 100644
--- a/init.d/newsyslog.in
+++ b/init.d/newsyslog.in
@@ -7,7 +7,6 @@ required_files="/etc/newsyslog.conf"
 depend()
 {
 	need localmount
-	keyword -prefix
 }
 
 start()

diff --git a/init.d/numlock.in b/init.d/numlock.in
index 3cb8bee..7f79538 100644
--- a/init.d/numlock.in
+++ b/init.d/numlock.in
@@ -9,7 +9,7 @@ ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}}
 depend()
 {
 	need localmount
-	keyword -openvz -prefix -vserver -lxc
+	keyword -openvz -vserver -lxc
 }
 
 _setleds()

diff --git a/init.d/pf.in b/init.d/pf.in
index 1097ac8..804c3a0 100644
--- a/init.d/pf.in
+++ b/init.d/pf.in
@@ -11,7 +11,7 @@ extra_started_commands="reload"
 
 depend() {
 	need localmount
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start()

diff --git a/init.d/powerd.in b/init.d/powerd.in
index 10ffecc..17e5375 100644
--- a/init.d/powerd.in
+++ b/init.d/powerd.in
@@ -12,7 +12,7 @@ depend()
 	need localmount
 	use logger
 	after bootmisc
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start_pre()

diff --git a/init.d/procfs.in b/init.d/procfs.in
index baa33ad..a6136a3 100644
--- a/init.d/procfs.in
+++ b/init.d/procfs.in
@@ -8,7 +8,7 @@ depend()
 {
 	use modules devfs
 	need localmount
-	keyword -prefix -vserver -lxc
+	keyword -openvz -vserver -lxc
 }
 
 start()

diff --git a/init.d/rc-enabled.in b/init.d/rc-enabled.in
index 9ba73b0..c2d38d7 100644
--- a/init.d/rc-enabled.in
+++ b/init.d/rc-enabled.in
@@ -7,7 +7,6 @@ depend()
 	need localmount net
 	after *
 	before local
-	keyword -prefix
 }
 
 start()

diff --git a/init.d/root.in b/init.d/root.in
index c8ae4f1..fd95ab7 100644
--- a/init.d/root.in
+++ b/init.d/root.in
@@ -7,7 +7,7 @@ description="Mount the root fs read/write"
 depend()
 {
 	need fsck
-	keyword -jail -openvz -prefix -vserver -lxc
+	keyword -jail -openvz -vserver -lxc
 }
 
 start()

diff --git a/init.d/savecore.in b/init.d/savecore.in
index 12c4d3f..1423046 100644
--- a/init.d/savecore.in
+++ b/init.d/savecore.in
@@ -7,7 +7,7 @@ description="Saves a kernel dump."
 depend()
 {
 	need localmount
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start()

diff --git a/init.d/staticroute.in b/init.d/staticroute.in
index 294f890..7ace659 100644
--- a/init.d/staticroute.in
+++ b/init.d/staticroute.in
@@ -12,7 +12,7 @@ depend()
 {
 	provide net
 	use network
-	keyword -jail -prefix -vserver
+	keyword -jail -vserver
 }
 
 pre_flight_checks()

diff --git a/init.d/swap-blk.in b/init.d/swap-blk.in
index a7862ee..6f28e21 100644
--- a/init.d/swap-blk.in
+++ b/init.d/swap-blk.in
@@ -5,7 +5,7 @@
 depend()
 {
 	before fsck
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start()

diff --git a/init.d/swap.in b/init.d/swap.in
index fa08b4d..9e8ddbd 100644
--- a/init.d/swap.in
+++ b/init.d/swap.in
@@ -5,7 +5,7 @@
 depend()
 {
 	before localmount
-	keyword -jail -openvz -prefix -vserver -lxc
+	keyword -jail -openvz -vserver -lxc
 }
 
 start()

diff --git a/init.d/swclock.in b/init.d/swclock.in
index 077f258..f10689b 100644
--- a/init.d/swclock.in
+++ b/init.d/swclock.in
@@ -8,7 +8,7 @@ depend()
 {
 	before *
 	provide clock
-	keyword -openvz -prefix -uml -vserver -xenu -lxc
+	keyword -openvz -uml -vserver -xenu -lxc
 }
 
 # swclock is an OpenRC built in

diff --git a/init.d/syscons.in b/init.d/syscons.in
index 0666947..c49799a 100644
--- a/init.d/syscons.in
+++ b/init.d/syscons.in
@@ -4,7 +4,7 @@
 
 depend() {
 	need localmount
-	keyword -jail -prefix
+	keyword -jail
 }
 
 start() {

diff --git a/init.d/sysctl.BSD.in b/init.d/sysctl.BSD.in
index 89df6dc..4a86f87 100644
--- a/init.d/sysctl.BSD.in
+++ b/init.d/sysctl.BSD.in
@@ -5,7 +5,6 @@
 depend()
 {
 	before bootmisc logger
-	keyword -prefix
 }
 
 start()

diff --git a/init.d/sysctl.Linux.in b/init.d/sysctl.Linux.in
index 71932fe..0584c62 100644
--- a/init.d/sysctl.Linux.in
+++ b/init.d/sysctl.Linux.in
@@ -5,7 +5,7 @@
 depend()
 {
 	before bootmisc logger
-	keyword -prefix -vserver
+	keyword -vserver
 }
 
 start()

diff --git a/init.d/sysfs.in b/init.d/sysfs.in
index e692198..e856775 100644
--- a/init.d/sysfs.in
+++ b/init.d/sysfs.in
@@ -6,7 +6,7 @@ description="Mount the sys filesystem."
 
 depend()
 {
-	keyword -prefix -vserver
+	keyword -vserver
 }
 
 mount_sys()

diff --git a/init.d/syslogd.in b/init.d/syslogd.in
index 817afa1..809ac89 100644
--- a/init.d/syslogd.in
+++ b/init.d/syslogd.in
@@ -16,5 +16,4 @@ depend()
 	use net newsyslog
 	need localmount
 	after bootmisc
-	keyword -prefix
 }

diff --git a/init.d/termencoding.in b/init.d/termencoding.in
index c8ea167..5f09c98 100644
--- a/init.d/termencoding.in
+++ b/init.d/termencoding.in
@@ -9,7 +9,7 @@ ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}}
 
 depend()
 {
-	keyword -openvz -prefix -uml -vserver -xenu
+	keyword -openvz -uml -vserver -xenu
 	use root
 	after bootmisc
 }

diff --git a/init.d/ttys.in b/init.d/ttys.in
index 2adbe81..2ac524b 100644
--- a/init.d/ttys.in
+++ b/init.d/ttys.in
@@ -5,7 +5,6 @@
 depend()
 {
 	after fsck
-	keyword -prefix
 }
 
 start()

diff --git a/init.d/urandom.in b/init.d/urandom.in
index bc48066..8ee3251 100644
--- a/init.d/urandom.in
+++ b/init.d/urandom.in
@@ -8,7 +8,7 @@ description="Initializes the random number generator."
 depend()
 {
 	need localmount
-	keyword -jail -openvz -prefix
+	keyword -jail -openvz
 }
 
 save_seed()

diff --git a/init.d/wscons.in b/init.d/wscons.in
index 5d94eff..9416b3b 100644
--- a/init.d/wscons.in
+++ b/init.d/wscons.in
@@ -5,7 +5,6 @@
 depend()
 {
 	need localmount
-	keyword -prefix
 }
 
 start()

diff --git a/man/runscript.8 b/man/runscript.8
index bab54e2..3b037ce 100644
--- a/man/runscript.8
+++ b/man/runscript.8
@@ -175,8 +175,6 @@ in
 Same as -jail, but for Linux Resource Containers (LXC).
 .It Dv -openvz
 Same as -jail, but for OpenVZ systems.
-.It Dv -prefix
-Same as -jail, but for Prefix systems.
 .It Dv -uml
 Same as -jail, but for UML systems.
 .It Dv -vserver
@@ -385,9 +383,8 @@ rc_provide_tap1="!net"
 # To put in in /etc/rc.conf you would do it like this
 rc_net_tap1_provide="!net"
 
-# It's also possible to negate keywords. This is mainly useful for prefix
-# users testing OpenRC.
-rc_keyword="!noprefix"
+# It's also possible to negate keywords.
+rc_keyword="-keyword"
 .Ed
 .Sh EXAMPLES
 .Pp

diff --git a/runlevels/Makefile b/runlevels/Makefile
index 1573572..468a375 100644
--- a/runlevels/Makefile
+++ b/runlevels/Makefile
@@ -41,34 +41,24 @@ install:
 	if ! test -d "${SYSINITDIR}"; then \
 		${INSTALL} -d ${SYSINITDIR} || exit $$?; \
 		for x in ${SYSINIT}; do \
-			if test -n "${PREFIX}"; then \
-				grep -q "keyword .*noprefix" ${INITDIR}/"$$x" && continue; \
-			fi; \
-			ln -snf ${PREFIX}/etc/init.d/"$$x" ${SYSINITDIR}/"$$x" || exit $$?; done \
+			ln -snf ${PREFIX}/etc/init.d/"$$x" ${SYSINITDIR}/"$$x" || exit $$?; \
+		done \
 	fi
 	if ! test -d "${BOOTDIR}"; then \
 		${INSTALL} -d ${BOOTDIR} || exit $$?; \
 		for x in ${BOOT}; do \
-			if test -n "${PREFIX}"; then \
-				grep -q "keyword .*noprefix" ${INITDIR}/"$$x" && continue; \
-			fi; \
 			ln -snf ${PREFIX}/etc/init.d/"$$x" ${BOOTDIR}/"$$x" || exit $$?; \
 		done \
 	fi
 	if ! test -d "${DEFAULTDIR}"; then \
 		${INSTALL} -d ${DEFAULTDIR} || exit $$?; \
 		for x in ${DEFAULT}; do \
-			if test -n "${PREFIX}"; then \
-				grep -q "keyword .*noprefix" ${INITDIR}/"$$x" && continue; \
-			fi; \
-			ln -snf ${PREFIX}/etc/init.d/"$$x" ${DEFAULTDIR}/"$$x" || exit $$?; done \
+			ln -snf ${PREFIX}/etc/init.d/"$$x" ${DEFAULTDIR}/"$$x" || exit $$?; \
+		done \
 	fi
 	if ! test -d "${SHUTDOWNDIR}"; then \
 		${INSTALL} -d ${SHUTDOWNDIR} || exit $$?; \
 		for x in ${SHUTDOWN}; do \
-			if test -n "${PREFIX}"; then \
-				grep -q "keyword .*noprefix" ${INITDIR}/"$$x" && continue; \
-			fi; \
 			ln -snf ${PREFIX}/etc/init.d/"$$x" ${SHUTDOWNDIR}/"$$x" || exit $$?; done \
 	fi
 

diff --git a/src/librc/librc.c b/src/librc/librc.c
index d82880f..ed60196 100644
--- a/src/librc/librc.c
+++ b/src/librc/librc.c
@@ -216,7 +216,6 @@ rc_sys_v2(void)
 		}
 		/* Now do detection */
 		__STRING_SWITCH(systype)
-		__STRING_CASE(RC_SYS_PREFIX)	{ return RC_SYS_PREFIX; }
 #ifdef __FreeBSD__
 		__STRING_CASE(RC_SYS_JAIL) { return RC_SYS_JAIL; }
 #endif /* __FreeBSD__ */
@@ -246,10 +245,6 @@ librc_hidden_def(rc_sys_v2)
 const char *
 rc_sys_v1(void)
 {
-#ifdef PREFIX
-	return RC_SYS_PREFIX;
-#else
-
 #ifdef __FreeBSD__
 	int jailed = 0;
 	size_t len = sizeof(jailed);
@@ -286,7 +281,6 @@ rc_sys_v1(void)
 #endif
 
 	return NULL;
-#endif /* PREFIX */
 }
 librc_hidden_def(rc_sys_v1)
 

diff --git a/src/librc/rc.h.in b/src/librc/rc.h.in
index 31b21f1..468990e 100644
--- a/src/librc/rc.h.in
+++ b/src/librc/rc.h.in
@@ -276,7 +276,6 @@ bool rc_service_daemons_crashed(const char *);
 #define RC_SYS_JAIL    "JAIL"
 #define RC_SYS_OPENVZ  "OPENVZ"
 #define RC_SYS_LXC     "LXC"
-#define RC_SYS_PREFIX  "PREFIX"
 #define RC_SYS_UML     "UML"
 #define RC_SYS_VSERVER "VSERVER"
 #define RC_SYS_XEN0    "XEN0"



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [gentoo-commits] proj/openrc:master commit in: src/librc/, runlevels/, man/, init.d/, etc/
@ 2012-08-15 23:13 William Hubbs
  0 siblings, 0 replies; 2+ messages in thread
From: William Hubbs @ 2012-08-15 23:13 UTC (permalink / raw
  To: gentoo-commits

commit:     e641b4384977011b93c3c2a90222d459bc4c5ca6
Author:     William Hubbs <w.d.hubbs <AT> gmail <DOT> com>
AuthorDate: Tue Jul  3 03:04:22 2012 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Jul 26 15:54:48 2012 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=e641b438

Bring Back prefix support

We now have a team member who is interested in OpenRC on prefix, so I am
bringing it back to the main tree.

---
 etc/rc.conf.FreeBSD    |    1 +
 etc/rc.conf.Linux      |    1 +
 etc/rc.conf.NetBSD     |    1 +
 init.d/adjkerntz.in    |    2 +-
 init.d/bootmisc.in     |    2 +-
 init.d/consolefont.in  |    2 +-
 init.d/devd.in         |    2 +-
 init.d/devfs.in        |    2 +-
 init.d/dumpon.in       |    2 +-
 init.d/fsck.in         |    2 +-
 init.d/hostid.in       |    2 +-
 init.d/hostname.in     |    2 +-
 init.d/hwclock.in      |    2 +-
 init.d/keymaps.in      |    2 +-
 init.d/killprocs.in    |    5 +++++
 init.d/localmount.in   |    2 +-
 init.d/mixer.in        |    2 +-
 init.d/modules.in      |    2 +-
 init.d/mount-ro.in     |    2 +-
 init.d/moused.in       |    2 +-
 init.d/mtab.in         |    1 +
 init.d/net.lo.in       |    2 +-
 init.d/netmount.in     |    2 +-
 init.d/network.in      |    2 +-
 init.d/newsyslog.in    |    1 +
 init.d/numlock.in      |    2 +-
 init.d/pf.in           |    2 +-
 init.d/powerd.in       |    2 +-
 init.d/procfs.in       |    2 +-
 init.d/rc-enabled.in   |    1 +
 init.d/root.in         |    2 +-
 init.d/savecore.in     |    2 +-
 init.d/staticroute.in  |    2 +-
 init.d/swap-blk.in     |    2 +-
 init.d/swap.in         |    2 +-
 init.d/swclock.in      |    2 +-
 init.d/syscons.in      |    2 +-
 init.d/sysctl.BSD.in   |    1 +
 init.d/sysctl.Linux.in |    2 +-
 init.d/sysfs.in        |    2 +-
 init.d/syslogd.in      |    1 +
 init.d/termencoding.in |    2 +-
 init.d/ttys.in         |    1 +
 init.d/urandom.in      |    2 +-
 init.d/wscons.in       |    1 +
 man/runscript.8        |    7 +++++--
 runlevels/Makefile     |   18 ++++++++++++++----
 src/librc/librc.c      |    6 ++++++
 src/librc/rc.h.in      |    1 +
 49 files changed, 75 insertions(+), 40 deletions(-)

diff --git a/etc/rc.conf.FreeBSD b/etc/rc.conf.FreeBSD
index 92640e8..cb16b83 100644
--- a/etc/rc.conf.FreeBSD
+++ b/etc/rc.conf.FreeBSD
@@ -4,6 +4,7 @@
 # This is the subsystem type. Valid options on FreeBSD:
 # ""        - nothing special
 # "jail"    - FreeBSD jails
+# "prefix"  - Prefix
 # If this is commented out, automatic detection will be used.
 #
 # This should be set to the value representing the environment this file is

diff --git a/etc/rc.conf.Linux b/etc/rc.conf.Linux
index 6cc9bef..909e6a9 100644
--- a/etc/rc.conf.Linux
+++ b/etc/rc.conf.Linux
@@ -5,6 +5,7 @@
 # ""        - nothing special
 # "lxc"     - Linux Containers
 # "openvz"  - Linux OpenVZ
+# "prefix"  - Prefix
 # "uml"     - Usermode Linux
 # "vserver" - Linux vserver
 # "xen0"    - Xen0 Domain

diff --git a/etc/rc.conf.NetBSD b/etc/rc.conf.NetBSD
index 633e2a1..43f8b88 100644
--- a/etc/rc.conf.NetBSD
+++ b/etc/rc.conf.NetBSD
@@ -3,6 +3,7 @@
 
 # This is the subsystem type. Valid options on NetBSD:
 # ""        - nothing special
+# "prefix"  - Prefix
 # "xen0"    - Xen0 Domain
 # "xenU"    - XenU Domain
 # If this is commented out, automatic detection will be used.

diff --git a/init.d/adjkerntz.in b/init.d/adjkerntz.in
index 21fc1df..76ad175 100644
--- a/init.d/adjkerntz.in
+++ b/init.d/adjkerntz.in
@@ -22,7 +22,7 @@ depend()
 	   [ "$clock" != "UTC" -a ! -e /etc/wall_cmos_clock ]; then
 		need root
 	fi
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start()

diff --git a/init.d/bootmisc.in b/init.d/bootmisc.in
index 3144875..a2afbf9 100644
--- a/init.d/bootmisc.in
+++ b/init.d/bootmisc.in
@@ -7,7 +7,7 @@ depend()
 	need localmount
 	before logger
 	after clock sysctl
-	keyword -timeout
+	keyword -prefix -timeout
 }
 
 : ${wipe_tmp:=${WIPE_TMP:-yes}}

diff --git a/init.d/consolefont.in b/init.d/consolefont.in
index 53c43af..66b780d 100644
--- a/init.d/consolefont.in
+++ b/init.d/consolefont.in
@@ -8,7 +8,7 @@ depend()
 {
 	need localmount termencoding
 	after hotplug bootmisc
-	keyword -openvz -uml -vserver -xenu -lxc
+	keyword -openvz -prefix -uml -vserver -xenu -lxc
 }
 
 start()

diff --git a/init.d/devd.in b/init.d/devd.in
index 7943e0d..b474b75 100644
--- a/init.d/devd.in
+++ b/init.d/devd.in
@@ -10,7 +10,7 @@ depend() {
 	need localmount
 	after bootmisc
 	before net.lo0
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start_pre() {

diff --git a/init.d/devfs.in b/init.d/devfs.in
index ff43f1e..6a41354 100644
--- a/init.d/devfs.in
+++ b/init.d/devfs.in
@@ -6,7 +6,7 @@ description="Mount system critical filesystems in /dev."
 
 depend() {
 	use dev
-	keyword -vserver
+	keyword -prefix -vserver
 }
 
 start() {

diff --git a/init.d/dumpon.in b/init.d/dumpon.in
index 282e236..4450bf9 100644
--- a/init.d/dumpon.in
+++ b/init.d/dumpon.in
@@ -6,7 +6,7 @@ description="Configures a specific kernel dump device."
 
 depend() {
 	need swap
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start() {

diff --git a/init.d/fsck.in b/init.d/fsck.in
index 0e93d21..fcc334c 100644
--- a/init.d/fsck.in
+++ b/init.d/fsck.in
@@ -9,7 +9,7 @@ _IFS="
 depend()
 {
 	use dev clock modules
-	keyword -jail -openvz -timeout -vserver -lxc
+	keyword -jail -openvz -prefix -timeout -vserver -lxc
 }
 
 _abort() {

diff --git a/init.d/hostid.in b/init.d/hostid.in
index a028c90..b682b3d 100644
--- a/init.d/hostid.in
+++ b/init.d/hostid.in
@@ -9,7 +9,7 @@ depend()
 {
 	use root
 	before devd net
-	keyword -jail
+	keyword -jail -prefix
 }
 
 _set()

diff --git a/init.d/hostname.in b/init.d/hostname.in
index f5b6fc8..2b0ec81 100644
--- a/init.d/hostname.in
+++ b/init.d/hostname.in
@@ -5,7 +5,7 @@
 description="Sets the hostname of the machine."
 
 depend() {
-	keyword -lxc
+	keyword -prefix -lxc
 }
 
 start()

diff --git a/init.d/hwclock.in b/init.d/hwclock.in
index de6e869..eb44f62 100644
--- a/init.d/hwclock.in
+++ b/init.d/hwclock.in
@@ -28,7 +28,7 @@ depend()
 	else
 		before *
 	fi
-	keyword -openvz -uml -vserver -xenu -lxc
+	keyword -openvz -prefix -uml -vserver -xenu -lxc
 }
 
 setupopts()

diff --git a/init.d/keymaps.in b/init.d/keymaps.in
index 86aed3e..a55a0e0 100644
--- a/init.d/keymaps.in
+++ b/init.d/keymaps.in
@@ -8,7 +8,7 @@ depend()
 {
 	need localmount termencoding
 	after bootmisc
-	keyword -openvz -uml -vserver -xenu -lxc
+	keyword -openvz -prefix -uml -vserver -xenu -lxc
 }
 
 start()

diff --git a/init.d/killprocs.in b/init.d/killprocs.in
index ea1e84b..7f1cf91 100644
--- a/init.d/killprocs.in
+++ b/init.d/killprocs.in
@@ -4,6 +4,11 @@
 
 description="Kill all processes so we can unmount disks cleanly."
 
+depend()
+{
+	keyword -prefix
+}
+
 start()
 {
 	ebegin "Terminating remaining processes"

diff --git a/init.d/localmount.in b/init.d/localmount.in
index c432a12..8e67c38 100644
--- a/init.d/localmount.in
+++ b/init.d/localmount.in
@@ -9,7 +9,7 @@ depend()
 	need fsck
 	use lvm modules mtab
 	after lvm modules
-	keyword -jail -openvz -vserver -lxc
+	keyword -jail -openvz -prefix -vserver -lxc
 }
 
 start()

diff --git a/init.d/mixer.in b/init.d/mixer.in
index 7163f86..a08aea1 100644
--- a/init.d/mixer.in
+++ b/init.d/mixer.in
@@ -7,7 +7,7 @@ extra_commands="restore"
 depend()
 {
 	need localmount
-	keyword -jail
+	keyword -jail -prefix
 }
 
 restore()

diff --git a/init.d/modules.in b/init.d/modules.in
index 1100680..72f14e7 100644
--- a/init.d/modules.in
+++ b/init.d/modules.in
@@ -7,7 +7,7 @@ description="Loads a user defined list of kernel modules."
 depend()
 {
 	use isapnp
-	keyword -openvz -vserver -lxc
+	keyword -openvz -prefix -vserver -lxc
 }
 
 start()

diff --git a/init.d/mount-ro.in b/init.d/mount-ro.in
index 369d544..881bf84 100644
--- a/init.d/mount-ro.in
+++ b/init.d/mount-ro.in
@@ -7,7 +7,7 @@ description="Re-mount filesytems read-only for a clean reboot."
 depend()
 {
 	need killprocs savecache
-	keyword -openvz -vserver -lxc
+	keyword -openvz -prefix -vserver -lxc
 }
 
 start()

diff --git a/init.d/moused.in b/init.d/moused.in
index 8ce8ffa..cdcf36a 100644
--- a/init.d/moused.in
+++ b/init.d/moused.in
@@ -16,7 +16,7 @@ depend()
 {
 	need localmount
 	after bootmisc
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start()

diff --git a/init.d/mtab.in b/init.d/mtab.in
index 69b3b49..0be5adb 100644
--- a/init.d/mtab.in
+++ b/init.d/mtab.in
@@ -7,6 +7,7 @@ description="Update /etc/mtab to match what the kernel knows about"
 depend()
 {
 	need root
+	keyword -prefix
 }
 
 start()

diff --git a/init.d/net.lo.in b/init.d/net.lo.in
index 6bf49b5..088398b 100644
--- a/init.d/net.lo.in
+++ b/init.d/net.lo.in
@@ -23,7 +23,7 @@ depend()
 		need sysfs
 	fi
 	after bootmisc
-	keyword -jail -vserver
+	keyword -jail -prefix -vserver
 
 	case "${IFACE}" in
 		lo|lo0) provide lo;;

diff --git a/init.d/netmount.in b/init.d/netmount.in
index cf5971c..963ad26 100644
--- a/init.d/netmount.in
+++ b/init.d/netmount.in
@@ -35,7 +35,7 @@ depend()
 	need net $pmap
 	use afc-client amd autofs openvpn
 	use dns nfs nfsmount portmap rpcbind rpc.statd rpc.lockd
-	keyword -jail -vserver
+	keyword -jail -prefix -vserver
 }
 
 start()

diff --git a/init.d/network.in b/init.d/network.in
index 20d46f4..f0403b4 100644
--- a/init.d/network.in
+++ b/init.d/network.in
@@ -13,7 +13,7 @@ depend()
 	need localmount
 	after bootmisc
 	provide net
-	keyword -jail -vserver
+	keyword -jail -prefix -vserver
 }
 
 uniqify()

diff --git a/init.d/newsyslog.in b/init.d/newsyslog.in
index 878bf4d..6cf72e6 100644
--- a/init.d/newsyslog.in
+++ b/init.d/newsyslog.in
@@ -7,6 +7,7 @@ required_files="/etc/newsyslog.conf"
 depend()
 {
 	need localmount
+	keyword -prefix
 }
 
 start()

diff --git a/init.d/numlock.in b/init.d/numlock.in
index 7f79538..3cb8bee 100644
--- a/init.d/numlock.in
+++ b/init.d/numlock.in
@@ -9,7 +9,7 @@ ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}}
 depend()
 {
 	need localmount
-	keyword -openvz -vserver -lxc
+	keyword -openvz -prefix -vserver -lxc
 }
 
 _setleds()

diff --git a/init.d/pf.in b/init.d/pf.in
index 804c3a0..1097ac8 100644
--- a/init.d/pf.in
+++ b/init.d/pf.in
@@ -11,7 +11,7 @@ extra_started_commands="reload"
 
 depend() {
 	need localmount
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start()

diff --git a/init.d/powerd.in b/init.d/powerd.in
index 17e5375..10ffecc 100644
--- a/init.d/powerd.in
+++ b/init.d/powerd.in
@@ -12,7 +12,7 @@ depend()
 	need localmount
 	use logger
 	after bootmisc
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start_pre()

diff --git a/init.d/procfs.in b/init.d/procfs.in
index a167ed7..992567e 100644
--- a/init.d/procfs.in
+++ b/init.d/procfs.in
@@ -8,7 +8,7 @@ depend()
 {
 	use modules devfs
 	need localmount
-	keyword -openvz -vserver -lxc
+	keyword -openvz -prefix -vserver -lxc
 }
 
 start()

diff --git a/init.d/rc-enabled.in b/init.d/rc-enabled.in
index c2d38d7..9ba73b0 100644
--- a/init.d/rc-enabled.in
+++ b/init.d/rc-enabled.in
@@ -7,6 +7,7 @@ depend()
 	need localmount net
 	after *
 	before local
+	keyword -prefix
 }
 
 start()

diff --git a/init.d/root.in b/init.d/root.in
index fd95ab7..c8ae4f1 100644
--- a/init.d/root.in
+++ b/init.d/root.in
@@ -7,7 +7,7 @@ description="Mount the root fs read/write"
 depend()
 {
 	need fsck
-	keyword -jail -openvz -vserver -lxc
+	keyword -jail -openvz -prefix -vserver -lxc
 }
 
 start()

diff --git a/init.d/savecore.in b/init.d/savecore.in
index b04d1be..c55a0ab 100644
--- a/init.d/savecore.in
+++ b/init.d/savecore.in
@@ -8,7 +8,7 @@ depend()
 {
 	need dumpon localmount
 	before encswap
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start()

diff --git a/init.d/staticroute.in b/init.d/staticroute.in
index 91b61a4..213dddf 100644
--- a/init.d/staticroute.in
+++ b/init.d/staticroute.in
@@ -12,7 +12,7 @@ depend()
 {
 	provide net
 	use network
-	keyword -jail -vserver
+	keyword -jail -prefix -vserver
 }
 
 pre_flight_checks()

diff --git a/init.d/swap-blk.in b/init.d/swap-blk.in
index 6f28e21..a7862ee 100644
--- a/init.d/swap-blk.in
+++ b/init.d/swap-blk.in
@@ -5,7 +5,7 @@
 depend()
 {
 	before fsck
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start()

diff --git a/init.d/swap.in b/init.d/swap.in
index 9e8ddbd..fa08b4d 100644
--- a/init.d/swap.in
+++ b/init.d/swap.in
@@ -5,7 +5,7 @@
 depend()
 {
 	before localmount
-	keyword -jail -openvz -vserver -lxc
+	keyword -jail -openvz -prefix -vserver -lxc
 }
 
 start()

diff --git a/init.d/swclock.in b/init.d/swclock.in
index f10689b..077f258 100644
--- a/init.d/swclock.in
+++ b/init.d/swclock.in
@@ -8,7 +8,7 @@ depend()
 {
 	before *
 	provide clock
-	keyword -openvz -uml -vserver -xenu -lxc
+	keyword -openvz -prefix -uml -vserver -xenu -lxc
 }
 
 # swclock is an OpenRC built in

diff --git a/init.d/syscons.in b/init.d/syscons.in
index c49799a..0666947 100644
--- a/init.d/syscons.in
+++ b/init.d/syscons.in
@@ -4,7 +4,7 @@
 
 depend() {
 	need localmount
-	keyword -jail
+	keyword -jail -prefix
 }
 
 start() {

diff --git a/init.d/sysctl.BSD.in b/init.d/sysctl.BSD.in
index fe69ab2..c7d2028 100644
--- a/init.d/sysctl.BSD.in
+++ b/init.d/sysctl.BSD.in
@@ -5,6 +5,7 @@
 depend()
 {
 	before bootmisc logger
+	keyword -prefix
 }
 
 start()

diff --git a/init.d/sysctl.Linux.in b/init.d/sysctl.Linux.in
index a64060f..119f6ee 100644
--- a/init.d/sysctl.Linux.in
+++ b/init.d/sysctl.Linux.in
@@ -5,7 +5,7 @@
 depend()
 {
 	before bootmisc logger
-	keyword -lxc -vserver
+	keyword -lxc -prefix -vserver
 }
 
 start()

diff --git a/init.d/sysfs.in b/init.d/sysfs.in
index 5bc5c71..a90dab2 100644
--- a/init.d/sysfs.in
+++ b/init.d/sysfs.in
@@ -6,7 +6,7 @@ description="Mount the sys filesystem."
 
 depend()
 {
-	keyword -vserver
+	keyword -prefix -vserver
 }
 
 mount_sys()

diff --git a/init.d/syslogd.in b/init.d/syslogd.in
index 809ac89..817afa1 100644
--- a/init.d/syslogd.in
+++ b/init.d/syslogd.in
@@ -16,4 +16,5 @@ depend()
 	use net newsyslog
 	need localmount
 	after bootmisc
+	keyword -prefix
 }

diff --git a/init.d/termencoding.in b/init.d/termencoding.in
index 0f243e2..a8a96e5 100644
--- a/init.d/termencoding.in
+++ b/init.d/termencoding.in
@@ -9,7 +9,7 @@ ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}}
 
 depend()
 {
-	keyword -lxc -openvz -uml -vserver -xenu
+	keyword -lxc -openvz -prefix -uml -vserver -xenu
 	use root
 	after bootmisc
 }

diff --git a/init.d/ttys.in b/init.d/ttys.in
index 2ac524b..2adbe81 100644
--- a/init.d/ttys.in
+++ b/init.d/ttys.in
@@ -5,6 +5,7 @@
 depend()
 {
 	after fsck
+	keyword -prefix
 }
 
 start()

diff --git a/init.d/urandom.in b/init.d/urandom.in
index 8ee3251..bc48066 100644
--- a/init.d/urandom.in
+++ b/init.d/urandom.in
@@ -8,7 +8,7 @@ description="Initializes the random number generator."
 depend()
 {
 	need localmount
-	keyword -jail -openvz
+	keyword -jail -openvz -prefix
 }
 
 save_seed()

diff --git a/init.d/wscons.in b/init.d/wscons.in
index 9416b3b..5d94eff 100644
--- a/init.d/wscons.in
+++ b/init.d/wscons.in
@@ -5,6 +5,7 @@
 depend()
 {
 	need localmount
+	keyword -prefix
 }
 
 start()

diff --git a/man/runscript.8 b/man/runscript.8
index 6d425e4..ef55de3 100644
--- a/man/runscript.8
+++ b/man/runscript.8
@@ -180,6 +180,8 @@ in
 Same as -jail, but for Linux Resource Containers (LXC).
 .It Dv -openvz
 Same as -jail, but for OpenVZ systems.
+.It Dv -prefix
+Same as -jail, but for Prefix systems.
 .It Dv -uml
 Same as -jail, but for UML systems.
 .It Dv -vserver
@@ -388,8 +390,9 @@ rc_provide_tap1="!net"
 # To put in in /etc/rc.conf you would do it like this
 rc_net_tap1_provide="!net"
 
-# It's also possible to negate keywords.
-rc_keyword="-keyword"
+# It's also possible to negate keywords. This is mainly useful for prefix
+# users testing OpenRC.
+rc_keyword="!-prefix"
 .Ed
 .Sh EXAMPLES
 .Pp

diff --git a/runlevels/Makefile b/runlevels/Makefile
index 25fa029..c42b307 100644
--- a/runlevels/Makefile
+++ b/runlevels/Makefile
@@ -53,24 +53,34 @@ install:
 	if ! test -d "${SYSINITDIR}"; then \
 		${INSTALL} -d ${SYSINITDIR} || exit $$?; \
 		for x in ${SYSINIT}; do \
-			ln -snf ${PREFIX}/etc/init.d/"$$x" ${SYSINITDIR}/"$$x" || exit $$?; \
-		done \
+			if test -n "${PREFIX}"; then \
+				grep -q "keyword .*-prefix" ${INITDIR}/"$$x" && continue; \
+			fi; \
+			ln -snf ${PREFIX}/etc/init.d/"$$x" ${SYSINITDIR}/"$$x" || exit $$?; done \
 	fi
 	if ! test -d "${BOOTDIR}"; then \
 		${INSTALL} -d ${BOOTDIR} || exit $$?; \
 		for x in ${BOOT}; do \
+			if test -n "${PREFIX}"; then \
+				grep -q "keyword .*-prefix" ${INITDIR}/"$$x" && continue; \
+			fi; \
 			ln -snf ${PREFIX}/etc/init.d/"$$x" ${BOOTDIR}/"$$x" || exit $$?; \
 		done \
 	fi
 	if ! test -d "${DEFAULTDIR}"; then \
 		${INSTALL} -d ${DEFAULTDIR} || exit $$?; \
 		for x in ${DEFAULT}; do \
-			ln -snf ${PREFIX}/etc/init.d/"$$x" ${DEFAULTDIR}/"$$x" || exit $$?; \
-		done \
+			if test -n "${PREFIX}"; then \
+				grep -q "keyword .*-prefix" ${INITDIR}/"$$x" && continue; \
+			fi; \
+			ln -snf ${PREFIX}/etc/init.d/"$$x" ${DEFAULTDIR}/"$$x" || exit $$?; done \
 	fi
 	if ! test -d "${SHUTDOWNDIR}"; then \
 		${INSTALL} -d ${SHUTDOWNDIR} || exit $$?; \
 		for x in ${SHUTDOWN}; do \
+			if test -n "${PREFIX}"; then \
+				grep -q "keyword .*-prefix" ${INITDIR}/"$$x" && continue; \
+			fi; \
 			ln -snf ${PREFIX}/etc/init.d/"$$x" ${SHUTDOWNDIR}/"$$x" || exit $$?; done \
 	fi
 

diff --git a/src/librc/librc.c b/src/librc/librc.c
index ed60196..d82880f 100644
--- a/src/librc/librc.c
+++ b/src/librc/librc.c
@@ -216,6 +216,7 @@ rc_sys_v2(void)
 		}
 		/* Now do detection */
 		__STRING_SWITCH(systype)
+		__STRING_CASE(RC_SYS_PREFIX)	{ return RC_SYS_PREFIX; }
 #ifdef __FreeBSD__
 		__STRING_CASE(RC_SYS_JAIL) { return RC_SYS_JAIL; }
 #endif /* __FreeBSD__ */
@@ -245,6 +246,10 @@ librc_hidden_def(rc_sys_v2)
 const char *
 rc_sys_v1(void)
 {
+#ifdef PREFIX
+	return RC_SYS_PREFIX;
+#else
+
 #ifdef __FreeBSD__
 	int jailed = 0;
 	size_t len = sizeof(jailed);
@@ -281,6 +286,7 @@ rc_sys_v1(void)
 #endif
 
 	return NULL;
+#endif /* PREFIX */
 }
 librc_hidden_def(rc_sys_v1)
 

diff --git a/src/librc/rc.h.in b/src/librc/rc.h.in
index 96926a5..e4cb60d 100644
--- a/src/librc/rc.h.in
+++ b/src/librc/rc.h.in
@@ -280,6 +280,7 @@ bool rc_service_daemons_crashed(const char *);
 #define RC_SYS_JAIL    "JAIL"
 #define RC_SYS_OPENVZ  "OPENVZ"
 #define RC_SYS_LXC     "LXC"
+#define RC_SYS_PREFIX  "PREFIX"
 #define RC_SYS_UML     "UML"
 #define RC_SYS_VSERVER "VSERVER"
 #define RC_SYS_XEN0    "XEN0"


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-08-15 23:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-21 15:19 [gentoo-commits] proj/openrc:master commit in: src/librc/, runlevels/, man/, init.d/, etc/ William Hubbs
  -- strict thread matches above, loose matches on Subject: below --
2012-08-15 23:13 William Hubbs

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox