summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorDavid E. O'Brien <obrien@FreeBSD.org>2000-12-25 18:49:30 +0000
committerDavid E. O'Brien <obrien@FreeBSD.org>2000-12-25 18:49:30 +0000
commit54f122d486c924c85e7dc27fa0d5bcf065b05b1d (patch)
treed59df7f0513dff842ee2fd2518b5af5a68742a60 /emulators
parentUpdate to 4.27. (diff)
Compatability framework necessary for SVR4 emulation
Based on http://slash.dotat.org/~newton/freebsd-svr4/compat_sol26.tar.gz
Notes
Notes: svn path=/head/; revision=36350
Diffstat (limited to 'emulators')
-rw-r--r--emulators/Makefile1
-rw-r--r--emulators/svr4_base/Makefile39
-rw-r--r--emulators/svr4_base/distinfo0
-rw-r--r--emulators/svr4_base/files/README11
-rw-r--r--emulators/svr4_base/files/SVR4_MAKEDEV141
-rw-r--r--emulators/svr4_base/files/netconfig12
-rw-r--r--emulators/svr4_base/files/nsswitch.conf17
-rw-r--r--emulators/svr4_base/pkg-comment1
-rw-r--r--emulators/svr4_base/pkg-descr13
-rw-r--r--emulators/svr4_base/pkg-plist13
10 files changed, 248 insertions, 0 deletions
diff --git a/emulators/Makefile b/emulators/Makefile
index 675993fe30c3..3ded2eb481a9 100644
--- a/emulators/Makefile
+++ b/emulators/Makefile
@@ -36,6 +36,7 @@
SUBDIR += spim
SUBDIR += stella
SUBDIR += stonx
+ SUBDIR += svr4_base
SUBDIR += tkhfs
SUBDIR += truereality
SUBDIR += tuxnes
diff --git a/emulators/svr4_base/Makefile b/emulators/svr4_base/Makefile
new file mode 100644
index 000000000000..1d4af6cd7d1a
--- /dev/null
+++ b/emulators/svr4_base/Makefile
@@ -0,0 +1,39 @@
+# ex:ts=8
+# Ports collection makefile for: svr4_base
+# Version required: 2.6
+# Date created: Monday Dec 25, 2000
+# Whom: David O'Brien (obrien@NUXI.com)
+#
+# $FreeBSD$
+#
+
+PORTNAME= svr4_base
+PORTVERSION= 2.6
+CATEGORIES= emulators
+MASTER_SITES= # none for now
+DISTFILES= # none for now
+
+MAINTAINER= ports@FreeBSD.org
+
+PREFIX= / # distfile tared as "/compat/svr4"
+NO_MTREE= yes
+NO_BUILD= yes
+EXTRACT_ONLY= # empty
+NO_WRKSUBDIR= yes
+
+do-install:
+.for D in dev etc/default
+ @[ -d ${PREFIX}/compat/svr4/$D ] || ${MKDIR} ${PREFIX}/compat/svr4/$D
+.endfor
+.for F in etc/default/init etc/mnttab
+ @[ -e ${PREFIX}/compat/svr4/$F ] || ${TOUCH} ${PREFIX}/compat/svr4/$F
+.endfor
+ @${INSTALL_DATA} ${FILESDIR}/SVR4_MAKEDEV ${PREFIX}/compat/svr4/dev
+ @cd ${FILESDIR} ; \
+ ${INSTALL_DATA} netconfig nsswitch.conf ${PREFIX}/compat/svr4/etc
+ @cd ${PREFIX}/compat/svr4 ; ${LN} -sf usr/lib lib
+ @cd ${PREFIX}/compat/svr4 ; \
+ ${LN} -sf /cdrom/Solaris_2.6/Tools/Boot/usr usr
+ @${INSTALL_MAN} ${FILESDIR}/README ${PREFIX}/compat/svr4
+
+.include <bsd.port.mk>
diff --git a/emulators/svr4_base/distinfo b/emulators/svr4_base/distinfo
new file mode 100644
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/emulators/svr4_base/distinfo
diff --git a/emulators/svr4_base/files/README b/emulators/svr4_base/files/README
new file mode 100644
index 000000000000..8435627aea0a
--- /dev/null
+++ b/emulators/svr4_base/files/README
@@ -0,0 +1,11 @@
+$FreeBSD$
+
+A skeleton /compat/svr4 tree for the svr4_mod System V Release 4 emulator
+suitable for Solaris 2.6.
+
+Installation instructions:
+
+1. Mount a Solaris/x86 2.6 or higher CDROM on /cdrom.
+2. cd /compat/svr4/dev
+ sh ./SVR4_MAKEDEV all
+
diff --git a/emulators/svr4_base/files/SVR4_MAKEDEV b/emulators/svr4_base/files/SVR4_MAKEDEV
new file mode 100644
index 000000000000..d5e3f0160906
--- /dev/null
+++ b/emulators/svr4_base/files/SVR4_MAKEDEV
@@ -0,0 +1,141 @@
+#!/bin/sh -
+#
+# $FreeBSD$
+#
+# Copyright (c) 1998 Mark Newton
+# Copyright (c) 1995 Christos Zoulas
+# Copyright (c) 1997 Todd Vierling
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+# notice, this list of conditions and the following disclaimer in the
+# documentation and/or other materials provided with the distribution.
+# 3. The names of the authors may not be used to endorse or promote products
+# derived from this software without specific prior written permission
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# Device "make" file. Valid arguments:
+# all everything
+# Terminal devices:
+# ptmx pty master multiplexer
+# pts[0-3] pty slave devices in /dev/pts (actually symlinks)
+# Network:
+# udp UDP socket creation
+# tcp TCP socket creation
+# rawip RAW socket creation
+# ticlts UNIX datagram creation
+# ticotsord UNIX stream creation (with orderly release)
+# ticots UNIX stream creation
+# Various:
+# wabi Windows emulation; /dev/null for now
+#
+PATH=/sbin:/bin/:/usr/bin:/usr/sbin:/usr/etc
+umask 77
+
+for i
+do
+
+unit=`expr $i : '[a-z][a-z]*\([0-9][0-9]*\)'`
+[ "$unit" ] || unit=0
+
+case $i in
+
+all)
+ sh SVR4_MAKEDEV ptmx pts0 pts1 pts2 pts3
+ sh SVR4_MAKEDEV tcp udp rawip ticlts ticotsord ticots wabi
+ ;;
+
+ptmx)
+ mknod $i c 103 10
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+pts*)
+ case $unit in
+ 0) name=p;;
+ 1) name=q;;
+ 2) name=r;;
+ 3) name=s;;
+ *) name=''; echo 'pts: units range from 0 to 3';;
+ esac
+
+ mkdir >/dev/null 2>&1 pts
+ chown bin.bin pts
+ chmod 755 pts
+ if [ -n "$name" ]; then
+ j=`expr $unit \* 16`
+ for i in 0 1 2 3 4 5 6 7 8 9 a b c d e f; do
+ if [ -e /dev/tty$name$i ]; then
+ ln -s /dev/tty$name$i pts/$j
+ fi
+ j=`expr $j + 1`
+ done
+ fi
+ ;;
+
+tcp)
+ mknod $i c 103 35
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+
+udp)
+ mknod udp c 103 36
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+rawip)
+ mknod $i c 103 37
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+ticlts)
+ mknod $i c 103 38
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+ticotsord)
+ mknod $i c 103 39
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+ticots)
+ mknod $i c 103 40
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+
+wabi)
+ mknod $i c 2 2 # /dev/null
+ chown bin.bin $i
+ chmod 666 $i
+ ;;
+
+*)
+ echo $i: unknown device
+ ;;
+esac
+done
+
diff --git a/emulators/svr4_base/files/netconfig b/emulators/svr4_base/files/netconfig
new file mode 100644
index 000000000000..e7046ae8b5bc
--- /dev/null
+++ b/emulators/svr4_base/files/netconfig
@@ -0,0 +1,12 @@
+# $NetBSD: netconfig,v 1.1 1997/11/13 03:02:06 thorpej Exp $
+# $FreeBSD$
+#
+# SVR4 Network configuration file
+#
+# service name fl family proto device library
+udp tpi_clts v inet udp /dev/udp -
+tcp tpi_cots_ord v inet tcp /dev/tcp -
+rawip tpi_raw - inet - /dev/rawip -
+ticlts tpi_clts v loopback - /dev/ticlts straddr.so
+ticotsord tpi_cots_ord v loopback - /dev/ticotsord straddr.so
+ticots tpi_cots v loopback - /dev/ticots straddr.so
diff --git a/emulators/svr4_base/files/nsswitch.conf b/emulators/svr4_base/files/nsswitch.conf
new file mode 100644
index 000000000000..eb044180e008
--- /dev/null
+++ b/emulators/svr4_base/files/nsswitch.conf
@@ -0,0 +1,17 @@
+# $NetBSD: nsswitch.conf,v 1.1 1997/11/13 03:02:06 thorpej Exp $
+# $FreeBSD$
+#
+# Name service switch file
+#
+hosts: dns files
+networks: files
+protocols: files
+ethers: files
+rpc: files
+netmasks: files
+bootparams: files
+services: files
+#
+passwd: files
+group: files
+netgroup: files
diff --git a/emulators/svr4_base/pkg-comment b/emulators/svr4_base/pkg-comment
new file mode 100644
index 000000000000..ce589218ddf1
--- /dev/null
+++ b/emulators/svr4_base/pkg-comment
@@ -0,0 +1 @@
+Compatability framework necessary for SVR4 emulation
diff --git a/emulators/svr4_base/pkg-descr b/emulators/svr4_base/pkg-descr
new file mode 100644
index 000000000000..a1ebf8431851
--- /dev/null
+++ b/emulators/svr4_base/pkg-descr
@@ -0,0 +1,13 @@
+These files are part of the SVR4 compatibility options for FreeBSD.
+
+To get SVR4 compat working you will need the system libraries from
+Solaris x86. We cannot supply them to you as a Solaris license is
+required in order to use their libraries.
+
+In order to use the SVR4 emulation, simply mount a Solaris 2.5.1 x86 CDROM
+on /cdrom.
+To make things easier, currently symbolic links are made to the Solaris
+CDROM, thus having it mounted is required when using SVR4 emulation.
+
+-- David.
+obrien@cs.ucdavis.edu
diff --git a/emulators/svr4_base/pkg-plist b/emulators/svr4_base/pkg-plist
new file mode 100644
index 000000000000..cb20c35674c4
--- /dev/null
+++ b/emulators/svr4_base/pkg-plist
@@ -0,0 +1,13 @@
+@comment $FreeBSD$
+compat/svr4/README
+compat/svr4/dev/SVR4_MAKEDEV
+compat/svr4/etc/default/init
+compat/svr4/etc/netconfig
+compat/svr4/etc/nsswitch.conf
+compat/svr4/etc/mnttab
+compat/svr4/lib
+compat/svr4/usr
+@dirrm compat/svr4/dev
+@dirrm compat/svr4/etc/default
+@dirrm compat/svr4/etc
+@dirrm compat/svr4