changeset 96303:ddedcecb18ef

* unexnext.c: * m/ews4800.h: * m/hp9000s300.h: * m/ibm370aix.h: * m/mips-siemens.h: * m/ncr386.h: * m/next.h: * m/pmax.h: * m/powerpcle.h: * m/tandem-s2.h: * s/386bsd.h: * s/bsd386.h: * s/bsd4-1.h: * s/bsd4-2.h: * s/bsdos2-1.h: * s/bsdos2.h: * s/bsdos3.h: * s/bsdos4.h: * s/nextstep.h: * s/ultrix4-3.h: * s/usg5-0.h: * s/usg5-2-2.h: * s/usg5-2.h: * s/usg5-4-3.h: * s/ux4800.h: * s/uxpds.h: * s/uxpv.h: Remove support for obsolete systems. * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h: Remove, insert contents in s/hpux-10.20.h * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h: Remove, insert contents in s/aix-4.2.h * s/usg5-3.h: Remove, insert contents in s/usg5-4.h. * s/bsd4-3.h: Rename to .. * s/bsd-common.h: ... this. * src/data.c: * src/doc.c: * src/ecrt0.c: * src/emacs.c: * src/fileio.c: * src/floatfns.c: * src/keyboard.c: * src/mem-limits.h: * src/print.c: * src/process.c: * src/sysdep.c: * src/syssignal.h: * src/systty.h: * src/syswait.h: * src/term.c: * src/unexec.c: * src/unexelf.c: * src/unexhp9k800.c: * src/m/hp800.h: * src/m/ibmrs6000.h: * src/m/mips.h: * src/m/vax.h: * src/s/darwin.h: * src/s/freebsd.h: * src/s/gnu.h: * src/s/ms-w32.h: * src/s/msdos.h: * src/s/netbsd.h: * src/s/template.h: Remove references to obsolete variables. * Makefile.in: Add dependencies for all unexec files. (admindir): Remove unused variable. (UNEXEC_SRC): Remove references. * config.nt: Remove reference to UNEXEC_SRC. * lwlib.c: Remove references to obsolete variables. * fakemail.c: Remove references to obsolete variables. * os.texi: Remove references to obsolete systems. * configure.in: * configure: Remove references to obsolete systems.
author Dan Nicolaescu <dann@ics.uci.edu>
date Thu, 26 Jun 2008 04:24:54 +0000
parents b3db7e68c460
children b56931e7df3b
files ChangeLog admin/CPP-DEFINES admin/emacs-pretesters configure configure.in doc/lispref/ChangeLog doc/lispref/os.texi etc/MACHINES lib-src/ChangeLog lib-src/fakemail.c lwlib/ChangeLog lwlib/lwlib.c nt/ChangeLog nt/config.nt src/ChangeLog src/Makefile.in src/data.c src/doc.c src/ecrt0.c src/emacs.c src/fileio.c src/floatfns.c src/keyboard.c src/m/ews4800.h src/m/hp800.h src/m/hp9000s300.h src/m/ibm370aix.h src/m/ibmrs6000.h src/m/mips-siemens.h src/m/mips.h src/m/ncr386.h src/m/next.h src/m/pmax.h src/m/powerpcle.h src/m/tandem-s2.h src/m/vax.h src/mem-limits.h src/print.c src/process.c src/s/386bsd.h src/s/aix3-1.h src/s/aix3-2-5.h src/s/aix3-2.h src/s/aix4-1.h src/s/aix4-2.h src/s/aix4.h src/s/bsd-common.h src/s/bsd386.h src/s/bsd4-1.h src/s/bsd4-2.h src/s/bsd4-3.h src/s/bsdos2-1.h src/s/bsdos2.h src/s/bsdos3.h src/s/bsdos4.h src/s/darwin.h src/s/freebsd.h src/s/gnu.h src/s/hpux.h src/s/hpux10-20.h src/s/hpux10.h src/s/hpux8.h src/s/hpux9.h src/s/hpux9shr.h src/s/ms-w32.h src/s/msdos.h src/s/netbsd.h src/s/nextstep.h src/s/template.h src/s/ultrix4-3.h src/s/usg5-0.h src/s/usg5-2-2.h src/s/usg5-2.h src/s/usg5-3.h src/s/usg5-4-3.h src/s/usg5-4.h src/s/ux4800.h src/s/uxpds.h src/s/uxpv.h src/sysdep.c src/syssignal.h src/systty.h src/syswait.h src/term.c src/unexec.c src/unexelf.c src/unexhp9k800.c src/unexnext.c
diffstat 88 files changed, 872 insertions(+), 5171 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Thu Jun 26 04:17:19 2008 +0000
+++ b/ChangeLog	Thu Jun 26 04:24:54 2008 +0000
@@ -1,3 +1,8 @@
+2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* configure.in:
+	* configure: Remove references to obsolete systems.
+
 2008-06-25  Stefan Monnier  <monnier@iro.umontreal.ca>
 
 	* Makefile.in (Makefile): Use it for its timestamp value as well, and
--- a/admin/CPP-DEFINES	Thu Jun 26 04:17:19 2008 +0000
+++ b/admin/CPP-DEFINES	Thu Jun 26 04:24:54 2008 +0000
@@ -57,7 +57,6 @@
 BROKEN_SIGIO
 BROKEN_TIOCGETC
 BROKEN_TIOCGWINSZ
-BSD4_2
 BSD4_3
 BSD4_4
 BSD_PGRPS
@@ -102,6 +101,7 @@
 HAVE_PTYS
 HAVE_SELECT
 HAVE_SOCKETS
+HAVE_STRING_H
 HAVE_SYSVIPC
 HAVE_SYSV_SIGPAUSE
 HAVE_SYS_WAIT_H
@@ -140,17 +140,21 @@
 LINKER
 LOAD_AVE_CVT
 LOAD_AVE_TYPE
+MACH
 MAIL_USE_FLOCK
 MKDIR_PROTOTYPE
 MOTIF
 NARROWPROTO
+NEED_BSDTTY
 NEED_ERRNO
 NEED_PTEM_H
 NEED_SIOCTL
+NEED_UNISTD_H
 NLIST_STRUCT
 NOMULTIPLEJOBS
 NONSYSTEM_DIR_LIBRARY
 NOT_C_CODE
+NO_ABORT
 NO_ARG_ARRAY
 NO_REMAP
 NO_SIOCTL_H
@@ -167,6 +171,7 @@
 PNTR_COMPARISON_TYPE
 POSIX_SIGNALS
 PREFER_VSUSP
+PREFER_VSUSP
 PTY_ITERATION
 PTY_NAME_SPRINTF
 PTY_OPEN
@@ -196,6 +201,8 @@
 S_IFMT
 S_IREAD
 S_IWRITE
+TAB3
+TABDLY
 TERMCAP
 TERMINFO
 TEXT_END
@@ -211,11 +218,11 @@
 USG_JOBCTRL
 USG_SHARED_LIBRARIES
 VIRT_ADDR_VARIES
+WCOREDUMP
 WORDS_BIG_ENDIAN
 WORD_MACHINE
-XINT
-XSET
-XUINT
+X11R5_INHIBIT_I18N
+XOS_NEEDS_TIME_H
 X_DEFAULT_FONT
 _ABIN32
 _MIPS_SZLONG
@@ -240,6 +247,7 @@
 magic
 mc68000
 mips
+prep
 sel
 subprocesses
 sun
--- a/admin/emacs-pretesters	Thu Jun 26 04:17:19 2008 +0000
+++ b/admin/emacs-pretesters	Thu Jun 26 04:24:54 2008 +0000
@@ -178,11 +178,10 @@
 work and therefore require an additional cycle of pretesting.
 
 People often suggest fixing a problem by changing config.h or
-src/ymakefile or even src/Makefile to do something special that a
-particular system needs.  Sometimes it is totally obvious that such
-changes would break Emacs for almost all users.  We can't possibly
-make a change like that.  All we can do is ask you to find a fix that
-is safe to install.
+src/Makefile to do something special that a particular system needs.
+Sometimes it is totally obvious that such changes would break Emacs
+for almost all users.  We can't possibly make a change like that.  All
+we can do is ask you to find a fix that is safe to install.
 
 Sometimes people send fixes that *might* be an improvement in
 general--but it is hard to be sure of this.  I can install such
--- a/configure	Thu Jun 26 04:17:19 2008 +0000
+++ b/configure	Thu Jun 26 04:24:54 2008 +0000
@@ -2360,9 +2360,8 @@
 ### based on the machine portion of the configuration name, and an s-
 ### file based on the operating system portion.  However, it turns out
 ### that each m/*.h file is pretty manufacturer-specific - for
-### example hp9000s300.h is a 68000 machine;
-### mips.h, pmax.h are all MIPS
-### machines.  So we basically have to have a special case for each
+### example mips.h is MIPS
+### So we basically have to have a special case for each
 ### configuration name.
 ###
 ### As far as handling version numbers on operating systems is
@@ -2419,12 +2418,6 @@
     case "${canonical}" in
       alpha*-*-netbsd*)	machine=alpha ;;
       i[3456]86-*-netbsd*) machine=intel386 ;;
-      m68k-*-netbsd*)
-			# This is somewhat bogus.
-			machine=hp9000s300 ;;
-      mips-*-netbsd*)	machine=pmax ;;
-      mipsel-*-netbsd*)	machine=pmax ;;
-      mipseb-*-netbsd*)	machine=pmax ;;
       powerpc-*-netbsd*) machine=macppc ;;
       sparc*-*-netbsd*)	machine=sparc ;;
       vax-*-netbsd*)	machine=vax ;;
@@ -2440,9 +2433,7 @@
     case "${canonical}" in
       alpha*-*-openbsd*)	machine=alpha ;;
       arm-*-openbsd*)          machine=arm ;;
-      hppa-*-openbsd*)         machine=hp9000s300 ;;
       i386-*-openbsd*)         machine=intel386 ;;
-      m68k-*-openbsd*)         machine=hp9000s300 ;;
       powerpc-*-openbsd*)      machine=macppc ;;
       sparc*-*-openbsd*)       machine=sparc ;;
       vax-*-openbsd*)          machine=vax ;;
@@ -2459,23 +2450,6 @@
     esac
   ;;
 
-  ## BSDI ports
-  *-*-bsdi* )
-    opsys=bsdi
-    case "${canonical}" in
-      i[345]86-*-bsdi*) machine=intel386 ;;
-      sparc-*-bsdi*)  machine=sparc ;;
-      powerpc-*-bsdi*)  machine=macppc ;;
-    esac
-    case "${canonical}" in
-      *-*-bsd386* | *-*-bsdi1* )	opsys=bsd386 ;;
-      *-*-bsdi2.0* )		opsys=bsdos2 ;;
-      *-*-bsdi2* )		opsys=bsdos2-1 ;;
-      *-*-bsdi3* )		opsys=bsdos3 ;;
-      *-*-bsdi[45]* )		opsys=bsdos4 ;;
-    esac
-  ;;
-
   alpha*-*-linux-gnu* )
     machine=alpha opsys=gnu-linux
   ;;
@@ -2502,56 +2476,10 @@
     fi
   ;;
 
-  ## Cubix QBx/386
-  i[3456]86-cubix-sysv* )
-    machine=intel386 opsys=usg5-3
-  ;;
-
-  mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* )
-    machine=pmax opsys=bsd4-2
-  ;;
-  mips-dec-ultrix4.[12]* | mips-dec-bsd* )
-    machine=pmax opsys=bsd4-3
-  ;;
-  mips-dec-ultrix* )
-    machine=pmax opsys=ultrix4-3
-  ;;
-  ## HP 9000 series 200 or 300
-  m68*-hp-bsd* )
-    machine=hp9000s300 opsys=bsd4-3
-  ;;
-  ## HP/UX 7, 8, 9, and 10 are supported on these machines.
-  m68*-hp-hpux* )
-    case "`uname -r`" in
-      ## Someone's system reports A.B8.05 for this.
-      ## I wonder what other possibilities there are.
-      *.B8.* ) machine=hp9000s300 opsys=hpux8 ;;
-      *.08.* ) machine=hp9000s300 opsys=hpux8 ;;
-      *.09.* ) machine=hp9000s300 opsys=hpux9 ;;
-      *.1[0-9].* ) machine=hp9000s300 opsys=hpux9shr ;;
-      *) machine=hp9000s300 opsys=hpux ;;
-    esac
-  ;;
-
   ## HP 9000 series 700 and 800, running HP/UX
-  hppa*-hp-hpux7* )
-    machine=hp800 opsys=hpux
-  ;;
-  hppa*-hp-hpux8* )
-    machine=hp800 opsys=hpux8
-  ;;
-  hppa*-hp-hpux9shr* )
-    machine=hp800 opsys=hpux9shr
-  ;;
-  hppa*-hp-hpux9* )
-    machine=hp800 opsys=hpux9
-  ;;
   hppa*-hp-hpux10.2* )
     machine=hp800 opsys=hpux10-20
   ;;
-  hppa*-hp-hpux10* )
-    machine=hp800 opsys=hpux10
-  ;;
   hppa*-hp-hpux1[1-9]* )
     machine=hp800 opsys=hpux11
     CFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CFLAGS"
@@ -2561,41 +2489,13 @@
     machine=hp800 opsys=gnu-linux
   ;;
 
-  ## HP 9000 series 700 and 800, running HP/UX
-  hppa*-hp-hpux* )
-    ## Cross-compilation?  Nah!
-    case "`uname -r`" in
-      ## Someone's system reports A.B8.05 for this.
-      ## I wonder what other possibilities there are.
-      *.B8.* ) machine=hp800 opsys=hpux8 ;;
-      *.08.* ) machine=hp800 opsys=hpux8 ;;
-      *.09.* ) machine=hp800 opsys=hpux9 ;;
-      *) machine=hp800 opsys=hpux10 ;;
-    esac
-  ;;
-  hppa*-*-nextstep* )
-    machine=hp800 opsys=nextstep
-  ;;
-
   ## IBM machines
-  i370-ibm-aix*)
-    machine=ibm370aix opsys=usg5-3
-  ;;
   s390-*-linux-gnu* )
     machine=ibms390 opsys=gnu-linux
   ;;
   s390x-*-linux-gnu* )
     machine=ibms390x opsys=gnu-linux
   ;;
-  rs6000-ibm-aix3.1* | powerpc-ibm-aix3.1*  )
-    machine=ibmrs6000 opsys=aix3-1
-  ;;
-  rs6000-ibm-aix3.2.5 | powerpc-ibm-aix3.2.5 )
-    machine=ibmrs6000 opsys=aix3-2-5
-  ;;
-  rs6000-ibm-aix4.1* | powerpc-ibm-aix4.1*  )
-    machine=ibmrs6000 opsys=aix4-1
-  ;;
   rs6000-ibm-aix4.2* | powerpc-ibm-aix4.2*  )
     machine=ibmrs6000 opsys=aix4-2
   ;;
@@ -2608,65 +2508,12 @@
   rs6000-ibm-aix5* | powerpc-ibm-aix6*  )
     machine=ibmrs6000 opsys=aix4-2
   ;;
-  rs6000-ibm-aix4.0* | powerpc-ibm-aix4.0*  )
-    machine=ibmrs6000 opsys=aix4
-  ;;
-  rs6000-ibm-aix4* | powerpc-ibm-aix4*  )
-    machine=ibmrs6000 opsys=aix4-1
-  ;;
-  rs6000-ibm-aix* | powerpc-ibm-aix* )
-    machine=ibmrs6000 opsys=aix3-2
-  ;;
-
-  ## Prime EXL
-  i[3456]86-prime-sysv* )
-    machine=i386 opsys=usg5-3
-  ;;
-
-  ## ncr machine running svr4.3.
-  i[3456]86-ncr-sysv4.3 )
-    machine=ncr386 opsys=usg5-4-3
-  ;;
-
-  ## Unspecified sysv on an ncr machine defaults to svr4.2.
-  ## (Plain usg5-4 doesn't turn on POSIX signals, which we need.)
-  i[3456]86-ncr-sysv* )
-    machine=ncr386 opsys=usg5-4-2
-  ;;
 
   ## Macintosh PowerPC
   powerpc*-*-linux-gnu* )
     machine=macppc opsys=gnu-linux
   ;;
 
-  ## Workstations sold by MIPS
-  ## This is not necessarily all workstations using the MIPS processor -
-  ## Irises are produced by SGI, and DECstations by DEC.
-
-  mips-mips-bsd* )
-    machine=mips opsys=bsd4-3
-  ;;
-  mips-mips-* )
-    machine=mips opsys=usg5-2-2
-  ;;
-
-  ## NeXT
-  m68*-next-* | m68k-*-nextstep* )
-    machine=m68k opsys=nextstep
-  ;;
-
-  ## NEC EWS4800
-  mips-nec-sysv4*)
-  machine=ews4800 opsys=ux4800
-  ;;
-
-  ## Siemens Nixdorf
-  mips-siemens-sysv* | mips-sni-sysv*)
-    machine=mips-siemens opsys=usg5-4
-    NON_GNU_CC=/usr/ccs/bin/cc
-    NON_GNU_CPP=/usr/ccs/lib/cpp
-  ;;
-
   ## Silicon Graphics machines
   ## Iris 4D
   mips-sgi-irix6.5 )
@@ -2689,7 +2536,6 @@
     case "${canonical}" in
       i[3456]86-*-* )     machine=intel386 ;;
       amd64-*-*|x86_64-*-*)	machine=amdx86-64 ;;
-      powerpcle* )      machine=powerpcle ;;
       powerpc* | rs6000* )  machine=ibmrs6000 ;;
       sparc* )		machine=sparc ;;
       * )		unported=yes ;;
@@ -2719,7 +2565,6 @@
 		emacs_check_sunpro_c=yes
 		NON_GNU_CPP=/usr/ccs/lib/cpp
 		;;
-      *			  ) opsys=bsd4-2   ;;
     esac
     ## Watch out for a compiler that we know will not work.
     case "${canonical}" in
@@ -2733,24 +2578,11 @@
       *) ;;
     esac
   ;;
-  sparc-*-nextstep* )
-    machine=sparc opsys=nextstep
-  ;;
-
-  ## Tandem Integrity S2
-  mips-tandem-sysv* )
-    machine=tandem-s2 opsys=usg5-3
-  ;;
 
   ## Vaxen.
   vax-dec-* )
     machine=vax
     case "${canonical}" in
-      *-bsd4.1* ) 					opsys=bsd4-1 ;;
-      *-bsd4.2* | *-ultrix[0-3].* | *-ultrix4.0* )	opsys=bsd4-2 ;;
-      *-bsd4.3* | *-ultrix* ) 				opsys=bsd4-3 ;;
-      *-sysv[01]* | *-sysvr[01]* ) 			opsys=usg5-0 ;;
-      *-sysv2* | *-sysvr2* )				opsys=usg5-2 ;;
       *-vms* ) 						opsys=vms ;;
       * ) 						unported=yes
     esac
@@ -2773,8 +2605,6 @@
       *-sysv4.2uw* )	  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
       *-sysv5uw* )	  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
       *-sysv5OpenUNIX* )  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
-      *-386bsd* )	        opsys=386bsd ;;
-      *-nextstep* )             opsys=nextstep ;;
       ## Otherwise, we'll fall through to the generic opsys code at the bottom.
     esac
   ;;
@@ -2789,13 +2619,6 @@
     machine=mips opsys=gnu-linux
   ;;
 
-  ## UXP/DS
-  sparc-fujitsu-sysv4* )
-    machine=sparc opsys=uxpds
-    NON_GNU_CPP=/usr/ccs/lib/cpp
-    RANLIB="ar -ts"
-  ;;
-
   ## AMD x86-64 Linux-based GNU system
   x86_64-*-linux-gnu* )
     machine=amdx86-64 opsys=gnu-linux
@@ -2820,13 +2643,6 @@
 if test x"${opsys}" = x; then
   case "${canonical}" in
     *-gnu* )				opsys=gnu ;;
-    *-bsd4.[01] )			opsys=bsd4-1 ;;
-    *-bsd4.2 )				opsys=bsd4-2 ;;
-    *-bsd4.3 )				opsys=bsd4-3 ;;
-    *-sysv0 | *-sysvr0 )		opsys=usg5-0 ;;
-    *-sysv2 | *-sysvr2 )		opsys=usg5-2 ;;
-    *-sysv2.2 | *-sysvr2.2 )		opsys=usg5-2-2 ;;
-    *-sysv3* | *-sysvr3* )		opsys=usg5-3 ;;
     *-sysv4.2uw* )			opsys=unixware ;;
     *-sysv5uw* )			opsys=unixware ;;
     *-sysv5OpenUNIX* )			opsys=unixware ;;
@@ -2849,30 +2665,6 @@
   esac
 fi
 
-### Tests for sytems that we beleive are obsolete and should be desupported.
-
-case "${machine}" in
-     pmax | hp9000s300 | ibm370aix | ncr386 | ews4800 | mips-siemens | powerpcle | tandem-s2 )
-     	  echo "The system that you are configuring on: ${canonical} is considered to be obsolete"
-	  echo "and it is planned to be desupported in the next version of Emacs"
-	  echo "Please email emacs-devel@gnu.org as soon as possible if this system is still in use."
-	  echo "The code is still functional, but you need to edit the 'configure' script and remove the"
-	  echo "exit 33 line.  After that you can run configure again and 'complete' the build."
-	  exit 33
-	  ;;
-esac
-
-case "${opsys}" in
-     bsd386 | bsdos2-1 |  bsdos2 | bsdos3 | bsdos4 | bsd4-1 | bsd4-2 | bsd4-3 | usg5-0 | usg5-2-2 | usg5-2 | usg5-3 | ultrix4-3 | 386bsd | hpux | hpux8 | hpux9 | hpux9shr | hpux10 | aix3-1 | aix3-2-5 | aix3-2 | aix4-1 | nextstep | ux4800 | uxpds | uxpv )
-     	  echo "The system that you are configuring on: ${canonical} is considered to be obsolete"
-	  echo "and it is planned to be desupported in the next version of Emacs"
-	  echo "Please email emacs-devel@gnu.org as soon as possible if this system is still in use."
-	  echo "The code is still functional, but you need to edit the 'configure' script and remove the"
-	  echo "'exit 44' line.  After that you can run 'configure' again and complete the build."
-	  exit 44
-	  ;;
-esac
-
 
 
 if test $unported = yes; then
--- a/configure.in	Thu Jun 26 04:17:19 2008 +0000
+++ b/configure.in	Thu Jun 26 04:24:54 2008 +0000
@@ -265,9 +265,8 @@
 ### based on the machine portion of the configuration name, and an s-
 ### file based on the operating system portion.  However, it turns out
 ### that each m/*.h file is pretty manufacturer-specific - for
-### example hp9000s300.h is a 68000 machine;
-### mips.h, pmax.h are all MIPS
-### machines.  So we basically have to have a special case for each
+### example mips.h is MIPS
+### So we basically have to have a special case for each
 ### configuration name.
 ###
 ### As far as handling version numbers on operating systems is
@@ -322,12 +321,6 @@
     case "${canonical}" in
       alpha*-*-netbsd*)	machine=alpha ;;
       i[3456]86-*-netbsd*) machine=intel386 ;;
-      m68k-*-netbsd*)
-			# This is somewhat bogus.
-			machine=hp9000s300 ;;
-      mips-*-netbsd*)	machine=pmax ;;
-      mipsel-*-netbsd*)	machine=pmax ;;
-      mipseb-*-netbsd*)	machine=pmax ;;
       powerpc-*-netbsd*) machine=macppc ;;
       sparc*-*-netbsd*)	machine=sparc ;;
       vax-*-netbsd*)	machine=vax ;;
@@ -343,9 +336,7 @@
     case "${canonical}" in
       alpha*-*-openbsd*)	machine=alpha ;;
       arm-*-openbsd*)          machine=arm ;;
-      hppa-*-openbsd*)         machine=hp9000s300 ;;
       i386-*-openbsd*)         machine=intel386 ;;
-      m68k-*-openbsd*)         machine=hp9000s300 ;;
       powerpc-*-openbsd*)      machine=macppc ;;
       sparc*-*-openbsd*)       machine=sparc ;;
       vax-*-openbsd*)          machine=vax ;;
@@ -362,23 +353,6 @@
     esac
   ;;
 
-  ## BSDI ports
-  *-*-bsdi* )
-    opsys=bsdi
-    case "${canonical}" in
-      i[345]86-*-bsdi*) machine=intel386 ;;
-      sparc-*-bsdi*)  machine=sparc ;;
-      powerpc-*-bsdi*)  machine=macppc ;;
-    esac
-    case "${canonical}" in
-      *-*-bsd386* | *-*-bsdi1* )	opsys=bsd386 ;;
-      *-*-bsdi2.0* )		opsys=bsdos2 ;;
-      *-*-bsdi2* )		opsys=bsdos2-1 ;;
-      *-*-bsdi3* )		opsys=bsdos3 ;;
-      *-*-bsdi[45]* )		opsys=bsdos4 ;;
-    esac
-  ;;
-
   alpha*-*-linux-gnu* )
     machine=alpha opsys=gnu-linux
   ;;
@@ -405,56 +379,10 @@
     fi
   ;;
 
-  ## Cubix QBx/386
-  i[3456]86-cubix-sysv* )
-    machine=intel386 opsys=usg5-3
-  ;;
-
-  mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* )
-    machine=pmax opsys=bsd4-2
-  ;;
-  mips-dec-ultrix4.[12]* | mips-dec-bsd* )
-    machine=pmax opsys=bsd4-3
-  ;;
-  mips-dec-ultrix* )
-    machine=pmax opsys=ultrix4-3
-  ;;
-  ## HP 9000 series 200 or 300
-  m68*-hp-bsd* )
-    machine=hp9000s300 opsys=bsd4-3
-  ;;
-  ## HP/UX 7, 8, 9, and 10 are supported on these machines.
-  m68*-hp-hpux* )
-    case "`uname -r`" in
-      ## Someone's system reports A.B8.05 for this.
-      ## I wonder what other possibilities there are.
-      *.B8.* ) machine=hp9000s300 opsys=hpux8 ;;
-      *.08.* ) machine=hp9000s300 opsys=hpux8 ;;
-      *.09.* ) machine=hp9000s300 opsys=hpux9 ;;
-      *.1[0-9].* ) machine=hp9000s300 opsys=hpux9shr ;;
-      *) machine=hp9000s300 opsys=hpux ;;
-    esac
-  ;;
-
   ## HP 9000 series 700 and 800, running HP/UX
-  hppa*-hp-hpux7* )
-    machine=hp800 opsys=hpux
-  ;;
-  hppa*-hp-hpux8* )
-    machine=hp800 opsys=hpux8
-  ;;
-  hppa*-hp-hpux9shr* )
-    machine=hp800 opsys=hpux9shr
-  ;;
-  hppa*-hp-hpux9* )
-    machine=hp800 opsys=hpux9
-  ;;
   hppa*-hp-hpux10.2* )
     machine=hp800 opsys=hpux10-20
   ;;
-  hppa*-hp-hpux10* )
-    machine=hp800 opsys=hpux10
-  ;;
   hppa*-hp-hpux1[1-9]* )
     machine=hp800 opsys=hpux11
     CFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CFLAGS"
@@ -464,41 +392,13 @@
     machine=hp800 opsys=gnu-linux
   ;;
 
-  ## HP 9000 series 700 and 800, running HP/UX
-  hppa*-hp-hpux* )
-    ## Cross-compilation?  Nah!
-    case "`uname -r`" in
-      ## Someone's system reports A.B8.05 for this.
-      ## I wonder what other possibilities there are.
-      *.B8.* ) machine=hp800 opsys=hpux8 ;;
-      *.08.* ) machine=hp800 opsys=hpux8 ;;
-      *.09.* ) machine=hp800 opsys=hpux9 ;;
-      *) machine=hp800 opsys=hpux10 ;;
-    esac
-  ;;
-  hppa*-*-nextstep* )
-    machine=hp800 opsys=nextstep
-  ;;
-
   ## IBM machines
-  i370-ibm-aix*)
-    machine=ibm370aix opsys=usg5-3
-  ;;
   s390-*-linux-gnu* )
     machine=ibms390 opsys=gnu-linux
   ;;
   s390x-*-linux-gnu* )
     machine=ibms390x opsys=gnu-linux
   ;;
-  rs6000-ibm-aix3.1* | powerpc-ibm-aix3.1*  )
-    machine=ibmrs6000 opsys=aix3-1
-  ;;
-  rs6000-ibm-aix3.2.5 | powerpc-ibm-aix3.2.5 )
-    machine=ibmrs6000 opsys=aix3-2-5
-  ;;
-  rs6000-ibm-aix4.1* | powerpc-ibm-aix4.1*  )
-    machine=ibmrs6000 opsys=aix4-1
-  ;;
   rs6000-ibm-aix4.2* | powerpc-ibm-aix4.2*  )
     machine=ibmrs6000 opsys=aix4-2
   ;;
@@ -511,65 +411,12 @@
   rs6000-ibm-aix5* | powerpc-ibm-aix6*  )
     machine=ibmrs6000 opsys=aix4-2
   ;;
-  rs6000-ibm-aix4.0* | powerpc-ibm-aix4.0*  )
-    machine=ibmrs6000 opsys=aix4
-  ;;
-  rs6000-ibm-aix4* | powerpc-ibm-aix4*  )
-    machine=ibmrs6000 opsys=aix4-1
-  ;;
-  rs6000-ibm-aix* | powerpc-ibm-aix* )
-    machine=ibmrs6000 opsys=aix3-2
-  ;;
-
-  ## Prime EXL
-  i[3456]86-prime-sysv* )
-    machine=i386 opsys=usg5-3
-  ;;
-
-  ## ncr machine running svr4.3.
-  i[3456]86-ncr-sysv4.3 )
-    machine=ncr386 opsys=usg5-4-3
-  ;;
-
-  ## Unspecified sysv on an ncr machine defaults to svr4.2.
-  ## (Plain usg5-4 doesn't turn on POSIX signals, which we need.)
-  i[3456]86-ncr-sysv* )
-    machine=ncr386 opsys=usg5-4-2
-  ;;
 
   ## Macintosh PowerPC
   powerpc*-*-linux-gnu* )
     machine=macppc opsys=gnu-linux
   ;;
 
-  ## Workstations sold by MIPS
-  ## This is not necessarily all workstations using the MIPS processor -
-  ## Irises are produced by SGI, and DECstations by DEC.
-
-  mips-mips-bsd* )
-    machine=mips opsys=bsd4-3
-  ;;
-  mips-mips-* )
-    machine=mips opsys=usg5-2-2
-  ;;
-
-  ## NeXT
-  m68*-next-* | m68k-*-nextstep* )
-    machine=m68k opsys=nextstep
-  ;;
-
-  ## NEC EWS4800
-  mips-nec-sysv4*)
-  machine=ews4800 opsys=ux4800
-  ;;
-
-  ## Siemens Nixdorf
-  mips-siemens-sysv* | mips-sni-sysv*)
-    machine=mips-siemens opsys=usg5-4
-    NON_GNU_CC=/usr/ccs/bin/cc
-    NON_GNU_CPP=/usr/ccs/lib/cpp
-  ;;
-
   ## Silicon Graphics machines
   ## Iris 4D
   mips-sgi-irix6.5 )
@@ -592,7 +439,6 @@
     case "${canonical}" in
       i[3456]86-*-* )     machine=intel386 ;;
       amd64-*-*|x86_64-*-*)	machine=amdx86-64 ;;
-      powerpcle* )      machine=powerpcle ;;
       powerpc* | rs6000* )  machine=ibmrs6000 ;;
       sparc* )		machine=sparc ;;
       * )		unported=yes ;;
@@ -622,7 +468,6 @@
 		emacs_check_sunpro_c=yes
 		NON_GNU_CPP=/usr/ccs/lib/cpp
 		;;
-      *			  ) opsys=bsd4-2   ;;
     esac
     ## Watch out for a compiler that we know will not work.
     case "${canonical}" in
@@ -636,24 +481,11 @@
       *) ;;
     esac
   ;;
-  sparc-*-nextstep* )
-    machine=sparc opsys=nextstep
-  ;;
-
-  ## Tandem Integrity S2
-  mips-tandem-sysv* )
-    machine=tandem-s2 opsys=usg5-3
-  ;;
 
   ## Vaxen.
   vax-dec-* )
     machine=vax
     case "${canonical}" in
-      *-bsd4.1* ) 					opsys=bsd4-1 ;;
-      *-bsd4.2* | *-ultrix[0-3].* | *-ultrix4.0* )	opsys=bsd4-2 ;;
-      *-bsd4.3* | *-ultrix* ) 				opsys=bsd4-3 ;;
-      *-sysv[01]* | *-sysvr[01]* ) 			opsys=usg5-0 ;;
-      *-sysv2* | *-sysvr2* )				opsys=usg5-2 ;;
       *-vms* ) 						opsys=vms ;;
       * ) 						unported=yes
     esac
@@ -676,8 +508,6 @@
       *-sysv4.2uw* )	  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
       *-sysv5uw* )	  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
       *-sysv5OpenUNIX* )  	opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
-      *-386bsd* )	        opsys=386bsd ;;
-      *-nextstep* )             opsys=nextstep ;;
       ## Otherwise, we'll fall through to the generic opsys code at the bottom.
     esac
   ;;
@@ -692,13 +522,6 @@
     machine=mips opsys=gnu-linux
   ;;
 
-  ## UXP/DS
-  sparc-fujitsu-sysv4* )
-    machine=sparc opsys=uxpds
-    NON_GNU_CPP=/usr/ccs/lib/cpp
-    RANLIB="ar -ts"
-  ;;
-
   ## AMD x86-64 Linux-based GNU system
   x86_64-*-linux-gnu* )
     machine=amdx86-64 opsys=gnu-linux
@@ -723,13 +546,6 @@
 if test x"${opsys}" = x; then
   case "${canonical}" in
     *-gnu* )				opsys=gnu ;;
-    *-bsd4.[01] )			opsys=bsd4-1 ;;
-    *-bsd4.2 )				opsys=bsd4-2 ;;
-    *-bsd4.3 )				opsys=bsd4-3 ;;
-    *-sysv0 | *-sysvr0 )		opsys=usg5-0 ;;
-    *-sysv2 | *-sysvr2 )		opsys=usg5-2 ;;
-    *-sysv2.2 | *-sysvr2.2 )		opsys=usg5-2-2 ;;
-    *-sysv3* | *-sysvr3* )		opsys=usg5-3 ;;
     *-sysv4.2uw* )			opsys=unixware ;;
     *-sysv5uw* )			opsys=unixware ;;
     *-sysv5OpenUNIX* )			opsys=unixware ;;
@@ -752,30 +568,6 @@
   esac
 fi
 
-### Tests for sytems that we beleive are obsolete and should be desupported.
-
-case "${machine}" in
-     pmax | hp9000s300 | ibm370aix | ncr386 | ews4800 | mips-siemens | powerpcle | tandem-s2 )
-     	  echo "The system that you are configuring on: ${canonical} is considered to be obsolete"
-	  echo "and it is planned to be desupported in the next version of Emacs"
-	  echo "Please email emacs-devel@gnu.org as soon as possible if this system is still in use."
-	  echo "The code is still functional, but you need to edit the 'configure' script and remove the"
-	  echo "exit 33 line.  After that you can run configure again and 'complete' the build."
-	  exit 33
-	  ;;
-esac
-
-case "${opsys}" in
-     bsd386 | bsdos2-1 |  bsdos2 | bsdos3 | bsdos4 | bsd4-1 | bsd4-2 | bsd4-3 | usg5-0 | usg5-2-2 | usg5-2 | usg5-3 | ultrix4-3 | 386bsd | hpux | hpux8 | hpux9 | hpux9shr | hpux10 | aix3-1 | aix3-2-5 | aix3-2 | aix4-1 | nextstep | ux4800 | uxpds | uxpv )
-     	  echo "The system that you are configuring on: ${canonical} is considered to be obsolete"
-	  echo "and it is planned to be desupported in the next version of Emacs"
-	  echo "Please email emacs-devel@gnu.org as soon as possible if this system is still in use."
-	  echo "The code is still functional, but you need to edit the 'configure' script and remove the"
-	  echo "'exit 44' line.  After that you can run 'configure' again and complete the build."
-	  exit 44
-	  ;;
-esac
-
 ]
 dnl quotation ends
 
@@ -1475,9 +1267,6 @@
   yes ) HAVE_MENUS=yes ;;
 esac
 
-### Compute the unexec source name from the object name.
-UNEXEC_SRC="`echo ${unexec} | sed 's/\.o/.c/'`"
-
 # Do the opsystem or machine files prohibit the use of the GNU malloc?
 # Assume not, until told otherwise.
 GNU_MALLOC=yes
--- a/doc/lispref/ChangeLog	Thu Jun 26 04:17:19 2008 +0000
+++ b/doc/lispref/ChangeLog	Thu Jun 26 04:24:54 2008 +0000
@@ -1,3 +1,7 @@
+2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* os.texi: Remove references to obsolete systems.
+
 2008-06-20  Eli Zaretskii  <eliz@gnu.org>
 
 	* makefile.w32-in (distclean): Remove makefile.
--- a/doc/lispref/os.texi	Thu Jun 26 04:17:19 2008 +0000
+++ b/doc/lispref/os.texi	Thu Jun 26 04:24:54 2008 +0000
@@ -664,9 +664,6 @@
 MS-DOS binds @code{system-type} to @code{ms-dos} even when you run it on
 MS-Windows.
 
-@item next-mach
-NeXT Mach-based system.
-
 @item usg-unix-v
 AT&T System V.
 
--- a/etc/MACHINES	Thu Jun 26 04:17:19 2008 +0000
+++ b/etc/MACHINES	Thu Jun 26 04:24:54 2008 +0000
@@ -121,62 +121,10 @@
 
   Changes merged in 20.3.
 
-GEC 63 (local-gec63-usg5.2)
-
-  Changes are partially merged in version 18, but certainly require
-  more work.  Let us know if you get this working, and we'll give it a
-  real configuration name.
-
 Harris Power PC (powerpc-harris-powerunix)
 
   Patches have been merged in 19.31.
 
-Hewlett-Packard 9000 series 200 or 300 (m68k-hp-bsd or m68k-hp-hpux
-				        or m68k-hp-netbsd)
-
-  These machines are 68000-series CPUs running HP/UX
-  (a derivative of sysV with some BSD features) or BSD 4.3 ported by Utah.
-  The operating system suffix determines which system Emacs is built for.
-
-  Series 200 HPUX runs Emacs only if it has the "HP/UX upgrade".
-
-  Version 19 works under BSD.  The 19.26 pretest was reported
-  to work on HPUX 9.  19.31 works on HPUX 10.01, but there are
-  some problems on 10.10 which have not been resolved.  Emacs 19.34
-  works on HPUX 10.20 provided you compile with GCC; with the HP C
-  compiler, subprocess commands do not work.
-
-  On HPUX 9, Emacs sometimes crashes with SIGBUS or SIGSEGV after you
-  delete a frame.  We think this is due to a bug in the X libraries
-  provided by HP.  With the alternative X libraries in
-  /usr/contrib/mitX11R5/lib, the problem does not happen.
-
-  If you are running HP/UX release 8.0 or later, you need the optional
-  "C/ANSI C" software in order to build Emacs (older releases of HP/UX
-  do not require any special software).  If the file "/etc/filesets/C"
-  exists on your machine, you have this software, otherwise you do not.
-
-  Note that HP has used two incompatible assembler syntaxes,
-  and has recently changed the format of C function frames.
-  `src/crt0.c' and `src/alloca.s' have been conditionalised for the new
-  assembler and new function-entry sequence.  You may need to define
-  OLD_HP_ASSEMBLER if you are using an older hpux version.  If you
-  have an official (bought from HP) series 300 machine you have
-  the new assembler.  Kernels that are 5.+ or later have new
-  assembler.  A Series 200 that has been upgraded to a 68010
-  processor and a 5.+ kernel has the new compiler.
-
-  Define C_SWITCH_MACHINE to be +X to make a version of Emacs that
-  runs on both 68010 and 68020 based HP/UX's.
-
-  Define HPUX_68010 if you are using the new assembler, for
-  a system that has a 68010 without a 68881.  This is to say,
-  a s200 (upgraded) or s310.
-
-  Define the symbol HPUX_NET if you have the optional network features
-  that include the `netunam' system call.  This is referred to as
-  Network Services (NS/9000) in HP literature.
-
 HP 9000 series 500: not supported.
 
   The series 500 has a seriously incompatible memory architecture
@@ -184,13 +132,11 @@
   and support for it would be difficult to implement.
 
 HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux
-				      or ...hpux9shr, or ...-nextstep)
+				      or ...hpux9shr)
 
   Use hppa1.1 for the 700 series and hppa1.0 for the 800
   series machines.  (Emacs may not actually care which one you use.)
 
-  Support for NextSTEP was added in 19.31.
-
   Emacs 20 may work on HPUX 10.  You need patch PHSS_6202 to install
   the Xaw and Xmu libraries.  On HPUX 10.20 you may need to compile with GCC;
   when Emacs was compiled with HP's C compiler, HP92453-01 A.10.32.03,
@@ -251,14 +197,6 @@
   do not require any special software).  If the file "/etc/filesets/C"
   exists on your machine, you have this software, otherwise you do not.
 
-IBM PS/2 (i386-ibm-aix1.1 or i386-ibm-aix1.2)
-
-  Changes merged in version 19.  You may need to copy
-  /usr/lib/samples/hft/hftctl.c to the Emacs src directory.
-
-  i386-ibm-aix1.1 may not work with certain new X window managers, and
-  may be suboptimal.
-
 IBM RS/6000 (rs6000-ibm-aix*)
 
   Emacs 19.26 is believed to work; its pretest was tested.
@@ -299,22 +237,6 @@
   As of Emacs 21.2, a 31-bit only version is supported on this
   system.
 
-Integrated Solutions `Optimum V' (m68k-isi-bsd4.2 or -bsd4.3)
-
-  18.52 said to work on some sort of ISI machine.
-  Version 18.45 worked (running on a Optimum V (VME bus, 68020)
-  BSD 4.2 (3.05e) system).  18.42 is reported to work on
-  a Qbus 68010 system.  Has not been tried on `WorkStation' `Cluster
-  Compute Node' `Cluster WorkStation' or `Server Node'  (Love the
-  StudLYCaps)
-
-  Compilation with -O is rumored to break something.
-
-  On recent system versions, you may need to undefine the macro UMAX
-  in `lib-src/loadst.c' and `src/getpagesize.h'.  They stupidly defined this
-  in a system header file, which confuses Emacs (which thinks that UMAX
-  indicates the Umax operating system).
-
 Intel 386 (i386-*-bsdi2,        i386-*-freebsd,  i386-*-linux-gnu,
 	   i386-*-sol2.4,	i386-*-sysv3,    i386-intsys-sysv,
 	   i386-*-sysv4,	i386-*-sysv4.2,
@@ -424,12 +346,6 @@
   but define `struct tc' instead; add `#define tchars tc'
   to config.h to solve this problem.
 
-Iris 2500 and Iris 2500 Turbo (m68k-sgi-iris3.5 or m68k-sgi-iris3.6)
-
-  Version 18 was said to work; use m68k-sgi-iris3.5 for system version 2.5
-  and m68k-sgi-iris3.6 for system version 3.6.
-  Note that the 3030 is the same as the Iris 2500 Turbo.
-
 Iris 4D (mips-sgi-irix[456].*)
 
   Emacs 21.3 is reported to work on IRIX 6.5.x.
@@ -491,54 +407,10 @@
   you may need to set LD_RUN_PATH at link time to specify where
   to find the X libraries.
 
-NEC EWS4800 (mips-nec-sysv4)
-
-  This system works in 20.4, but you should use the compiler
-  /usr/abiccs/bin/cc (MIPS ABI MODE).
-
-NeXT (m68k-next-nextstep)
-
-  Emacs 19 has not been tested extensively yet, but it seems to work
-  in a NeXTStep 3.0 terminal window, and under the X server called
-  co-Xist.  You may need to specify -traditional when src/Makefile
-  builds xmakefile.
-
-  NeXT users might want to implement direct operation with NeXTStep,
-  but from the point of view of the GNU project, that is a
-  distraction.
-
-  Thanks to Thorsten Ohl for working on the NeXT port of Emacs 19.
-
-Pmax (DEC Mips)  (mips-dec-ultrix or mips-dec-osf1)
-
-  See under DECstation, above.
-
 Prime EXL (i386-prime-sysv)
 
   Minor changes merged in 19.1.
 
-Sequent Symmetry (i386-sequent-bsd, i386-sequent-ptx, i386-sequent-ptx4)
-
-  19.33 has changes to support ptx 4 (a modified SVR4).
-
-  Emacs 19 should work on Dynix (BSD).  However, if you compile with
-  the Sequent compiler, you may find Emacs does not restore the
-  terminal settings on exit.  If this happens, compile with GCC.
-
-  Emacs 19.27 contains patches that should support
-  DYNIX/ptx 1.4 and 2.1 with the native cc compiler.
-
-  GCC can't compile src/process.c due to a non-standard Sequent asm
-  keyword extension supported by cc and used for the network byte/word
-  swapping functions in the PTX /usr/include/netinet/in.h file.  GCC
-  2.5.8 includes the file <sys/byteorder.h> which can be included into
-  netinet/in.h to perform these byte/word swapping functions in the
-  same manner.  Patches have been submitted to the FSF against GCC
-  2.6.0 to fix this problem and allow Emacs to be built with GCC.
-
-  If your machine does not have TCP/IP installed, you will have to edit the
-  src/s/ptx.h file and comment out #define TCPIP_INSTALLED.
-
 Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4)
 
   Changes merged in 19.29.  The version configured with
@@ -558,23 +430,8 @@
     LIBW= /usr/lib/libXm.a /usr/ccs/lib/libgen.a
     LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext
 
-SONY News (m68k-sony-bsd4.2 or m68k-sony-bsd4.3)
-
-  18.52 worked.  Use m68k-sony-bsd4.3 for system release 3.
-
-SONY News 3000 series (RISC NEWS) (mips-sony-bsd)
-
-  The 19.26 pretest is reported to work.
-
-  Some versions of the operating system give SIGTRAP for division by zero
-  instead of the usual signals.  This causes division by zero
-  to make Emacs crash.  The system should be fixed to give the proper signal.
-  Changing Emacs is not a proper solution, because it would prevent
-  Emacs from working under any debugger.  But you can change init_data
-  in data.c if you wish.
-
-Sun 3, Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
-			       i386-sun-solaris2.*, sparc*-*-linux-gnu)
+Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
+    			       i386-sun-solaris2.*, sparc*-*-linux-gnu)
 
   To build a 32-bit Emacs (i.e. if you are having any sort of problem
   bootstrapping a 64-bit version), you can use the Sun Studio compiler
@@ -634,13 +491,6 @@
   There are reports that using SunSoft cc with -xO4 -xdepend produces
   bad code for some part of Emacs.
 
-  Emacs works ok Sunos 4.1.x
-  provided you completely replace your C shared library
-  using one of the SunOS 4.1.x jumbo replacement patches from Sun.
-  Here are the patch numbers for Sunos 4.1.3:
-   100890-10   SunOS 4.1.3: domestic libc jumbo patch
-   100891-10   SunOS 4.1.3: international libc jumbo patch
-
   Some people report that Emacs crashes immediately on startup when
   used with a non-X terminal, but we think this is due to compiling
   with GCC and failing to use GCC's "fixed" system header files.
@@ -654,13 +504,6 @@
   The problem went away when GCC 2.7.0 was used instead.  We do not know
   whether anything in Emacs is partly to blame for this.
 
-  X11R6 is set up to make shared libraries only, on Sunos 4.
-  Therefore, in order to link Emacs, you need to create static X libraries.
-  To do this, rebuild X11 after setting
-    #define ForceNormalLib YES
-    #define SeparateSharedCompile YES
-  in site.def (after #ifdef AfterVendorCF).
-
   If you compile with Sun's ANSI compiler acc, you need additional options
   when linking temacs, such as
      /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
@@ -700,21 +543,6 @@
   (now remapped as part of the text).  These are never
   swapped in.
 
-  To build a single Emacs that will run on Sun 2 and Sun 3
-  HARDWARE, just build it on the Sun 2.
-
-  On Sunos 4.1.3, the word is that Emacs can loop infinitely
-  on startup with X due perhaps to a bug in Sunos.  Installing all of
-  these Sun patches fixes the problem.  We don't know which of them
-  are really relevant.
-
-    100075-11 100224-06 100347-03 100482-05 100557-02 100623-03 100804-03
-    101080-01 100103-12 100249-09 100496-02 100564-07 100630-02 100891-10
-    101134-01 100170-09 100296-04 100377-09 100507-04 100567-04 100650-02
-    101070-01 101145-01 100173-10 100305-15 100383-06 100513-04 100570-05
-    100689-01 101071-03 101200-02 100178-09 100338-05 100421-03 100536-02
-    100584-05 100784-01 101072-01 101207-01
-
 Tadpole 68K (m68k-tadpole-sysv)
 
   Changes merged in 19.1.
@@ -726,13 +554,6 @@
 
     chmod 2755 etc/movemail; chgrp mail etc/movemail
 
-Tandem Integrity S2 (mips-tandem-sysv)
-
-  Changes merged in 18.56 but subprocess support is turned off.
-  You will probably want to see if you can make subprocesses work.
-
-  You must edit `lib-src/Makefile' to define LOADLIBES = -mld.
-
 Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3),
 	      Ultrix (vax-dec-ultrix),
               System V (vax-dec-sysv0, vax-dec-sysv2), or
@@ -754,18 +575,6 @@
 
 Here are notes about some of the systems supported:
 
-Berkeley 4.1 (bsd4.1)
-
-  Works on vaxes.
-
-Berkeley 4.2 (bsd4.2)
-
-  Works on several machines.
-
-Berkeley 4.3 (bsd4.3)
-
-  Works, on Vaxes at least.
-
 Linux (actually GNU/Linux)
 
   Most of the complete systems which use the Linux kernel are close
@@ -805,57 +614,6 @@
   If you are using SMAIL, you need to define the macro
   SMAIL in config.h.
 
-System V rel 0 (usg5.0)
-
-  Works, on Vaxes and 3bxxx's.
-  There are some problems in 18.37 due to shortnames/cccp problems:
-  use the emacs 17 cpp if you have it.
-
-System V rel 2 (usg5.2)
-
-  Works on various machines.
-  On some (maybe all) machines the library -lPW exists and contains
-  a version of `alloca'.  On these machines, to use it, put
-     #define HAVE_ALLOCA
-     #define LIB_STANDARD -lPW -lc
-  in the `src/m/MACHINENAME.h' file for the machine.
-
-  If you find that the character Meta-DEL makes Emacs crash,
-  find where function init_sys_modes in sysdep.c sets sg.c_cc[VQUIT]
-  and make it store 7 there.  I have as yet no evidence of whether
-  this problem, known in HP/UX, exists in other system V versions.
-
-System V rel 2.2 (usg5.2.2)
-
-  In 5.2.2 AT&T undid, incompatibly, their previous incompatible
-  change to the way the nlist library is called.  A different s- file
-  is used to enable the other interface.
-
-  They call themselves the right choice--can't they choose?
-
-  Emacs version 18 unexec is currently not working properly
-  on 5.2.2.  Nobody knows why yet.  A workaround is to define
-  NO_REMAP.  It is not yet known whether this applies to all
-  machines running 5.2.2.
-
-System V rel 3 (usg5.3)
-
-  Some versions of this system support ptys and BSD-style sockets.
-  On such systems, you should define HAVE_PTYS and HAVE_SOCKETS in config.h.
-
-  If you want to link Emacs with shared libraries, define
-  USG_SHARED_LIBRARIES.
-
-  You may have to add ANSI idempotence #-lines to your sys/types.h
-  file to get Emacs to compile correctly.  This may be necessary on
-  other pre-ANSI systems as well.
-
-  On an AT&T 6386WGS using System V Release 3.2 and X11R3, the X support
-  cannot be made to work.  Whether or not the GNU relocating malloc is
-  used, the symptom is that the first call Emacs makes to sbrk(0) returns
-  (char *)-1.  Sorry, you're stuck with character-only mode.  Try
-  installing XFree86 to fix this.
-
 System V rel 4.0.3 and 4.0.4 (usg5.4)
 
   Supported, including shared libraries for ELF, but ptys do not work
@@ -892,27 +650,6 @@
   #undef HAVE_SOCKETS in config.h, after the inclusion of s-usg5-4.h.
   (Any system that supports Internet should implement sockets.)
 
-Ultrix (bsd4.3)
-
-  Recent versions of Ultrix appear to support the features of Berkeley 4.3.
-  Ultrix was at the BSD 4.2 level for a long time after BSD 4.3 came out.
-
-  Ultrix 3.0 has incompatibilities in its X library if you have the
-  Ultrix version of X (UWS version 2.0).  To solve them, you need to
-  prevent XvmsAlloc.o in Xlib from being used.  Israel Pinkas says:
-
-    I added the following lines to config.h after the X defines:
-
-    #if defined(ultrix) && defined(X11)
-    #define OBJECTS_SYSTEM calloc.o
-    #endif
-
-    Then I ran the following:
-
-    ar x /usr/lib/libc.a calloc.o
-
-  The problem is said to be gone in UWS version 2.1.
-
 VMS (vmsM.N)
 
   Richard Levitte <levitte@e.kth.se> distributes a set of patches to
@@ -964,6 +701,9 @@
   Apollo (m/apollo.h)
   AT&T 3b (m/att3b.h)
   Aviion (m/aviion*)
+  Berkeley 4.1 (m/bsd4.1.h)
+  Berkeley 4.2 (m/bsd4.2.h)
+  Berkeley 4.3 (m/bsd4.3.h)
   Celerity (m/celerity.h)
   clipper (m/clipper.h)
   convergent S series (m/cnvrgnt.h)
@@ -1014,6 +754,16 @@
   Sun's 386-based RoadRunner (m/sun386.h)
   Sun3 machines (m/sun3*)
   Integrated Solutions 386 machine (m/is386.h)
+  Integrated Solutions `Optimum V' -- m68k-isi-bsd4.2 or -bsd4.3
+  Hewlett-Packard 9000 series 200 or 300 -- m68k-hp-bsd or m68k-hp-hpux or m68k-hp-netbsd
+  IBM PS/2 -- i386-ibm-aix1.1 or i386-ibm-aix1.2
+  GEC 63 -- local-gec63-usg5.2
+  Tandem Integrity S2 -- mips-tandem-sysv
+  System V rel 0 -- usg5.0
+  System V rel 2 -- usg5.2
+  System V rel 2.2 -- usg5.2.2
+  System V rel 3 -- usg5.3
+  Ultrix -- bsd4.3
 
 
 Local variables:
--- a/lib-src/ChangeLog	Thu Jun 26 04:17:19 2008 +0000
+++ b/lib-src/ChangeLog	Thu Jun 26 04:24:54 2008 +0000
@@ -1,3 +1,7 @@
+2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* fakemail.c: Remove references to obsolete variables.
+
 2008-06-02  Jim Meyering  <meyering@redhat.com>
 
 	* ebrowse.c (xfree): Remove definition; s/xfree/free/.
--- a/lib-src/fakemail.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/lib-src/fakemail.c	Thu Jun 26 04:24:54 2008 +0000
@@ -24,7 +24,7 @@
 #include <config.h>
 #endif
 
-#if defined (BSD_SYSTEM) && !defined (BSD4_1) && !defined (USE_FAKEMAIL)
+#if defined (BSD_SYSTEM) && !defined (USE_FAKEMAIL)
 /* This program isnot used in BSD, so just avoid loader complaints.  */
 int
 main ()
--- a/lwlib/ChangeLog	Thu Jun 26 04:17:19 2008 +0000
+++ b/lwlib/ChangeLog	Thu Jun 26 04:24:54 2008 +0000
@@ -1,3 +1,7 @@
+2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* lwlib.c: Remove references to obsolete variables.
+
 2008-06-02  Jim Meyering  <meyering@redhat.com>
 
 	remove useless if-before-free tests
--- a/lwlib/lwlib.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/lwlib/lwlib.c	Thu Jun 26 04:24:54 2008 +0000
@@ -20,10 +20,6 @@
 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 Boston, MA 02110-1301, USA.  */
 
-#ifdef NeXT
-#undef __STRICT_BSD__ /* ick */
-#endif
-
 #ifdef HAVE_CONFIG_H
 #include <config.h>
 #endif
--- a/nt/ChangeLog	Thu Jun 26 04:17:19 2008 +0000
+++ b/nt/ChangeLog	Thu Jun 26 04:24:54 2008 +0000
@@ -1,3 +1,7 @@
+2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* config.nt: Remove reference to UNEXEC_SRC.
+
 2008-06-23  Juanma Barranquero  <lekktu@gmail.com>
 	    Eli Zaretskii  <eliz@gnu.org>
 
--- a/nt/config.nt	Thu Jun 26 04:17:19 2008 +0000
+++ b/nt/config.nt	Thu Jun 26 04:24:54 2008 +0000
@@ -202,8 +202,6 @@
 
 #undef CRAY_STACKSEG_END
 
-#undef UNEXEC_SRC
-
 #undef HAVE_LIBXBSD
 #undef HAVE_XRMSETDATABASE
 #undef HAVE_XSCREENRESOURCESTRING
--- a/src/ChangeLog	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/ChangeLog	Thu Jun 26 04:24:54 2008 +0000
@@ -1,3 +1,73 @@
+2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
+
+	* unexnext.c:
+	* m/ews4800.h:
+	* m/hp9000s300.h:
+	* m/ibm370aix.h:
+	* m/mips-siemens.h:
+	* m/ncr386.h:
+	* m/next.h:
+	* m/pmax.h:
+	* m/powerpcle.h:
+	* m/tandem-s2.h:
+	* s/386bsd.h:
+	* s/bsd386.h:
+	* s/bsd4-1.h:
+	* s/bsd4-2.h:
+	* s/bsdos2-1.h:
+	* s/bsdos2.h:
+	* s/bsdos3.h:
+	* s/bsdos4.h:
+	* s/nextstep.h:
+	* s/ultrix4-3.h:
+	* s/usg5-0.h:
+	* s/usg5-2-2.h:
+	* s/usg5-2.h:
+	* s/usg5-4-3.h:
+	* s/ux4800.h:
+	* s/uxpds.h:
+	* s/uxpv.h: Remove support for obsolete systems.
+	* s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
+	Remove, insert contents in s/hpux-10.20.h
+	* s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
+	Remove, insert contents in s/aix-4.2.h
+	* s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
+	* s/bsd4-3.h: Rename to ..
+	* s/bsd-common.h: ... this.
+	* src/data.c:
+	* src/doc.c:
+	* src/ecrt0.c:
+	* src/emacs.c:
+	* src/fileio.c:
+	* src/floatfns.c:
+	* src/keyboard.c:
+	* src/mem-limits.h:
+	* src/print.c:
+	* src/process.c:
+	* src/sysdep.c:
+	* src/syssignal.h:
+	* src/systty.h:
+	* src/syswait.h:
+	* src/term.c:
+	* src/unexec.c:
+	* src/unexelf.c:
+	* src/unexhp9k800.c:
+	* src/m/hp800.h:
+	* src/m/ibmrs6000.h:
+	* src/m/mips.h:
+	* src/m/vax.h:
+	* src/s/darwin.h:
+	* src/s/freebsd.h:
+	* src/s/gnu.h:
+	* src/s/ms-w32.h:
+	* src/s/msdos.h:
+	* src/s/netbsd.h:
+	* src/s/template.h: Remove references to obsolete variables.
+
+	* Makefile.in: Add dependencies for all unexec files.
+	(admindir): Remove unused variable.
+	(UNEXEC_SRC): Remove references.
+
 2008-06-25  Chong Yidong  <cyd@stupidchicken.com>
 
 	* xfns.c (x_default_font_parameter): If Xft is available, first
--- a/src/Makefile.in	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/Makefile.in	Thu Jun 26 04:24:54 2008 +0000
@@ -52,7 +52,6 @@
 LIBOBJS = @LIBOBJS@
 
 lispsource = ${srcdir}/../lisp/
-admindir = $(srcdir)/../admin/
 libsrc = ../lib-src/
 etc = ../etc/
 oldXMenudir = ../oldXMenu/
@@ -94,11 +93,6 @@
    do not let it interfere with this file.  */
 #undef register
 
-/* On some systems we may not be able to use the system make command. */
-#ifdef MAKE_COMMAND
-MAKE = MAKE_COMMAND
-#endif
-
 /* GNU libc requires ORDINARY_LINK so that its own crt0 is used.
    GNU/Linux is an exception because it uses a funny variant of GNU libc.  */
 #ifdef __GNU_LIBRARY__
@@ -500,9 +494,6 @@
 #ifndef UNEXEC
 #define UNEXEC unexec.o
 #endif
-#ifndef UNEXEC_SRC
-#define UNEXEC_SRC unexec.c
-#endif
 
 INTERVAL_SRC = intervals.h composite.h
 
@@ -1141,10 +1132,17 @@
 terminfo.o: terminfo.c $(config_h)
 tparam.o: tparam.c $(config_h)
 undo.o: undo.c buffer.h commands.h window.h $(config_h)
-/* This hack is to discard any space that cpp might put at the beginning
-   of UNEXEC when substituting it in.  */
-UNEXEC_ALIAS=UNEXEC
-$(UNEXEC_ALIAS): UNEXEC_SRC $(config_h)
+unexaix.o: unexaix.c $(config_h)
+unexalpha.o: unexalpha.c $(config_h)
+unexcw.o: unexcw.c $(config_h)
+unexec.o: unexec.c $(config_h)
+unexelf.o: unexelf.c $(config_h)
+unexhp9k800.o: unexhp9k800.c $(config_h)
+unexmacosx.o: unexmacosx.c $(config_h)
+unexmips.o: unexmips.c $(config_h)
+unexnext.o: unexnext.c $(config_h)
+unexsol.o: unexsol.c $(config_h)
+unexw32.o: unexw32.c $(config_h)
 w16select.o: w16select.c dispextern.h frame.h blockinput.h atimer.h systime.h \
    msdos.h buffer.h charset.h coding.h composite.h $(config_h)
 widget.o: widget.c xterm.h frame.h dispextern.h widgetprv.h \
--- a/src/data.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/data.c	Thu Jun 26 04:24:54 2008 +0000
@@ -45,16 +45,6 @@
 #endif
 #endif
 
-/* Work around a problem that happens because math.h on hpux 7
-   defines two static variables--which, in Emacs, are not really static,
-   because `static' is defined as nothing.  The problem is that they are
-   here, in floatfns.c, and in lread.c.
-   These macros prevent the name conflict.  */
-#if defined (HPUX) && !defined (HPUX8)
-#define _MAXLDBL data_c_maxldbl
-#define _NMAXLDBL data_c_nmaxldbl
-#endif
-
 #include <math.h>
 
 #if !defined (atof)
@@ -3285,11 +3275,7 @@
   /* VMS systems are like USG.  */
   signal (signo, arith_error);
 #endif /* VMS */
-#ifdef BSD4_1
-  sigrelse (SIGFPE);
-#else /* not BSD4_1 */
   sigsetmask (SIGEMPTYMASK);
-#endif /* not BSD4_1 */
 
   SIGNAL_THREAD_CHECK (signo);
   xsignal0 (Qarith_error);
--- a/src/doc.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/doc.c	Thu Jun 26 04:24:54 2008 +0000
@@ -22,7 +22,7 @@
 #include <config.h>
 
 #include <sys/types.h>
-#include <sys/file.h>	/* Must be after sys/types.h for USG and BSD4_1*/
+#include <sys/file.h>	/* Must be after sys/types.h for USG*/
 #include <ctype.h>
 
 #ifdef HAVE_FCNTL_H
--- a/src/ecrt0.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/ecrt0.c	Thu Jun 26 04:24:54 2008 +0000
@@ -200,120 +200,6 @@
 
 #endif /* not CRT0_DUMMIES */
 
-#ifdef hp9000s300
-int argc_value;
-char **argv_value;
-#ifdef OLD_HP_ASSEMBLER
-	asm("   text");
-	asm("	globl __start");
-	asm("	globl _exit");
-	asm("	globl _main");
-	asm("__start");
-	asm("	dc.l	0");
-	asm("	subq.w	#0x1,d0");
-	asm("	move.w	d0,float_soft");
-	asm("	move.l	0x4(a7),d0");
-	asm("	beq.s	skip_1");
-	asm("	move.l	d0,a0");
-	asm("	clr.l	-0x4(a0)");
-	asm("skip_1");
-	asm("	move.l	a7,a0");
-	asm("	subq.l	#0x8,a7");
-	asm("	move.l	(a0),(a7)");
-	asm("	move.l	(a0),_argc_value");
-	asm("	addq.l	#0x4,a0");
-	asm("	move.l	a0,0x4(a7)");
-	asm("	move.l	a0,_argv_value");
-	asm("incr_loop");
-	asm("	tst.l	(a0)+");
-	asm("	bne.s	incr_loop");
-	asm("	move.l	0x4(a7),a1");
-	asm("	cmp.l	(a1),a0");
-	asm("	blt.s	skip_2");
-	asm("	subq.l	#0x4,a0");
-	asm("skip_2");
-	asm("	move.l	a0,0x8(a7)");
-	asm("	move.l	a0,_environ");
-	asm("	jsr	_main");
-	asm("	addq.l	#0x8,a7");
-	asm("	move.l	d0,-(a7)");
-	asm("	jsr	_exit");
-	asm("	move.w	#0x1,d0");
-	asm("	trap	#0x0");
-	asm("	comm	float_soft,4");
-/* float_soft is allocated in this way because C would
-   put an underscore character in its name otherwise. */
-
-#else /* new hp assembler */
-
-	asm("	text");
-        asm("   global  float_loc");
-        asm("   set     float_loc,0xFFFFB000");
- 	asm("	global	fpa_loc");
-	asm("	set	fpa_loc,0xfff08000");
-	asm("	global	__start");
-	asm("	global	_exit");
-	asm("	global	_main");
-	asm("__start:");
-	asm("	byte	0,0,0,0");
-	asm("	subq.w	&1,%d0");
-	asm("	mov.w	%d0,float_soft");
-	asm("	mov.w	%d1,flag_68881");
-#ifndef HPUX_68010
-	asm("	beq.b	skip_float");
-	asm("	fmov.l	&0x7400,%fpcr");
-/*	asm("	fmov.l	&0x7480,%fpcr"); */
-#endif /* HPUX_68010 */
-	asm("skip_float:");
-	asm("	mov.l	%a0,%d0");
-	asm("	add.l	%d0,%d0");
-	asm("	subx.w	%d1,%d1");
-	asm("	mov.w	%d1,flag_68010");
-	asm("	add.l	%d0,%d0");
-	asm("	subx.w	%d1,%d1");
-	asm("	mov.w	%d1,flag_fpa");
-	asm("	tst.l	%d2");
-	asm("	ble.b	skip_3");
-	asm("	lsl	flag_68881");
-	asm("	lsl	flag_fpa");
-	asm("skip_3:");
-	asm("	mov.l	4(%a7),%d0");
-	asm("	beq.b	skip_1");
-	asm("	mov.l	%d0,%a0");
-	asm("	clr.l	-4(%a0)");
-	asm("skip_1:");
-	asm("	mov.l	%a7,%a0");
-	asm("	subq.l	&8,%a7");
-	asm("	mov.l	(%a0),(%a7)");
-	asm("	mov.l	(%a0),_argc_value");
-	asm("	addq.l	&4,%a0");
-	asm("	mov.l	%a0,4(%a7)");
-	asm("	mov.l	%a0,_argv_value");
-	asm("incr_loop:");
-	asm("	tst.l	(%a0)+");
-	asm("	bne.b	incr_loop");
-	asm("	mov.l	4(%a7),%a1");
-	asm("	cmp.l	%a0,(%a1)");
-	asm("	blt.b	skip_2");
-	asm("	subq.l	&4,%a0");
-	asm("skip_2:");
-	asm("	mov.l	%a0,8(%a7)");
-	asm("	mov.l	%a0,_environ");
-	asm("	jsr	_main");
-	asm("	addq.l	&8,%a7");
-	asm("	mov.l	%d0,-(%a7)");
-	asm("	jsr	_exit");
-	asm("	mov.w	&1,%d0");
-	asm("	trap	&0");
-	asm("	comm	float_soft, 4");
-	asm("	comm	flag_68881, 4");
-	asm("	comm	flag_68010, 4");
-	asm("	comm	flag_68040, 4");
-	asm("	comm	flag_fpa, 4");
-
-#endif /* new hp assembler */
-#endif /* hp9000s300 */
-
 #ifdef sparc
 asm (".global __start");
 asm (".text");
@@ -337,12 +223,6 @@
 #if __FreeBSD__ == 2
 char *__progname;
 #endif
-#ifdef __bsdi__
-#include <sys/param.h> /* for version number */
-#if defined(_BSDI_VERSION) && (_BSDI_VERSION >= 199501)
-char *__progname;
-#endif
-#endif /* __bsdi__ */
 
 /* arch-tag: 4025c2fb-d6b1-4d29-b1b6-8100b6bd1e74
    (do not change this comment) */
--- a/src/emacs.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/emacs.c	Thu Jun 26 04:24:54 2008 +0000
@@ -922,16 +922,6 @@
     }
 #endif
 
-#ifdef NeXT
-  {
-    extern int malloc_cookie;
-    /* This helps out unexnext.c.  */
-    if (initialized)
-      if (malloc_jumpstart (malloc_cookie) != 0)
-	printf ("malloc jumpstart failed!\n");
-  }
-#endif /* NeXT */
-
 #ifdef MAC_OSX
   /* Skip process serial number passed in the form -psn_x_y as
      command-line argument.  The WindowServer adds this option when
@@ -1505,7 +1495,7 @@
      if this is not done.  Do it after set_global_environment so that we
      don't pollute Vglobal_environment.  */
   /* Setting LANG here will defeat the startup locale processing...  */
-#ifdef AIX3_2
+#ifdef AIX
   putenv ("LANG=C");
 #endif
 
--- a/src/fileio.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/fileio.c	Thu Jun 26 04:24:54 2008 +0000
@@ -122,11 +122,6 @@
 
 #ifdef HPUX
 #include <netio.h>
-#ifndef HPUX8
-#ifndef HPUX9
-#include <errnet.h>
-#endif
-#endif
 #endif
 
 #include "commands.h"
@@ -2792,12 +2787,7 @@
       || INTEGERP (ok_if_already_exists))
     barf_or_query_if_file_exists (newname, "rename to it",
 				  INTEGERP (ok_if_already_exists), 0, 0);
-#ifndef BSD4_1
   if (0 > rename (SDATA (encoded_file), SDATA (encoded_newname)))
-#else
-  if (0 > link (SDATA (encoded_file), SDATA (encoded_newname))
-      || 0 > unlink (SDATA (encoded_file)))
-#endif
     {
       if (errno == EXDEV)
 	{
--- a/src/floatfns.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/floatfns.c	Thu Jun 26 04:24:54 2008 +0000
@@ -62,16 +62,6 @@
 #endif
 #endif
 
-/* Work around a problem that happens because math.h on hpux 7
-   defines two static variables--which, in Emacs, are not really static,
-   because `static' is defined as nothing.  The problem is that they are
-   defined both here and in lread.c.
-   These macros prevent the name conflict.  */
-#if defined (HPUX) && !defined (HPUX8)
-#define _MAXLDBL floatfns_maxldbl
-#define _NMAXLDBL floatfns_nmaxldbl
-#endif
-
 #include <math.h>
 
 /* This declaration is omitted on some systems, like Ultrix.  */
@@ -972,11 +962,7 @@
     fatal_error_signal (signo);
 
 #ifdef BSD_SYSTEM
-#ifdef BSD4_1
-  sigrelse (SIGILL);
-#else /* not BSD4_1 */
   sigsetmask (SIGEMPTYMASK);
-#endif /* not BSD4_1 */
 #else
   /* Must reestablish handler each time it is called.  */
   signal (SIGILL, float_error);
--- a/src/keyboard.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/keyboard.c	Thu Jun 26 04:24:54 2008 +0000
@@ -7305,10 +7305,6 @@
 void
 handle_async_input ()
 {
-#ifdef BSD4_1
-  extern int select_alarmed;
-#endif
-
   interrupt_input_pending = 0;
 
   while (1)
@@ -7321,9 +7317,6 @@
       if (nread <= 0)
 	break;
 
-#ifdef BSD4_1
-      select_alarmed = 1;  /* Force the select emulator back to life */
-#endif
     }
 }
 
@@ -7342,10 +7335,6 @@
   signal (signo, input_available_signal);
 #endif /* USG */
 
-#ifdef BSD4_1
-  sigisheld (SIGIO);
-#endif
-
 #ifdef SYNC_INPUT
   interrupt_input_pending = 1;
 #else
@@ -7359,9 +7348,6 @@
   handle_async_input ();
 #endif
 
-#ifdef BSD4_1
-  sigfree ();
-#endif
   errno = old_errno;
 }
 #endif /* SIGIO */
--- a/src/m/ews4800.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,40 +0,0 @@
-/* m- file for NEC EWS4800 RISC series.
-   Copyright (C) 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-#undef LIB_STANDARD
-#undef C_DEBUG_SWITCH
-#define INHIBIT_BSD_TIME
-#undef USG
-#include "mips.h"
-#define USG
-#undef UNEXEC
-#define UNEXEC unexelf.o
-#undef LIBS_MACHINE
-#undef LD_SWITCH_MACHINE
-#undef START_FILES
-#undef DATA_START
-#undef LIB_STANDARD
-#undef C_SWITCH_MACHINE
-#ifndef __GNUC__
-#undef C_DEBUG_SWITCH
-#define C_DEBUG_SWITCH -O  -KOlimit=3000 -ZXNd=5000
-#endif  /* !__GNUC__ */
-
-/* arch-tag: 27f72f54-45cd-40a3-b182-345127f04955
-   (do not change this comment) */
--- a/src/m/hp800.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/m/hp800.h	Thu Jun 26 04:24:54 2008 +0000
@@ -62,13 +62,6 @@
 /* Common definitions for HPUX and GNU/Linux.  */
 
 #if defined (__hpux) || defined (GNU_LINUX)
-/* Now define a symbol for the cpu type, if your compiler
-   does not define it automatically:
-   Ones defined so far include vax, m68000, ns16000, pyramid,
-   orion, tahoe, APOLLO and many others */
-#ifndef hp9000s800
-#     define hp9000s800
-#endif
 
 /* Define CANNOT_DUMP on machines where unexec does not work.
    Then the function dump-emacs will not be defined
--- a/src/m/hp9000s300.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,212 +0,0 @@
-/* machine description file for hp9000 series 200 or 300 on either HPUX or BSD.
-   Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="note"
-
-NOTE-START
-HP 9000 series 200 or 300 (-machine=hp9000s300)
-
-  These machines are 68000-series CPUs running HP-UX
-  (a derivative of sysV with some BSD features) or BSD 4.3 ported by Utah.
-
-  If you're running HP-UX, specify `-opsystem=hpux'.
-  If you're running BSD, specify `-opsystem=bsd4-3'.
-NOTE-END */
-
-/* I don't understand why we have to do this at all!  -JimB */
-
-/* Define NOMULTIPLEJOBS on versions of HPUX before 6.5.  */
-
-/* #define NOMULTIPLEJOBS */
-
-/* Define this symbol if you are running a version of HP-UX
-   which predates version 6.01 */
-
-/* #define HPUX_5 */
-
-/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
-   is the most significant byte.  */
-
-#define WORDS_BIG_ENDIAN
-
-/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
- * group of arguments and treat it as an array of the arguments.  */
-
-/* #define NO_ARG_ARRAY */
-
-/* Define WORD_MACHINE if addresses and such have
- * to be corrected before they can be used as byte counts.  */
-
-/* #define WORD_MACHINE */
-
-/* Now define a symbol for the cpu type, if your compiler
-   does not define it automatically.  */
-
-#ifndef hp9000s300
-#define hp9000s300
-#endif
-
-/* Use type int rather than a union, to represent Lisp_Object */
-/* This is desirable for most machines.  */
-
-#define NO_UNION_TYPE
-
-/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
-   the 24-bit bit field into an int.  In other words, if bit fields
-   are always unsigned.
-
-   If you use NO_UNION_TYPE, this flag does not matter.  */
-
-#define EXPLICIT_SIGN_EXTEND
-
-/* Define CANNOT_DUMP on machines where unexec does not work.
-   Then the function dump-emacs will not be defined
-   and temacs will do (load "loadup") automatically unless told otherwise.  */
-
-/* #define CANNOT_DUMP */
-
-/* Define VIRT_ADDR_VARIES if the virtual addresses of
-   pure and impure space as loaded can vary, and even their
-   relative order cannot be relied on.
-
-   Otherwise Emacs assumes that text space precedes data space,
-   numerically.  */
-
-/* #define VIRT_ADDR_VARIES */
-
-/* For University of Utah 4.3bsd implementation on HP300s.
-   The #ifndef __GNUC__ definitions are required for the "standard" cc,
-   a very old, brain-dead version of PCC. */
-
-#ifdef BSD4_3
-
-/* Tell crt0.c that this is an ordinary 68020.  */
-#undef hp9000s300
-#define m68000
-
-#define CRT0_DUMMIES		bogus_a6,
-
-#ifndef __GNUC__
-#define LIBS_DEBUG		/* don't have -lg that works */
-#define C_DEBUG_SWITCH		/* don't support -g */
-#endif
-
-#undef LOAD_AVE_TYPE
-#undef LOAD_AVE_CVT
-#define LOAD_AVE_TYPE long
-#define LOAD_AVE_CVT(x) ((int) (((double) (x)) / 2048.0 * 100.0))
-
-#endif /* BSD4_3 */
-
-#ifndef BSD4_3
-/* The following definitions are for HPUX only.  */
-
-/* The symbol in the kernel where the load average is found
-   is named _avenrun on this machine.  */
-
-#define LDAV_SYMBOL "_avenrun"
-
-/* Data type of load average, as read out of kmem.  */
-
-#define LOAD_AVE_TYPE double
-
-/* Convert that into an integer that is 100 for a load average of 1.0  */
-
-#define LOAD_AVE_CVT(x) ((int) ((x) * 100.0))
-
-/* This library is needed with -g, on the 200/300 only.  */
-
-#if !defined(__GNUC__) || defined(__HPUX_ASM__)
-#define LIBS_DEBUG /usr/lib/end.o
-#endif
-
-/* Need a TEXT_START.  On the HP9000/s300 that is 0.  */
-#ifdef __GNUC__
-#define TEXT_START   0
-#endif
-
-/* The symbol FIONREAD is defined, but the feature does not work
-   on the 200/300.  */
-
-#define BROKEN_FIONREAD
-
-/* In older versions of hpux, for unknown reasons, S_IFLNK is defined
-   even though symbolic links do not exist.
-   Make sure our conditionals based on S_IFLNK are not confused.
-
-   Here we assume that stat.h is included before config.h
-   so that we can override it here.
-
-   Version 6 of HP-UX has symbolic links.  */
-
-#ifdef HPUX_5
-#undef S_IFLNK
-#endif
-
-/* Define the BSTRING functions in terms of the sysV functions.
-   Version 6 of HP-UX supplies these in the BSD library,
-   but that library has reported bugs in `signal'.  */
-
-/* #ifdef HPUX_5 */
-#define bcopy(a,b,s)	memcpy (b,a,s)
-#define bzero(a,s)	memset (a,0,s)
-#define bcmp		memcmp
-/* #endif */
-
-/* On USG systems these have different names.
-   Version 6 of HP-UX supplies these in the BSD library,
-   which we currently want to avoid using.  */
-
-/* #ifdef HPUX_5 */
-#define index strchr
-#define rindex strrchr
-/* #endif */
-
-/* Define C_SWITCH_MACHINE to be +X if you want the s200/300
- * Emacs to run on both 68010 and 68020 based hp-ux's.
- *
- * Define OLD_HP_ASSEMBLER if you have an ancient assembler
- *
- * Define HPUX_68010 if you are using the new assembler but
- * compiling for a s200 (upgraded) or s310.  68010 based
- * processor without 68881.
- */
-
-/* These switches increase the size of some internal C compiler tables.
-   They are required for compiling the X11 interface files. */
-
-#ifndef HPUX_5
-#ifndef __GNUC__
-#define C_SWITCH_MACHINE -Wc,-Nd4000,-Ns3000
-#endif
-#endif
-
-/* Define NEED_BSDTTY if you have such. */
-
-#ifndef NOMULTIPLEJOBS
-#define NEED_BSDTTY
-#endif
-
-#endif /* not BSD4_3 */
-
-/* arch-tag: 6e0001a5-ed62-4258-9235-204348f6bdb9
-   (do not change this comment) */
--- a/src/m/ibm370aix.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,51 +0,0 @@
-/* m/ file for IBM 370 running AIX.
-   Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008 Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-#define AIX
-
-/* Include unistd.h, even though we don't define POSIX.  */
-#define NEED_UNISTD_H
-
-/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
-   is the most significant byte.  */
-
-#define WORDS_BIG_ENDIAN
-
-#undef TEXT_START
-#undef SEGMENT_MASK
-#undef DATA_SECTION_ALIGNMENT
-
-#define TEXT_START 0
-#define SEGMENT_MASK 0
-#define DATA_SECTION_ALIGNMENT 0x00001000
-
-#undef LOAD_AVE_CVT
-#undef LOAD_AVE_TYPE
-/* Data type of load average, as read out of kmem.  */
-#define LOAD_AVE_CVT(x) (int)(((double) (x)) * 100.0 / 1.0)
-#define LOAD_AVE_TYPE double
-
-#undef LIBS_MACHINE
-#define LIBS_MACHINE
-
-#undef LD_SWITCH_MACHINE
-#define LD_SWITCH_MACHINE -xa
-
-/* arch-tag: 8605b600-0580-4e49-9ba9-8b4a977f860a
-   (do not change this comment) */
--- a/src/m/ibmrs6000.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/m/ibmrs6000.h	Thu Jun 26 04:24:54 2008 +0000
@@ -107,15 +107,11 @@
 
 /* Here override various assumptions in ymakefile */
 
-#ifdef AIXHFT
-#define OBJECTS_MACHINE hftctl.o
-#endif
-
 #ifndef USG5
 #define C_SWITCH_MACHINE -D_BSD
 #endif
 
-#ifdef AIX3_2
+#ifdef AIX
 /* -lpthreads seems to be necessary for Xlib in X11R6, and should be harmless
    on older versions of X where it happens to exist.  */
 #ifdef HAVE_LIBPTHREADS
@@ -159,15 +155,15 @@
    because .inp is a better convention to use in make-dist for naming
    random input files.  */
 #ifdef THIS_IS_MAKEFILE /* Don't use this in configure.  */
-#ifdef AIX4
+#ifdef AIX
 #define LD_SWITCH_MACHINE -Wl,-bnodelcsect
-#else /* not AIX4 */
+#else /* not AIX */
 #ifdef HAVE_AIX_SMT_EXP
 #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp,-bI:/usr/lpp/X11/bin/smt.exp
 #else
 #define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp
 #endif
-#endif /* not AIX4 */
+#endif /* not AIX */
 #endif /* THIS_IS_MAKEFILE */
 
 /* Avoid gcc 2.7.x collect2 bug by using /bin/ld instead.  */
--- a/src/m/mips-siemens.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,161 +0,0 @@
-/* m- file for Mips machines.
-   Copyright (C) 1987, 1992, 1993, 1995, 2001, 2002, 2003, 2004, 2005,
-                 2006, 2007, 2008  Free Software Foundation, Inc.
-
-   This file contains some changes for our SVR4 based SINIX-Mips 5.4.
-   I hope this is helpful to port the emacs to our RM?00 series and
-   maybe to the DC/OSx (Mips-based) machines of Pyramid Inc.
-     (Marco.Walther@mch.sni.de)
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="note"
-
-NOTE-START
-Use m-mips4.h for RISCOS version 4; use s-bsd4-3.h with the BSD world.
-Note that the proper m- file for the Decstation is m-pmax.h.
-This is the m- file for SNI RM*00 machines. Use s- sinix5-4.h file!
-With this the file mips-siemens.h is obsolete.
-NOTE-END  */
-
-/* Define BIG_ENDIAN if lowest-numbered byte in a word
-   is the most significant byte.  */
-
-#define BIG_ENDIAN
-
-/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
- * group of arguments and treat it as an array of the arguments.  */
-
-#define NO_ARG_ARRAY
-
-/* Define WORD_MACHINE if addresses and such have
- * to be corrected before they can be used as byte counts.  */
-
-#undef WORD_MACHINE
-
-/* Define how to take a char and sign-extend into an int.
-   On machines where char is signed, this is a no-op.  */
-
-#define SIGN_EXTEND_CHAR(c) ((signed char)(c))
-
-/* Now define a symbol for the cpu type, if your compiler
-   does not define it automatically:
-   Ones defined so far include vax, m68000, ns16000, pyramid,
-   orion, tahoe, APOLLO and many others */
-#ifndef mips
-#	define mips
-#endif
-
-/* Use type int rather than a union, to represent Lisp_Object */
-/* This is desirable for most machines.  */
-
-#define NO_UNION_TYPE
-
-/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
-   the 24-bit bit field into an int.  In other words, if bit fields
-   are always unsigned.
-
-   If you use NO_UNION_TYPE, this flag does not matter.  */
-
-#define EXPLICIT_SIGN_EXTEND
-
-/* Data type of load average, as read out of kmem.  */
-
-#define LOAD_AVE_TYPE long
-
-/* Convert that into an integer that is 100 for a load average of 1.0  */
-
-#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / 256.0)
-
-/* CDC EP/IX 1.4.3 uses /unix */
-
-#undef KERNEL_FILE
-#define KERNEL_FILE "/unix"
-
-/* Define CANNOT_DUMP on machines where unexec does not work.
-   Then the function dump-emacs will not be defined
-   and temacs will do (load "loadup") automatically unless told otherwise.  */
-
-#undef CANNOT_DUMP
-
-/* Define VIRT_ADDR_VARIES if the virtual addresses of
-   pure and impure space as loaded can vary, and even their
-   relative order cannot be relied on.
-
-   Otherwise Emacs assumes that text space precedes data space,
-   numerically.  */
-
-/* #define VIRT_ADDR_VARIES */
-
-/* Define NO_REMAP if memory segmentation makes it not work well
-   to change the boundary between the text section and data section
-   when Emacs is dumped.  If you define this, the preloaded Lisp
-   code will not be sharable; but that's better than failing completely.  */
-
-#define NO_REMAP
-
-/* Describe layout of the address space in an executing process.  */
-/* MARCO ???
-*/
-#define TEXT_START 0x400000
-/*
-#define DATA_START 0x10000000
-#define DATA_SEG_BITS	0x10000000
-*/
-#ifdef UNEXEC
-#undef UNEXEC
-#endif
-#define UNEXEC unexsni.o
-
-#undef ORDINARY_LINK
-
-#undef LIBS_DEBUG
-
-/* Alter some of the options used when linking.  */
-
-#define LIBS_MACHINE -lmld
-#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o
-
-#ifdef LIB_STANDARD
-#undef LIB_STANDARD
-#endif
-#define LIB_STANDARD -lc /usr/ccs/lib/crtn.o
-
-#ifdef __GNUC__
-#define C_DEBUG_SWITCH
-#define LD_SWITCH_MACHINE
-#else
-#define C_DEBUG_SWITCH -DSYSV
-#define C_OPTIMIZE_SWITCH -DSYSV
-#define LD_SWITCH_MACHINE
-#endif
-
-
-/* The standard definitions of these macros would work ok,
-   but these are faster because the constants are short.  */
-
-#define XUINT(a) (((unsigned)(a) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS))
-
-#define XSET(var, type, ptr)						\
-  ((var) =								\
-   ((int)(type) << VALBITS)						\
-   + (((unsigned) (ptr) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS)))
-
-/* arch-tag: a4f5c090-0bd5-48f0-9724-b7d531f9b6c8
-   (do not change this comment) */
--- a/src/m/mips.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/m/mips.h	Thu Jun 26 04:24:54 2008 +0000
@@ -187,7 +187,7 @@
 
 #define HAVE_SYSVIPC
 
-#if defined(emacs) && !defined(INHIBIT_BSD_TIME)
+#if defined(emacs)
 #include <bsd/sys/time.h>
 #endif
 
--- a/src/m/ncr386.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-#include "intel386.h"
-
-#ifndef __GNUC__
-/* Allow emacs to link with "bcopy()" unresolved.  Works around a
-   problem where /usr/lib/libX11.so provides bcopy, but
-   /usr/ccs/lib/libX11.so does not.  */
-#define LD_SWITCH_X_DEFAULT -Wl,-z,nodefs
-#else /* __GNUC__ */
-
-/* Assuming we are using GNU ld, pass a -R option to it
-   so that shared libraries will be found at execution time
-   just as they are found at link time.  */
-#define LD_SWITCH_X_DEFAULT -Xlinker LD_SWITCH_X_SITE_AUX
-
-#endif /* __GNUC__ */
-
-/* arch-tag: 79c76283-7d50-499b-b910-8ef980357758
-   (do not change this comment) */
--- a/src/m/next.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,125 +0,0 @@
-/* Configuration file for the NeXT machine.
-   Copyright (C) 1990, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/* Say this machine is a next if not previously defined */
-
-#ifndef NeXT
-#define NeXT
-#endif
-
-/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
-   is the most significant byte.  */
-
-/* Let the compiler tell us.  */
-#ifdef __BIG_ENDIAN__
-#define WORDS_BIG_ENDIAN
-#endif
-
-/* Define how to take a char and sign-extend into an int.
-   On machines where char is signed, this is a no-op.  */
-
-#define SIGN_EXTEND_CHAR(c) (c)
-
-/* Use type int rather than a union, to represent Lisp_Object */
-
-#define NO_UNION_TYPE
-
-/* XINT must explicitly sign-extend */
-
-#define EXPLICIT_SIGN_EXTEND
-
-/* Data type of load average, as read out of kmem.  */
-
-#define LOAD_AVE_TYPE long
-
-/* Convert that into an integer that is 100 for a load average of 1.0  */
-
-#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
-
-/* Say that the text segment of a.out includes the header;
-   the header actually occupies the first few bytes of the text segment
-   and is counted in hdr.a_text.  */
-
-#define A_TEXT_OFFSET(HDR) sizeof (HDR)
-
-/* Mask for address bits within a memory segment */
-
-#define SEGSIZ 0x20000
-#define SEGMENT_MASK (SEGSIZ - 1)
-
-#define SYSTEM_MALLOC
-
-#define HAVE_UNIX_DOMAIN
-
-#define LIB_X11_LIB -L/usr/lib/X11 -lX11
-
-/* This avoids a problem in Xos.h when using co-Xist 3.01.  */
-#define X_NOT_POSIX
-
-/* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */
-
-#define NO_T_CHARS_DEFINES
-
-/* Use our own unexec routines */
-
-#define UNEXEC unexnext.o
-
-/* We don't have a g library either, so override the -lg LIBS_DEBUG switch */
-
-#define LIBS_DEBUG
-
-/* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */
-
-#define LIB_GCC
-
-#if 0  /* ohl@chico.harvard.edu says to do this.  */
-/* Compile "strict bsd" to avoid warnings from include files */
-
-#define C_SWITCH_MACHINE	-bsd
-#endif
-
-/* Link this program just by running cc.  */
-#define ORDINARY_LINK
-
-/* start_of_text isn't actually used, so make it compile without error.  */
-#define TEXT_START 0
-/* This seems to be right for end_of_text, but it may not be used anyway.  */
-#define TEXT_END get_etext ()
-/* This seems to be right for end_of_data, but it may not be used anyway.  */
-#define DATA_END get_edata ()
-
-/* Defining KERNEL_FILE causes lossage because sys/file.h
-   stupidly gets confused by it.  */
-#undef KERNEL_FILE
-
-#define LD_SWITCH_MACHINE -X -noseglinkedit
-
-#define environ _environ
-
-#if 0 /* This is ok for NeXT system version 3.0 or above.  */
-/* Where to find the kernel, for load average.  */
-#define KERNEL_FILE "/mach"
-#endif
-
-/* This should be true for recent NeXT systems.  At least since 3.2.  */
-#define HAVE_MACH_MACH_H
-
-/* arch-tag: 1155cdcb-1f6c-4208-a2da-22c7473060a1
-   (do not change this comment) */
--- a/src/m/pmax.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,127 +0,0 @@
-/* Machine description file for DEC MIPS machines.
-
-   Copyright (C) 1992, 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-#include "mips.h"
-
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="note"
-
-NOTE-START
-The operating system would be either osf1, ultrix, or NetBSD.
-NOTE-END  */
-
-#ifndef __MIPSEB__
-#undef WORDS_BIG_ENDIAN
-#endif
-#if defined (__NetBSD__)
-#define BROKEN_NOCOMBRELOC
-#else
-#undef LIB_STANDARD
-#undef START_FILES
-#endif
-#undef COFF
-#undef TERMINFO
-#define MAIL_USE_FLOCK
-#define HAVE_UNION_WAIT
-
-
-#ifdef MACH
-#define START_FILES pre-crt0.o /usr/lib/crt0.o
-#else
-#if !defined (__NetBSD__)
-/* This line starts being needed with ultrix 4.0.  */
-/* You must delete it for version 3.1.  */
-#define START_FILES pre-crt0.o /usr/lib/cmplrs/cc/crt0.o
-#endif
-#endif
-
-/* Supposedly the following will overcome a kernel bug.  */
-#undef LD_SWITCH_MACHINE
-#undef DATA_START
-#define DATA_START 0x10000000
-#define DATA_SEG_BITS 0x10000000
-
-#if 0
-/* I don't see any such conflict in Ultrix 4.2, 4.2a, or 4.3.  And
-   the relocating allocator is a real win.  -JimB  */
-
-/* In Ultrix 4.1, XvmsAlloc.o in libX11.a seems to insist
-   on defining malloc itself.  This should avoid conflicting with it.  */
-#define SYSTEM_MALLOC
-#endif
-
-/* Override what mips.h says about this.  */
-#if !defined (__NetBSD__)
-#undef LINKER
-#endif
-
-#ifdef ultrix
-/* Ultrix 4.2 (perhaps also 4.1) implements O_NONBLOCK
-   but it doesn't work right;
-   and it causes hanging in read_process_output.  */
-#define BROKEN_O_NONBLOCK
-#endif
-
-#ifndef __NetBSD__
-/* mcc@timessqr.gc.cuny.edu says this makes Emacs work with DECnet.  */
-#ifdef HAVE_LIBDNET
-#define LIBS_MACHINE -ldnet
-#endif
-
-/* mcc@timessqr.gc.cuny.edu says it is /vmunix on Ultrix 4.2a.  */
-#undef KERNEL_FILE
-#define KERNEL_FILE "/vmunix"
-#endif
-
-#ifdef ultrix
-/* Jim Wilson writes:
-   [...] The X11 include files that Dec distributes with Ultrix
-   are bogus.
-
-   When __STDC__ is defined (which is true with gcc), the X11 include files
-   try to define prototypes.  The prototypes however use types which haven't
-   been defined yet, and thus we get syntax/parse errors.
-
-   You can not fix this by changing the include files, because the prototypes
-   create circular dependencies, in particular Xutil.h depends on types defined
-   in Xlib.h, and Xlib.h depends on types defined in Xutil.h.  So, no matter
-   which order you try to include them in, it will still fail.
-
-   Compiling with -DNeedFunctionPrototypes=0 will solve the problem by
-   directly inhibiting the bad prototypes.  This could perhaps just be put in
-   an a Ultrix configuration file.
-
-   Using the MIT X11 distribution instead of the one provided by Dec will
-   also solve the problem, but I doubt you can convince everyone to do this. */
-/* Addendum: the MIT X11 distribution neglects to define certain symbols
-   when NeedFunctionPrototypes is 0, but still tries to use them when
-   NeedVarargsPrototypes is 1 (which is its default value).  So if we're
-   going to disable non-variadic prototypes, we also need to disable
-   variadic prototypes.  --kwzh@gnu.ai.mit.edu */
-#define C_SWITCH_X_MACHINE -DNeedFunctionPrototypes=0 -DNeedVarargsPrototypes=0
-#endif
-
-/* Enable a fix in process.c.  */
-#define SET_CHILD_PTY_PGRP
-
-/* arch-tag: 45d5070e-d2b7-479f-b336-3fd497c36e15
-   (do not change this comment) */
--- a/src/m/powerpcle.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,61 +0,0 @@
-/* machine description file for PowerPC.
-   Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="Solaris2.5.1 Windows/NT AIX 4.1.2"
-*/
-
-/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
-   is the most significant byte.  */
-
-#undef WORDS_BIG_ENDIAN
-
-/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
- * group of arguments and treat it as an array of the arguments.  */
-
-#define NO_ARG_ARRAY
-
-/* Say this machine is a PowerPC Refernce Platform */
-
-#ifndef prep
-#define prep
-#endif
-
-/* Use type int rather than a union, to represent Lisp_Object */
-
-#define NO_UNION_TYPE
-
-/* XINT must explicitly sign-extend */
-
-#define EXPLICIT_SIGN_EXTEND
-
-/* Data type of load average, as read out of kmem.  */
-
-#define LOAD_AVE_TYPE long
-
-/* Convert that into an integer that is 100 for a load average of 1.0  */
-
-#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
-
-/* Control a conditional in unexelf.c.  */
-#define SOLARIS_POWERPC
-
-/* arch-tag: dc2c3cb6-4683-45ae-961f-0a4f2bda3c61
-   (do not change this comment) */
--- a/src/m/tandem-s2.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-/* machine description file for the Tandem Integrity S2.  */
-
-#include "mips.h"
-
-/* The following line tells the configuration script what sort of
-   operating system this machine is likely to run.
-   USUAL-OPSYS="usg5-3"  */
-
-/* This overrides some of the usual support for the mips and system V.3.  */
-
-/* The operating system apparently defines TIOCGETC
-   but it doesn't work.  */
-#undef BROKEN_TIOCGETC
-
-/* rs@ai.mit.edu said this was necessary for it to work.  However, some
-   user of this machine ought to try to get subprocesses to work.  */
-#undef subprocesses
-
-/* Correct some library file names.  */
-#define START_FILES pre-crt0.o /usr/lib/crt1.o1.31
-#define LIB_STANDARD -lbsd -lc /usr/lib/crtn.o1.31
-
-/* arch-tag: ae34a1a6-6408-4b23-a6d3-ce4e8f124916
-   (do not change this comment) */
--- a/src/m/vax.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/m/vax.h	Thu Jun 26 04:24:54 2008 +0000
@@ -100,12 +100,6 @@
 #ifdef USG
 #define LIB_STANDARD -lPW -lc
 
-/* There is some bug in unexec in for usg 5.2 on a vax
-   which nobody who runs such a system has yet tracked down. */
-#ifndef USG5_0
-#define NO_REMAP
-#endif /* USG 5_0 */
-
 #define TEXT_START 0
 #endif /* USG */
 
--- a/src/mem-limits.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/mem-limits.h	Thu Jun 26 04:24:54 2008 +0000
@@ -45,10 +45,6 @@
 # endif
 #endif
 
-#ifdef __bsdi__
-#define BSD4_2
-#endif
-
 #ifdef CYGWIN
 #define BSD4_2
 #endif
--- a/src/print.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/print.c	Thu Jun 26 04:24:54 2008 +0000
@@ -45,16 +45,6 @@
 
 Lisp_Object Vfloat_output_format, Qfloat_output_format;
 
-/* Work around a problem that happens because math.h on hpux 7
-   defines two static variables--which, in Emacs, are not really static,
-   because `static' is defined as nothing.  The problem is that they are
-   defined both here and in lread.c.
-   These macros prevent the name conflict.  */
-#if defined (HPUX) && !defined (HPUX8)
-#define _MAXLDBL print_maxldbl
-#define _NMAXLDBL print_nmaxldbl
-#endif
-
 #include <math.h>
 
 #if STDC_HEADERS
--- a/src/process.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/process.c	Thu Jun 26 04:24:54 2008 +0000
@@ -80,10 +80,6 @@
 #endif /* HAVE_PTYS and no O_NDELAY */
 #endif /* BSD_SYSTEM */
 
-#ifdef BROKEN_O_NONBLOCK
-#undef O_NONBLOCK
-#endif /* BROKEN_O_NONBLOCK */
-
 #ifdef NEED_BSDTTY
 #include <bsdtty.h>
 #endif
@@ -2006,9 +2002,6 @@
   sigprocmask (SIG_BLOCK, &blocked, &procmask);
 #else /* !POSIX_SIGNALS */
 #ifdef SIGCHLD
-#ifdef BSD4_1
-  sighold (SIGCHLD);
-#else /* not BSD4_1 */
 #if defined (BSD_SYSTEM) || defined (HPUX)
   sigsetmask (sigmask (SIGCHLD));
 #else /* ordinary USG */
@@ -2017,7 +2010,6 @@
   sigchld = signal (SIGCHLD, create_process_sigchld);
 #endif
 #endif /* ordinary USG */
-#endif /* not BSD4_1 */
 #endif /* SIGCHLD */
 #endif /* !POSIX_SIGNALS */
 
@@ -2134,9 +2126,6 @@
 	   This makes the pty the controlling terminal of the subprocess.  */
 	if (pty_flag)
 	  {
-#ifdef SET_CHILD_PTY_PGRP
-	    int pgrp = getpid ();
-#endif
 
 	    /* I wonder if emacs_close (emacs_open (pty_name, ...))
 	       would work?  */
@@ -2152,10 +2141,6 @@
 		_exit (1);
 	      }
 
-#ifdef SET_CHILD_PTY_PGRP
-	    ioctl (xforkin, TIOCSPGRP, &pgrp);
-	    ioctl (xforkout, TIOCSPGRP, &pgrp);
-#endif
 	  }
 #endif /* not DONT_REOPEN_PTY */
 
@@ -2181,9 +2166,6 @@
 	sigprocmask (SIG_SETMASK, &procmask, 0);
 #else /* !POSIX_SIGNALS */
 #ifdef SIGCHLD
-#ifdef BSD4_1
-	sigrelse (SIGCHLD);
-#else /* not BSD4_1 */
 #if defined (BSD_SYSTEM) || defined (HPUX)
 	sigsetmask (SIGEMPTYMASK);
 #else /* ordinary USG */
@@ -2191,7 +2173,6 @@
 	signal (SIGCHLD, sigchld);
 #endif
 #endif /* ordinary USG */
-#endif /* not BSD4_1 */
 #endif /* SIGCHLD */
 #endif /* !POSIX_SIGNALS */
 
@@ -2273,9 +2254,6 @@
   sigprocmask (SIG_SETMASK, &procmask, 0);
 #else /* !POSIX_SIGNALS */
 #ifdef SIGCHLD
-#ifdef BSD4_1
-  sigrelse (SIGCHLD);
-#else /* not BSD4_1 */
 #if defined (BSD_SYSTEM) || defined (HPUX)
   sigsetmask (SIGEMPTYMASK);
 #else /* ordinary USG */
@@ -2287,7 +2265,6 @@
     kill (getpid (), SIGCHLD);
 #endif
 #endif /* ordinary USG */
-#endif /* not BSD4_1 */
 #endif /* SIGCHLD */
 #endif /* !POSIX_SIGNALS */
 
@@ -2700,19 +2677,6 @@
 }
 
 
-/* A version of request_sigio suitable for a record_unwind_protect.  */
-
-#ifdef __ultrix__
-static Lisp_Object
-unwind_request_sigio (dummy)
-     Lisp_Object dummy;
-{
-  if (interrupt_input)
-    request_sigio ();
-  return Qnil;
-}
-#endif
-
 #ifdef HAVE_SERIAL
 DEFUN ("serial-process-configure",
        Fserial_process_configure,
@@ -3502,28 +3466,6 @@
 
  open_socket:
 
-#ifdef __ultrix__
-  /* Previously this was compiled unconditionally, but that seems
-     unnecessary on modern systems, and `unrequest_sigio' was a noop
-     under X anyway. --lorentey */
-  /* Kernel bugs (on Ultrix at least) cause lossage (not just EINTR)
-     when connect is interrupted.  So let's not let it get interrupted.
-     Note we do not turn off polling, because polling is only used
-     when not interrupt_input, and thus not normally used on the systems
-     which have this bug.  On systems which use polling, there's no way
-     to quit if polling is turned off.  */
-  if (interrupt_input
-      && !is_server && socktype == SOCK_STREAM)
-    {
-      /* Comment from KFS: The original open-network-stream code
-	 didn't unwind protect this, but it seems like the proper
-	 thing to do.  In any case, I don't see how it could harm to
-	 do this -- and it makes cleanup (using unbind_to) easier.  */
-      record_unwind_protect (unwind_request_sigio, Qnil);
-      unrequest_sigio ();
-    }
-#endif
-
   /* Do this in case we never enter the for-loop below.  */
   count1 = SPECPDL_INDEX ();
   s = -1;
@@ -4651,16 +4593,6 @@
       EMACS_SET_SECS_USECS (timeout, time_limit, microsecs);
       EMACS_ADD_TIME (end_time, end_time, timeout);
     }
-#ifdef POLL_INTERRUPTED_SYS_CALL
-  /* AlainF 5-Jul-1996
-     HP-UX 10.10 seem to have problems with signals coming in
-     Causes "poll: interrupted system call" messages when Emacs is run
-     in an X window
-     Turn off periodic alarms (in case they are in use),
-     and then turn off any other atimers.  */
-  stop_polling ();
-  turn_on_atimers (0);
-#endif /* POLL_INTERRUPTED_SYS_CALL */
 
   while (1)
     {
@@ -4975,15 +4907,6 @@
 	{
 	  if (xerrno == EINTR)
 	    no_avail = 1;
-#ifdef ultrix
-	  /* Ultrix select seems to return ENOMEM when it is
-	     interrupted.  Treat it just like EINTR.  Bleah.  Note
-	     that we want to test for the "ultrix" CPP symbol, not
-	     "__ultrix__"; the latter is only defined under GCC, but
-	     not by DEC's bundled CC.  -JimB  */
-	  else if (xerrno == ENOMEM)
-	    no_avail = 1;
-#endif
 	  else if (xerrno == EBADF)
 	    {
 #ifdef AIX
@@ -5295,14 +5218,6 @@
       clear_input_pending ();
       QUIT;
     }
-#ifdef POLL_INTERRUPTED_SYS_CALL
-  /* AlainF 5-Jul-1996
-     HP-UX 10.10 seems to have problems with signals coming in
-     Causes "poll: interrupted system call" messages when Emacs is run
-     in an X window
-     Turn periodic alarms back on */
-  start_polling ();
-#endif /* POLL_INTERRUPTED_SYS_CALL */
 
   return got_some_input;
 }
@@ -5712,10 +5627,6 @@
 send_process_trap ()
 {
   SIGNAL_THREAD_CHECK (SIGPIPE);
-#ifdef BSD4_1
-  sigrelse (SIGPIPE);
-  sigrelse (SIGALRM);
-#endif /* BSD4_1 */
   sigunblock (sigmask (SIGPIPE));
   longjmp (send_process_frame, 1);
 }
@@ -6784,11 +6695,6 @@
 
   SIGNAL_THREAD_CHECK (signo);
 
-#ifdef BSD4_1
-  extern int sigheld;
-  sigheld |= sigbit (SIGCHLD);
-#endif
-
   while (1)
     {
       pid_t pid;
@@ -6817,10 +6723,6 @@
 #if defined (USG) && !defined (POSIX_SIGNALS)
 	  signal (signo, sigchld_handler);   /* WARNING - must come after wait3() */
 #endif
-#ifdef  BSD4_1
-	  sigheld &= ~sigbit (SIGCHLD);
-	  sigrelse (SIGCHLD);
-#endif
 	  errno = old_errno;
 	  return;
 	}
--- a/src/s/386bsd.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,27 +0,0 @@
-/* s/ file for 386bsd system.  */
-
-/* Get most of the stuff from bsd4.3 */
-#include "bsd4-3.h"
-
-#undef LIB_STANDARD
-#define LIB_STANDARD -lc $(GNULIB_VAR)
-
-/* The following should be set to /netbsd if you are running netbsd > 0.8
-   Or just link /netbsd -> /386bsd  */
-#undef KERNEL_FILE
-#define KERNEL_FILE "/386bsd"
-
-#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
-
-/* Need to use GNU make, as system make has problems */
-#define MAKE_COMMAND gmake
-#define LIBS_DEBUG
-
-/* For mem-limits.h.  */
-#define BSD4_2
-
-/* This affects a declaration in xrdb.c.  */
-#define DECLARE_GETPWUID_WITH_UID_T
-
-/* arch-tag: 8a114892-0863-4285-a4cb-3d66ba2d8e7b
-   (do not change this comment) */
--- a/src/s/aix3-1.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,210 +0,0 @@
-/* Definitions file for GNU Emacs running on IBM AIX version 3.1
-   Copyright (C) 1985, 1986, 1990, 1999, 2001, 2002, 2003, 2004,
-                 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#define USG				/* System III, System V, etc */
-#define USG5
-
-/*      Specify IBM AIX version of system */
-
-#ifndef AIX
-#define AIX
-#endif
-
-/*      turn off c prototypes */
-#ifndef _NO_PROTO
-#define _NO_PROTO
-#endif
-
-/*      This symbol should be defined on AIX Version 3  ??????? */
-#ifndef _AIX
-#define _AIX
-#endif
-
-/*      Specify "_BSD" to invoke Berkeley compatibility in header files */
-/*#ifndef _BSD
-#define _BSD
-#endif
-*/
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "aix"
-
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-/* #define NOMULTIPLEJOBS */
-
-/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
-
-/* #define INTERRUPT_INPUT */
-
-/* In AIX, you allocate a pty by opening /dev/ptc to get the master side.
-   To get the name of the slave side, you just ttyname() the master side.  */
-
-#define PTY_ITERATION for (c = 0; !c ; c++)
-#define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptc");
-#define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ttyname (fd));
-
-/*
- *	Define HAVE_TERMIO if the system provides sysV-style ioctls
- *	for terminal control.
- */
-
-#define HAVE_TERMIOS
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-#define HAVE_PTYS
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-#define HAVE_SOCKETS
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-/* #define NONSYSTEM_DIR_LIBRARY */
-
-/*
- * 	Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
- *	library functions.  Almost, but not quite the same as
- *	the 4.2 functions
- */
-
-#define SYSV_SYSTEM_DIR
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-#define BSTRING
-
-/* subprocesses should be defined if you want to
- have code for asynchronous subprocesses
- (as used in M-x compile and M-x shell).
- This is supposed to work now on system V release 2.  */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-/* #define COFF */
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-/* #define CLASH_DETECTION */
-
-/* The file containing the kernel's symbol table is called /unix.  */
-
-#define KERNEL_FILE "/unix"
-
-/* The symbol in the kernel where the load average is found
-   is named avenrun.  */
-
-#define LDAV_SYMBOL "avenrun"
-
-/* Special itemss needed to make Emacs run on this system.  */
-
-/*
- *	Make the sigsetmask function go away.  Don't know what the
- *	ramifications of this are, but doesn't seem possible to
- *	emulate it properly anyway at this point.
- */
-
-#define sigsetmask(mask)	/* Null expansion */
-
-/* setjmp and longjmp can safely replace _setjmp and _longjmp,
-   but they will run slower.  */
-
-#define _setjmp setjmp
-#define _longjmp longjmp
-
-/* On USG systems these have different names */
-
-#define index strchr
-#define rindex strrchr
-
-/* USG systems tend to put everything declared static
-   into the initialized data area, which becomes pure after dumping Emacs.
-   Foil this.  Emacs carefully avoids static vars inside functions.  */
-
-#undef static
-
-/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
-
-/* #define ADDR_CORRECT(x) (x) */
-
-#ifndef __GNUC__
-#define LINKER cc
-#endif
-
-/* Prevent -lg from being used for debugging.  Not needed.  */
-
-#define LIBS_DEBUG
-
-/* No need to specify -lc when linking.  */
-
-#define LIB_STANDARD
-
-/* Use terminfo instead of termcap.  */
-
-#define TERMINFO
-
-/* The following definition seems to be needed in AIX version 3.1.6.8.
-   It may not have been needed in certain earlier versions.  */
-#define HAVE_TCATTR
-
-#define SYSTEM_MALLOC
-
-/* Include unistd.h, even though we don't define POSIX.  */
-#define NEED_UNISTD_H
-
-/* AIX doesn't define this.  */
-#define unix 1
-
-/* AIX 3.1 has the HFT features.  */
-#define AIXHFT
-
-/* For unexaix.c. */
-#define ALIGN_DATA_RELOC
-
-/* arch-tag: bfff798c-542d-4290-91f2-267394c85b7b
-   (do not change this comment) */
--- a/src/s/aix3-2-5.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-/* s- file for building Emacs on AIX 3.2.5.  */
-
-#include "aix3-2.h"
-
-/* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g"
-   because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because
-   "cc -g" crashes. Go figure.  --floppy@merlin.mit.edu */
-/* The above isn't generally true.  If it occurs with some compiler
-   release, seek a fixed version, be it XLC or GCC.  The XLC version
-   isn't tied to the OS version on AIX any more than elsewhere.  XLC
-   (the IBM compiler) can use -g with -O.  (-O3 is also a possibility
-   for the optimization level.)  -- fx, after David Edelsohn.  */
-#undef C_DEBUG_SWITCH
-#define C_DEBUG_SWITCH -g -O
-
-/* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct.  */
-#define SIGNALS_VIA_CHARACTERS
-#define MAIL_USE_LOCKF
-#define CLASH_DETECTION
-
-/* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct.  */
-#define POSIX_SIGNALS
-#undef sigmask
-#undef sigsetmask
-#undef _setjmp
-#undef _longjmp
-
-/* Bill Woodward <wpwood@austin.ibm.com> says:
-   libIM *must* precede libXm, to avoid getting aixLoadIM error messages.  */
-#define LIB_MOTIF -lIM -lXm
-
-/* arch-tag: 692b3acb-5383-4cfb-93f6-378b5c48c75e
-   (do not change this comment) */
--- a/src/s/aix3-2.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,73 +0,0 @@
-/* s- file for building Emacs on AIX 3.2.
-
-   Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-#include "aix3-1.h"
-
-#define AIX3_2
-
-/* No need to define this--the header files indicate X11R4,
-   and that's supposedly what 3.2 will come with.  */
-#undef SPECIFY_X11R4
-
-#ifndef __GNUC__
-/* Some programs in src produce warnings saying certain subprograms
-   are to comples and need a MAXMEM value greater than 2000 for
-   additional optimization.  --nils@exp-math.uni-essen.de */
-#define C_SWITCH_SYSTEM -ma -qmaxmem=4000
-#endif
-
-/* Adrian Colley <Adrian.Colley@three.serpentine.com> says this is needed.  */
-#ifndef NOT_C_CODE
-#ifndef AIX4
- #pragma alloca
-#endif
-#endif
-
-#undef rindex
-#undef index
-
-/* With this defined, a gcc-compiled Emacs crashed in realloc under AIX
-   3.2, and a cc-compiled Emacs works with this undefined.
-   --karl@cs.umb.edu.  */
-#undef SYSTEM_MALLOC
-
-/* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g"
-   because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because
-   "cc -g" crashes. Go figure.  --floppy@merlin.mit.edu */
-/* See comments about this in aix3-2-5.h.  -- fx */
-#ifndef __GNUC__
-#define C_DEBUG_SWITCH -g -O
-#endif
-
-/* The character-composition stuff is broken in X11R5.
-   Even with XIMStatusNothing aliased to XIMStatusNone,
-   tranle@intellicorp.com (Minh Tran-Le) reports that enabling
-   the internationalization code causes the modifier keys C, M and Shift
-   to beep after a mouse click.  */
-#define X11R5_INHIBIT_I18N
-
-/* string.h defines rindex as a macro, at least with native cc, so we
-   lose declaring char * rindex without this.
-   It is just a guess which versions of AIX need this definition.  */
-#undef HAVE_STRING_H
-
-/* arch-tag: 0935754d-67e1-4697-978a-3e9976da05c3
-   (do not change this comment) */
--- a/src/s/aix4-1.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,65 +0,0 @@
-/*
-Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
-  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-#define AIX4_1
-
-#include "aix4.h"
-
-/* olson@mcs.anl.gov says -li18n is needed by -lXm.  */
-#undef LIB_MOTIF
-#define LIB_MOTIF -lXm -li18n
-
-#ifdef __GNUC__
-#undef _NO_PROTO
-#endif
-
-/* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g"
-   because "cc -O" crashes.  Under AIX 3.2.5, "cc -O" is required because
-   "cc -g" crashes. Go figure.  --floppy@merlin.mit.edu.
-   4.1 seems to need -g again. -- larry@vaquita.mitra.com.  */
-/* David Edelsohn <dje@watson.ibm.com> says that this actually depends
-   on the version of XLC, which can't be predicted from the system version.
-   What a mess!  */
-/* No more of a mess than other systems, GNU+GCC included.  See
-   comments in aix3-2-5.h.  -- fx */
-#if 0
-#ifndef __GNUC__
-#undef C_DEBUG_SWITCH
-#undef C_OPTIMIZE_SWITCH
-#define C_DEBUG_SWITCH -g
-#endif
-#endif
-
-/* The X internationalization stuff is still broken in AIX 4.1, so
-   don't #undef X11R5_INHIBIT_I18N
-   It still causes shift, ctrl, and alt to resend the last character,
-   if it was a control character like tab, enter, backspace, or ESC.
-   Bill_Mann @ PraxisInt.com   */
-/* #undef X11R5_INHIBIT_I18N */
-
-#ifndef HAVE_LIBXMU
-#define LIBXMU
-
-/* Unfortunately without libXmu we cannot support EditRes.  */
-#define NO_EDITRES
-#endif
-
-/* arch-tag: 72d598e1-bc3e-48e0-bfd2-693917c3738e
-   (do not change this comment) */
--- a/src/s/aix4-2.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/aix4-2.h	Thu Jun 26 04:24:54 2008 +0000
@@ -1,6 +1,194 @@
-#include "aix4-1.h"
+/*
+Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+  Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
+
+/*
+ *	Define symbols to identify the version of Unix this is.
+ *	Define all the symbols that apply correctly.
+ */
+
+#define USG				/* System III, System V, etc */
+#define USG5
+
+/*      This symbol should be defined on AIX Version 3  ??????? */
+#ifndef _AIX
+#define _AIX
+#endif
+
+/* SYSTEM_TYPE should indicate the kind of system you are using.
+ It sets the Lisp variable system-type.  */
+
+#define SYSTEM_TYPE "aix"
+
+/* In AIX, you allocate a pty by opening /dev/ptc to get the master side.
+   To get the name of the slave side, you just ttyname() the master side.  */
+
+#define PTY_ITERATION for (c = 0; !c ; c++)
+#define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptc");
+#define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ttyname (fd));
+
+/*
+ *	Define HAVE_TERMIO if the system provides sysV-style ioctls
+ *	for terminal control.
+ */
+
+#define HAVE_TERMIOS
+
+/*
+ *	Define HAVE_PTYS if the system supports pty devices.
+ */
+
+#define HAVE_PTYS
+
+/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
+
+#define HAVE_SOCKETS
+
+/*
+ *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
+ *      The 4.2 opendir, etc., library functions.
+ */
+
+/* #define NONSYSTEM_DIR_LIBRARY */
+
+/*
+ * 	Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
+ *	library functions.  Almost, but not quite the same as
+ *	the 4.2 functions
+ */
+
+#define SYSV_SYSTEM_DIR
+
+/* Define this symbol if your system has the functions bcopy, etc. */
+
+#define BSTRING
+
+/* subprocesses should be defined if you want to
+ have code for asynchronous subprocesses
+ (as used in M-x compile and M-x shell).
+ This is supposed to work now on system V release 2.  */
+
+#define subprocesses
+
+/* The file containing the kernel's symbol table is called /unix.  */
+
+#define KERNEL_FILE "/unix"
+
+/* The symbol in the kernel where the load average is found
+   is named avenrun.  */
 
-#undef ALIGN_DATA_RELOC
+#define LDAV_SYMBOL "avenrun"
+
+/* Special itemss needed to make Emacs run on this system.  */
+
+
+
+/* USG systems tend to put everything declared static
+   into the initialized data area, which becomes pure after dumping Emacs.
+   Foil this.  Emacs carefully avoids static vars inside functions.  */
+
+#undef static
+
+/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
+
+/* #define ADDR_CORRECT(x) (x) */
+
+#ifndef __GNUC__
+#define LINKER cc
+#endif
+
+/* Prevent -lg from being used for debugging.  Not needed.  */
+
+#define LIBS_DEBUG
+
+/* No need to specify -lc when linking.  */
+
+#define LIB_STANDARD
+
+/* Use terminfo instead of termcap.  */
+
+#define TERMINFO
+
+/* The following definition seems to be needed in AIX version 3.1.6.8.
+   It may not have been needed in certain earlier versions.  */
+#define HAVE_TCATTR
+
+/* Include unistd.h, even though we don't define POSIX.  */
+#define NEED_UNISTD_H
+
+/* AIX doesn't define this.  */
+#define unix 1
+
+#ifndef __GNUC__
+/* Some programs in src produce warnings saying certain subprograms
+   are to comples and need a MAXMEM value greater than 2000 for
+   additional optimization.  --nils@exp-math.uni-essen.de */
+#define C_SWITCH_SYSTEM -ma -qmaxmem=4000
+#endif
+
+/* The character-composition stuff is broken in X11R5.
+   Even with XIMStatusNothing aliased to XIMStatusNone,
+   tranle@intellicorp.com (Minh Tran-Le) reports that enabling
+   the internationalization code causes the modifier keys C, M and Shift
+   to beep after a mouse click.  */
+#define X11R5_INHIBIT_I18N
+
+/* string.h defines rindex as a macro, at least with native cc, so we
+   lose declaring char * rindex without this.
+   It is just a guess which versions of AIX need this definition.  */
+#undef HAVE_STRING_H
+
+/* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g"
+   because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because
+   "cc -g" crashes. Go figure.  --floppy@merlin.mit.edu */
+/* The above isn't generally true.  If it occurs with some compiler
+   release, seek a fixed version, be it XLC or GCC.  The XLC version
+   isn't tied to the OS version on AIX any more than elsewhere.  XLC
+   (the IBM compiler) can use -g with -O.  (-O3 is also a possibility
+   for the optimization level.)  -- fx, after David Edelsohn.  */
+#define C_DEBUG_SWITCH -g -O
+
+/* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct.  */
+#define SIGNALS_VIA_CHARACTERS
+#define MAIL_USE_LOCKF
+#define CLASH_DETECTION
+
+/* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct.  */
+#define POSIX_SIGNALS
+#undef sigmask
+
+/* Dave Love <d.love@dl.ac.uk> reported this as needed on AIX 4.1.
+   It is just a guess which versions of AIX need this definition.  */
+#define HAVE_WAIT_HEADER
+
+/* Specify the type that the 3rd arg of `accept' points to.
+   It is just a guess which versions of AIX need this definition.  */
+#define SOCKLEN_TYPE int
+
+/* olson@mcs.anl.gov says -li18n is needed by -lXm.  */
+#define LIB_MOTIF -lXm -li18n
+
+#ifndef HAVE_LIBXMU
+#define LIBXMU
+
+/* Unfortunately without libXmu we cannot support EditRes.  */
+#define NO_EDITRES
+#endif
 
 /* On AIX Emacs uses the gmalloc.c malloc implementation.  But given
    the way this system works, libc functions that return malloced
@@ -20,19 +208,5 @@
 */
 #define BROKEN_GET_CURRENT_DIR_NAME 1
 
-/* aix3-1.h defined _NO_PROTO, probably to work around an AIX compiler
-   that did not handle prototypes.  On (at least) AIX 5.2, this causes
-   the proper prototype to be thrown away for lseek64, so compiled
-   Lisp files do not load correctly and compilation fails.
-
-   The AIX compiler should have learned about function prototypes long
-   ago, so we can probably go ahead and undefine _NO_PROTO.  However,
-   if someone can demonstrate that this problem still exists for AIX
-   4, this should be moved into a new file (aix5.h).
-*/
-
-#undef _NO_PROTO
-
-
 /* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562
    (do not change this comment) */
--- a/src/s/aix4.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-#define AIX4
-
-#include "aix3-2-5.h"
-
-/* AIX 4 does not have HFT any more.  */
-#undef AIXHFT
-
-/* Dave Love <d.love@dl.ac.uk> reported this as needed on AIX 4.1.
-   It is just a guess which versions of AIX need this definition.  */
-#define HAVE_WAIT_HEADER
-
-/* Specify the type that the 3rd arg of `accept' points to.
-   It is just a guess which versions of AIX need this definition.  */
-#define SOCKLEN_TYPE int
-
-/* arch-tag: b9471dfc-ccdc-4980-a8a1-80c7627ec6b2
-   (do not change this comment) */
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/s/bsd-common.h	Thu Jun 26 04:24:54 2008 +0000
@@ -0,0 +1,121 @@
+/* Definitions file for GNU Emacs running on bsd 4.3
+   Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, 2005, 2006,
+                 2007, 2008  Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
+
+
+/*
+ *	Define symbols to identify the version of Unix this is.
+ *	Define all the symbols that apply correctly.
+ */
+
+/* We give these symbols the numeric values found in <sys/param.h> to
+   avoid warnings about redefined macros.  */
+#ifndef BSD4_3
+#define BSD4_3 1
+#endif /* BSD4_3 */
+
+#ifndef BSD_SYSTEM
+#define BSD_SYSTEM 43
+#endif /* BSD_SYSTEM */
+
+/* SYSTEM_TYPE should indicate the kind of system you are using.
+ It sets the Lisp variable system-type.  */
+
+#define SYSTEM_TYPE "berkeley-unix"
+
+/* nomultiplejobs should be defined if your system's shell
+ does not have "job control" (the ability to stop a program,
+ run some other program, then continue the first one).  */
+
+/* #define NOMULTIPLEJOBS */
+
+/* Do not use interrupt_input = 1 by default, because in 4.3
+   we can make noninterrupt input work properly.  */
+
+#undef INTERRUPT_INPUT
+
+/* First pty name is /dev/ptyp0.  */
+
+#define FIRST_PTY_LETTER 'p'
+
+/*
+ *	Define HAVE_PTYS if the system supports pty devices.
+ */
+
+#define HAVE_PTYS
+
+/* Define this macro if system defines a type `union wait'.  */
+
+#define HAVE_UNION_WAIT
+
+/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
+
+#define HAVE_SOCKETS
+
+/*
+ *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
+ *      The 4.2 opendir, etc., library functions.
+ */
+
+/* #define NONSYSTEM_DIR_LIBRARY */
+
+/* Define this symbol if your system has the functions bcopy, etc. */
+
+#define BSTRING
+
+/* subprocesses should be defined if you want to
+   have code for asynchronous subprocesses
+   (as used in M-x compile and M-x shell).
+   This is generally OS dependent, and not supported
+   under most USG systems. */
+
+#define subprocesses
+
+/* If your system uses COFF (Common Object File Format) then define the
+   preprocessor symbol "COFF". */
+
+/* #define COFF */
+
+/* define MAIL_USE_FLOCK if the mailer uses flock
+   to interlock access to /usr/spool/mail/$USER.
+   The alternative is that a lock file named
+   /usr/spool/mail/$USER.lock.  */
+
+#define MAIL_USE_FLOCK
+
+/* Define CLASH_DETECTION if you want lock files to be written
+   so that Emacs can tell instantly when you try to modify
+   a file that someone else has modified in his Emacs.  */
+
+#define CLASH_DETECTION
+
+/* The file containing the kernel's symbol table is called /vmunix.  */
+
+#define KERNEL_FILE "/vmunix"
+
+/* The symbol in the kernel where the load average is found
+   is named _avenrun.  */
+
+#define LDAV_SYMBOL "_avenrun"
+
+/* Send signals to subprocesses by "typing" special chars at them.  */
+
+#define SIGNALS_VIA_CHARACTERS
+
+/* arch-tag: 0c367245-bde3-492e-9029-3ff6898beb95
+   (do not change this comment) */
--- a/src/s/bsd386.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,67 +0,0 @@
-/* s/ file for bsd386 system.
-
-   Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-#include "bsd4-3.h"
-
-#ifndef __bsdi__
-#define __bsdi__ 1
-#endif
-
-#define DECLARE_GETPWUID_WITH_UID_T
-
-#define SIGNALS_VIA_CHARACTERS
-
-#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
-#define A_TEXT_OFFSET(x)    (sizeof (struct exec))
-#define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr))
-
-#define LIBS_DEBUG
-#define LIB_X11_LIB -L/usr/X11/lib -lX11
-#define LIBS_SYSTEM -lutil -lkvm -lcompat
-
-#define HAVE_GETLOADAVG 1
-
-#undef BSD_PGRPS
-
-/* System uses OXTABS instead of the expected TAB3.
-   (Copied from netbsd.h.)  */
-#define TABDLY OXTABS
-#define TAB3 OXTABS
-
-#define SYSV_SYSTEM_DIR
-
-#define HAVE_TERMIOS
-#define NO_TERMIO
-
-#define WAITTYPE int
-/* get this since it won't be included if WAITTYPE is defined */
-#ifdef emacs
-#include <sys/wait.h>
-#endif
-#define WRETCODE(w) WEXITSTATUS(w)
-#ifndef WCOREDUMP
-#define WCOREDUMP(w) ((w) & 0200)
-#endif
-
-#define GETPGRP_NO_ARG 1
-
-/* arch-tag: 867e3bb8-e9df-4763-9c82-8f4accb8209e
-   (do not change this comment) */
--- a/src/s/bsd4-1.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,131 +0,0 @@
-/* Definitions file for GNU Emacs running on bsd 4.1.
-   Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#define BSD4_1
-
-#define BSD_SYSTEM
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "berkeley-unix"
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-/* #define NOMULTIPLEJOBS */
-
-/* Default is to set interrupt_input to 1: do input buffering within Emacs */
-
-#define INTERRUPT_INPUT
-
-/* First pty name is /dev/ptyp0.  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-/* #define HAVE_PTYS */
-
-/* Define this macro if system defines a type `union wait'.  */
-
-#define HAVE_UNION_WAIT
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-/* #define HAVE_SOCKETS */
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-#define NONSYSTEM_DIR_LIBRARY
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-/* #define BSTRING */
-
-/* subprocesses should be defined if you want to
-   have code for asynchronous subprocesses
-   (as used in M-x compile and M-x shell).
-   This is generally OS dependent, and not supported
-   under most USG systems. */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-/* #define COFF */
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-#undef CLASH_DETECTION    /* Might work; not tried yet.  */
-
-/* The file containing the kernel's symbol table is called /vmunix.  */
-
-#define KERNEL_FILE "/vmunix"
-
-/* The symbol in the kernel where the load average is found
-   is named _avenrun.  */
-
-#define LDAV_SYMBOL "_avenrun"
-
-/* Special hacks needed to make Emacs run on this system.  */
-
-/* Make the function `signal' act as in 4.2.  */
-
-#define signal sigset
-
-#define _longjmp longjmp
-#define _setjmp setjmp
-
-#define lstat stat
-
-/* Names of flags for open.  */
-#define O_RDONLY 0
-#define O_WRONLY 1
-#define O_RDWR 2
-#define O_EXCL	2000
-#define O_CREAT 1000
-
-/* Special library needed for linking for 4.1.  */
-#define LIBS_SYSTEM -ljobs
-
-/* arch-tag: de56716a-ed9b-4851-a5c5-c882efaf9931
-   (do not change this comment) */
--- a/src/s/bsd4-2.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,122 +0,0 @@
-/* Definitions file for GNU Emacs running on bsd 4.2
-   Copyright (C) 1985, 1986, 1994, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#ifndef BSD4_2
-#define BSD4_2 1
-#endif /* BSD4_2 */
-
-#ifndef BSD_SYSTEM
-#define BSD_SYSTEM 42
-#endif /* BSD_SYSTEM */
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "berkeley-unix"
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-/* #define NOMULTIPLEJOBS */
-
-/* Default is to set interrupt_input to 1: do input buffering within Emacs */
-
-#define INTERRUPT_INPUT
-
-/* First pty name is /dev/ptyp0.  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-#define HAVE_PTYS
-
-/* Define this macro if system defines a type `union wait'.  */
-
-#define HAVE_UNION_WAIT
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-#define HAVE_SOCKETS
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-/* #define NONSYSTEM_DIR_LIBRARY */
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-#define BSTRING
-
-/* subprocesses should be defined if you want to
-   have code for asynchronous subprocesses
-   (as used in M-x compile and M-x shell).
-   This is generally OS dependent, and not supported
-   under most USG systems. */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-/* #define COFF */
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-#define CLASH_DETECTION
-
-/* The file containing the kernel's symbol table is called /vmunix.  */
-
-#define KERNEL_FILE "/vmunix"
-
-/* The symbol in the kernel where the load average is found
-   is named _avenrun.  */
-
-#define LDAV_SYMBOL "_avenrun"
-
-/* Send signals to subprocesses by "typing" special chars at them.  */
-
-#define SIGNALS_VIA_CHARACTERS
-
-/* Process groups work in the traditional BSD manner.  */
-
-#define BSD_PGRPS
-
-/* arch-tag: 38ca640f-549e-4726-a257-71048ab4c480
-   (do not change this comment) */
--- a/src/s/bsd4-3.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,121 +0,0 @@
-/* Definitions file for GNU Emacs running on bsd 4.3
-   Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-/* We give these symbols the numeric values found in <sys/param.h> to
-   avoid warnings about redefined macros.  */
-#ifndef BSD4_3
-#define BSD4_3 1
-#endif /* BSD4_3 */
-
-#ifndef BSD_SYSTEM
-#define BSD_SYSTEM 43
-#endif /* BSD_SYSTEM */
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "berkeley-unix"
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-/* #define NOMULTIPLEJOBS */
-
-/* Do not use interrupt_input = 1 by default, because in 4.3
-   we can make noninterrupt input work properly.  */
-
-#undef INTERRUPT_INPUT
-
-/* First pty name is /dev/ptyp0.  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-#define HAVE_PTYS
-
-/* Define this macro if system defines a type `union wait'.  */
-
-#define HAVE_UNION_WAIT
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-#define HAVE_SOCKETS
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-/* #define NONSYSTEM_DIR_LIBRARY */
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-#define BSTRING
-
-/* subprocesses should be defined if you want to
-   have code for asynchronous subprocesses
-   (as used in M-x compile and M-x shell).
-   This is generally OS dependent, and not supported
-   under most USG systems. */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-/* #define COFF */
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-#define MAIL_USE_FLOCK
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-#define CLASH_DETECTION
-
-/* The file containing the kernel's symbol table is called /vmunix.  */
-
-#define KERNEL_FILE "/vmunix"
-
-/* The symbol in the kernel where the load average is found
-   is named _avenrun.  */
-
-#define LDAV_SYMBOL "_avenrun"
-
-/* Send signals to subprocesses by "typing" special chars at them.  */
-
-#define SIGNALS_VIA_CHARACTERS
-
-/* arch-tag: 0c367245-bde3-492e-9029-3ff6898beb95
-   (do not change this comment) */
--- a/src/s/bsdos2-1.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-/* s/ file for BSDI BSD/OS 2.1 system.  */
-
-#include "bsdos2.h"
-
-#undef LIB_X11_LIB
-#define LIB_X11_LIB -L/usr/X11/lib -lX11 -lipc
-
-/* arch-tag: cf1ada4a-cdbf-452b-a264-ff84dd523e97
-   (do not change this comment) */
--- a/src/s/bsdos2.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-/* s/ file for BSDI BSD/OS 2.0 system.  */
-
-#include "bsd386.h"
-
-#define	TEXT_START	0x1020	/* for QMAGIC */
-#define	START_FILES	pre-crt0.o /usr/lib/crt0.o
-#define	HAVE_TERMIOS
-#define	NO_TERMIO
-
-#undef	KERNEL_FILE
-#define	KERNEL_FILE	"/bsd"
-
-/* arch-tag: 25ce1827-1511-4305-9058-24dd2118b5b4
-   (do not change this comment) */
--- a/src/s/bsdos3.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-/* s/ file for BSDI BSD/OS 3.0 system.  */
-
-#include "bsdos2.h"
-
-#undef	LIBS_SYSTEM
-#define LIBS_SYSTEM -lkvm
-
-/* arch-tag: 726766f3-5a62-48bf-8e21-3b21ec6abe6f
-   (do not change this comment) */
--- a/src/s/bsdos4.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-/* s/ file for BSDI BSD/OS 4.0 system.  */
-
-#include "bsdos3.h"
-
-/* BSD/OS 4.1 and later have ncurses */
-#ifdef	HAVE_LIBNCURSES
-#define	TERMINFO
-#define	LIBS_TERMCAP -lncurses
-#endif	/* HAVE_LIBNCURSES */
-
-/* copied from freebsd.h */
-#ifdef __ELF__
-
-#define LD_SWITCH_SYSTEM
-#undef START_FILES
-#define START_FILES \
-	pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
-#define UNEXEC unexelf.o
-#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
-#undef LIB_GCC
-#define LIB_GCC
-
-#endif /* not __ELF__ */
-
-/* arch-tag: 7659632a-a879-4153-bb8b-3765a1463ca1
-   (do not change this comment) */
--- a/src/s/darwin.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/darwin.h	Thu Jun 26 04:24:54 2008 +0000
@@ -23,12 +23,6 @@
  *	Define all the symbols that apply correctly.
  */
 
-/* #define UNIPLUS */
-/* #define USG5 */
-/* #define USG */
-/* #define HPUX */
-/* #define UMAX */
-/* #define BSD4_1 */
 #define BSD4_2
 /* BSD4_3 and BSD4_4 are already defined in sys/param.h */
 /* #define BSD4_3 */
--- a/src/s/freebsd.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/freebsd.h	Thu Jun 26 04:24:54 2008 +0000
@@ -40,19 +40,8 @@
 #define NO_SHARED_LIBS
 #endif
 
-
-#if 0 /* This much, alone, seemed sufficient as of 19.23.
-	 But it seems better to be independent of netbsd.h.  */
-#include "netbsd.h"
-
-#undef LIB_GCC
-#define LIB_GCC -lgcc
-#undef NEED_ERRNO
-#endif /* 0 */
-
-
-/* Get most of the stuff from bsd4.3 */
-#include "bsd4-3.h"
+/* Get most of the stuff from bsd-common */
+#include "bsd-common.h"
 
 /* For mem-limits.h. */
 #define BSD4_2
@@ -161,7 +150,7 @@
    ioctl TIOCSCTTY.  */
 #define DONT_REOPEN_PTY
 
-/* CLASH_DETECTION is defined in bsd4-3.h.
+/* CLASH_DETECTION is defined in bsd-common.h.
    In FreeBSD 2.1.5 (and other 2.1.x), this results useless symbolic links
    remaining in /tmp or other directories with +t bit.
    To avoid this problem, you could #undef it to use no file lock. */
--- a/src/s/gnu.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/gnu.h	Thu Jun 26 04:24:54 2008 +0000
@@ -18,8 +18,8 @@
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-/* Get most of the stuff from bsd4.3 */
-#include "bsd4-3.h"
+/* Get most of the stuff from bsd-common */
+#include "bsd-common.h"
 
 /* For mem-limits.h.  */
 #define BSD4_2
--- a/src/s/hpux.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,218 +0,0 @@
-/* Definitions file for GNU Emacs running on HPUX release 7.0.
-   Based on AT&T System V.2.
-   Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#define USG				/* System III, System V, etc */
-
-#define USG5
-
-#define HPUX
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "hpux"
-
-/* `nomultiplejobs' should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).
-
- On hpux this depends on the precise kind of machine in use,
- so the m- file defines this symbol if appropriate.  */
-
-/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
-
-/* #define INTERRUPT_INPUT */
-
-/* Letter to use in finding device name of first pty,
-  if system supports pty's.  'p' means it is /dev/ptym/ptyp0  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_TERMIO if the system provides sysV-style ioctls
- *	for terminal control.
- */
-
-#define HAVE_TERMIO
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-#define HAVE_PTYS
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-#define HAVE_SOCKETS
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-/* #define NONSYSTEM_DIR_LIBRARY */
-
-/* Define this symbol if your system has the functions bcopy, etc.
- * s800 and later versions of s300 (s200) kernels have equivalents
- * of the BSTRING functions of BSD.  If your s200 kernel doesn't have
- * em comment out this section.
- */
-
-#define BSTRING
-
-/* subprocesses should be defined if you want to
- have code for asynchronous subprocesses
- (as used in M-x compile and M-x shell).
- This is generally OS dependent, and not supported
- under most USG systems.  */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-/* #define COFF */
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Say we have the SYSV style of interprocess communication.  */
-
-#define HAVE_SYSVIPC
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-#define CLASH_DETECTION
-
-/* The file containing the kernel's symbol table is called /hp-ux.  */
-
-#define KERNEL_FILE "/hp-ux"
-
-/* The symbol in the kernel where the load average is found
-   depends on the cpu type, so we let the m- files define LDAV_SYMBOL.  */
-
-/* Special hacks needed to make Emacs run on this system.  */
-
-/*
- *	Make the sigsetmask function go away.  Don't know what the
- *	ramifications of this are, but doesn't seem possible to
- *	emulate it properly anyway at this point.
- */
-
-/* HPUX has sigsetmask */
-/* #define sigsetmask(mask)	/ * Null expansion * / */
-
-/* setjmp and longjmp can safely replace _setjmp and _longjmp,
-   but they will run slower.  */
-
-/* HP-UX has _setjmp and _longjmp */
-/*
-#define _setjmp setjmp
-#define _longjmp longjmp
-*/
-
-/* Use the system provided termcap(3) library */
-#define TERMINFO
-
-/* The 48-bit versions are more winning for Emacs;
-   the ordinary ones don't give even 32 bits.  */
-#define random lrand48
-#define srandom srand48
-
-/* In hpux, the symbol SIGIO is defined, but the feature
-   doesn't work in the way Emacs needs it to.  */
-
-#define BROKEN_SIGIO
-
-/* USG systems tend to put everything declared static
-   into the initialized data area, which becomes pure after dumping Emacs.
-   Foil this.  Emacs carefully avoids static vars inside functions.
-   http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg00368.html
-   As of at least HPUX 11.11 (2000), it seems this workaround is no
-   longer needed.  Try uncommenting the following if you have problems
-   on older versions.  */
-
-/* This is unnecessary in HPUX versions 10.20, 11.0, 11.11, 11.23.  */
-
-/* #define static  */
-
-/* Define extra libraries to load.
-   This should have -lBSD, but that library is said to make
-   `signal' fail to work.  */
-
-#ifdef HPUX_NET
-#define LIBS_SYSTEM -ln
-#else
-#define LIBS_SYSTEM
-#endif
-
-/* Some additional system facilities exist.  */
-
-#define HAVE_PERROR  /* Delete this line for version 6.  */
-
-/* The following maps shared exec file to demand loaded exec.
-   Don't do this as demand loaded exec is broken in hpux.  */
-
-#if 0
-
-/* Adjust a header field for the executable file about to be dumped.  */
-
-#define ADJUST_EXEC_HEADER   \
-  hdr.a_magic = ((ohdr.a_magic.file_type == OLDMAGIC.file_type) ?  \
-		 NEWMAGIC : ohdr.a_magic);
-
-#endif
-
-/* Baud-rate values in tty status have nonstandard meanings.  */
-
-#define BAUD_CONVERT  \
-{ 0, 50, 75, 110, 135, 150, 200, 300, 600, 900, 1200,  \
-  1800, 2400, 3600, 4800, 7200, 9600, 19200, 38400 }
-
-/* This is how to get the device name of the tty end of a pty.  */
-#define PTY_TTY_NAME_SPRINTF \
-            sprintf (pty_name, "/dev/pty/tty%c%x", c, i);
-
-/* This is how to get the device name of the control end of a pty.  */
-#define PTY_NAME_SPRINTF \
-	sprintf (pty_name, "/dev/ptym/pty%c%x", c, i);
-
-/* This triggers a conditional in xfaces.c.  */
-#define XOS_NEEDS_TIME_H
-
-#ifndef HPUX8
-/* It's possible that HPUX 7 has sys/wait.h but it does not work right.  */
-#undef HAVE_SYS_WAIT_H
-#endif
-
-/* arch-tag: 75c1239f-fedb-4f64-8f86-7893e75699e8
-   (do not change this comment) */
--- a/src/s/hpux10-20.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/hpux10-20.h	Thu Jun 26 04:24:54 2008 +0000
@@ -1,13 +1,270 @@
-#include "hpux10.h"
+/* System description file for hpux version 10.20.
+   Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+     2008  Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
+
+
+#define RUN_TIME_REMAP
+
+/*
+ *	Define symbols to identify the version of Unix this is.
+ *	Define all the symbols that apply correctly.
+ */
+
+#define USG				/* System III, System V, etc */
+
+#define USG5
+
+#define HPUX
+
+/* SYSTEM_TYPE should indicate the kind of system you are using.
+ It sets the Lisp variable system-type.  */
+
+#define SYSTEM_TYPE "hpux"
+
+/* `nomultiplejobs' should be defined if your system's shell
+ does not have "job control" (the ability to stop a program,
+ run some other program, then continue the first one).
+
+ On hpux this depends on the precise kind of machine in use,
+ so the m- file defines this symbol if appropriate.  */
+
+/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
+
+/* #define INTERRUPT_INPUT */
+
+/* Letter to use in finding device name of first pty,
+  if system supports pty's.  'p' means it is /dev/ptym/ptyp0  */
+
+#define FIRST_PTY_LETTER 'p'
+
+/*
+ *	Define HAVE_TERMIO if the system provides sysV-style ioctls
+ *	for terminal control.
+ */
+
+#define HAVE_TERMIO
+
+/*
+ *	Define HAVE_PTYS if the system supports pty devices.
+ */
+
+#define HAVE_PTYS
+
+/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
+
+#define HAVE_SOCKETS
+
+/* Define this symbol if your system has the functions bcopy, etc.
+ * s800 and later versions of s300 (s200) kernels have equivalents
+ * of the BSTRING functions of BSD.  If your s200 kernel doesn't have
+ * em comment out this section.
+ */
+
+#define BSTRING
+
+/* subprocesses should be defined if you want to
+ have code for asynchronous subprocesses
+ (as used in M-x compile and M-x shell).
+ This is generally OS dependent, and not supported
+ under most USG systems.  */
+
+#define subprocesses
+
+/* If your system uses COFF (Common Object File Format) then define the
+   preprocessor symbol "COFF". */
+
+/* #define COFF */
+
+/* define MAIL_USE_FLOCK if the mailer uses flock
+   to interlock access to /usr/spool/mail/$USER.
+   The alternative is that a lock file named
+   /usr/spool/mail/$USER.lock.  */
+
+/* #define MAIL_USE_FLOCK */
+
+/* Say we have the SYSV style of interprocess communication.  */
+
+#define HAVE_SYSVIPC
+
+/* Define CLASH_DETECTION if you want lock files to be written
+   so that Emacs can tell instantly when you try to modify
+   a file that someone else has modified in his Emacs.  */
+
+#define CLASH_DETECTION
+
+/* The symbol in the kernel where the load average is found
+   depends on the cpu type, so we let the m- files define LDAV_SYMBOL.  */
+
+/* Special hacks needed to make Emacs run on this system.  */
+
+/*
+ *	Make the sigsetmask function go away.  Don't know what the
+ *	ramifications of this are, but doesn't seem possible to
+ *	emulate it properly anyway at this point.
+ */
+
+/* HPUX has sigsetmask */
+/* #define sigsetmask(mask)	/ * Null expansion * / */
+
+/* setjmp and longjmp can safely replace _setjmp and _longjmp,
+   but they will run slower.  */
+
+/* HP-UX has _setjmp and _longjmp */
+/*
+#define _setjmp setjmp
+#define _longjmp longjmp
+*/
 
-#define HPUX10_20
+/* Use the system provided termcap(3) library */
+#define TERMINFO
+
+/* In hpux, the symbol SIGIO is defined, but the feature
+   doesn't work in the way Emacs needs it to.  */
+
+#define BROKEN_SIGIO
+
+/* USG systems tend to put everything declared static
+   into the initialized data area, which becomes pure after dumping Emacs.
+   Foil this.  Emacs carefully avoids static vars inside functions.
+   http://lists.gnu.org/archive/html/emacs-devel/2007-09/msg00368.html
+   As of at least HPUX 11.11 (2000), it seems this workaround is no
+   longer needed.  Try uncommenting the following if you have problems
+   on older versions.  */
+
+/* This is unnecessary in HPUX versions 10.20, 11.0, 11.11, 11.23.  */
+
+/* #define static  */
+
+/* Some additional system facilities exist.  */
+
+#define HAVE_PERROR  /* Delete this line for version 6.  */
+
+/* The following maps shared exec file to demand loaded exec.
+   Don't do this as demand loaded exec is broken in hpux.  */
+
+/* Baud-rate values in tty status have nonstandard meanings.  */
+
+#define BAUD_CONVERT  \
+{ 0, 50, 75, 110, 135, 150, 200, 300, 600, 900, 1200,  \
+  1800, 2400, 3600, 4800, 7200, 9600, 19200, 38400 }
+
+/* This is how to get the device name of the tty end of a pty.  */
+#define PTY_TTY_NAME_SPRINTF \
+            sprintf (pty_name, "/dev/pty/tty%c%x", c, i);
+
+/* This is how to get the device name of the control end of a pty.  */
+#define PTY_NAME_SPRINTF \
+	sprintf (pty_name, "/dev/ptym/pty%c%x", c, i);
+
+/* This triggers a conditional in xfaces.c.  */
+#define XOS_NEEDS_TIME_H
+
+/* Don't use shared libraries.  unexec doesn't handle them.
+   Note GCC automatically passes -a archive to ld, and it has its own
+   conflicting -a.  */
+#ifdef __GNUC__
+
+#define LD_SWITCH_SYSTEM_TEMACS
+
+#else /* not __GNUC__ */
+/* Note, -a only works for hpux ld, not cc.  And "cc LD_SWITCH_SYSTEM"
+   is used in configure's $ac_link to do various autoconf checks.
+   Since we only need -a when unexec'ing, only pass in -a to
+   "ld temacs" (ghazi@caip.rutgers.edu  7/10/97).  */
+#if (defined(hp9000s700) || defined(__hp9000s700))
+#define LD_SWITCH_SYSTEM_TEMACS -L/lib/pa1.1
+#else /* not (defined(hp9000s700) || defined(__hp9000s700)) */
+#define LD_SWITCH_SYSTEM_TEMACS
+#endif /* not (defined(hp9000s700) || defined(__hp9000s700)) */
+#endif /* not __GNUC__ */
+
+/* Some hpux 8 machines seem to have TIOCGWINSZ,
+   and none have sioctl.h, so might as well define this.  */
+#define NO_SIOCTL_H
+
+#ifndef HAVE_LIBXMU
+/* HP-UX doesn't supply Xmu.  */
+#define LIBXMU
+
+#endif
+
+/* Assar Westerlund <assar@sics.se> says this is necessary for
+   HP-UX 10.20, and that it works for HP-UX 0 as well.  */
+#define NO_EDITRES
+
+/* Tested in getloadavg.c.  */
+#define HAVE_PSTAT_GETDYNAMIC
+
+/* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines
+   has a broken `rint' in some library versions including math library
+   version number A.09.05.
+
+   You can fix the math library by installing patch number PHSS_4630.
+   But we can fix it more reliably for Emacs like this. */
+#undef HAVE_RINT
+
+/* We have to go this route, rather than hpux9's approach of renaming the
+   functions via macros.  The system's stdlib.h has fully prototyped
+   declarations, which yields a conflicting definition of srand48; it
+   tries to redeclare what was once srandom to be srand48.  So we go
+   with HAVE_LRAND48 being defined.  */
+#undef srandom
+#undef random
+#undef HAVE_RANDOM
+
+#define FORCE_ALLOCA_H
+
+/* AlainF 20-Jul-1996 says this is right.  */
+#define KERNEL_FILE "/stand/vmunix"
+
+#ifdef HPUX_NET
+#define LIBS_SYSTEM -ln -l:libdld.sl
+#else
+#define LIBS_SYSTEM -l:libdld.sl
+#endif
+
+/* Rainer Malzbender <rainer@displaytech.com> says definining
+   HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20
+   using GCC.  */
+
+#ifndef HAVE_XRMSETDATABASE
+#define HAVE_XRMSETDATABASE
+#endif
+
+/* Make sure we get select from libc rather than from libcurses
+   because libcurses on HPUX 10.10 has a broken version of select.
+   We used to use -lc -lcurses, but this may be cleaner.  */
+#define LIBS_TERMCAP -ltermcap
+
+/* However, HPUX 10 puts Xaw and Xmu in a strange place
+   (if you install them at all).  So search that place.  */
+#define C_SWITCH_X_SYSTEM  -I/usr/include/X11R6 -I/usr/include/X11R5 -I/usr/include/Motif1.2 -I/usr/contrib/X11R6/include -I/usr/contrib/X11R5/include
+#define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R6 -L/usr/lib/X11R5 -L/usr/lib/Motif1.2 -L/usr/contrib/X11R5/lib
+
+/* 2000-11-21: Temporarily disable Unix 98 large file support found by
+   configure.  It fails on HPUX 11, at least, because it enables
+   header sections which lose when `static' is defined away, as it is
+   on HP-UX.  (You get duplicate symbol errors on linking). */
+
+#undef _FILE_OFFSET_BITS
 
 /* otherwise sigunblock wont be defined */
 #define POSIX_SIGNALS
 
-/* Polling problems (interrupted system call) reported for HP-UX 10.10
-   don't exist from 10.20 on (see process.c) */
-#undef POLL_INTERRUPTED_SYS_CALL
-
 /* arch-tag: 8d8dcbf1-ca9b-48a1-94be-b750de18a5c6
    (do not change this comment) */
--- a/src/s/hpux10.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,85 +0,0 @@
-/* System description file for hpux version 10.
-   Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-     2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-#include "hpux9shr.h"
-
-#define HPUX10
-
-/* We have to go this route, rather than hpux9's approach of renaming the
-   functions via macros.  The system's stdlib.h has fully prototyped
-   declarations, which yields a conflicting definition of srand48; it
-   tries to redeclare what was once srandom to be srand48.  So we go
-   with HAVE_LRAND48 being defined.  */
-#undef srandom
-#undef random
-#undef HAVE_RANDOM
-
-#define FORCE_ALLOCA_H
-
-/* AlainF 20-Jul-1996 says this is right.  */
-#undef KERNEL_FILE
-#define KERNEL_FILE "/stand/vmunix"
-
-#ifdef LIBS_SYSTEM
-#undef LIBS_SYSTEM
-#endif
-#ifdef HPUX_NET
-#define LIBS_SYSTEM -ln -l:libdld.sl
-#else
-#define LIBS_SYSTEM -l:libdld.sl
-#endif
-
-/* Rainer Malzbender <rainer@displaytech.com> says definining
-   HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20
-   using GCC.  */
-
-#ifndef HAVE_XRMSETDATABASE
-#define HAVE_XRMSETDATABASE
-#endif
-
-/* Make sure we get select from libc rather than from libcurses
-   because libcurses on HPUX 10.10 has a broken version of select.
-   We used to use -lc -lcurses, but this may be cleaner.  */
-#define LIBS_TERMCAP -ltermcap
-
-#undef C_SWITCH_X_SYSTEM
-#undef LD_SWITCH_X_DEFAULT
-/* However, HPUX 10 puts Xaw and Xmu in a strange place
-   (if you install them at all).  So search that place.  */
-#define C_SWITCH_X_SYSTEM  -I/usr/include/X11R6 -I/usr/include/X11R5 -I/usr/include/Motif1.2 -I/usr/contrib/X11R6/include -I/usr/contrib/X11R5/include
-#define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R6 -L/usr/lib/X11R5 -L/usr/lib/Motif1.2 -L/usr/contrib/X11R5/lib
-
-/* 2000-11-21: Temporarily disable Unix 98 large file support found by
-   configure.  It fails on HPUX 11, at least, because it enables
-   header sections which lose when `static' is defined away, as it is
-   on HP-UX.  (You get duplicate symbol errors on linking). */
-
-#undef _FILE_OFFSET_BITS
-
-/* Don't define _BSD */
-#undef C_SWITCH_SYSTEM
-
-/* HP-UX 10.10 seem to have problems with signals coming in
-   Causes "poll: interrupted system call" messages when Emacs is run
-   in an X window (see process.c) */
-#define POLL_INTERRUPTED_SYS_CALL
-
-/* arch-tag: 1b95d569-a3c1-4fb0-8f69-fef264c17c24
-   (do not change this comment) */
--- a/src/s/hpux8.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,96 +0,0 @@
-/* system description file for hpux version 8.
-
-   Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-/*
-Commentary:
-
-This contains changes that were suggested "for the hp700".
-They were not needed for the 800.
-Our conjecture that they are needed for hpux version 8,
-which is what runs on the 700.  */
-
-#define HPUX8
-
-#include "hpux.h"
-
-/* dob@inel.gov says HPUX 8.07 needs this.  He was using X11R5, I think.  */
-#define LIBX11_SYSTEM -lXext
-
-#define LIB_X11_LIB -L/usr/lib/X11R5 -L/usr/lib/X11R4 -lX11
-#define C_SWITCH_X_SYSTEM -I/usr/include/X11R5 -I/usr/include/X11R4
-#define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R5 -L/usr/lib/X11R4
-
-/* Don't use shared libraries.  unexec doesn't handle them.
-   Note GCC automatically passes -a archive to ld, and it has its own
-   conflicting -a.  */
-#ifdef __GNUC__
-/* No need to specify roundabout way of linking temacs.  */
-#define ORDINARY_LINK
-
-#ifdef HPUX_USE_SHLIBS
-#define LD_SWITCH_SYSTEM_TEMACS
-#else
-#define LD_SWITCH_SYSTEM_TEMACS -Xlinker -a -Xlinker archive
-#endif
-
-#else /* not __GNUC__ */
-/* Note, -a only works for hpux ld, not cc.  And "cc LD_SWITCH_SYSTEM"
-   is used in configure's $ac_link to do various autoconf checks.
-   Since we only need -a when unexec'ing, only pass in -a to
-   "ld temacs" (ghazi@caip.rutgers.edu  7/10/97).  */
-#if (defined(hp9000s700) || defined(__hp9000s700))
-#ifdef HPUX_USE_SHLIBS
-#define LD_SWITCH_SYSTEM_TEMACS -L/lib/pa1.1
-#else
-#define LD_SWITCH_SYSTEM_TEMACS -a archive -L/lib/pa1.1
-#endif
-#else /* not (defined(hp9000s700) || defined(__hp9000s700)) */
-#ifdef HPUX_USE_SHLIBS
-#define LD_SWITCH_SYSTEM_TEMACS
-#else
-#define LD_SWITCH_SYSTEM_TEMACS -a archive
-#endif
-#endif /* not (defined(hp9000s700) || defined(__hp9000s700)) */
-#endif /* not __GNUC__ */
-
-/* Some hpux 8 machines seem to have TIOCGWINSZ,
-   and none have sioctl.h, so might as well define this.  */
-#define NO_SIOCTL_H
-
-#if 0 /* autoconf should be detecting the presence or absence of
-	 random and srandom now.  */
-/* If you use X11R4 you must define this.  If you use
-   X11R5 you must comment this out */
-/* #define HAVE_RANDOM */
-#define random foo_random
-#define srandom foo_srandom
-#endif
-
-#if 0  /* This seems to be spurious.  */
-/* "X11R5" on hpux8 doesn't have this function, which is supposed to exist
-   in X11R5.  Maybe things will work if we just don't call it.  */
-#define NO_XRM_SET_DATABASE
-#endif
-
-/* Enable a special hack in XTread_socket.  */
-#define X_IO_BUG
-
-/* arch-tag: 25fafe5c-b26c-43ab-8144-1629d59207ee
-   (do not change this comment) */
--- a/src/s/hpux9.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,94 +0,0 @@
-/* System description file for hpux version 9.
-
-   Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-#include "hpux8.h"
-
-#define HPUX9
-
-/* If Emacs doesn't seem to work when built to use GNU malloc, you
-   probably need to get the latest patches to the HP/UX compiler.
-   See `etc/MACHINES' for more information.  */
-#if 0
-#define SYSTEM_MALLOC 1
-#undef GNU_MALLOC
-#undef REL_ALLOC
-#endif
-
-#ifndef __GNUC__
-/* Make room for enough symbols, so dispnew.c does not fail.  */
-#define C_SWITCH_SYSTEM -Wp,-H200000 -D_BSD
-#else
-#define C_SWITCH_SYSTEM -D_BSD
-#endif
-
-#if 0 /* These definitions run into a bug in hpux
-	 whereby trying to disable the vdsusp character has no effect.
-	 supposedly there is no particular need for this.  */
-/* neal@ctd.comsat.com */
-#undef HAVE_TERMIO
-#define HAVE_TERMIOS
-#define NO_TERMIO
-#endif
-
-/* According to ngorelic@speclab.cr.usgs.gov,
-   references to the X11R4 directories in these variables
-   (inherited from hpux8.h)
-   cause the wrong libraries to be found,
-   and the options to specify the X11R5 directories are unnecessary
-   since the R5 files are found without them.  */
-#undef LIB_X11_LIB
-#undef C_SWITCH_X_SYSTEM
-#undef LD_SWITCH_X_DEFAULT
-/* However, HPUX 9 has Motif includes in a strange place.
-   So search that place.  These definitions assume that X11R5 is being
-   used -- if X11R4 is used, "s/hpux9-x11r4.h" gets loaded instead.  */
-/* horst@tkm.physik.uni-karlsruhe.de says that the /usr/contrib/... dirs
-   are needed to find the Xmu and Xaw libraries.  */
-#define C_SWITCH_X_SYSTEM -I/usr/include/X11R5 -I/usr/contrib/X11R5/include -I/usr/include/Motif1.2
-#define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R5 -L/usr/contrib/X11R5/lib -L/usr/lib/Motif1.2
-
-#ifndef HAVE_LIBXMU
-/* HP-UX doesn't supply Xmu.  */
-#define LIBXMU
-
-#endif
-
-/* Assar Westerlund <assar@sics.se> says this is necessary for
-   HP-UX 10.20, and that it works for HP-UX 0 as well.  */
-#define NO_EDITRES
-
-/* zoo@armadillo.com says we don't need -lXext in HPUX 9.  */
-#undef LIBX11_SYSTEM
-
-/* Tested in getloadavg.c.  */
-#define HAVE_PSTAT_GETDYNAMIC
-
-/* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines
-   has a broken `rint' in some library versions including math library
-   version number A.09.05.
-
-   You can fix the math library by installing patch number PHSS_4630.
-   But we can fix it more reliably for Emacs like this. */
-#undef HAVE_RINT
-
-
-/* arch-tag: 0a5e9f05-012c-4962-a222-a7a3a7fe0ab7
-   (do not change this comment) */
--- a/src/s/hpux9shr.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-#define ORDINARY_LINK
-#define HPUX_USE_SHLIBS
-#define RUN_TIME_REMAP
-
-#include "hpux9.h"
-
-#if 0 /* No longer needed, since in current GCC -g no longer does that.  */
-/* We must turn off -g since it forces -static.  */
-#ifdef __GNUC__
-#undef C_DEBUG_SWITCH
-#define C_DEBUG_SWITCH
-#endif
-#endif
-
-/* arch-tag: 1b259627-c5f6-4260-866f-781b06d72f6b
-   (do not change this comment) */
--- a/src/s/ms-w32.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/ms-w32.h	Thu Jun 26 04:24:54 2008 +0000
@@ -22,16 +22,6 @@
  *      Define all the symbols that apply correctly.
  */
 
-/* #define UNIPLUS */
-/* #define USG5 */
-/* #define USG */
-/* #define HPUX */
-/* #define UMAX */
-/* #define BSD4_1 */
-/* #define BSD4_2 */
-/* #define BSD4_3 */
-/* #define BSD_SYSTEM */
-/* #define VMS */
 #ifndef WINDOWSNT
 #define WINDOWSNT
 #endif
--- a/src/s/msdos.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/msdos.h	Thu Jun 26 04:24:54 2008 +0000
@@ -26,16 +26,6 @@
  *	Define all the symbols that apply correctly.
  */
 
-/* #define UNIPLUS */
-/* #define USG5 */
-/* #define USG */
-/* #define HPUX */
-/* #define UMAX */
-/* #define BSD4_1 */
-/* #define BSD4_2 */
-/* #define BSD4_3 */
-/* #define BSD_SYSTEM */
-/* #define VMS */
 #ifndef MSDOS
 #define MSDOS
 #endif
--- a/src/s/netbsd.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/netbsd.h	Thu Jun 26 04:24:54 2008 +0000
@@ -19,8 +19,8 @@
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-/* Get most of the stuff from bsd4.3 */
-#include "bsd4-3.h"
+/* Get most of the stuff from bsd-common */
+#include "bsd-common.h"
 
 #if defined (__alpha__) && !defined (__ELF__)
 #define NO_SHARED_LIBS
--- a/src/s/nextstep.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,114 +0,0 @@
-/* Configuration file for the NeXTstep system.
-   Copyright (C) 1990, 1995, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-#include "bsd4-3.h"
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  We'll need to undo the bsd one. */
-
-#undef SYSTEM_TYPE
-#define SYSTEM_TYPE "next-mach"
-
-#ifndef NeXT
-#define NeXT
-#endif
-
-
-/* Data type of load average, as read out of kmem.  */
-
-#define LOAD_AVE_TYPE long
-
-/* Convert that into an integer that is 100 for a load average of 1.0  */
-
-#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
-
-/* Defining KERNEL_FILE causes lossage because sys/file.h
-   stupidly gets confused by it.  */
-#undef KERNEL_FILE
-
-#define SYSTEM_MALLOC
-
-#define environ _environ
-
-/* This should be true for recent NeXT systems.  At least since 3.2.  */
-#define HAVE_MACH_MACH_H
-
-#if 0 /* I think these are never used--let's see.  -- rms.  */
-/* Mask for address bits within a memory segment */
-
-#define SEGSIZ 0x20000
-#define SEGMENT_MASK (SEGSIZ - 1)
-
-#define HAVE_UNIX_DOMAIN
-
-/* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */
-
-#define NO_T_CHARS_DEFINES
-
-/* This avoids a problem in Xos.h when using co-Xist 3.01.  */
-#define X_NOT_POSIX
-#endif /* 0 */
-
-/* Definitions for how to link.  */
-
-/* Link this program just by running cc.  */
-#define ORDINARY_LINK
-
-#define LD_SWITCH_SYSTEM -X
-
-/* Don't use -lc on the NeXT.  */
-#ifdef NS_TARGET /* We use the dynamic libraries under Openstep for Mach 4.0 */
-#define LIB_STANDARD
-#else
-#define LIB_STANDARD -lsys_s
-#endif
-
-#define LIB_MATH -lm
-
-#define START_FILES pre-crt0.o
-
-#define LIB_X11_LIB -L/usr/lib/X11 -lX11
-
-/* We don't have a g library either, so override the -lg LIBS_DEBUG switch */
-
-#define LIBS_DEBUG
-
-/* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */
-
-#define LIB_GCC
-
-/* Definitions for how to dump.  */
-
-#define UNEXEC unexnext.o
-
-/* start_of_text isn't actually used, so make it compile without error.  */
-#define TEXT_START 0
-/* This seems to be right for end_of_text, but it may not be used anyway.  */
-#define TEXT_END get_etext ()
-/* This seems to be right for end_of_data, but it may not be used anyway.  */
-#define DATA_END get_edata ()
-
-/* Don't include string.h--it causes trouble.  */
-#undef HAVE_STRING_H
-
-/* Tell emacs.c not to define abort.  */
-#define NO_ABORT
-
-/* arch-tag: 5cd6fed4-a0be-4402-9349-85a80bc01d57
-   (do not change this comment) */
--- a/src/s/template.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/template.h	Thu Jun 26 04:24:54 2008 +0000
@@ -25,12 +25,9 @@
  *	Define all the symbols that apply correctly.
  */
 
-/* #define UNIPLUS */
 /* #define USG5 */
 /* #define USG */
 /* #define HPUX */
-/* #define UMAX */
-/* #define BSD4_1 */
 /* #define BSD4_2 */
 /* #define BSD4_3 */
 /* #define BSD_SYSTEM */
--- a/src/s/ultrix4-3.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-#include "bsd4-3.h"
-
-#define NEED_UNISTD_H
-#define HAVE_TERMIOS
-#define PREFER_VSUSP
-
-/* Must set the line discipline to this, to make termio work.  */
-#define SET_LINE_DISCIPLINE TERMIODISC
-
-#ifndef NOT_C_CODE
-/* The address of this is used, but Ultrix header files don't declare it.  */
-extern double rint ();
-#endif
-
-/* arch-tag: 927a396a-d50f-494b-960b-533671184ce1
-   (do not change this comment) */
--- a/src/s/usg5-0.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,149 +0,0 @@
-/* Definitions file for GNU Emacs running on AT&T's System V.0
-   Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#define USG				/* System III, System V, etc */
-
-#define USG5
-#define	USG5_0
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "usg-unix-v"
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-#define NOMULTIPLEJOBS
-
-/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
-
-/* #define INTERRUPT_INPUT */
-
-/* Letter to use in finding device name of first pty,
-  if system supports pty's.  'p' means it is /dev/ptyp0  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_TERMIO if the system provides sysV-style ioctls
- *	for terminal control.
- */
-
-#define HAVE_TERMIO
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-/* #define HAVE_PTYS */
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-/* #define HAVE_SOCKETS */
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-#define NONSYSTEM_DIR_LIBRARY
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-/* #define BSTRING */
-
-/* subprocesses should be defined if you want to
- have code for asynchronous subprocesses
- (as used in M-x compile and M-x shell).
- This is supposed to work now on system V release 2.  */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-#define COFF
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-/* #define CLASH_DETECTION */
-
-/* The file containing the kernel's symbol table is called /unix.  */
-
-#define KERNEL_FILE "/unix"
-
-/* The symbol in the kernel where the load average is found
-   is named avenrun.  */
-
-#define LDAV_SYMBOL "avenrun"
-
-/* Special hacks needed to make Emacs run on this system.  */
-
-/*
- *	Make the sigsetmask function go away.  Don't know what the
- *	ramifications of this are, but doesn't seem possible to
- *	emulate it properly anyway at this point.
- */
-
-#define sigsetmask(mask)	/* Null expansion */
-
-/* setjmp and longjmp can safely replace _setjmp and _longjmp,
-   but they will run slower.  */
-
-#define _setjmp setjmp
-#define _longjmp longjmp
-
-/* On USG systems these have different names */
-
-#define index strchr
-#define rindex strrchr
-
-/* USG systems tend to put everything declared static
-   into the initialized data area, which becomes pure after dumping Emacs.
-   Foil this.  Emacs carefully avoids static vars inside functions.  */
-
-#define static
-
-/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
-
-#define ADDR_CORRECT(x) (x)
-
-/* Prevent -lg from being used for debugging.  Not implemented?  */
-
-#define LIBS_DEBUG
-
-/* arch-tag: a18bdba9-506d-40ed-9877-49fc27ce8cac
-   (do not change this comment) */
--- a/src/s/usg5-2-2.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,152 +0,0 @@
-/* Definitions file for GNU Emacs running on AT&T's System V Release 2.2
-   Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#define USG				/* System III, System V, etc */
-
-#define USG5
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "usg-unix-v"
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-#define NOMULTIPLEJOBS
-
-/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
-
-/* #define INTERRUPT_INPUT */
-
-/* Letter to use in finding device name of first pty,
-  if system supports pty's.  'p' means it is /dev/ptyp0  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_TERMIO if the system provides sysV-style ioctls
- *	for terminal control.
- */
-
-#define HAVE_TERMIO
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-/* #define HAVE_PTYS */
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-/* #define HAVE_SOCKETS */
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-#define NONSYSTEM_DIR_LIBRARY
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-/* #define BSTRING */
-
-/* subprocesses should be defined if you want to
- have code for asynchronous subprocesses
- (as used in M-x compile and M-x shell).
- This is supposed to work now on system V release 2.  */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-#define COFF
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-/* #define CLASH_DETECTION */
-
-/* The file containing the kernel's symbol table is called /unix.  */
-
-#define KERNEL_FILE "/unix"
-
-/* The symbol in the kernel where the load average is found
-   is named avenrun.  */
-
-#define LDAV_SYMBOL "avenrun"
-
-/* Special hacks needed to make Emacs run on this system.  */
-
-/*
- *	Make the sigsetmask function go away.  Don't know what the
- *	ramifications of this are, but doesn't seem possible to
- *	emulate it properly anyway at this point.
- */
-
-#define sigsetmask(mask)	/* Null expansion */
-
-/* setjmp and longjmp can safely replace _setjmp and _longjmp,
-   but they will run slower.  */
-
-#define _setjmp setjmp
-#define _longjmp longjmp
-
-/* On USG systems these have different names */
-
-#define index strchr
-#define rindex strrchr
-
-/* USG systems tend to put everything declared static
-   into the initialized data area, which becomes pure after dumping Emacs.
-   Foil this.  Emacs carefully avoids static vars inside functions.  */
-
-#define static
-
-/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
-
-#define ADDR_CORRECT(x) (x)
-
-/* Prevent -lg from being used for debugging.  Not implemented?  */
-
-#define LIBS_DEBUG
-
-/* Use terminfo instead of termcap.  */
-
-#define TERMINFO
-
-/* arch-tag: 56923f22-9e2b-4814-b922-88c87657ff6b
-   (do not change this comment) */
--- a/src/s/usg5-2.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,152 +0,0 @@
-/* Definitions file for GNU Emacs running on AT&T's System V Release 2.0
-   Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#define USG				/* System III, System V, etc */
-
-#define USG5
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "usg-unix-v"
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-#define NOMULTIPLEJOBS
-
-/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
-
-/* #define INTERRUPT_INPUT */
-
-/* Letter to use in finding device name of first pty,
-  if system supports pty's.  'p' means it is /dev/ptyp0  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_TERMIO if the system provides sysV-style ioctls
- *	for terminal control.
- */
-
-#define HAVE_TERMIO
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-/* #define HAVE_PTYS */
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-/* #define HAVE_SOCKETS */
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-#define NONSYSTEM_DIR_LIBRARY
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-/* #define BSTRING */
-
-/* subprocesses should be defined if you want to
- have code for asynchronous subprocesses
- (as used in M-x compile and M-x shell).
- This is supposed to work now on system V release 2.  */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-#define COFF
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-/* #define CLASH_DETECTION */
-
-/* The file containing the kernel's symbol table is called /unix.  */
-
-#define KERNEL_FILE "/unix"
-
-/* The symbol in the kernel where the load average is found
-   is named avenrun.  */
-
-#define LDAV_SYMBOL "avenrun"
-
-/* Special hacks needed to make Emacs run on this system.  */
-
-/*
- *	Make the sigsetmask function go away.  Don't know what the
- *	ramifications of this are, but doesn't seem possible to
- *	emulate it properly anyway at this point.
- */
-
-#define sigsetmask(mask)	/* Null expansion */
-
-/* setjmp and longjmp can safely replace _setjmp and _longjmp,
-   but they will run slower.  */
-
-#define _setjmp setjmp
-#define _longjmp longjmp
-
-/* On USG systems these have different names */
-
-#define index strchr
-#define rindex strrchr
-
-/* USG systems tend to put everything declared static
-   into the initialized data area, which becomes pure after dumping Emacs.
-   Foil this.  Emacs carefully avoids static vars inside functions.  */
-
-#define static
-
-/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
-
-#define ADDR_CORRECT(x) (x)
-
-/* Prevent -lg from being used for debugging.  Not implemented?  */
-
-#define LIBS_DEBUG
-
-/* Use terminfo instead of termcap.  */
-
-#define TERMINFO
-
-/* arch-tag: cfd9500f-0284-4a88-8f07-3f56b42db13b
-   (do not change this comment) */
--- a/src/s/usg5-3.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,202 +0,0 @@
-/* Definitions file for GNU Emacs running on AT&T's System V Release 3
-   Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, 2005, 2006,
-                 2007, 2008  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-/*
- *	Define symbols to identify the version of Unix this is.
- *	Define all the symbols that apply correctly.
- */
-
-#define USG				/* System III, System V, etc */
-
-#define USG5
-
-#define USG5_3
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#define SYSTEM_TYPE "usg-unix-v"
-
-/* nomultiplejobs should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-#define NOMULTIPLEJOBS
-
-/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
-
-/* #define INTERRUPT_INPUT */
-
-/* Letter to use in finding device name of first pty,
-  if system supports pty's.  'p' means it is /dev/ptyp0  */
-
-#define FIRST_PTY_LETTER 'p'
-
-/*
- *	Define HAVE_TERMIO if the system provides sysV-style ioctls
- *	for terminal control.
- */
-
-#define HAVE_TERMIO
-
-/*
- *	Define HAVE_PTYS if the system supports pty devices.
- */
-
-/* Some versions of V.3 have this, but not all.
-   #define HAVE_PTYS
-   #define SYSV_PTYS  */
-
-/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
-
-/* #define HAVE_SOCKETS */
-
-/*
- *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-/* #define NONSYSTEM_DIR_LIBRARY */
-
-/*
- * 	Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
- *	library functions.  Almost, but not quite the same as
- *	the 4.2 functions
- */
-#define SYSV_SYSTEM_DIR
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-/* #define BSTRING */
-
-/* subprocesses should be defined if you want to
- have code for asynchronous subprocesses
- (as used in M-x compile and M-x shell).
- This is supposed to work now on system V release 2.  */
-
-#define subprocesses
-
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-#define COFF
-
-/* define MAIL_USE_FLOCK if the mailer uses flock
-   to interlock access to /usr/spool/mail/$USER.
-   The alternative is that a lock file named
-   /usr/spool/mail/$USER.lock.  */
-
-/* #define MAIL_USE_FLOCK */
-
-/* Define CLASH_DETECTION if you want lock files to be written
-   so that Emacs can tell instantly when you try to modify
-   a file that someone else has modified in his Emacs.  */
-
-/* #define CLASH_DETECTION */
-
-/* The file containing the kernel's symbol table is called /unix.  */
-
-#define KERNEL_FILE "/unix"
-
-/* The symbol in the kernel where the load average is found
-   is named avenrun.  */
-
-#define LDAV_SYMBOL "avenrun"
-
-/* Define this if system V IPC is available.  */
-
-#define HAVE_SYSVIPC
-
-/* Special hacks needed to make Emacs run on this system.  */
-
-/*
- *	Make the sigsetmask function go away.  Don't know what the
- *	ramifications of this are, but doesn't seem possible to
- *	emulate it properly anyway at this point.
- */
-
-#define sigsetmask(mask)	/* Null expansion */
-
-/* setjmp and longjmp can safely replace _setjmp and _longjmp,
-   but they will run slower.  */
-
-#define _setjmp setjmp
-#define _longjmp longjmp
-
-/* On USG systems these have different names */
-#ifndef HAVE_INDEX
-#define index strchr
-#endif /* ! defined (HAVE_INDEX) */
-#ifndef HAVE_RINDEX
-#define rindex strrchr
-#endif /* ! defined (HAVE_RINDEX) */
-
-/* USG systems tend to put everything declared static
-   into the initialized data area, which becomes pure after dumping Emacs.
-   Foil this.  Emacs carefully avoids static vars inside functions.  */
-
-#define static
-
-/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
-
-#define ADDR_CORRECT(x) (x)
-
-/* Use terminfo instead of termcap.  */
-
-#define TERMINFO
-
-/* Some variants have TIOCGETC, but the structures to go with it
-   are not declared.  */
-
-#define BROKEN_TIOCGETC
-
-/* AT&T SVr3 X wants to be linked with shared libraries */
-
-#define LIB_X11_LIB -lX11_s
-
-/* X needs to talk on the network, so search the network library.  */
-
-#define LIBX11_SYSTEM -lpt -lnls -lnsl_s -lc_s
-
-/* The docs for system V/386 suggest v.3 has sigpause,
-   so let's give it a try.  */
-#define HAVE_SYSV_SIGPAUSE
-
-/* Some variants have TIOCGWINSZ, but the structures to go with it
-   are not declared.  */
-
-#define BROKEN_TIOCGWINSZ
-
-/* If we're using the System V X port, BSD bstring functions will be handy */
-
-#ifdef HAVE_X_WINDOWS
-#define BSTRING
-#endif /* HAVE_X_WINDOWS */
-
-/* Enable support for shared libraries in unexec.  */
-
-#define USG_SHARED_LIBRARIES
-
-/* On USG systems signal handlers return void */
-
-#define SIGTYPE void
-
-/* arch-tag: 2bca65fd-f015-44b9-a2aa-9f8170ce89ca
-   (do not change this comment) */
--- a/src/s/usg5-4-3.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-/* s/ file for System V release 4.3.  */
-
-#include "usg5-4-2.h"
-
-/* Bill_Mann@PraxisInt.com: without this switch emacs generates this error
-   on start up for an i486-ncr-sysv4.3 (running the X toolkit):
-  _XipOpenIM() Unable to find Atom _XIM_INPUTMETHOD  */
-#define X11R5_INHIBIT_I18N
-
-/* arch-tag: 03ac8b3a-c3d4-4441-a773-1c1d9f111f1a
-   (do not change this comment) */
--- a/src/s/usg5-4.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/s/usg5-4.h	Thu Jun 26 04:24:54 2008 +0000
@@ -24,34 +24,155 @@
 
 /* Use the SysVr3 file for at least base configuration. */
 
-#include "usg5-3.h"
+#define USG				/* System III, System V, etc */
 
+#define USG5
 #define USG5_4
 
-/* We do have multiple jobs.  Handle ^Z. */
+/* SYSTEM_TYPE should indicate the kind of system you are using.
+ It sets the Lisp variable system-type.  */
+
+#define SYSTEM_TYPE "usg-unix-v"
+
+/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
+
+/* #define INTERRUPT_INPUT */
+
+/*
+ *	Define HAVE_TERMIO if the system provides sysV-style ioctls
+ *	for terminal control.
+ */
+
+#define HAVE_TERMIO
 
-#undef NOMULTIPLEJOBS
+/*
+ *	Define HAVE_PTYS if the system supports pty devices.
+ */
+
+/* Some versions of V.3 have this, but not all.
+   #define HAVE_PTYS
+   #define SYSV_PTYS  */
+
+/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets.  */
+
+/* #define HAVE_SOCKETS */
+
+/*
+ *	Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
+ *      The 4.2 opendir, etc., library functions.
+ */
+
+/* #define NONSYSTEM_DIR_LIBRARY */
 
-/* Motif needs -lgen.  */
-#define LIBS_SYSTEM -lsocket -lnsl -lelf -lgen
-#define ORDINARY_LINK
+/*
+ * 	Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
+ *	library functions.  Almost, but not quite the same as
+ *	the 4.2 functions
+ */
+#define SYSV_SYSTEM_DIR
+
+/* Define this symbol if your system has the functions bcopy, etc. */
+
+/* #define BSTRING */
+
+/* subprocesses should be defined if you want to
+ have code for asynchronous subprocesses
+ (as used in M-x compile and M-x shell).
+ This is supposed to work now on system V release 2.  */
+
+#define subprocesses
+
+/* If your system uses COFF (Common Object File Format) then define the
+   preprocessor symbol "COFF". */
+
+#define COFF
+
+/* define MAIL_USE_FLOCK if the mailer uses flock
+   to interlock access to /usr/spool/mail/$USER.
+   The alternative is that a lock file named
+   /usr/spool/mail/$USER.lock.  */
+
+/* #define MAIL_USE_FLOCK */
+
+/* Define CLASH_DETECTION if you want lock files to be written
+   so that Emacs can tell instantly when you try to modify
+   a file that someone else has modified in his Emacs.  */
+
+/* #define CLASH_DETECTION */
 
-#if 0
-#ifdef ORDINARY_LINK
-#define LIB_STANDARD -lc /usr/ucblib/libucb.a
-#else
-#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o
-#define LIB_STANDARD -lc /usr/ucblib/libucb.a /usr/ccs/lib/crtn.o
-#endif
-#else
+/* The file containing the kernel's symbol table is called /unix.  */
+
+#define KERNEL_FILE "/unix"
+
+/* The symbol in the kernel where the load average is found
+   is named avenrun.  */
+
+#define LDAV_SYMBOL "avenrun"
+
+/* Define this if system V IPC is available.  */
+
+#define HAVE_SYSVIPC
+
+/* Special hacks needed to make Emacs run on this system.  */
+
+/*
+ *	Make the sigsetmask function go away.  Don't know what the
+ *	ramifications of this are, but doesn't seem possible to
+ *	emulate it properly anyway at this point.
+ */
+
+#define sigsetmask(mask)	/* Null expansion */
+
+/* setjmp and longjmp can safely replace _setjmp and _longjmp,
+   but they will run slower.  */
+
+#define _setjmp setjmp
+#define _longjmp longjmp
 
-#ifdef ORDINARY_LINK
-#define LIB_STANDARD
-#else
+/* On USG systems these have different names */
+#ifndef HAVE_INDEX
+#define index strchr
+#endif /* ! defined (HAVE_INDEX) */
+#ifndef HAVE_RINDEX
+#define rindex strrchr
+#endif /* ! defined (HAVE_RINDEX) */
+
+/* USG systems tend to put everything declared static
+   into the initialized data area, which becomes pure after dumping Emacs.
+   Foil this.  Emacs carefully avoids static vars inside functions.  */
+
+#define static
+
+/* Compiler bug bites on many systems when default ADDR_CORRECT is used.  */
+
+#define ADDR_CORRECT(x) (x)
+
+/* Use terminfo instead of termcap.  */
+
+#define TERMINFO
+
+
+/* The docs for system V/386 suggest v.3 has sigpause,
+   so let's give it a try.  */
+#define HAVE_SYSV_SIGPAUSE
+
+
+/* If we're using the System V X port, BSD bstring functions will be handy */
+
+#ifdef HAVE_X_WINDOWS
+#define BSTRING
+#endif /* HAVE_X_WINDOWS */
+
+/* Enable support for shared libraries in unexec.  */
+
+#define USG_SHARED_LIBRARIES
+
+/* On USG systems signal handlers return void */
+
+#define SIGTYPE void
+
 #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o
 #define LIB_STANDARD -lc /usr/ccs/lib/crtn.o
-#endif
-#endif
 
 /* there are no -lg libraries on this system, and no libPW */
 
@@ -109,8 +230,6 @@
 
 #define HAVE_PTYS
 #define HAVE_TERMIOS
-#undef BROKEN_TIOCGWINSZ
-#undef BROKEN_TIOCGETC
 
 /* It is possible to receive SIGCHLD when there are no children
    waiting, because a previous waitsys(2) cleaned up the carcass of child
@@ -132,7 +251,6 @@
 /* This change means that we don't loop through allocate_pty too many
    times in the (rare) event of a failure. */
 
-#undef FIRST_PTY_LETTER
 #define FIRST_PTY_LETTER 'z'
 
 /* This sets the name of the master side of the PTY. */
@@ -170,16 +288,6 @@
   if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \
     fatal ("ioctl I_PUSH ttcompat", errno);
 
-/* Undo the SVr3 X11 library definition */
-#undef LIB_X11_LIB
-
-/* The definition of this in s-usg5-3.h is not needed in 5.4.  */
-/* liblnsl_s should never be used.  The _s suffix implies a shared
-   library, as opposed to a DLL.  Share libraries were used in SVR3, and are
-   available only in order to allow SVR3 binaries to run.  They should not be
-   linked in to new binaries. -- caraway!pinkas@caraway.intel.com.  */
-#undef LIBX11_SYSTEM
-
 /* Tell x11term.c and keyboard.c we have the system V streams feature.  */
 #define SYSV_STREAMS
 
@@ -189,7 +297,6 @@
 
 /* Markus Weiand <weiand@khof.com> says this is needed for Motif on
    SINIX.  */
-#undef LIBS_SYSTEM
 #define LIBS_SYSTEM -lgen
 
 /* arch-tag: 1a0ed909-5faa-434b-b7c3-9d86c63d53a6
--- a/src/s/ux4800.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,20 +0,0 @@
-/* Definitions file for GNU Emacs running on NEC's UX/4800 (SVR4.2MP) */
-#include "usg5-4-2.h"
-#undef LIB_MOTIF
-#ifndef nec_ews
-#define nec_ews
-#endif
-#ifndef nec_ews_svr4
-#define nec_ews_svr4
-#endif
-#define XOS_NEEDS_TIME_H
-#define HAVE_CLOCK
-#ifdef __STDC__
-#define MKDIR_PROTOTYPE int mkdir(char *dpath, mode_t dmode)
-#endif
-#ifndef __GNUC__
-#define C_DEBUG_SWITCH -O  -KOlimit=3000 -ZXNd=5000
-#endif
-
-/* arch-tag: e42eeb13-028a-490b-8427-0b57010f2ab9
-   (do not change this comment) */
--- a/src/s/uxpds.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-/* Handle uxpds  */
-
-#include "usg5-4-2.h"
-
-/* This triggers a conditional in xfaces.c.  */
-#define XOS_NEEDS_TIME_H
-
-#define FSCALE 256
-
-/* arch-tag: c02db2a6-c725-4a6b-adee-66e0303df2a8
-   (do not change this comment) */
--- a/src/s/uxpv.h	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-/* System description file for Fujitsu UXP/V
-   This file describes the parameters that system description files
-   should define or not.  */
-
-#include "usg5-4-2.h"
-
-/* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
-#undef SYSTEM_TYPE
-#define SYSTEM_TYPE "uxpv"
-
-/* arch-tag: 3f00cfe7-f44c-45ce-a2fe-2b17fc411a1e
-   (do not change this comment) */
--- a/src/sysdep.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/sysdep.c	Thu Jun 26 04:24:54 2008 +0000
@@ -206,10 +206,6 @@
 #define LPASS8 0
 #endif
 
-#ifdef BSD4_1
-#define LNOFLSH 0100000
-#endif
-
 static int baud_convert[] =
 #ifdef BAUD_CONVERT
   BAUD_CONVERT;
@@ -235,11 +231,6 @@
 
 void croak P_ ((char *)) NO_RETURN;
 
-#ifdef AIXHFT
-void hft_init P_ ((struct tty_display_info *));
-void hft_reset P_ ((struct tty_display_info *));
-#endif
-
 /* Temporary used by `sigblock' when defined in terms of signprocmask.  */
 
 SIGMASKTYPE sigprocmask_set;
@@ -483,7 +474,7 @@
       status = SYS$FORCEX (&pid, 0, 0);
       break;
 #else /* not VMS */
-#if defined (BSD_SYSTEM) || (defined (HPUX) && !defined (HPUX_5))
+#if defined (BSD_SYSTEM) || defined (HPUX)
       /* Note that kill returns -1 even if the process is just a zombie now.
 	 But inevitably a SIGCHLD interrupt should be generated
 	 and child_sig will do wait3 and make the process go away. */
@@ -542,16 +533,9 @@
 #if __DJGPP__ > 1
       break;
 #else /* not __DJGPP__ > 1 */
-#ifndef BSD4_1
       if (kill (pid, 0) < 0)
 	break;
       wait (0);
-#else /* BSD4_1 */
-      int status;
-      status = wait (0);
-      if (status == pid || status == -1)
-	break;
-#endif /* BSD4_1 */
 #endif /* not __DJGPP__ > 1*/
 #endif /* not subprocesses */
     }
@@ -695,10 +679,6 @@
 
   EMACS_SET_TTY (out, &s, 0);
 
-#ifdef BSD4_1
-  if (interrupt_input)
-    reset_sigio (0);
-#endif /* BSD4_1 */
 #endif /* not DOS_NT */
 }
 #endif /* not VMS */
@@ -1267,12 +1247,6 @@
 
 
 
-#ifdef BSD4_1
-/* BSD 4.1 needs to keep track of the lmode bits in order to start
-   sigio.  */
-int lmode;
-#endif
-
 #ifdef F_SETOWN
 int old_fcntl_owner[MAXDESC];
 #endif /* F_SETOWN */
@@ -1281,15 +1255,11 @@
    but if so, this does no harm,
    and using the same name avoids wasting the other one's space.  */
 
-#ifdef nec_ews_svr4
-extern char *_sobuf ;
-#else
 #if defined (USG) || defined (DGUX)
 unsigned char _sobuf[BUFSIZ+8];
 #else
 char _sobuf[BUFSIZ];
 #endif
-#endif
 
 #ifdef HAVE_LTCHARS
 static struct ltchars new_ltchars = {-1,-1,-1,-1,-1,-1};
@@ -1495,11 +1465,6 @@
     }
 #endif /* mips or HAVE_TCATTR */
 
-#ifdef SET_LINE_DISCIPLINE
-  /* Need to explicitly request TERMIODISC line discipline or
-     Ultrix's termios does not work correctly.  */
-  tty.main.c_line = SET_LINE_DISCIPLINE;
-#endif
 #ifdef AIX
 #ifndef IBMR2AIX
   /* AIX enhanced edit loses NULs, so disable it.  */
@@ -1566,16 +1531,7 @@
     }
   
   tty.lmode = LDECCTQ | LLITOUT | LPASS8 | LNOFLSH | tty_out->old_tty.lmode;
-#ifdef ultrix
-  /* Under Ultrix 4.2a, leaving this out doesn't seem to hurt
-     anything, and leaving it in breaks the meta key.  Go figure.  */
-  tty.lmode &= ~LLITOUT;
-#endif
   
-#ifdef BSD4_1
-  lmode = tty.lmode;
-#endif
-
 #endif /* HAVE_TCHARS */
 #endif /* not HAVE_TERMIO */
 
@@ -1600,26 +1556,12 @@
   if (!tty_out->flow_control) ioctl (fileno (tty_out->input), TIOCSTART, 0);
 #endif
 
-#if defined (HAVE_TERMIOS) || defined (HPUX9)
+#if defined (HAVE_TERMIOS) || defined (HPUX)
 #ifdef TCOON
   if (!tty_out->flow_control) tcflow (fileno (tty_out->input), TCOON);
 #endif
 #endif
 
-#ifdef AIXHFT
-  hft_init (tty_out);
-#ifdef IBMR2AIX
-  {
-    /* IBM's HFT device usually thinks a ^J should be LF/CR.  We need it
-       to be only LF.  This is the way that is done. */
-    struct termio tty;
-    
-    if (ioctl (1, HFTGETID, &tty) != -1)
-      write (1, "\033[20l", 5);
-  }
-#endif
-#endif /* AIXHFT */
-
 #ifdef VMS
 /*  Appears to do nothing when in PASTHRU mode.
       SYS$QIOW (0, fileno (tty_out->input), IO$_SETMODE|IO$M_OUTBAND, 0, 0, 0,
@@ -1649,11 +1591,6 @@
 #endif /* F_GETOWN */
 #endif /* F_SETFL */
 
-#ifdef BSD4_1
-  if (interrupt_input)
-    init_sigio (fileno (tty_out->input));
-#endif
-
 #ifdef VMS  /* VMS sometimes has this symbol but lacks setvbuf.  */
 #undef _IOFBF
 #endif
@@ -1868,26 +1805,13 @@
   cmgoto (tty_out, FrameRows (tty_out) - 1, 0);
   fflush (tty_out->output);
   
-#if defined (IBMR2AIX) && defined (AIXHFT)
-  {
-    /* HFT devices normally use ^J as a LF/CR.  We forced it to
-       do the LF only.  Now, we need to reset it. */
-    struct termio tty;
-
-    if (ioctl (1, HFTGETID, &tty) != -1)
-      write (1, "\033[20h", 5);
-  }
-#endif
-
   if (tty_out->terminal->reset_terminal_modes_hook)
     tty_out->terminal->reset_terminal_modes_hook (tty_out->terminal);
 
 #ifdef BSD_SYSTEM
-#ifndef BSD4_1
   /* Avoid possible loss of output when changing terminal modes.  */
   fsync (fileno (tty_out->output));
 #endif
-#endif
 
 #ifdef F_SETFL
 #ifdef F_SETOWN		/* F_SETFL does not imply existence of F_SETOWN */
@@ -1903,10 +1827,6 @@
          fcntl (fileno (tty_out->input), F_GETFL, 0) & ~O_NDELAY);
 #endif
 #endif /* F_SETFL */
-#ifdef BSD4_1
-  if (interrupt_input)
-    reset_sigio (fileno (tty_out->input));
-#endif /* BSD4_1 */
 
   if (tty_out->old_tty)
     while (EMACS_SET_TTY (fileno (tty_out->input),
@@ -1917,17 +1837,6 @@
   dos_ttcooked ();
 #endif
 
-#ifdef SET_LINE_DISCIPLINE
-  /* Ultrix's termios *ignores* any line discipline except TERMIODISC.
-     A different old line discipline is therefore not restored, yet.
-     Restore the old line discipline by hand.  */
-  ioctl (0, TIOCSETD, &tty_out->old_tty.main.c_line);
-#endif
-
-#ifdef AIXHFT
-  hft_reset ();
-#endif
-
 #ifdef BSD_PGRPS
   widen_foreground_group (fileno (tty_out->input));
 #endif
@@ -2318,20 +2227,14 @@
 /* init_system_name sets up the string for the Lisp function
    system-name to return. */
 
-#ifdef BSD4_1
-#include <whoami.h>
-#endif
-
 extern Lisp_Object Vsystem_name;
 
-#ifndef BSD4_1
 #ifndef VMS
 #ifdef HAVE_SOCKETS
 #include <sys/socket.h>
 #include <netdb.h>
 #endif /* HAVE_SOCKETS */
 #endif /* not VMS */
-#endif /* not BSD4_1 */
 
 #ifdef TRY_AGAIN
 #ifndef HAVE_H_ERRNO
@@ -2342,9 +2245,6 @@
 void
 init_system_name ()
 {
-#ifdef BSD4_1
-  Vsystem_name = build_string (sysname);
-#else
 #ifdef VMS
   char *sp, *end;
   if ((sp = egetenv ("SYS$NODE")) == 0)
@@ -2525,7 +2425,6 @@
   Vsystem_name = build_string (hostname);
 #endif /* HAVE_GETHOSTNAME */
 #endif /* VMS */
-#endif /* BSD4_1 */
   {
     unsigned char *p;
     for (p = SDATA (Vsystem_name); *p; p++)
@@ -2567,11 +2466,7 @@
 select_alarm ()
 {
   select_alarmed = 1;
-#ifdef BSD4_1
-  sigrelse (SIGALRM);
-#else /* not BSD4_1 */
   signal (SIGALRM, SIG_IGN);
-#endif /* not BSD4_1 */
   SIGNAL_THREAD_CHECK (SIGALRM);
   if (read_alarm_should_throw)
     longjmp (read_alarm_throw, 1);
@@ -2782,93 +2677,6 @@
 #endif /* not VMS */
 #endif /* not MSDOS */
 
-#ifdef BSD4_1
-void
-init_sigio (fd)
-     int fd;
-{
-  if (noninteractive)
-    return;
-  lmode = LINTRUP | lmode;
-  ioctl (fd, TIOCLSET, &lmode);
-}
-
-void
-reset_sigio (fd)
-     int fd;
-{
-  if (noninteractive)
-    return;
-  lmode = ~LINTRUP & lmode;
-  ioctl (fd, TIOCLSET, &lmode);
-}
-
-void
-request_sigio ()
-{
-  if (noninteractive)
-    return;
-  sigrelse (SIGTINT);
-
-  interrupts_deferred = 0;
-}
-
-void
-unrequest_sigio ()
-{
-  if (noninteractive)
-    return;
-  sighold (SIGTINT);
-
-  interrupts_deferred = 1;
-}
-
-/* still inside #ifdef BSD4_1 */
-#ifdef subprocesses
-
-int sigheld; /* Mask of held signals */
-
-void
-sigholdx (signum)
-     int signum;
-{
-  sigheld |= sigbit (signum);
-  sighold (signum);
-}
-
-void
-sigisheld (signum)
-     int signum;
-{
-  sigheld |= sigbit (signum);
-}
-
-void
-sigunhold (signum)
-     int signum;
-{
-  sigheld &= ~sigbit (signum);
-  sigrelse (signum);
-}
-
-void
-sigfree ()    /* Free all held signals */
-{
-  int i;
-  for (i = 0; i < NSIG; i++)
-    if (sigheld & sigbit (i))
-      sigrelse (i);
-  sigheld = 0;
-}
-
-int
-sigbit (i)
-{
-  return 1 << (i - 1);
-}
-#endif /* subprocesses */
-#endif /* BSD4_1 */
-
 /* POSIX signals support - DJB */
 /* Anyone with POSIX signals should have ANSI C declarations */
 
@@ -3327,11 +3135,6 @@
 {
   register int rtnval;
 
-#ifdef BSD4_1
-  if (oflag & O_CREAT)
-    return creat (path, mode);
-#endif
-
   while ((rtnval = open (path, oflag, mode)) == -1
 	 && (errno == EINTR))
     QUIT;
@@ -5189,100 +4992,6 @@
 }
 #endif /* VMS */
 
-#ifdef AIXHFT
-
-/* Called from init_sys_modes.  */
-void
-hft_init (struct tty_display_info *tty_out)
-{
-  int junk;
-
-  /* If we're not on an HFT we shouldn't do any of this.  We determine
-     if we are on an HFT by trying to get an HFT error code.  If this
-     call fails, we're not on an HFT. */
-#ifdef IBMR2AIX
-  if (ioctl (0, HFQERROR, &junk) < 0)
-    return;
-#else /* not IBMR2AIX */
-  if (ioctl (0, HFQEIO, 0) < 0)
-    return;
-#endif /* not IBMR2AIX */
-
-  /* On AIX the default hft keyboard mapping uses backspace rather than delete
-     as the rubout key's ASCII code.  Here this is changed.  The bug is that
-     there's no way to determine the old mapping, so in reset_sys_modes
-     we need to assume that the normal map had been present.  Of course, this
-     code also doesn't help if on a terminal emulator which doesn't understand
-     HFT VTD's.  */
-  {
-    struct hfbuf buf;
-    struct hfkeymap keymap;
-
-    buf.hf_bufp = (char *)&keymap;
-    buf.hf_buflen = sizeof (keymap);
-    keymap.hf_nkeys = 2;
-    keymap.hfkey[0].hf_kpos = 15;
-    keymap.hfkey[0].hf_kstate = HFMAPCHAR | HFSHFNONE;
-#ifdef IBMR2AIX
-    keymap.hfkey[0].hf_keyidh = '<';
-#else /* not IBMR2AIX */
-    keymap.hfkey[0].hf_page = '<';
-#endif /* not IBMR2AIX */
-    keymap.hfkey[0].hf_char = 127;
-    keymap.hfkey[1].hf_kpos = 15;
-    keymap.hfkey[1].hf_kstate = HFMAPCHAR | HFSHFSHFT;
-#ifdef IBMR2AIX
-    keymap.hfkey[1].hf_keyidh = '<';
-#else /* not IBMR2AIX */
-    keymap.hfkey[1].hf_page = '<';
-#endif /* not IBMR2AIX */
-    keymap.hfkey[1].hf_char = 127;
-    hftctl (0, HFSKBD, &buf);
-  }
-}
-
-/* Reset the rubout key to backspace.  */
-
-void
-hft_reset (struct tty_display_info *tty_out)
-{
-  struct hfbuf buf;
-  struct hfkeymap keymap;
-  int junk;
-
-#ifdef IBMR2AIX
-  if (ioctl (0, HFQERROR, &junk) < 0)
-    return;
-#else /* not IBMR2AIX */
-  if (ioctl (0, HFQEIO, 0) < 0)
-    return;
-#endif /* not IBMR2AIX */
-
-  buf.hf_bufp = (char *)&keymap;
-  buf.hf_buflen = sizeof (keymap);
-  keymap.hf_nkeys = 2;
-  keymap.hfkey[0].hf_kpos = 15;
-  keymap.hfkey[0].hf_kstate = HFMAPCHAR | HFSHFNONE;
-#ifdef IBMR2AIX
-  keymap.hfkey[0].hf_keyidh = '<';
-#else /* not IBMR2AIX */
-  keymap.hfkey[0].hf_page = '<';
-#endif /* not IBMR2AIX */
-  keymap.hfkey[0].hf_char = 8;
-  keymap.hfkey[1].hf_kpos = 15;
-  keymap.hfkey[1].hf_kstate = HFMAPCHAR | HFSHFSHFT;
-#ifdef IBMR2AIX
-  keymap.hfkey[1].hf_keyidh = '<';
-#else /* not IBMR2AIX */
-  keymap.hfkey[1].hf_page = '<';
-#endif /* not IBMR2AIX */
-  keymap.hfkey[1].hf_char = 8;
-  hftctl (0, HFSKBD, &buf);
-}
-
-#endif /* AIXHFT */
-
-
 #ifndef BSTRING
 
 #ifndef bzero
--- a/src/syssignal.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/syssignal.h	Thu Jun 26 04:24:54 2008 +0000
@@ -143,9 +143,7 @@
 { SIGMASKTYPE omask = sigblock (SIGFULLMASK); sigsetmask (omask & ~SIG); }
 #endif
 
-#ifndef BSD4_1
 #define sigfree() sigsetmask (SIGEMPTYMASK)
-#endif /* not BSD4_1 */
 
 #if defined (SIGINFO) && defined (BROKEN_SIGINFO)
 #undef SIGINFO
@@ -180,11 +178,6 @@
 # define NSIG NSIG_MINIMUM
 #endif
 
-#ifdef BSD4_1
-#define SIGIO SIGTINT
-/* sigfree is in sysdep.c */
-#endif /* BSD4_1 */
-
 /* On bsd, [man says] kill does not accept a negative number to kill a pgrp.
    Must do that using the killpg call.  */
 #ifdef BSD_SYSTEM
--- a/src/systty.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/systty.h	Thu Jun 26 04:24:54 2008 +0000
@@ -93,19 +93,6 @@
 #include <termios.h>
 #endif
 
-#ifdef AIXHFT
-/* Get files for keyboard remapping */
-#define HFNKEYS 2
-#include <sys/hft.h>
-#include <sys/devinfo.h>
-#endif
-
-/* Get rid of LLITOUT in 4.1, since it is said to stimulate kernel bugs.  */
-#ifdef BSD4_1
-#undef LLITOUT
-#define LLITOUT 0
-#endif /* 4.1 */
-
 #ifdef NEED_BSDTTY
 #include <sys/bsdtty.h>
 #endif
--- a/src/syswait.h	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/syswait.h	Thu Jun 26 04:24:54 2008 +0000
@@ -91,11 +91,7 @@
 
 #else
 
-#ifdef BSD4_1
-#include <wait.h>
-#else
 #include <sys/wait.h>
-#endif /* not BSD 4.1 */
 
 #define WAITTYPE union wait
 #define WRETCODE(w) w.w_retcode
--- a/src/term.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/term.c	Thu Jun 26 04:24:54 2008 +0000
@@ -3801,13 +3801,6 @@
 
   init_baud_rate (fileno (tty->input));
 
-#ifdef AIXHFT
-  /* The HFT system on AIX doesn't optimize for scrolling, so it's
-     really ugly at times.  */
-  terminal->line_ins_del_ok = 0;
-  terminal->char_ins_del_ok = 0;
-#endif
-
   /* Don't do this.  I think termcap may still need the buffer. */
   /* xfree (buffer); */
 
--- a/src/unexec.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/unexec.c	Thu Jun 26 04:24:54 2008 +0000
@@ -197,7 +197,7 @@
 #include <sys/stat.h>
 #include <errno.h>
 
-#include <sys/file.h>	/* Must be after sys/types.h for USG and BSD4_1*/
+#include <sys/file.h>	/* Must be after sys/types.h for USG*/
 
 #ifdef USG5
 #include <fcntl.h>
--- a/src/unexelf.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/unexelf.c	Thu Jun 26 04:24:54 2008 +0000
@@ -433,9 +433,6 @@
 #if __sgi
 #include <syms.h> /* for HDRR declaration */
 #endif /* __sgi */
-#ifdef BROKEN_NOCOMBRELOC
-#include <assert.h>
-#endif
 
 #ifndef MAP_ANON
 #ifdef MAP_ANONYMOUS
@@ -690,9 +687,6 @@
   int old_mdebug_index;
   struct stat stat_buf;
   int old_file_size;
-#ifdef BROKEN_NOCOMBRELOC
-  int unreloc_sections[10], n_unreloc_sections;
-#endif
 
   /* Open the old file, allocate a buffer of the right size, and read
      in the file contents.  */
@@ -982,23 +976,11 @@
 	     section just before .bss has less-strict alignment; this
 	     was observed between .symtab and .bss on Solaris 2.5.1
 	     (sparc) with GCC snapshot 960602.  */
-#ifdef SOLARIS_POWERPC
-	  /* On PPC Reference Platform running Solaris 2.5.1
-	     the plt section is also of type NOBI like the bss section.
-	     (not really stored) and therefore sections after the bss
-	     section start at the plt offset. The plt section is always
-	     the one just before the bss section.
-	     It would be better to put the new data section before
-	     the .plt section, or use libelf instead.
-	     Erik Deumens, deumens@qtp.ufl.edu.  */
-	  if (NEW_SECTION_H (nn).sh_offset
-	      >= OLD_SECTION_H (old_bss_index-1).sh_offset)
-	    NEW_SECTION_H (nn).sh_offset += new_data2_size;
-#else
+
 	  if (NEW_SECTION_H (nn).sh_offset + NEW_SECTION_H (nn).sh_size
 	      > new_data2_offset)
 	    NEW_SECTION_H (nn).sh_offset += new_data2_size;
-#endif
+
 	  /* Any section that was originally placed after the section
 	     header table should now be off by the size of one section
 	     header table entry.  */
@@ -1224,7 +1206,6 @@
 
   /* This loop seeks out relocation sections for the data section, so
      that it can undo relocations performed by the runtime linker.  */
-#ifndef BROKEN_NOCOMBRELOC
   for (n = new_file_h->e_shnum - 1; n; n--)
     {
       ElfW(Shdr) section = NEW_SECTION_H (n);
@@ -1279,81 +1260,6 @@
 	  break;
 	}
     }
-#else /* BROKEN_NOCOMBRELOC */
-  for (n = 1, n_unreloc_sections = 0; n < new_file_h->e_shnum; n++)
-    if (!strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".data")
-	|| !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".sdata")
-	|| !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".lit4")
-	|| !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".lit8")
-#ifdef IRIX6_5			/* see above */
-	|| !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".got")
-#endif
-	|| !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".sdata1")
-	|| !strcmp (old_section_names + NEW_SECTION_H (n).sh_name, ".data1"))
-      {
-	assert (n_unreloc_sections
-		< (sizeof (unreloc_sections) / sizeof (unreloc_sections[0])));
-	unreloc_sections[n_unreloc_sections++] = n;
-#ifdef DEBUG
-	fprintf (stderr, "section %d: %s\n", n,
-		 old_section_names + NEW_SECTION_H (n).sh_name);
-#endif
-      }
-
-  for (n = new_file_h->e_shnum - 1; n; n--)
-    {
-      ElfW(Shdr) section = NEW_SECTION_H (n);
-      caddr_t reloc, end;
-      ElfW(Addr) addr, offset;
-      int target;
-
-      switch (section.sh_type)
-	{
-	default:
-	  break;
-	case SHT_REL:
-	case SHT_RELA:
-	  /* This code handles two different size structs, but there should
-	     be no harm in that provided that r_offset is always the first
-	     member.  */
-	  for (reloc = old_base + section.sh_offset,
-		 end = reloc + section.sh_size;
-	       reloc < end;
-	       reloc += section.sh_entsize)
-	    {
-	      addr = ((ElfW(Rel) *) reloc)->r_offset;
-#ifdef __alpha__
-	      /* The Alpha ELF binutils currently have a bug that
-		 sometimes results in relocs that contain all
-		 zeroes.  Work around this for now...  */
-	      if (addr == 0)
-		continue;
-#endif
-	      for (nn = 0; nn < n_unreloc_sections; nn++)
-		{
-		  target = unreloc_sections[nn];
-		  if (NEW_SECTION_H (target).sh_addr <= addr
-		      && addr < (NEW_SECTION_H (target).sh_addr +
-				 NEW_SECTION_H (target).sh_size))
-		    {
-		      offset = (NEW_SECTION_H (target).sh_addr -
-				NEW_SECTION_H (target).sh_offset);
-		      memcpy (new_base + addr - offset,
-			      old_base + addr - offset,
-			      sizeof (ElfW(Addr)));
-#ifdef DEBUG
-		      fprintf (stderr, "unrelocate: [%08lx] <= %08lx\n",
-			       (long) addr,
-			       (long) *((long *) (new_base + addr - offset)));
-#endif
-		      break;
-		    }
-		}
-	    }
-	  break;
-	}
-    }
-#endif	/* BROKEN_NOCOMBRELOC */
 
   /* Write out new_file, and free the buffers.  */
 
--- a/src/unexhp9k800.c	Thu Jun 26 04:17:19 2008 +0000
+++ b/src/unexhp9k800.c	Thu Jun 26 04:24:54 2008 +0000
@@ -59,9 +59,7 @@
 
 #include <a.out.h>
 
-#ifdef HPUX_USE_SHLIBS
 #include <dl.h>
-#endif
 
 /* brk value to restore, stored as a global.
    This is really used only if we used shared libraries.  */
--- a/src/unexnext.c	Thu Jun 26 04:17:19 2008 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,514 +0,0 @@
-/* Dump Emacs in macho format.
-   Copyright (C) 1990, 1993, 2001, 2002, 2003, 2004,
-                 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
-   Written by Bradley Taylor (btaylor@next.com).
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-
-#undef __STRICT_BSD__
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdarg.h>
-#include <mach/mach.h>
-#include <mach-o/loader.h>
-#include <mach-o/reloc.h>
-#include <sys/file.h>
-#include <sys/stat.h>
-#include <unistd.h>
-/* Instead of unistd.h, this used to include libc.h.
-   "Nelson H. F. Beebe" <beebe@math.utah.edu> says that doesn't work
-   in system version 3.3.  */
-
-
-int malloc_cookie;
-
-/*
- * Kludge: we don't expect any program data beyond VM_HIGHDATA
- * What is really needed is a way to find out from malloc() which
- * pages it vm_allocated and write only those out into the data segment.
- *
- * This kludge may break when we stop using fixed virtual address
- * shared libraries. Actually, emacs will probably continue working, but be
- * much larger on disk than it needs to be (because non-malloced data will
- * be in the file).
- */
-static const unsigned VM_HIGHDATA = 0x2000000;
-
-typedef struct region_t {
-	vm_address_t address;
-	vm_size_t size;
-	vm_prot_t protection;
-	vm_prot_t max_protection;
-	vm_inherit_t inheritance;
-	boolean_t shared;
-	port_t object_name;
-	vm_offset_t offset;
-} region_t;
-
-
-static void
-grow(
-     struct load_command ***the_commands,
-     unsigned *the_commands_len
-     )
-{
-	if (*the_commands == NULL) {
-		*the_commands_len = 1;
-		*the_commands = malloc(sizeof(*the_commands));
-	} else {
-		(*the_commands_len)++;
-		*the_commands = realloc(*the_commands,
-					(*the_commands_len *
-					 sizeof(**the_commands)));
-	}
-}
-
-
-static void
-save_command(
-	     struct load_command *command,
-	     struct load_command ***the_commands,
-	     unsigned *the_commands_len
-	     )
-{
-	struct load_command **tmp;
-
-	grow(the_commands, the_commands_len);
-	tmp = &(*the_commands)[*the_commands_len - 1];
-	*tmp = malloc(command->cmdsize);
-	bcopy(command, *tmp, command->cmdsize);
-}
-
-static void
-fatal_unexec(char *format, ...)
-{
-	va_list ap;
-
-	va_start(ap, format);
-	fprintf(stderr, "unexec: ");
-	vfprintf(stderr, format, ap);
-	fprintf(stderr, "\n");
-	va_end(ap);
-}
-
-static int
-read_macho(
-	   int fd,
-	   struct mach_header *the_header,
-	   struct load_command ***the_commands,
-	   unsigned *the_commands_len
-	   )
-{
-	struct load_command command;
-	struct load_command *buf;
-	int i;
-	int size;
-
-	if (read(fd, the_header, sizeof(*the_header)) != sizeof(*the_header)) {
-		fatal_unexec("cannot read macho header");
-		return (0);
-	}
-	for (i = 0; i < the_header->ncmds; i++) {
-		if (read(fd, &command, sizeof(struct load_command)) !=
-		    sizeof(struct load_command)) {
-		  	fatal_unexec("cannot read macho load command header");
-			return (0);
-		}
-		size = command.cmdsize - sizeof(struct load_command);
-		if (size < 0) {
-		  	fatal_unexec("bogus load command size");
-			return (0);
-		}
-		buf = malloc(command.cmdsize);
-		buf->cmd = command.cmd;
-		buf->cmdsize = command.cmdsize;
-		if (read(fd, ((char *)buf +
-			      sizeof(struct load_command)),
-			 size) != size) {
-		  	fatal_unexec("cannot read load command data");
-			return (0);
-		}
-		save_command(buf, the_commands, the_commands_len);
-	}
-	return (1);
-}
-
-static int
-filldatagap(
-	    vm_address_t start_address,
-	    vm_size_t *size,
-	    vm_address_t end_address
-	    )
-{
-	vm_address_t address;
-	vm_size_t gapsize;
-
-	address = (start_address + *size);
-	gapsize = end_address - address;
-	*size += gapsize;
-	if (vm_allocate(task_self(), &address, gapsize,
-			FALSE) != KERN_SUCCESS) {
-		fatal_unexec("cannot vm_allocate");
-	        return (0);
-	}
-	return (1);
-}
-
-static int
-get_data_region(
-		vm_address_t *address,
-		vm_size_t *size
-		)
-{
-	region_t region;
-	kern_return_t ret;
-	struct section *sect;
-
-	sect = (struct section *) getsectbyname(SEG_DATA, SECT_DATA);
-	region.address = 0;
-	*address = 0;
-	for (;;) {
-		ret = vm_region(task_self(),
-				&region.address,
-				&region.size,
-				&region.protection,
-				&region.max_protection,
-				&region.inheritance,
-				&region.shared,
-				&region.object_name,
-				&region.offset);
-		if (ret != KERN_SUCCESS || region.address >= VM_HIGHDATA) {
-			break;
-		}
-		if (*address != 0) {
-			if (region.address > *address + *size) {
-				if (!filldatagap(*address, size,
-						 region.address)) {
-					return (0);
-				}
-			}
-			*size += region.size;
-		} else {
-			if (region.address == sect->addr) {
-				*address = region.address;
-				*size = region.size;
-			}
-		}
-		region.address += region.size;
-	}
-	return (1);
-}
-
-static char *
-my_malloc(
-	  vm_size_t size
-	  )
-{
-	vm_address_t address;
-
-	if (vm_allocate(task_self(), &address, size, TRUE) != KERN_SUCCESS) {
-		return (NULL);
-	}
-	return ((char *)address);
-}
-
-static void
-my_free(
-	char *buf,
-	vm_size_t size
-	)
-{
-	vm_deallocate(task_self(), (vm_address_t)buf, size);
-}
-
-static int
-unexec_doit(
-	    int infd,
-	    int outfd
-	    )
-{
-	int i;
-	struct load_command **the_commands = NULL;
-	unsigned the_commands_len;
-	struct mach_header the_header;
-	int fgrowth = 0;
-	int fdatastart;
-	int fdatasize;
-	int size;
-	struct stat st;
-	char *buf;
-	vm_address_t data_address;
-	vm_size_t data_size;
-	vm_size_t vmaddr_growth = 0;
-	vm_size_t dataseg_vmaddr, dataseg_vmend;
-
-	struct segment_command *segment;
-
-#ifdef NS_TARGET
-	unsigned long extreloff = 0;
-	unsigned long nextrel = 0;
-	struct dysymtab_command *dysymtab;
-	struct relocation_info reloc_info;
-#endif
-
-	if (!read_macho(infd, &the_header, &the_commands, &the_commands_len)) {
-		return (0);
-	}
-
-
-	malloc_cookie = malloc_freezedry ();
-	if (!get_data_region(&data_address, &data_size)) {
-		return (0);
-	}
-
-
-	/*
-	 * DO NOT USE MALLOC IN THIS SECTION
-	 */
-	{
-		/*
-		 * Fix offsets
-		 */
-		for (i = 0; i < the_commands_len; i++) {
-			switch (the_commands[i]->cmd) {
-			case LC_SEGMENT:
-				segment = ((struct segment_command *)
-					   the_commands[i]);
-				if (strcmp(segment->segname, SEG_DATA) == 0) {
-					fdatastart = segment->fileoff;
-					fdatasize = segment->filesize;
-					fgrowth = (data_size -
-						   segment->filesize);
-					segment->vmsize = data_size;
-					segment->filesize = data_size;
-					dataseg_vmaddr = segment->vmaddr;
-					dataseg_vmend = segment->vmaddr + segment->vmsize;
-					vmaddr_growth = segment->vmaddr + segment->vmsize;
-				} else {
-					((struct segment_command *)the_commands[i])->fileoff += fgrowth;
-				}
-
-				if( strcmp( segment->segname, SEG_LINKEDIT ) == 0 ) {
-					segment->vmaddr = vmaddr_growth;
-				}
-
-				break;
-			case LC_SYMTAB:
-				((struct symtab_command *)
-				 the_commands[i])->symoff += fgrowth;
-				((struct symtab_command *)
-				 the_commands[i])->stroff += fgrowth;
-				break;
-			case LC_SYMSEG:
-				((struct symseg_command *)
-				 the_commands[i])->offset += fgrowth;
-				break;
-#ifdef NS_TARGET
-			case LC_DYSYMTAB:
-				dysymtab = ((struct dysymtab_command *)the_commands[i]);
-				extreloff = dysymtab->extreloff;
-				nextrel = dysymtab->nextrel;
-				dysymtab->indirectsymoff += fgrowth;
-				dysymtab->extreloff += fgrowth;
-				break;
-#endif
-			default:
-				break;
-			}
-		}
-
-		/*
-		 * Write header
-		 */
-		if (write(outfd, &the_header,
-			  sizeof(the_header)) != sizeof(the_header)) {
-			fatal_unexec("cannot write output file");
-			return (0);
-		}
-
-		/*
-		 * Write commands
-		 */
-		for (i = 0; i < the_commands_len; i++) {
-			if (write(outfd, the_commands[i],
-				  the_commands[i]->cmdsize) !=
-			    the_commands[i]->cmdsize) {
-			  	fatal_unexec("cannot write output file");
-				return (0);
-			}
-		}
-
-		/*
-		 * Write original text
-		 */
-		if (lseek(infd, the_header.sizeofcmds + sizeof(the_header),
-			  L_SET) < 0) {
-		  	fatal_unexec("cannot seek input file");
-			return (0);
-		}
-		size = fdatastart - (sizeof(the_header) +
-				     the_header.sizeofcmds);
-		buf = my_malloc(size);
-		if (read(infd, buf, size) != size) {
-			my_free(buf, size);
-		  	fatal_unexec("cannot read input file");
-		}
-		if (write(outfd, buf, size) != size) {
-			my_free(buf, size);
-			fatal_unexec("cannot write output file");
-			return (0);
-		}
-		my_free(buf, size);
-
-
-		/*
-		 * Write new data
-		 */
-		if (write(outfd, (char *)data_address,
-			  data_size) != data_size) {
-			fatal_unexec("cannot write output file");
-			return (0);
-		}
-
-	}
-
-	/*
-	 * OKAY TO USE MALLOC NOW
-	 */
-
-	/*
-	 * Write rest of file
-	 */
-	fstat(infd, &st);
-	if (lseek(infd, fdatasize, L_INCR) < 0) {
-		fatal_unexec("cannot seek input file");
-		return (0);
-	}
-	size = st.st_size - lseek(infd, 0, L_INCR);
-
-	buf = malloc(size);
-	if (read(infd, buf, size) != size) {
-		free(buf);
-		fatal_unexec("cannot read input file");
-		return (0);
-	}
-	if (write(outfd, buf, size) != size) {
-		free(buf);
-		fatal_unexec("cannot write output file");
-		return (0);
-	}
-	free(buf);
-
-#ifdef NS_TARGET
-        /*
-         * Fix up relocation entries in the data segment.
-         */
-
-	if (lseek(infd, extreloff, L_SET) < 0) {
-		fatal_unexec("cannot seek input file");
-		return (0);
-	}
-
-        for (i = 0; i < nextrel; i++)
-        {
-          long zeroval = 0;
-
-          if (read(infd, &reloc_info, sizeof (reloc_info)) != sizeof (reloc_info)) {
-            fatal_unexec("cannot read input file");
-            return (0);
-          }
-          if (reloc_info.r_address >= dataseg_vmaddr && reloc_info.r_address < dataseg_vmend)
-          {
-            if (lseek (outfd, fdatastart + reloc_info.r_address - dataseg_vmaddr, L_SET) < 0 ) {
-              fatal_unexec("cannot seek input file");
-              return (0);
-            }
-            switch (reloc_info.r_length) {
-              case 0:
-		if (write(outfd, &zeroval, 1) != 1) {
-			fatal_unexec("cannot write output file");
-			return (0);
-		}
-                break;
-              case 1:
-		if (write(outfd, &zeroval, 2) != 2) {
-			fatal_unexec("cannot write output file");
-			return (0);
-		}
-                break;
-              case 2:
-		if (write(outfd, &zeroval, 4) != 4) {
-			fatal_unexec("cannot write output file");
-			return (0);
-		}
-                break;
-            }
-          }
-        }
-#endif
-
-	return (1);
-}
-
-void
-unexec(
-       char *outfile,
-       char *infile
-       )
-{
-	int infd;
-	int outfd;
-	char tmpbuf[L_tmpnam];
-	char *tmpfile;
-
-	infd = open(infile, O_RDONLY, 0);
-	if (infd < 0) {
-	  	fatal_unexec("cannot open input file `%s'", infile);
-		exit(1);
-	}
-
-	tmpnam(tmpbuf);
-	tmpfile = rindex(tmpbuf, '/');
-	if (tmpfile == NULL) {
-		tmpfile = tmpbuf;
-	} else {
-		tmpfile++;
-	}
-	outfd = open(tmpfile, O_WRONLY|O_TRUNC|O_CREAT, 0755);
-	if (outfd < 0) {
-		close(infd);
-		fatal_unexec("cannot open tmp file `%s'", tmpfile);
-		exit(1);
-	}
-	if (!unexec_doit(infd, outfd)) {
-		close(infd);
-		close(outfd);
-		unlink(tmpfile);
-		exit(1);
-	}
-	close(infd);
-	close(outfd);
-	if (rename(tmpfile, outfile) < 0) {
-		unlink(tmpfile);
-		fatal_unexec("cannot rename `%s' to `%s'", tmpfile, outfile);
-		exit(1);
-	}
-}
-
-/* arch-tag: 9796bdc3-c050-417a-b2f5-4cfd31032634
-   (do not change this comment) */