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