+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
BROKEN_SIGIO
BROKEN_TIOCGETC
BROKEN_TIOCGWINSZ
-BSD4_2
BSD4_3
BSD4_4
BSD_PGRPS
HAVE_PTYS
HAVE_SELECT
HAVE_SOCKETS
+HAVE_STRING_H
HAVE_SYSVIPC
HAVE_SYSV_SIGPAUSE
HAVE_SYS_WAIT_H
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
PNTR_COMPARISON_TYPE
POSIX_SIGNALS
PREFER_VSUSP
+PREFER_VSUSP
PTY_ITERATION
PTY_NAME_SPRINTF
PTY_OPEN
S_IFMT
S_IREAD
S_IWRITE
+TAB3
+TABDLY
TERMCAP
TERMINFO
TEXT_END
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
magic
mc68000
mips
+prep
sel
subprocesses
sun
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
### 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
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 ;;
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 ;;
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
;;
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"
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
;;
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 )
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 ;;
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
*) ;;
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
*-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
;;
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
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 ;;
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
### 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
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 ;;
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 ;;
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
;;
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"
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
;;
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 )
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 ;;
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
*) ;;
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
*-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
;;
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
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 ;;
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
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
+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.
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.
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
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,
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.
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,
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.
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
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
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.
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
(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.
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
\f
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
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
#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
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)
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
\f
Local variables:
+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/.
#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 ()
+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
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
+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>
#undef CRAY_STACKSEG_END
-#undef UNEXEC_SRC
-
#undef HAVE_LIBXBSD
#undef HAVE_XRMSETDATABASE
#undef HAVE_XSCREENRESOURCESTRING
+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
LIBOBJS = @LIBOBJS@
lispsource = ${srcdir}/../lisp/
-admindir = $(srcdir)/../admin/
libsrc = ../lib-src/
etc = ../etc/
oldXMenudir = ../oldXMenu/
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__
#ifndef UNEXEC
#define UNEXEC unexec.o
#endif
-#ifndef UNEXEC_SRC
-#define UNEXEC_SRC unexec.c
-#endif
INTERVAL_SRC = intervals.h composite.h
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 \
#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)
/* 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);
#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
#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");
#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) */
}
#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
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
#ifdef HPUX
#include <netio.h>
-#ifndef HPUX8
-#ifndef HPUX9
-#include <errnet.h>
-#endif
-#endif
#endif
#include "commands.h"
|| 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)
{
#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. */
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);
void
handle_async_input ()
{
-#ifdef BSD4_1
- extern int select_alarmed;
-#endif
-
interrupt_input_pending = 0;
while (1)
if (nread <= 0)
break;
-#ifdef BSD4_1
- select_alarmed = 1; /* Force the select emulator back to life */
-#endif
}
}
signal (signo, input_available_signal);
#endif /* USG */
-#ifdef BSD4_1
- sigisheld (SIGIO);
-#endif
-
#ifdef SYNC_INPUT
interrupt_input_pending = 1;
#else
handle_async_input ();
#endif
-#ifdef BSD4_1
- sigfree ();
-#endif
errno = old_errno;
}
#endif /* SIGIO */
+++ /dev/null
-/* 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) */
/* 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
+++ /dev/null
-/* 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 */
-\f
-/* 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 */
-\f
-#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) */
+++ /dev/null
-/* 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) */
/* 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
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. */
+++ /dev/null
-/* 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
-
-\f
-/* 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) */
#define HAVE_SYSVIPC
-#if defined(emacs) && !defined(INHIBIT_BSD_TIME)
+#if defined(emacs)
#include <bsd/sys/time.h>
#endif
+++ /dev/null
-#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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
#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 */
# endif
#endif
-#ifdef __bsdi__
-#define BSD4_2
-#endif
-
#ifdef CYGWIN
#define BSD4_2
#endif
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
#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
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 */
sigchld = signal (SIGCHLD, create_process_sigchld);
#endif
#endif /* ordinary USG */
-#endif /* not BSD4_1 */
#endif /* SIGCHLD */
#endif /* !POSIX_SIGNALS */
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? */
_exit (1);
}
-#ifdef SET_CHILD_PTY_PGRP
- ioctl (xforkin, TIOCSPGRP, &pgrp);
- ioctl (xforkout, TIOCSPGRP, &pgrp);
-#endif
}
#endif /* not DONT_REOPEN_PTY */
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 */
signal (SIGCHLD, sigchld);
#endif
#endif /* ordinary USG */
-#endif /* not BSD4_1 */
#endif /* SIGCHLD */
#endif /* !POSIX_SIGNALS */
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 */
kill (getpid (), SIGCHLD);
#endif
#endif /* ordinary USG */
-#endif /* not BSD4_1 */
#endif /* SIGCHLD */
#endif /* !POSIX_SIGNALS */
}
\f
-/* 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,
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;
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)
{
{
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
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;
}
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);
}
SIGNAL_THREAD_CHECK (signo);
-#ifdef BSD4_1
- extern int sigheld;
- sigheld |= sigbit (SIGCHLD);
-#endif
-
while (1)
{
pid_t pid;
must reestablish each time */
#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;
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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"
-\f
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/*
-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) */
-#include "aix4-1.h"
+/*
+Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+ Free Software Foundation, Inc.
-#undef ALIGN_DATA_RELOC
+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. */
+
+#define LDAV_SYMBOL "avenrun"
+\f
+/* 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
*/
#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) */
+++ /dev/null
-#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
+/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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"
-\f
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
* 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 */
#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
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. */
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
+++ /dev/null
-/* 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) */
-#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.
-#define HPUX10_20
+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
+*/
+
+/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-#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) */
* 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
* 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
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
+++ /dev/null
-/* 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 */
-\f
-/* 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) */
* 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 */
+++ /dev/null
-#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) */
+++ /dev/null
-/* 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"
-\f
-/* 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) */
+++ /dev/null
-/* 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"
-\f
-/* 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) */
+++ /dev/null
-/* 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"
-\f
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
/* 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. */
-#undef NOMULTIPLEJOBS
+#define SYSTEM_TYPE "usg-unix-v"
-/* Motif needs -lgen. */
-#define LIBS_SYSTEM -lsocket -lnsl -lelf -lgen
-#define ORDINARY_LINK
+/* Default is to set interrupt_input to 0: don't do input buffering within Emacs */
-#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
+/* #define INTERRUPT_INPUT */
+
+/*
+ * 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
+
+
+/* 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
-#ifdef ORDINARY_LINK
-#define LIB_STANDARD
-#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/ccs/lib/crtn.o
-#endif
-#endif
/* there are no -lg libraries on this system, and no libPW */
#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
/* 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. */
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
/* 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
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
+++ /dev/null
-/* 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) */
#define LPASS8 0
#endif
-#ifdef BSD4_1
-#define LNOFLSH 0100000
-#endif
-
static int baud_convert[] =
#ifdef BAUD_CONVERT
BAUD_CONVERT;
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;
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. */
#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 */
}
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 */
\f
-#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 */
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};
}
#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. */
}
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 */
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,
#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
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 */
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),
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
/* 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
void
init_system_name ()
{
-#ifdef BSD4_1
- Vsystem_name = build_string (sysname);
-#else
#ifdef VMS
char *sp, *end;
if ((sp = egetenv ("SYS$NODE")) == 0)
Vsystem_name = build_string (hostname);
#endif /* HAVE_GETHOSTNAME */
#endif /* VMS */
-#endif /* BSD4_1 */
{
unsigned char *p;
for (p = SDATA (Vsystem_name); *p; p++)
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);
#endif /* not VMS */
#endif /* not MSDOS */
\f
-#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 */
-\f
/* POSIX signals support - DJB */
/* Anyone with POSIX signals should have ANSI C declarations */
{
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;
srand (seed);
}
#endif /* VMS */
-\f
-#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 */
-
\f
#ifndef BSTRING
{ 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
# 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
#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
#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
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); */
#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>
#if __sgi
#include <syms.h> /* for HDRR declaration */
#endif /* __sgi */
-#ifdef BROKEN_NOCOMBRELOC
-#include <assert.h>
-#endif
#ifndef MAP_ANON
#ifdef MAP_ANONYMOUS
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. */
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. */
/* 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);
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. */
#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. */
+++ /dev/null
-/* 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(),
- ®ion.address,
- ®ion.size,
- ®ion.protection,
- ®ion.max_protection,
- ®ion.inheritance,
- ®ion.shared,
- ®ion.object_name,
- ®ion.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) */