freebsd-skq/sys/compat/svr4
brooks 017f31c108 Don't create pointless backups of generated files in "make sysent".
Any sensible workflow will include a revision control system from which
to restore the old files if required.  In normal usage, developers just
have to clean up the mess.

Reviewed by:	jhb
Sponsored by:	DARPA, AFRL
Differential Revision:	https://reviews.freebsd.org/D7353
2016-07-28 21:29:04 +00:00
..
imgact_svr4.c Implement lockless resource limits. 2015-06-10 10:48:12 +00:00
Makefile Don't create pointless backups of generated files in "make sysent". 2016-07-28 21:29:04 +00:00
README
svr4_acl.h
svr4_dirent.h
svr4_errno.h
svr4_exec.h
svr4_fcntl.c
svr4_fcntl.h
svr4_filio.c Regen post r302096 and implement svr4_pipe(). 2016-06-23 00:30:09 +00:00
svr4_filio.h
svr4_fuser.h
svr4_hrt.h
svr4_ioctl.c
svr4_ioctl.h
svr4_ipc.c Allow to build svr4 module with SYSV support separatelly from the kernel build. 2016-04-23 20:31:18 +00:00
svr4_ipc.h
svr4_misc.c As <machine/vmparam.h> is included from <vm/vm_param.h>, there is no 2016-02-22 09:08:04 +00:00
svr4_mman.h
svr4_proto.h Regen post r302096 and implement svr4_pipe(). 2016-06-23 00:30:09 +00:00
svr4_resource.c Implement lockless resource limits. 2015-06-10 10:48:12 +00:00
svr4_resource.h
svr4_siginfo.h
svr4_signal.c
svr4_signal.h
svr4_socket.c Fix streams and svr4 module dependency. Both modules are complaining about 2016-04-23 20:29:55 +00:00
svr4_socket.h
svr4_sockio.c Partially revert r257696/r257713, which have an issue with writing to user 2016-07-24 10:10:09 +00:00
svr4_sockio.h
svr4_sockmod.h
svr4_stat.c
svr4_stat.h
svr4_statvfs.h
svr4_stream.c
svr4_stropts.h
svr4_syscall.h Regen post r302096 and implement svr4_pipe(). 2016-06-23 00:30:09 +00:00
svr4_syscallnames.c Regen post r302096 and implement svr4_pipe(). 2016-06-23 00:30:09 +00:00
svr4_sysconfig.h
svr4_sysent.c Regen post r302096 and implement svr4_pipe(). 2016-06-23 00:30:09 +00:00
svr4_systeminfo.h
svr4_sysvec.c Fix streams and svr4 module dependency. Both modules are complaining about 2016-04-23 20:29:55 +00:00
svr4_termios.c
svr4_termios.h
svr4_time.h
svr4_timod.h
svr4_types.h
svr4_ucontext.h
svr4_ulimit.h
svr4_ustat.h
svr4_util.h As <machine/vmparam.h> is included from <vm/vm_param.h>, there is no 2016-02-22 09:08:04 +00:00
svr4_utsname.h
svr4_wait.h
svr4.h
syscalls.conf
syscalls.master Declare a svr4 version of pipe() now that sys_pipe() is no more. 2016-06-23 00:29:03 +00:00
TO-DO

This is a SysVR4 emulator derived from work done as part of the NetBSD
Project by Christos Zoulas.  It has been ported to FreeBSD by Mark Newton.

To use it:

1.  Choose one of:
      a.  Add "device streams" to your kernel config file and rebuild,
          reboot; or
      b.  Build and install the streams module in /sys/modules/streams

2.  Build and install the svr4 module in /sys/modules/svr4

3.  Type "kldload svr4" to start it up.

4.  Grab compat_sol26.tar.gz or compat_svr4.tar.gz from
    http://www.freebsd.org/~newton/freebsd-svr4 and install them in
    /compat/svr4

5.  Run "sh SVR4_MAKEDEV all" in /compat/svr4/dev

6.  Mount a Solaris/x86 v2.6 or v7 CD-ROM on /cdrom (also works with 
    v2.4 and v2.5.1, but you need different symlinks in /compat/svr4)

7.  Brand any executables you want to run, and/or set the
    kern.fallback_elf_brand sysctl to 'SVR4' to establish this as the
    default emulator for unbranded executables.

8.  See if your SysVR4 programs work.

It's early days yet, folks -- You'll probably have trouble getting 100%
functionality out of most things (specifically, poll() on a socket doesn't
look like it works at the moment, so Netscape doesn't work (among other
things)).  Patches will be appreciated.

   - Mark Newton
     newton@atdot.dotat.org

$FreeBSD$