summaryrefslogtreecommitdiff
path: root/usr/src/pkgdefs/SUNWspsvu/preinstall
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/pkgdefs/SUNWspsvu/preinstall')
-rw-r--r--usr/src/pkgdefs/SUNWspsvu/preinstall91
1 files changed, 91 insertions, 0 deletions
diff --git a/usr/src/pkgdefs/SUNWspsvu/preinstall b/usr/src/pkgdefs/SUNWspsvu/preinstall
new file mode 100644
index 0000000000..fd9534a068
--- /dev/null
+++ b/usr/src/pkgdefs/SUNWspsvu/preinstall
@@ -0,0 +1,91 @@
+#!/bin/sh
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+#
+# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
+#
+
+#
+# Set path
+#
+
+PATH="/usr/bin:/usr/sbin:${PATH}"
+export PATH
+
+#
+# Set variables
+#
+
+BASEDIR=${BASEDIR:=/}
+DEVLINKTB="${PKG_INSTALL_ROOT}/etc/devlink.tab"
+MODULE="sv"
+NAMEMAJOR="${PKG_INSTALL_ROOT}/etc/name_to_major"
+PKG_INSTALL_ROOT=${PKG_INSTALL_ROOT:=/}
+TMP=/tmp/${PKGINST}.$$
+
+#
+# Set alternate command syntax (if needed)
+#
+
+if [ "${PKG_INSTALL_ROOT}" = "/" ]
+then
+ REM_DRV="rem_drv"
+else
+ REM_DRV="rem_drv -b ${PKG_INSTALL_ROOT}"
+fi
+
+#
+# functions
+#
+
+rem_devlink()
+{
+ PATTERN="$1"
+
+ grep -vw $PATTERN ${DEVLINKTB} >${TMP}.devlink
+ if [ $? -eq 0 ]
+ then
+ mv ${TMP}.devlink ${DEVLINKTB}
+ else
+ rm ${TMP}.devlink
+ fi
+}
+
+#
+# shut sv down
+#
+
+if [ "${PKG_INSTALL_ROOT}" = "/" -a -f /etc/init.d/sv ]
+then
+ sh /etc/init.d/sv stop >/dev/null 2>&1
+fi
+
+#
+# If module has been previously installed, unload and remove it
+#
+
+grep -w ${MODULE} ${NAMEMAJOR} >/dev/null
+if [ $? -eq 0 ]
+then
+ ${REM_DRV} ${MODULE}
+fi
+
+rem_devlink ${MODULE}