summaryrefslogtreecommitdiffstats
path: root/sys/modules/osf1
diff options
context:
space:
mode:
authorgallatin <gallatin@FreeBSD.org>1999-12-14 22:35:36 +0000
committergallatin <gallatin@FreeBSD.org>1999-12-14 22:35:36 +0000
commit1b39d5d377f46180854da60e63f95aa7473d1db6 (patch)
tree0b293aeec2b72f82bb5672fdc41a54e5d8d1b8a6 /sys/modules/osf1
parenta53726a684bbbe7c65bcfeb9aca85f45a8eaf1e2 (diff)
downloadFreeBSD-src-1b39d5d377f46180854da60e63f95aa7473d1db6.zip
FreeBSD-src-1b39d5d377f46180854da60e63f95aa7473d1db6.tar.gz
Finally add the Alpha OSF/1 compat code. I will add it to the
sys/modules Makefile after completing a buildworld. History: The bulk of this code was obtained from NetBSD approximately one year ago (I have taken care to preserve the original NetBSD copyrights and I thank the authors for their work.) At that time, the OSF/1 code was what was left over from their initial bootstrapping off of OSF/1 and did not provide support for executing shared binaries. I have independently added support for shared libraries, and support for some of the more obscure system calls. This code has been available for testing and comment since January of 1999 and running on production machines here at Duke since April. Known working applications include: - Netscape (all versions I've tried) - Mathematica 3.0.2 - Splus 3.4 - ArcInfo 7.1 - Matlab (version unknown) - SimOS - Atom instrumented binaries (built on a real OSF/1 system) Applications which are known not to work: - All applications linking to libmach - Adobe Acrobat (uses libmach) This has been tested with applications running against shared libraries from OSF/1 (aka Tru64) 4.0D and 4.0F. Reviewed by: marcel, obrien BDE-lint by: obrien Agreed in principal to by: msmith
Diffstat (limited to 'sys/modules/osf1')
-rw-r--r--sys/modules/osf1/Makefile26
-rw-r--r--sys/modules/osf1/osf1.846
-rw-r--r--sys/modules/osf1/osf1.sh36
3 files changed, 108 insertions, 0 deletions
diff --git a/sys/modules/osf1/Makefile b/sys/modules/osf1/Makefile
new file mode 100644
index 0000000..459f429
--- /dev/null
+++ b/sys/modules/osf1/Makefile
@@ -0,0 +1,26 @@
+# $FreeBSD$
+
+MAINTAINER= gallatin@FreeBSD.org
+
+.PATH: ${.CURDIR}/../../alpha/osf1
+
+KMOD= osf1
+SRCS= osf1_ioctl.c osf1_misc.c osf1_signal.c osf1_sysent.c \
+ osf1_mount.c imgact_osf1.c osf1_sysvec.c opt_compat.h \
+ opt_simos.h opt_nfs.h vnode_if.h
+MAN8= osf1.8
+
+#CFLAGS+= -g
+EXPORT_SYMS= _osf1
+
+opt_compat.h:
+ echo "#define COMPAT_43 1" > ${.TARGET}
+
+opt_osf1.h opt_simos.h opt_nfs.h:
+ touch ${.TARGET}
+
+afterinstall:
+ ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
+ ${.CURDIR}/osf1.sh ${DESTDIR}/usr/bin/osf1
+
+.include <bsd.kmod.mk>
diff --git a/sys/modules/osf1/osf1.8 b/sys/modules/osf1/osf1.8
new file mode 100644
index 0000000..a367dc9
--- /dev/null
+++ b/sys/modules/osf1/osf1.8
@@ -0,0 +1,46 @@
+.\" Copyright (c) 1999
+.\" The FreeBSD Project. 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.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd December 31, 1998
+.Dt OSF1 8
+.Os FreeBSD
+.Sh NAME
+.Nm osf1
+.Nd load the OSF/1 emulator kernel module
+.Sh SYNOPSIS
+.Nm osf1
+.Sh DESCRIPTION
+The
+.Nm
+utility loads the OSF/1 image activator kernel module.
+.Sh FILES
+.Bl -tag -width /modules/osf1.ko
+.It Pa /modules/osf1.ko
+OSF/1 image activator loadable kernel module.
+.Sh SEE ALSO
+.Xr kld 4 ,
+.Xr kldload 8 ,
+.Xr kldstat 8 ,
+.Xr kldunload 8
diff --git a/sys/modules/osf1/osf1.sh b/sys/modules/osf1/osf1.sh
new file mode 100644
index 0000000..b2b4d92
--- /dev/null
+++ b/sys/modules/osf1/osf1.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# Copyright (c) 1999
+# The FreeBSD Project. 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.
+#
+# THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``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 DEVELOPERS 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.
+#
+# $FreeBSD$
+#
+
+FOUND=`kldstat -v | egrep 'osf1_ecoff'`
+
+if [ "x$FOUND" != x ] ; then
+ echo Osf1 driver already loaded
+ exit 1
+else
+ kldload osf1
+fi
OpenPOWER on IntegriCloud