Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/share/man/man8 update to reality:
details: https://anonhg.NetBSD.org/src/rev/6e0dea4d7084
branches: trunk
changeset: 995978:6e0dea4d7084
user: mrg <mrg%NetBSD.org@localhost>
date: Sun Jan 13 04:45:35 2019 +0000
description:
update to reality:
- note that the base system supports 32 bit / 64 bit compat directly now
- list all the expected paths for ld.elf_so
- remove largely obsolete info
- fix list of known issues
- misc other clean up
diffstat:
share/man/man8/compat_netbsd32.8 | 80 ++++++++++++++++++++++++++-------------
1 files changed, 53 insertions(+), 27 deletions(-)
diffs (128 lines):
diff -r 86473b3b0517 -r 6e0dea4d7084 share/man/man8/compat_netbsd32.8
--- a/share/man/man8/compat_netbsd32.8 Sun Jan 13 01:32:51 2019 +0000
+++ b/share/man/man8/compat_netbsd32.8 Sun Jan 13 04:45:35 2019 +0000
@@ -1,6 +1,6 @@
-.\" $NetBSD: compat_netbsd32.8,v 1.10 2018/10/12 04:08:59 ryo Exp $
+.\" $NetBSD: compat_netbsd32.8,v 1.11 2019/01/13 04:45:35 mrg Exp $
.\"
-.\" Copyright (c) 2001 Matthew R. Green
+.\" Copyright (c) 2001, 2019 Matthew R. Green
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -24,7 +24,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd October 12, 2018
+.Dd January 13, 2019
.Dt COMPAT_NETBSD32 8
.Os
.Sh NAME
@@ -41,11 +41,21 @@
.Nx Ns Tn /aarch64
to run
.Nx Ns Tn /arm
+executables,
+.Nx Ns Tn /mips64
+to run
+.Nx Ns Tn /mips
executables, and
.Nx Ns Tn /amd64
to run
.Nx Ns Tn /i386
executables.
+On
+.Nx Ns Tn /mips64
+the default userland is N32 which is a handled by
+.Nm
+framework, and 64-bit binaries are handled similarly to the setup
+for 32-bit compatibility.
.Pp
To use
.Nm ,
@@ -53,36 +63,49 @@
.Dv COMPAT_NETBSD32
and
.Dv EXEC_ELF32
-in the kernel, or load the compat_netbsd32 and exec_netbsd32 kernel
+in the kernel, or load the compat_netbsd32 and exec_elf32 kernel
modules.
.Pp
Static executables typically need no additional setup.
Dynamic binaries require the dynamic linker plus shared libraries.
-Most of these files will need to be placed under
-.Pa /emul/netbsd32 .
.Pp
-The easiest method of installing support for these is via the
-.Pa emulators/netbsd32_compat14 ,
-.Pa emulators/netbsd32_compat15 ,
-and
-.Pa emulators/netbsd32_compat16
-packages, provided in the
-.Nx
-packages collection.
-These install 32-bit a.out and ELF compatibility libraries,
-respectively.
-The details of what is actually necessary for correct operation
-are given below.
-This obviously is handled by the emulator packages.
+Since
+.Nx 5.0
+the base system has directly included support for 32-bit compatibility
+by installing 32-bit libraries and dynamic linker into
+.Pa /usr .
+This includes compiler support for compiling 32-bit applications
+on platforms where this is supported.
.Pp
For a.out compatibility,
.Pa /usr/libexec/ld.so
-from a 32-bit distribution is required to exist as
-.Pa /emul/netbsd32/usr/libexec/ld.so .
-For 32-bit ELF compatibility,
+from a 32-bit distribution is required to exist, and the a.out
+shared libraries must be found in
+.P /emul/aout
+as normal for a.out compatibility.
+For 32-bit (64-bit on
+.Nx Ns Tn /mips64 )
+ELF compatibility, the relevant
.Pa /usr/libexec/ld.elf_so
-needs to be in
-.Pa /emul/netbsd32/usr/libexec/ld.elf_so .
+needs to be found in
+.Bl -column -offset indent "powerpc64" "powerpc" ""
+.It Sy Port Ta Sy Target Ta Sy Path
+.It Li amd64 Ta i386 Ta /usr/libexec/ld.elf_so-i386
+.It Li sparc64 Ta sparc Ta /usr/libexec/ld.elf_so-sparc
+.It Li mips64 Ta O32 Ta /usr/libexec/ld.elf_so-o32
+.It Li mips64 Ta N64 Ta /usr/libexec/ld.elf_so-64
+.It Li powerpc64 Ta powerpc Ta /usr/libexec/ld.elf_so-powerpc
+.It Li arm64 Ta eabi Ta /usr/libexec/ld.elf_so-eabi
+.It Li arm64 Ta oabi Ta /usr/libexec/ld.elf_so-oabi
+.El
+.Pp
+Note that the kernel handles rewriting the builting ELF interpreter
+to the above path.
+.Pp
+Before
+.Nx 5.0
+all of these files needed to be placed under
+.Pa /emul/netbsd32 .
.Pp
The shared libraries for a.out binaries do not live under the
.Pa /emul/netbsd32
@@ -93,7 +116,10 @@
A list of things which fail to work in compatibility mode should
be here.
.Pp
-IPC is not well supported.
+.Xr aio 3
+is not supported.
.Pp
-.Xr sysctl 3
-is not well supported.
+Some
+.Xr ioctl 2
+command are not supported, including
+.Xr drm 4 .
Home |
Main Index |
Thread Index |
Old Index