diff options
author | Dan Nicolaescu <dann@ics.uci.edu> | 2008-01-06 00:56:56 +0000 |
---|---|---|
committer | Dan Nicolaescu <dann@ics.uci.edu> | 2008-01-06 00:56:56 +0000 |
commit | f3041af143f4ab74041fc918feee43aa8ac2da88 (patch) | |
tree | a84bdb93b8f941075b511480aa283e2847fbbcac | |
parent | 37d6e31370557ab868033dde113f11b54994e576 (diff) |
* configure.in: Remove references to unsupported systems.
* notes/copyright:
* MAINTAINERS: Remove references to files that have been removed.
* os.texi (System Environment): Remove references to OSes that are
not supported anymore.
* PROBLEMS:
* MACHINES: Remove references to systems not supported anymore.
* makefile.w32-in:
* Makefile.in: Remove references to Xenix.
* gnus.el (gnus-use-long-file-name): Remove reference to xenix.
* obsolete/x-apollo.el: Remove file for unsupported system.
* term/x-win.el (vendor-specific-keysyms): Remove reference to
Apollo.
* progmodes/gud.el (gud-dgux-p): Remove.
(dbx): Remove reference to dgux.
* progmodes/ps-mode.el (ps-mode-print-function):
* ps-print.el (ps-lp-system):
* paths.el (rmail-spool-directory):
* ls-lisp.el (ls-lisp-emulation):
* lpr.el (lpr-lp-system):
* dired.el (dired-chown-program): Remove references to dgux.
* m/7300.h:
* m/acorn.h:
* m/alliant-2800.h:
* m/alliant.h:
* m/alliant1.h:
* m/alliant4.h:
* m/altos.h:
* m/amdahl.h:
* m/apollo.h:
* m/att3b.h:
* m/aviion-intel.h:
* m/aviion.h:
* m/celerity.h:
* m/clipper.h:
* m/cnvrgnt.h:
* m/convex.h:
* m/cydra5.h:
* m/delta88k.h:
* m/dpx2.h:
* m/dual.h:
* m/elxsi.h:
* m/f301.h:
* m/gould-np1.h:
* m/gould.h:
* m/i860.h:
* m/ibmps2-aix.h:
* m/ibmrt-aix.h:
* m/ibmrt.h:
* m/irist.h:
* m/is386.h:
* m/isi-ov.h:
* m/mega68.h:
* m/mg1.h:
* m/news-r6.h:
* m/news-risc.h:
* m/news.h:
* m/nh3000.h:
* m/nh4000.h:
* m/ns16000.h:
* m/ns32000.h:
* m/nu.h:
* m/orion.h:
* m/orion105.h:
* m/paragon.h:
* m/pfa50.h:
* m/plexus.h:
* m/pyramid.h:
* m/pyrmips.h:
* m/sh3el.h:
* m/sps7.h:
* m/sr2k.h:
* m/stride.h:
* m/sun1.h:
* m/sun2.h:
* m/sun3-68881.h:
* m/sun3-fpa.h:
* m/sun3-soft.h:
* m/sun3.h:
* m/sun386.h:
* m/symmetry.h:
* m/tad68k.h:
* m/tahoe.h:
* m/targon31.h:
* m/tek4300.h:
* m/tekxd88.h:
* m/tower32.h:
* m/tower32v3.h:
* m/ustation.h:
* m/wicat.h:
* m/xps100.h:
* s/cxux.h:
* s/cxux7.h:
* s/dgux.h:
* s/dgux4.h:
* s/dgux5-4-3.h:
* s/dgux5-4r2.h:
* s/esix.h:
* s/esix5r4.h:
* s/hiuxmpp.h:
* s/hiuxwe2.h:
* s/iris3-5.h:
* s/iris3-6.h:
* s/isc2-2.h:
* s/isc3-0.h:
* s/isc4-0.h:
* s/isc4-1.h:
* s/newsos5.h:
* s/newsos6.h:
* s/osf1.h:
* s/osf5-0.h:
* s/riscix1-1.h:
* s/riscix12.h:
* s/sco4.h:
* s/sco5.h:
* s/sunos4-0.h:
* s/sunos4-1.h:
* s/sunos413.h:
* s/sunos4shr.h:
* s/umax.h:
* s/unipl5-2.h:
* s/xenix.h:
* cxux-crt0.s:
* unexapollo.c:
* unexconvex.c:
* unexenix.c:
* unexsni.c: Remove files for systems no longer supported.
* m/intel386.h: Remove references to unsupported systems.
* w32.c (get_emacs_configuration): Remove reference to i860.
* sysdep.c: Remove dead code.
136 files changed, 465 insertions, 13238 deletions
@@ -1,3 +1,7 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * configure.in: Remove references to unsupported systems. + 2008-01-05 Romain Francoise <romain@orebokech.com> * make-dist: Add --bzip2. Update copyright. diff --git a/admin/CPP-DEFINES b/admin/CPP-DEFINES index ea2ae95b25..ab48536013 100644 --- a/admin/CPP-DEFINES +++ b/admin/CPP-DEFINES @@ -43,47 +43,322 @@ FRAME_WINDOW_P A GUI frame (like X, w32, etc.) REL_ALLOC Compile in the relocatable memory allocator ralloc.c. SYSTEM_MALLOC Use the system library's malloc. +** All references to these symbols should be removed, all their definitions are gone ** +ALLIANT +ALLIANT_2800 +ALTOS +APOLLO +APOLLO_SR10 +RTU +STRIDE +UNIPLUS +GOULD +NU +pyramid +sps7 +tahoe +tek4300 +__DGUX +DGUX +romp +ibmrt +NEWSOS5 -** Temporarily put defines from removed files here ** - +** Temporarily put defines from removed files here, check if these macros need to be documented or removed because they are not used anymore. ** +ABORT_RETURN_TYPE +ADDR_CORRECT ADJUST_EXEC_HEADER +ADJUST_TEXTBASE +ADJUST_TEXT_SCNHDR_SIZE +A_TEXT_OFFSET +A_TEXT_SEEK +BAUD_CONVERT +BROKEN_FIONREAD +BROKEN_SELECT_NON_X +BROKEN_SIGIO +BROKEN_START +BROKEN_TIOCGETC +BROKEN_TIOCGWINSZ BSD4_2 +BSD4_3 +BSD4_4 BSD_PGRPS BSD_SYSTEM BSTRING CANNOT_DUMP CLASH_DETECTION COFF +COFF_BSD_SYMBOLS +COFF_ENCAPSULATE +CRT0_COMPILE CRT0_DUMMIES +C_DEBUG_SWITCH +C_OPTIMIZE_SWITCH +C_SWITCH_ASM +C_SWITCH_MACHINE +C_SWITCH_SYSTEM +DATA_END +DATA_SECTION_ALIGNMENT +DATA_SEG_BITS +DATA_START +DEBUG +DECLARE_GETPWUID_WITH_UID_T +DEFAULT_ENTRY_ADDRESS +DONT_NEED_ENVIRON +DOT_GLOBAL_START +DUMMIES +EEOF +ELF +ERROR0 +ERROR1 +ERROR2 +EXEC_HDR_TYPE +EXEC_MAGIC +EXEC_PAGESIZE EXPLICIT_SIGN_EXTEND +EXTRA_INITIALIZE FIRST_PTY_LETTER +FREE_RETURN_TYPE +FSCALE +F_SETOWN_BUG +GC_MARK_STACK +GC_SETJMP_WORKS +GETPGRP_NO_ARG +GNU_MALLOC +HAVE_ALLOCA +HAVE_BROKEN_INET_ADDR +HAVE_CLOSEDIR +HAVE_CONFIG_H +HAVE_CRTN +HAVE_GETTIMEOFDAY +HAVE_INET_SOCKETS +HAVE_LIBDNET +HAVE_LIBINTL +HAVE_LIBRESOLV HAVE_PTYS +HAVE_SELECT HAVE_SOCKETS HAVE_SYSVIPC +HAVE_SYSV_SIGPAUSE +HAVE_SYS_WAIT_H +HAVE_TCATTR HAVE_TERMIO +HAVE_TERMIOS +HAVE_TEXT_START HAVE_UNION_WAIT +HAVE_UNISTD_H +HAVE_UNIX_DOMAIN +HAVE_UTIMES +HAVE_WAIT_HEADER +HAVE_X11R6 +HAVE_XFREE386 +HAVE_XSCREENNUMBEROFSCREEN +HAVE_X_WINDOWS +HEADER_INCL_IN_TEXT +IBMAIX +INHIBIT_X11R6_XIM +INIT_BAUD_RATE +INTEL386 INTERRUPT_INPUT +IN_UNEXEC +IRIS +IRIS_4D +IRIX6_5 +IRIX_FORCE_32_BITS +ISC4_0 +ISI68K +KEEP_OLD_PADDR +KEEP_OLD_TEXT_SCNPTR KERNEL_FILE LDAV_SYMBOL +LD_SWITCH_MACHINE +LD_SWITCH_SYSTEM +LD_SWITCH_SYSTEM_TEMACS +LD_TEXT_START_ADDR LIBS_DEBUG +LIBS_MACHINE +LIBS_SYSTEM +LIBS_TERMCAP +LIBX11_MACHINE +LIBX11_SYSTEM +LIBXMU +LIB_GCC +LIB_MOTIF +LIB_STANDARD +LIB_X11_LIB +LINKER LOAD_AVE_CVT LOAD_AVE_TYPE +LONG_ALIGN +L_SET +MAIL_PROGRAM_NAME MAIL_USE_FLOCK -MASSC_REGISTER_BUG +MAKE_PARALLEL +MAXNAMLEN +MEMMOVE_MISSING +MEMORY_IN_STRING_H +MKDIR_PROTOTYPE +MOTIF +M_TERMINFO +NARROWPROTO +NBPC +NEED_ERRNO +NEED_NET_ERRNO_H +NEED_PTEM_H +NEED_SIOCTL +NEW_PROGRAM_H +NEW_SECTION_H +NLIST_NAME_UNION +NLIST_STRUCT NOMULTIPLEJOBS NONSYSTEM_DIR_LIBRARY +NOT_C_CODE NO_ARG_ARRAY +NO_GET_LOAD_AVG +NO_MODE_T +NO_PTY_H NO_REMAP +NO_SIOCTL_H +NO_SOCKETS_IN_FILE_SYSTEM +NO_TERMIO NO_UNION_TYPE +NSIG +NSIG_MINIMUM +OBJECTS_MACHINE +OLDXMENU_OPTIONS +OLD_PROGRAM_H +OLD_SECTION_H +ORDINARY_LINK +OSF1 +O_NDELAY +PATCH_INDEX +PENDING_OUTPUT_COUNT +PERROR +PNTR_COMPARISON_TYPE +POSIX_SIGNALS +PREFER_VSUSP +PTY_ITERATION +PTY_MAJOR +PTY_MINOR PTY_NAME_SPRINTF +PTY_OPEN PTY_TTY_NAME_SPRINTF -RTU +PURESIZE +READ +REL_ALLOC +RISCiX +RISCiX_1_1 +RUN_TIME_REMAP +SECTION_ALIGNMENT +SEEK +SEGMENT_MASK +SEGSIZ +SETUP_SLAVE_PTY +SHORTNAMES +SHORT_CAST_BUG +SIGMASKTYPE +SIGNALS_VIA_CHARACTERS +SIGN_EXTEND_CHAR +SIGTYPE +SIG_BLOCK +SKTPAIR +SMAIL +START_FILES +SUNOS4 +SUNOS4_SHARED_LIBRARIES +SUNOS_LOCALTIME_BUG +SVR4 +SWITCH_ENUM_BUG +SYMS_START +SYSTEM_MALLOC SYSTEM_TYPE +SYSV_PTYS +SYSV_SYSTEM_DIR +S_IEXEC +S_IFDIR +S_IFLNK +S_IFMT +S_IREAD +S_IWRITE +TAHOE_REGISTER_BUG +TERMCAP +TERMINFO +TEXT_END +TEXT_START +TEXT_START_ADDR +THIS_IS_MAKEFILE +TPIX +ULIMIT_BREAK_VALUE +UMAX +UMAX4_2 +UNEXEC +USE_DL_STUBS +USE_GETOBAUD +USE_MMAP_FOR_BUFFERS +USE_NONANSI_DEFUN +USG +USG5 +USG5_3 +USG5_4 +USG_JOBCTRL +USG_SHARED_LIBRARIES +V3x VIRT_ADDR_VARIES WORDS_BIG_ENDIAN WORD_MACHINE +WRITE +X11R4 +XENIX +XICCC +XINT +XSET +XUINT +X_DEFAULT_FONT +_ABIN32 +_CX_UX +_MIPS_SZLONG +_POSIX_SOURCE +__main +_longjmp +_setjmp +_sobuf +aix386 +alloca +amdahl_uts +aouthdr +celerity +clipper +convex +data_start +drem +dsize +elxsi +emacs +entry +etext +fatal +fchmod +getpgrp +ghs +hp9000s800 +index +internal_with_output_to_temp_buffer +jmp_buf +longjmp m68000 +m68k +m88k +magic +mc68000 +mips +orion +sel subprocesses +sun +sun_68881 +sun_fpa +sun_soft +text_start # arch-tag: bc80061a-1168-4911-9766-46aaf2640250 diff --git a/admin/ChangeLog b/admin/ChangeLog index 31ff5af2ba..016f7d10c3 100644 --- a/admin/ChangeLog +++ b/admin/ChangeLog @@ -1,3 +1,8 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * notes/copyright: + * MAINTAINERS: Remove references to files that have been removed. + 2008-01-04 Glenn Morris <rgm@gnu.org> * admin.el (set-copyright): Add lib-src/ebrowse.c. diff --git a/admin/MAINTAINERS b/admin/MAINTAINERS index f14bc2068d..805b19a6b7 100644 --- a/admin/MAINTAINERS +++ b/admin/MAINTAINERS @@ -143,7 +143,6 @@ src/cmds.c src/coding.c src/composite.c src/config.in -src/cxux-crt0.s src/data.c src/dispnew.c src/doc.c @@ -196,15 +195,11 @@ src/tparam.c src/undo.c src/unexaix.c src/unexalpha.c -src/unexapollo.c -src/unexconvex.c src/unexec.c src/unexelf.c -src/unexenix.c src/unexhp9k800.c src/unexmips.c src/unexnext.c -src/unexsni.c src/unexsunos4.c src/unexw32.c src/vm-limit.c diff --git a/admin/notes/copyright b/admin/notes/copyright index 4ab01feeae..aac2328b7f 100644 --- a/admin/notes/copyright +++ b/admin/notes/copyright @@ -405,7 +405,7 @@ lisp/term/README Accordingly, FSF copyright was added. -src/unexhp9k800.c (and dependent src/m/sr2k.h) +src/unexhp9k800.c http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html - briefly removed due to legal uncertainly Jan-Mar 2007. The relevant assignment is under "hp9k800" in copyright.list. File was @@ -480,7 +480,7 @@ says it is obsolete: src/m/mips4.h, news-risc.h, pmax.h src/s/aix3-2.h, bsd386.h, hpux8.h, hpux9.h, irix4-0.h, irix5-0.h, -isc2-2.h, netbsd.h, osf1.h, sol2-3.h, sunos4-0.h, usg5-4-2.h +netbsd.h, sol2-3.h, usg5-4-2.h - all these (not obviously trivial) files were missing copyrights till Feb 2007, when FSF copyright was added. Matt Norwood advised: @@ -515,16 +515,6 @@ pmax.h I would say started non-trivial (1993, jimb, heavily based on irix4-0.h). A few borderline non-tiny changes since. -? isc2-2.h - started trivial. 2 non-tiny change, in 1993. looks to - be made up of several small tweaks from various sources. maybe - non-tiny total changes from Karl Berry (no emacs assignment). - -osf1.h - started trivial. grown in tiny changes (one borderline tiny change - by fx in 2000, but most code was later removed). non-tiny addition - in 2002 from m/alpha.h, but that was and is copyright FSF. - usg5-4-2.h started non-trivial, but was heavily based on usg5-4.h, which was and is copyright FSF. only tiny changes since installed. @@ -533,7 +523,7 @@ sol2-3.h started trivial. only non-tiny change (1994) incorporated code from usg5-4.h, which was and is copyright FSF. -aix3-2.h, bsd386.h, hpux8.h, hpux9.h, netbsd.h, sunos4-0.h +aix3-2.h, bsd386.h, hpux8.h, hpux9.h, netbsd.h started trivial, grown in tiny changes. netbsd.h: @@ -548,8 +538,8 @@ Someone might want to tweak the copyright years (for dates before Note: erring on the side of caution, I also added notices to some files I thought might be considered non-trivial (if one includes comment) in s/: - aix4-1.h hiuxmpp.h hiuxwe2.h hpux10.h irix6-0.h irix6-5.h isc3-0.h - ptx4.h sol2.h sunos4-0.h + aix4-1.h hpux10.h irix6-0.h irix6-5.h + ptx4.h sol2.h (everything with > 30 non-blank lines, which at least is _some_ kind of system) diff --git a/configure.in b/configure.in index 6d727dd642..19471e3258 100644 --- a/configure.in +++ b/configure.in @@ -217,8 +217,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, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are -### all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS +### 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 ### configuration name. ### @@ -279,14 +279,12 @@ dnl see the `changequote' comment above. mips-*-netbsd*) machine=pmax ;; mipsel-*-netbsd*) machine=pmax ;; mipseb-*-netbsd*) machine=pmax ;; - ns32k-*-netbsd*) machine=ns32000 ;; powerpc-*-netbsd*) machine=macppc ;; sparc*-*-netbsd*) machine=sparc ;; vax-*-netbsd*) machine=vax ;; arm-*-netbsd*) machine=arm ;; x86_64-*-netbsd*) machine=amdx86-64 ;; hppa-*-netbsd*) machine=hp800 ;; - shle-*-netbsd*) machine=sh3el ;; esac ;; @@ -299,10 +297,8 @@ dnl see the `changequote' comment above. hppa-*-openbsd*) machine=hp9000s300 ;; i386-*-openbsd*) machine=intel386 ;; m68k-*-openbsd*) machine=hp9000s300 ;; - m88k-*-openbsd*) machine=aviion ;; mips64-*-openbsd*) machine=mips64 ;; powerpc-*-openbsd*) machine=macppc ;; - sh-*-openbsd*) machine=sh3el ;; sparc*-*-openbsd*) machine=sparc ;; vax-*-openbsd*) machine=vax ;; x86_64-*-openbsd*) machine=amdx86-64 ;; @@ -318,16 +314,6 @@ dnl see the `changequote' comment above. esac ;; - ## Acorn RISCiX: - arm-acorn-riscix1.1* ) - machine=acorn opsys=riscix1-1 - ;; - arm-acorn-riscix1.2* | arm-acorn-riscix ) - ## This name is riscix12 instead of riscix1.2 - ## to avoid a file name conflict on MSDOS. - machine=acorn opsys=riscix12 - ;; - ## BSDI ports *-*-bsdi* ) opsys=bsdi @@ -345,19 +331,6 @@ dnl see the `changequote' comment above. esac ;; - ## Alliant machines - ## Strictly speaking, we need the version of the alliant operating - ## system to choose the right machine file, but currently the - ## configuration name doesn't tell us enough to choose the right - ## one; we need to give alliants their own operating system name to - ## do this right. When someone cares, they can help us. - fx80-alliant-* ) - machine=alliant4 opsys=bsd4-2 - ;; - i860-alliant-* ) - machine=alliant-2800 opsys=bsd4-3 - ;; - ## Alpha (DEC) machines. alpha*-dec-osf* ) machine=alpha opsys=osf1 @@ -383,21 +356,6 @@ dnl see the `changequote' comment above. machine=arm opsys=gnu-linux ;; - ## Altos 3068 - m68*-altos-sysv* ) - machine=altos opsys=usg5-2 - ;; - - ## Amdahl UTS - 580-amdahl-sysv* ) - machine=amdahl opsys=usg5-2-2 - ;; - - ## Apollo, Domain/OS - m68*-apollo-* ) - machine=apollo opsys=bsd4-3 - ;; - ## Apple Darwin / Mac OS X *-apple-darwin* ) case "${canonical}" in @@ -416,101 +374,16 @@ dnl see the `changequote' comment above. fi ;; - ## AT&T 3b2, 3b5, 3b15, 3b20 - we32k-att-sysv* ) - machine=att3b opsys=usg5-2-2 - ;; - - ## AT&T 3b1 - The Mighty Unix PC! - m68*-att-sysv* ) - machine=7300 opsys=usg5-2-2 - ;; - - ## Bull dpx20 - rs6000-bull-bosx* ) - machine=ibmrs6000 opsys=aix3-2 - ;; - - ## Bull dpx2 - m68*-bull-sysv3* ) - machine=dpx2 opsys=usg5-3 - ;; - - ## Bull sps7 - m68*-bull-sysv2* ) - machine=sps7 opsys=usg5-2 - ;; - - ## CCI 5/32, 6/32 -- see "Tahoe". - - ## Celerity - ## I don't know what configuration name to use for this; config.sub - ## doesn't seem to know anything about it. Hey, Celerity users, get - ## in touch with us! - celerity-celerity-bsd* ) - machine=celerity opsys=bsd4-2 - ;; - - ## Clipper - ## What operating systems does this chip run that Emacs has been - ## tested on? - clipper-* ) - machine=clipper - ## We'll use the catch-all code at the bottom to guess the - ## operating system. - ;; - ## Compaq Nonstop mips-compaq-nonstopux* ) machine=nonstopux opsys=nonstopux ;; - ## Convex - *-convex-bsd* | *-convex-convexos* ) - machine=convex opsys=bsd4-3 - ## Prevents spurious white space in makefiles - d.m.cooke@larc.nasa.gov - NON_GNU_CPP="cc -E -P" - ;; - ## Cubix QBx/386 i[3456]86-cubix-sysv* ) machine=intel386 opsys=usg5-3 ;; - ## Cydra 5 - cydra*-cydrome-sysv* ) - machine=cydra5 opsys=usg5-3 - ;; - - ## Data General AViiON Machines - ## DG changed naming conventions with the release of 5.4.4.10, they - ## dropped the initial 5.4 but left the intervening R. Because of the - ## R this shouldn't conflict with older versions of the OS (which I - ## think were named like dgux4.*). In addition, DG new AViiONs series - ## uses either Motorola M88k or Intel Pentium CPUs. - m88k-dg-dguxR4.* | m88k-dg-dgux4* ) - machine=aviion opsys=dgux4 - ;; - m88k-dg-dgux5.4R3* | m88k-dg-dgux5.4.3* ) - ## This name is dgux5-4-3 instead of dgux5-4r3 - ## to avoid a file name conflict on MSDOS. - machine=aviion opsys=dgux5-4-3 - ;; - m88k-dg-dgux5.4R2* | m88k-dg-dgux5.4.2* ) - machine=aviion opsys=dgux5-4r2 - ;; - m88k-dg-dgux* ) - machine=aviion opsys=dgux - ;; - - ## Data General AViiON Intel (x86) Machines - ## Exists from 5.4.3 (current i586-dg-dguxR4.11) - ## Ehud Karni, 1998-may-30, ehud@unix.simonwiesel.co.il - i[345]86-dg-dguxR4* ) - machine=aviion-intel opsys=dgux4 - ;; - - ## DECstations mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* ) machine=pmax opsys=bsd4-2 ;; @@ -527,96 +400,6 @@ dnl see the `changequote' comment above. machine=pmax opsys=mach-bsd4-3 ;; - ## Motorola Delta machines - m68k-motorola-sysv* | m68000-motorola-sysv* ) - machine=delta opsys=usg5-3 - if test -z "`type gnucc | grep 'not found'`" - then - if test -s /etc/167config - then CC="gnucc -m68040" - else CC="gnucc -m68881" - fi - else - if test -z "`type gcc | grep 'not found'`" - then CC=gcc - else CC=cc - fi - fi - ;; - m88k-motorola-sysv4* ) - # jbotte@bnr.ca says that UNIX_System_V <hostName> 4.0 R40V4.3 m88k mc88110 - # needs POSIX_SIGNALS and therefore needs usg5-4-2. - # I hope there are not other 4.0 versions for this machine - # which really need usg5-4 instead. - machine=delta88k opsys=usg5-4-2 - ;; - m88k-motorola-sysv* | m88k-motorola-m88kbcs* ) - machine=delta88k opsys=usg5-3 - ;; - - ## Dual machines - m68*-dual-sysv* ) - machine=dual opsys=usg5-2 - ;; - m68*-dual-uniplus* ) - machine=dual opsys=unipl5-2 - ;; - - ## Elxsi 6400 - elxsi-elxsi-sysv* ) - machine=elxsi opsys=usg5-2 - ;; - - ## Encore machines - ns16k-encore-bsd* ) - machine=ns16000 opsys=umax - ;; - - ## The GEC 63 - apparently, this port isn't really finished yet. - # I'm sure we finished off the last of the machines, though. -- fx - - ## Gould Power Node and NP1 - pn-gould-bsd4.2* ) - machine=gould opsys=bsd4-2 - ;; - pn-gould-bsd4.3* ) - machine=gould opsys=bsd4-3 - ;; - np1-gould-bsd* ) - machine=gould-np1 opsys=bsd4-3 - ;; - - ## Harris Night Hawk machines running CX/UX (a 5000 looks just like a 4000 - ## as far as Emacs is concerned). - m88k-harris-cxux* ) - # Build needs to be different on 7.0 and later releases - case "`uname -r`" in - [56].[0-9] ) machine=nh4000 opsys=cxux ;; - [7].[0-9] ) machine=nh4000 opsys=cxux7 ;; - esac - NON_GNU_CPP="/lib/cpp" - ;; - ## Harris ecx or gcx running CX/UX (Series 1200, Series 3000) - m68k-harris-cxux* ) - machine=nh3000 opsys=cxux - ;; - ## Harris power pc NightHawk running Power UNIX (Series 6000) - powerpc-harris-powerunix ) - machine=nh6000 opsys=powerunix - NON_GNU_CPP="cc -Xo -E -P" - ;; - ## SR2001/SR2201 running HI-UX/MPP - hppa1.1-hitachi-hiuxmpp* ) - machine=sr2k opsys=hiuxmpp - ;; - hppa1.1-hitachi-hiuxwe2* ) - machine=sr2k opsys=hiuxwe2 - ;; - ## Honeywell XPS100 - xps*-honeywell-sysv* ) - machine=xps100 opsys=usg5-2 - ;; - ## HP 9000 series 200 or 300 m68*-hp-bsd* ) machine=hp9000s300 opsys=bsd4-3 @@ -678,21 +461,7 @@ dnl see the `changequote' comment above. machine=hp800 opsys=nextstep ;; - ## Orion machines - orion-orion-bsd* ) - machine=orion opsys=bsd4-2 - ;; - clipper-orion-bsd* ) - machine=orion105 opsys=bsd4-2 - ;; - ## IBM machines - i[3456]86-ibm-aix1.1* ) - machine=ibmps2-aix opsys=usg5-2-2 - ;; - i[3456]86-ibm-aix1.[23]* | i[3456]86-ibm-aix* ) - machine=ibmps2-aix opsys=usg5-3 - ;; i370-ibm-aix*) machine=ibm370aix opsys=usg5-3 ;; @@ -729,51 +498,12 @@ dnl see the `changequote' comment above. rs6000-ibm-aix* | powerpc-ibm-aix* ) machine=ibmrs6000 opsys=aix3-2 ;; - romp-ibm-bsd4.3* ) - machine=ibmrt opsys=bsd4-3 - ;; - romp-ibm-bsd4.2* ) - machine=ibmrt opsys=bsd4-2 - ;; - romp-ibm-aos4.3* ) - machine=ibmrt opsys=bsd4-3 - ;; - romp-ibm-aos4.2* ) - machine=ibmrt opsys=bsd4-2 - ;; - romp-ibm-aos* ) - machine=ibmrt opsys=bsd4-3 - ;; - romp-ibm-bsd* ) - machine=ibmrt opsys=bsd4-3 - ;; - romp-ibm-aix* ) - machine=ibmrt-aix opsys=usg5-2-2 - ;; - - ## Integrated Solutions `Optimum V' - m68*-isi-bsd4.2* ) - machine=isi-ov opsys=bsd4-2 - ;; - m68*-isi-bsd4.3* ) - machine=isi-ov opsys=bsd4-3 - ;; - - ## Intel 386 machines where we do care about the manufacturer - i[3456]86-intsys-sysv* ) - machine=is386 opsys=usg5-2-2 - ;; ## Prime EXL i[3456]86-prime-sysv* ) machine=i386 opsys=usg5-3 ;; - ## Sequent Symmetry running Dynix - i[3456]86-sequent-bsd* ) - machine=symmetry opsys=bsd4-3 - ;; - ## Sequent Symmetry running ptx 4, which is a modified SVR4. i[3456]86-sequent-ptx4* | i[3456]86-sequent-sysv4* ) machine=sequent-ptx opsys=ptx4 @@ -798,28 +528,11 @@ dnl see the `changequote' comment above. machine=ncr386 opsys=usg5-4-2 ;; - ## Intel Paragon OSF/1 - i860-intel-osf1* ) - machine=paragon opsys=osf1 NON_GNU_CPP=/usr/mach/lib/cpp - ;; - - ## Intel 860 - i860-*-sysv4* ) - machine=i860 opsys=usg5-4 - NON_GNU_CC="/bin/cc" # Ie, not the one in /usr/ucb/cc. - NON_GNU_CPP="/usr/ccs/lib/cpp" # cc -E tokenizes macro expansion. - ;; - ## Macintosh PowerPC powerpc*-*-linux-gnu* ) machine=macppc opsys=gnu-linux ;; - ## Megatest machines - m68*-megatest-bsd* ) - machine=mega68 opsys=bsd4-2 - ;; - ## Workstations sold by MIPS ## This is not necessarily all workstations using the MIPS processor - ## Irises are produced by SGI, and DECstations by DEC. @@ -857,54 +570,11 @@ dnl see the `changequote' comment above. machine=m68k opsys=nextstep ;; - ## The complete machine from National Semiconductor - ns32k-ns-genix* ) - machine=ns32000 opsys=usg5-2 - ;; - - ## NCR machines - m68*-ncr-sysv2* | m68*-ncr-sysvr2* ) - machine=tower32 opsys=usg5-2-2 - ;; - m68*-ncr-sysv3* | m68*-ncr-sysvr3* ) - machine=tower32v3 opsys=usg5-3 - ;; - ## NEC EWS4800 mips-nec-sysv4*) machine=ews4800 opsys=ux4800 ;; - ## Nixdorf Targon 31 - m68*-nixdorf-sysv* ) - machine=targon31 opsys=usg5-2-2 - ;; - - ## Nu (TI or LMI) - m68*-nu-sysv* ) - machine=nu opsys=usg5-2 - ;; - - ## Plexus - m68*-plexus-sysv* ) - machine=plexus opsys=usg5-2 - ;; - - ## Pyramid machines - ## I don't really have any idea what sort of processor the Pyramid has, - ## so I'm assuming it is its own architecture. - pyramid-pyramid-bsd* ) - machine=pyramid opsys=bsd4-2 - ;; - - ## Sequent Balance - ns32k-sequent-bsd4.2* ) - machine=sequent opsys=bsd4-2 - ;; - ns32k-sequent-bsd4.3* ) - machine=sequent opsys=bsd4-3 - ;; - ## Siemens Nixdorf mips-siemens-sysv* | mips-sni-sysv*) machine=mips-siemens opsys=usg5-4 @@ -913,13 +583,6 @@ dnl see the `changequote' comment above. ;; ## Silicon Graphics machines - ## Iris 2500 and Iris 2500 Turbo (aka the Iris 3030) - m68*-sgi-iris3.5* ) - machine=irist opsys=iris3-5 - ;; - m68*-sgi-iris3.6* | m68*-sgi-iris*) - machine=irist opsys=iris3-6 - ;; ## Iris 4D mips-sgi-irix3* ) machine=iris4d opsys=irix3-3 @@ -950,31 +613,6 @@ dnl see the `changequote' comment above. machine=iris4d opsys=irix5-2 ;; - ## SONY machines - m68*-sony-bsd4.2* ) - machine=news opsys=bsd4-2 - ;; - m68*-sony-bsd4.3* ) - machine=news opsys=bsd4-3 - ;; - m68*-sony-newsos3* | m68*-sony-news3*) - machine=news opsys=bsd4-3 - ;; - mips-sony-bsd* | mips-sony-newsos4* | mips-sony-news4*) - machine=news-risc opsys=bsd4-3 - ;; - mips-sony-newsos6* ) - machine=news-r6 opsys=newsos6 - ;; - mips-sony-news* ) - machine=news-risc opsys=newsos5 - ;; - - ## Stride - m68*-stride-sysv* ) - machine=stride opsys=usg5-2 - ;; - ## Suns sparc-*-linux-gnu* | sparc64-*-linux-gnu* ) machine=sparc opsys=gnu-linux @@ -984,10 +622,6 @@ dnl see the `changequote' comment above. | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* | powerpc*-*-solaris2* \ | rs6000-*-solaris2*) case "${canonical}" in - m68*-sunos1* ) machine=sun1 ;; - m68*-sunos2* ) machine=sun2 ;; - m68* ) machine=sun3 ;; - i[3456]86-sun-sunos[34]* ) machine=sun386 ;; i[3456]86-*-* ) machine=intel386 ;; amd64-*-*|x86_64-*-*) machine=amdx86-64 ;; powerpcle* ) machine=powerpcle ;; @@ -996,26 +630,6 @@ dnl see the `changequote' comment above. * ) unported=yes ;; esac case "${canonical}" in - ## The Sun386 didn't get past 4.0. - i[3456]86-*-sunos4 ) opsys=sunos4-0 ;; - *-sunos4.0* ) opsys=sunos4-0 ;; - *-sunos4.1.[3-9]*noshare ) - ## This name is sunos413 instead of sunos4-1-3 - ## to avoid a file name conflict on MSDOS. - opsys=sunos413 - NON_GNU_CPP=/usr/lib/cpp - NON_GCC_TEST_OPTIONS=-Bstatic - GCC_TEST_OPTIONS=-static - ;; - *-sunos4.1.[3-9]* | *-sunos4shr*) - opsys=sunos4shr - NON_GNU_CPP=/usr/lib/cpp - ;; - *-sunos4* | *-sunos ) - opsys=sunos4-1 - NON_GCC_TEST_OPTIONS=-Bstatic - GCC_TEST_OPTIONS=-static - ;; *-sunos5.3* | *-solaris2.3* ) opsys=sol2-3 NON_GNU_CPP=/usr/ccs/lib/cpp @@ -1058,50 +672,11 @@ dnl see the `changequote' comment above. machine=sparc opsys=nextstep ;; - ## Tadpole 68k - m68*-tadpole-sysv* ) - machine=tad68k opsys=usg5-3 - ;; - - ## Tahoe machines - tahoe-tahoe-bsd4.2* ) - machine=tahoe opsys=bsd4-2 - ;; - tahoe-tahoe-bsd4.3* ) - machine=tahoe opsys=bsd4-3 - ;; - ## Tandem Integrity S2 mips-tandem-sysv* ) machine=tandem-s2 opsys=usg5-3 ;; - ## Tektronix XD88 - m88k-tektronix-sysv3* ) - machine=tekxd88 opsys=usg5-3 - ;; - - ## Tektronix 16000 box (6130?) - ns16k-tektronix-bsd* ) - machine=ns16000 opsys=bsd4-2 - ;; - ## Tektronix 4300 - ## src/m/tek4300.h hints that this is a m68k machine. - m68*-tektronix-bsd* ) - machine=tek4300 opsys=bsd4-3 - ;; - - ## Titan P2 or P3 - ## We seem to have lost the machine-description file titan.h! - titan-titan-sysv* ) - machine=titan opsys=usg5-3 - ;; - - ## Ustation E30 (SS5E) - m68*-unisys-uniplus* ) - machine=ustation opsystem=unipl5-2 - ;; - ## Vaxen. vax-dec-* ) machine=vax @@ -1116,18 +691,6 @@ dnl see the `changequote' comment above. esac ;; - ## Whitechapel MG1 - ns16k-whitechapel-* ) - machine=mg1 - ## We don't know what sort of OS runs on these; we'll let the - ## operating system guessing code below try. - ;; - - ## Wicat - m68*-wicat-sysv* ) - machine=wicat opsys=usg5-2 - ;; - ## IA-64 ia64*-*-linux* ) machine=ia64 opsys=gnu-linux @@ -1141,24 +704,8 @@ dnl see the `changequote' comment above. *-darwin* ) opsys=darwin CPP="${CC-cc} -E -no-cpp-precomp" ;; - *-isc1.* | *-isc2.[01]* ) opsys=386-ix ;; - *-isc2.2* ) opsys=isc2-2 ;; - *-isc4.0* ) opsys=isc4-0 ;; - *-isc4.* ) opsys=isc4-1 - GCC_TEST_OPTIONS=-posix - NON_GCC_TEST_OPTIONS=-Xp - ;; - *-isc* ) opsys=isc3-0 ;; - *-esix5* ) opsys=esix5r4; NON_GNU_CPP=/usr/lib/cpp ;; - *-esix* ) opsys=esix ;; *-xenix* ) opsys=xenix ;; *-linux-gnu* ) opsys=gnu-linux ;; - *-sco3.2v4* ) opsys=sco4 ; NON_GNU_CPP=/lib/cpp ;; - *-sco3.2v5* ) opsys=sco5 - NON_GNU_CPP=/lib/cpp - # Prevent -belf from being passed to $CPP. - # /lib/cpp does not accept it. - OVERRIDE_CPPFLAGS=" " ;; *-sysv4.2uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; *-sysv5uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; @@ -1186,11 +733,6 @@ dnl see the `changequote' comment above. RANLIB="ar -ts" ;; - ## UXP/V - f301-fujitsu-uxpv4.1) - machine=f301 opsys=uxpv - ;; - ## AMD x86-64 Linux-based GNU system x86_64-*-linux-gnu* ) machine=amdx86-64 opsys=gnu-linux @@ -3388,9 +2930,9 @@ typedef unsigned size_t; # ifndef GC_SETJMP_WORKS /* GC_SETJMP_WORKS is nearly always appropriate for GCC -- see NON_SAVING_SETJMP in the target descriptions. */ - /* Exceptions (see NON_SAVING_SETJMP in target description) are ns32k, + /* Exceptions (see NON_SAVING_SETJMP in target description) are SCO5 non-ELF (but Emacs specifies ELF) and SVR3 on x86. - Fixme: Deal with ns32k, SVR3. */ + Fixme: Deal with SVR3. */ # define GC_SETJMP_WORKS 1 # endif # ifndef GC_LISP_OBJECT_ALIGNMENT diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index d0beaba9a8..9d69ae81f6 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog @@ -1,3 +1,8 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * os.texi (System Environment): Remove references to OSes that are + not supported anymore. + 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> * os.texi (System Environment): Remove mention for Masscomp. diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi index fc7003d7d8..d23ff1b226 100644 --- a/doc/lispref/os.texi +++ b/doc/lispref/os.texi @@ -645,9 +645,6 @@ Berkeley BSD. @item cygwin Cygwin. -@item dgux -Data General DGUX operating system. - @item gnu the GNU system (using the GNU kernel, which consists of the HURD and Mach). @@ -670,9 +667,6 @@ MS-Windows. @item next-mach NeXT Mach-based system. -@item unisoft-unix -UniSoft UniPlus. - @item usg-unix-v AT&T System V. @@ -683,8 +677,6 @@ VAX VMS. Microsoft windows NT. The same executable supports Windows 9X, but the value of @code{system-type} is @code{windows-nt} in either case. -@item xenix -SCO Xenix 386. @end table We do not wish to add new symbols to make finer distinctions unless it diff --git a/etc/ChangeLog b/etc/ChangeLog index f3ff65730d..e478380f86 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog @@ -1,3 +1,8 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * PROBLEMS: + * MACHINES: Remove references to systems not supported anymore. + 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> * MACHINES: Remove Masscomp. diff --git a/etc/MACHINES b/etc/MACHINES index 028062d2e2..a4ce691ba1 100644 --- a/etc/MACHINES +++ b/etc/MACHINES @@ -31,55 +31,7 @@ to operating system names (i.e. sunos4.1) or architecture names (i.e. hppa1.1). If you leave out the version number, the `configure' script will configure Emacs for the latest version it knows about. -Acorn RISCiX (arm-acorn-riscix1.2) - - Emacs 19.29 has changes that ought to support RISCiX 1.2. - - Due to a bug in the RISCiX C compiler (3.4.5), emacs must - be built with gcc (versions 2.5.8 onwards). - - In addition, you will need GNU sed and GNU make, as the RISCiX release - versions of these utilities cannot cope with building emacs-19! - - GNU sed should be configured with: - - env 'DEFS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \ - -Doptarg=gnu_optarg' ./configure - - GNU make (3.72+) should be configured with: - - env 'CFLAGS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \ - -Doptarg=gnu_optarg' ./configure - - Emacs may be configured to use the X toolkit, by adding --with-x-toolkit - to the configure command. If you do this, you will need to edit the line - in src/Makefile which defines LIBW (about line 59) to read: - - LIBW= -lXaw_n - - This ensures that the non-shared widget library is used. - - It is unlikely that this version of emacs will work with RISCiX 1.1. - -Alliant (fx80-alliant-bsd): - - 18.52 worked on system version 4. Previous Emacs versions were - known to work on previous system versions. - - If you are using older versions of their operating system, you may - need to edit `src/config.h' to use `m/alliant1.h' (on version 1) or - `m/alliant.h' (on versions 2 and 3). - -Alliant FX/2800 (i860-alliant-bsd) - - Known to work with 19.26 and OS version 2.2, compiler version 1.3. - -Alpha (DEC) running OSF/1 or GNU/Linux (alpha-dec-osf1, alpha-dec-linux-gnu) - - For OSF/1 (aka Digital Unix) version 4.0, update 386, - it is reported that you need to run configure this way: - - configure --x-includes=/usr/include --x-libraries=/usr/shlib +Alpha (DEC) running GNU/Linux (alpha-dec-linux-gnu) DEC C compiler version 5.9 (DEC C V5.9-005 on Digital UNIX V4.0f) is reported to produce bogus binaries of Emacs 21.2 when the @@ -96,23 +48,6 @@ Alpha (DEC) running OSF/1 or GNU/Linux (alpha-dec-osf1, alpha-dec-linux-gnu) said to have bugs that prevent Emacs from working with X (as of November 1995). Recent releases work (July 2000). -Altos 3068 (m68k-altos-sysv) - - 18.52 was said to work, provided you don't compile unexec.c with -O. - -Amdahl UTS (580-amdahl-sysv) - - Small changes for 18.38 were merged in 18.39. It is mostly - working, but at last report a bug sometimes causes Emacs to - grab very large amounts of memory. No fix or explanation - has yet been reported. It may be possible to find this bug - if you find which Emacs command it happens within and then - run that command with a breakpoint set at malloc. - - The 5.2u370 compiler is so brain damaged that it is not - even worth trying to use it. Success was obtained with the - uts native C compiler on uts version 5.2.5. - Apple Macintosh running Mac OS X For installation on all versions of the Mac OS platform, see the file @@ -141,151 +76,11 @@ Apple PowerPC Macintosh running GNU/Linux After that, reconfigure and rebuild Emacs. It should now build successfully. -Apollo running X Windows (m68k-apollo-bsd) - - Apollo version now supports dumping. It has been tested on SR10.3 and - SR10.4. It certainly requires at least SR10.0, and maybe SR10.2. Be sure - to build in the BSD environment. - - By default, everything is compiled with the switch "-W0,-opt,2". Don't try - to change this to full optimization (-O). The full optimizer (in Domain CC - 6.7, 6.8 and 6.9) generates some bad code in several modules which causes - the emacs window, under X, to be refreshed with each keystroke. - - The configuration stuff should work for the most part. However, some Domain - installations may have to edit src/Makefile manually after it is created. - There are too many versions of both cc and X to automate this easily. - - In `lib-src/Makefile', emacsclient compiles and works fine under CC 6.9. - It now probably works under other versions of the compiler, as well. - - The Apollo Domain CC compiler will issue quite a few warning messages, - mostly complaining about incompatible pointers. In general, these are - harmless and can be ignored. If you discover otherwise, please submit a bug - report identifying the problem in detail. - - When you try to dump emacs, you may get the message ".rwdi section needs - relocation." This means you are linking with some code that has compressed - data sections. In some cases this comes from linking with X libraries. Try - using shared X libraries instead. With some versions of Domain/OS this is - as simple as removing the "-lX11" from the LIBX line in src/Makefile. - - When running the configure script, use the configuration name - "m68k-apollo-bsd". You will also need to use the "-with-gcc=no" and - "-with-x" options. Depending upon your site configuration, you may have to - use other configure options, as well. Examine the INSTALL file for other - configure options. - - Check out the file 'lisp/x-apollo.el'. To use it, add - - (load "x-apollo") - - to your .emacs file. It provides useful default Apollo function key - bindings. - -AT&T 3b2, 3b5, 3b15, 3b20 (we32k-att-sysv) - - Emacs will probably not work with certain kernel constants too small. - - In param.h CDLIMIT should be at least (1L << 12) in order to allow - processes to write up to 2 Mbyte files. This parameter is configurable - by normal means in /etc/master.d/kernel; examine that file for the - symbol CDLIMIT or ULIMIT, and raise it by several powers of 2. Then - do normal kernel rebuild things via "cd /boot; mkboot -k KERNEL" and so - forth. - - In seg.h NSEGP and STACKSEG should be at least 16 and 4 respectively - to allow processes with total size of up to 2Mbytes. - However, I'm told it is unlikely this would fail to be true. - - The MAXMEM may also prevent Emacs from running. The file - 3B-MAXMEM in this directory explains how to increase MAXMEM. - - On some of these machines, you may need to define IN_SCCS_ID - in config.h to make Emacs work. Supposedly you can tell whether - this is necessary by checking something in /usr/include/sys/time.h; - we do not know precisely what. - -AT&T 7300 or 3b1 (m68k-att-sysv) - - 18.52 worked. If you have strange troubles with dumping - Emacs, delete the last few lines from `src/m/7300.h' and recompile. - These lines are supposed to produce a sharable executable. - - `src/m/7300.h' defines SHORTNAMES because operating system versions - older than 3.5 did not support long symbol names. Version 3.5 does - support them, so you can remove the #define SHORTNAMES in that - version. - -Bull DPX/2 models 2nn or 3nn (m68k-bull-sysv3) - - Minor fixes merged into 19.19, which should work with CC or GCC. - - You should compile with all the POSIX stuff: undef _SYSV and define - _POSIX_SOURCE, _XOPEN_SOURCE and _BULL_SOURCE. - - On bos2.00.45 there is a bug that makes the F_SETOWN fcntl - call enters in an infinite loop. F_SETOWN_BUG has been defined to avoid - calling it. - -Bull DPX/20 (rs6000-bull-bosx) - - Version 19 works. - -Bull sps7 (m68k-bull-sysv2) - - Changes partially merged in version 19, but some fixes are probably required. - -CCI 5/32, 6/32 - - See "Tahoe". - -Celerity (celerity-celerity-bsd4.2) - - Version 18.49 worked. This configuration name is a hack, because we - don't know the processor used by Celerities. If someone - who uses a Celerity could get in touch with us, we can teach - config.sub a better name for the configuration. - -Clipper (clipper-???) - - Version 19 has support for some brand of clipper system. If you - have successfully built Emacs 19 on some sort of clipper system, let - us know so we can flesh out this entry. - - Note that the Orion 105 is also a clipper, but some system-related - parameters are different. - -Convex (c1-convex-bsd, c2-convex-bsd, c32-convex-bsd, c34-convex-bsd, - c38-convex-bsd) - - Support updated and residual bugs fixed in 19.26. - Cubix QBx/386 (i386-cubix-sysv) Changes merged in 19.1. Systems before 2/A/0 may fail to compile etags.c due to a compiler bug. -Cydra 5 (cydra-cydrome-sysv) - - 18.51 worked in one version of their operating system but stopped - working in a newer version. This has not been fixed. - -Data General Aviion (m88k-dg-dgux) - - 19.23 works; however, the GCC provided with DGUX 5.4R3.00 fails to - compile src/emacs.c. GCC 2.5.8 does work. - The 19.26 pretest was reported to work; no word on which compiler. - System versions other than DGUX 5.4R3.00 have not been tested. - - DGUX 5.4R3.10 works with 19.29 and 19.30. - - DGUX R4.11 contains changes to the stdio internals and it doesn't work - with versions before 20.2 without patches. 20.2 works in interactive - mode but usually fails in batch mode. The problem is that using - stderr in the dumped emacs usually leads to a segmentation fault. - Only m88k has been tested. - DECstation (mips-dec-ultrix or mips-dec-osf) This machine is the older Mips-based DECstation. @@ -319,45 +114,6 @@ Motorola Delta 147 (m68k-motorola-sysv) The installation script chooses the compiler itself. gnucc is preferred. -Motorola Delta 187 (m88k-motorola-sysv, - m88k-motorola-sysvr4, or - m88k-motorola-m88kbcs) - - The 19.26 pretest was reported to run on SVR3. However, if you - use --with-x-toolkit on svr3, you will have problems compiling some - files because time.h and sys/time.h get included twice. - One fix is to edit those files to protect against multiple inclusion. - - As of version 19.13, Emacs was reported to run under SYSVr3 and SYSVr4. - -Dual running System V (m68k-dual-sysv) - - As of 17.46, this worked except for a few changes - needed in unexec.c. - -Dual running Uniplus (m68k-dual-uniplus) - - Worked, as of 17.51. - -Elxsi 6400 (elxsi-elxsi-sysv) - - Changes for 12.0 release are in 19.1. - Dumping should work now. - -Encore machine (ns16k-encore-bsd) - - This machine bizarrely uses 4.2BSD modified to use the COFF format - for object files. Works (as of 18.40). For the APC processor you - must enable two lines at the end of `src/s/umax.h', which are commented - out in the file as distributed. - - WARNING: If you compile Emacs with the "-O" compiler switch, you - must also use the "-q enter_exits" switch so that all functions have - stack frames. Otherwise routines that call `alloca' all lose. - - A kernel bug in some system versions causes input characters to be lost - occasionally. - Fujitsu DS/90 (sparc-fujitsu-sysv4) Changes merged in 20.3. @@ -368,50 +124,10 @@ GEC 63 (local-gec63-usg5.2) more work. Let us know if you get this working, and we'll give it a real configuration name. -Gould Power Node (pn-gould-bsd4.2 or pn-gould-bsd4.3) - - 18.36 worked on versions 1.2 and 2.0 of the operating system. - - On UTX/32 2.0, use pn-gould-bsd4.3. - - On UTX/32 1.2 and UTX/32S 1.0, use pn-gould-bsd4.2 and note that - compiling `lib-src/sorted-doc' tickles a compiler bug: remove the -g - flag to cc in the makefile. - - UTX/32 1.3 has a bug in the bcopy library routine. Fix it by - #undef BSTRING in `src/m/gould.h'. - - Version 19 incorporates support for releases 2.1 and later of UTX/32. - A site running a pre-release of 2.1 should #define RELEASE2_1 in config.h. - -Gould NP1 (np1-gould-bsd) - - Version 19 supposedly works. - -Harris Night Hawk (m68k-harris-cxux or m88k-harris-cxux) - - This port was added in 19.23. The configuration actually tested was - a Night Hawk 4800 running CX/UX 7.0. - - If you have GCC ported and want to build with it, you probably need to - change things (like compiler switches) defined in the s/cxux.h file. - - If you have X11R6 installed in /usr/lib, configure will fail to find - it and may find X11R5 instead. To work around this problem, use - --x-libraries=/usr/lib when you run configure. - - With CX/UX 7.0 and later releases, you need to build after setting the - SDE_TARGET environment variable to COFF (a port using ELF and shared - libraries has not yet been done). - Harris Power PC (powerpc-harris-powerunix) Patches have been merged in 19.31. -Honeywell XPS100 (xps100-honeywell-sysv) - - Config file added in version 19. - Hewlett-Packard 9000 series 200 or 300 (m68k-hp-bsd or m68k-hp-hpux or m68k-hp-netbsd) @@ -532,35 +248,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. -High Level Hardware Orion (orion-highlevel-bsd) - - This is the original microprogrammed hardware. - Machine description file ought to work. - -High Level Hardware Orion 1/05 (clipper-highlevel-bsd) - - Changes merged in 18.52. This is the one with the Clipper cpu. - Note that systems which lack NFS need LOAD_AVE_TYPE changed to `double'. - - C compiler has a bug; it loops compiling eval.c. - Compile it by hand without optimization. - -HITACHI SR2001/SR2201 series (hppa1.1-hitachi-hiuxwe2) - - These machines are based on PA architecture running HI-UX/MPP - (based on OSF1. `MPP' stands for `Massively Parallel Processor'). - - Emacs 19.34 is believed to work; its pretest was tested - both on SR2001 (output of `uname -rv' is `00-01-BB 0') and - SR2201 (`02-00 0'). - - Emacs 20.7 was reported to build on a system whose `uname -rs' - output is `HI-UX/MPP 03-04'. - - The machine description file is `src/m/sr2k.h' is based on - `src/m/hp800.h'. The system description file is `src/s/hiuxwe2.h' - based on `src/s/osf1.h'. Note that this system doesn't use COFF. - IBM PS/2 (i386-ibm-aix1.1 or i386-ibm-aix1.2) Changes merged in version 19. You may need to copy @@ -604,19 +291,6 @@ IBM RS/6000 (rs6000-ibm-aix*) If anyone can fix the above problems, or confirm that they don't happen with certain versions of various programs, we would appreciate it. -IBM RT/PC (romp-ibm-bsd or romp-ibm-aix) - - Use romp-ibm-bsd for the 4.2-like system and romp-ibm-aix for AIX. - 19.22 is reported to work under bsd. We don't know about AIX. - - On BSD, if you have trouble, try compiling with a different compiler. - - On AIX, the file /usr/lib/samples/hft/hftctl.c must be compiled into - hftctl.o, with this result left in the src directory (hftctl.c is - part of the standard AIX distribution). - - window.c must not be compiled with -O on AIX. - IBM System/390 running GNU/Linux (s390-*-linux-gnu) As of Emacs 21.2, a 31-bit only version is supported on this @@ -638,12 +312,11 @@ Integrated Solutions `Optimum V' (m68k-isi-bsd4.2 or -bsd4.3) in a system header file, which confuses Emacs (which thinks that UMAX indicates the Umax operating system). -Intel 386 (i386-*-isc, i386-*-esix, i386-*-bsdi2, - i386-*-xenix, i386-*-freebsd, i386-*-linux-gnu, +Intel 386 (i386-*-bsdi2, i386-*-freebsd, i386-*-linux-gnu, i386-*-sol2.4, i386-*-sysv3, i386-intsys-sysv, i386-*-sysv4, i386-*-sysv4.2, i386-*-sysv5.3, i386-*-bsd4.2, i386-*-cygwin, - i386-*-sco3.2v4, i386-*-bsd386, i386-*-386bsd, + i386-*-bsd386, i386-*-386bsd, i386-*-msdos, i386-*-windowsnt. i386... can be replaced with i486... or i586...) @@ -654,13 +327,11 @@ Intel 386 (i386-*-isc, i386-*-esix, i386-*-bsdi2, When using the ISC configurations, be sure to specify the isc version number - for example, if you're running ISC 3.0, use i386-unknown-isc3.0 as your configuration name. - Use i386-*-esix for Esix; Emacs runs as of version 19.6. Use i386-*-linux-gnu for GNU/Linux systems; Emacs runs as of version 19.26. Use i386-*-cygwin for Cygwin; Emacs builds as of version 22.1, in both X11 and non-X11 modes. (The Cygwin site has source and binaries for 21.2.) Use i386-intsys-sysv for Integrated Solutions 386 machines. It may also be correct for Microport systems. - Use i386-*-sco3.2v4 for SCO 3.2v4; Emacs runs as of version 19.26. On GNU/Linux systems, Emacs 19.23 was said to work properly with libc version 4.5.21, but not with 4.5.19. If your system uses QMAGIC @@ -692,8 +363,6 @@ Intel 386 (i386-*-isc, i386-*-esix, i386-*-bsdi2, For System V release 4, use i386-*-sysv4. For System V release 4.2, use i386-*-sysv4.2. - If you are using Xenix, see notes at end under Xenix. - If you are using Esix, see notes at end under Esix. If you are using SCO Unix, see notes at end under SCO. On 386bsd, NetBSD and FreeBSD, at one time, it was necessary to use @@ -774,11 +443,6 @@ Iris 4D (mips-sgi-irix[456].*) could also try reinstalling the same version of GCC, and telling us whether that fixes the problem. -Megatest (m68k-megatest-bsd) - - Emacs 15 worked; do not have any reports about Emacs 16 or 17 - but any new bugs are probably not difficult. - Mips (mips-mips-riscos, mips-mips-riscos4.0, or mips-mips-bsd) The C compiler on Riscos 4.51 dumps core trying to optimize @@ -818,24 +482,6 @@ Mips (mips-mips-riscos, mips-mips-riscos4.0, or mips-mips-bsd) on a riscos4bsd site. But it is not clear whether this is needed in general or only because of quirks on a particular site. -National Semiconductor 32000 (ns32k-ns-genix) - - This is for a complete machine from National Semiconductor, - running Genix. Changes merged in version 19. - -NCR Tower 32 (m68k-ncr-sysv2 or m68k-ncr-sysv3) - - If you are running System V release 2, use m68k-ncr-sysv2. - If you are running System V release 3, use m68k-ncr-sysv3. - - These both worked as of 18.56. If you change `src/ymakefile' so that - CFLAGS includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, check - out the comments in `src/m/tower32.h' (for System V release 2) or - `src/m/tower32v3.h' (for System V release 3) about this. - - There is a report that compilation with -O did not work with 18.54 - under System V release 2. - NCR Intel system (i386-ncr-sysv4.2) This system works in 19.31, but if you don't link it with GNU ld, @@ -860,30 +506,6 @@ NeXT (m68k-next-nextstep) Thanks to Thorsten Ohl for working on the NeXT port of Emacs 19. -Nixdorf Targon 31 (m68k-nixdorf-sysv) - - Machine description file for version 17 is included in 18 - but whether it works is not known. - `src/unexec.c' bombs if compiled with -O. - Note that the "Targon 35" is really a Pyramid. - -Nu (TI or LMI) (m68k-nu-sysv) - - Version 18 is believed to work. - -Paragon OSF/1 (i860-intel-osf1) - - Changes merged in 19.29. - - There is a bug in OSF/1 make which claims there is a syntax error - in the src/xmakefile. You can successfully build emacs with: - - pmake MAKE=pmake - -Plexus (m68k-plexus-sysv) - - Worked as of 17.56. - Pmax (DEC Mips) (mips-dec-ultrix or mips-dec-osf1) See under DECstation, above. @@ -892,39 +514,6 @@ Prime EXL (i386-prime-sysv) Minor changes merged in 19.1. -Pyramid (pyramid-pyramid-bsd) - - The 19.26 pretest was observed to work on OSx 5.0, but it is necessary - to edit gmalloc.c. You must add #include <sys/types.h> at the top, - and delete the #define for size_t. - - You need to build Emacs in the Berkeley universe with - the `ucb' command, as in `ucb make' or `ucb build-install'. - - In OSx 4.0, it seems necessary to add the following two lines - to `src/m/pyramid.h': - #define _longjmp longjmp - #define _setjmp setjmp - - In Pyramid system 2.5 there has been a compiler bug making - Emacs crash just after screen-splitting with Qnil containing 0. - A compiler that fixes this is Pyramid customer number 8494, - internal number 1923. - - Some versions of the pyramid compiler get fatal - errors when the -gx compiler switch is used; if this - happens to you, change `src/m/pyramid.h' to define - C_DEBUG_SWITCH with an empty definition. - - Some old system versions may require you to define PYRAMID_OLD - in when alloca.s is preprocessed, in order to define _longjmp and _setjmp. - -Sequent Balance (ns32k-sequent-bsd4.2 or ns32k-sequent-bsd4.3) - - Emacs 18.51 worked on system version 3.0. 18.52 is said to work. - Delete some lines at the end of `src/m/sequent.h' for earlier system - versions. - Sequent Symmetry (i386-sequent-bsd, i386-sequent-ptx, i386-sequent-ptx4) 19.33 has changes to support ptx 4 (a modified SVR4). @@ -949,8 +538,7 @@ Sequent Symmetry (i386-sequent-bsd, i386-sequent-ptx, i386-sequent-ptx4) Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4) - Changes merged in 19.29. This configuration should also work for - Pyramid MIS Server running DC-OSX 1.x. The version configured with + Changes merged in 19.29. The version configured with `--with-x' works without any modifications, but `--with-x-toolkit' works only if the Athena library and the Toolkit library are linked statically. For this, edit `src/Makefile' after the `configure' run @@ -982,23 +570,7 @@ SONY News 3000 series (RISC NEWS) (mips-sony-bsd) Emacs from working under any debugger. But you can change init_data in data.c if you wish. -Stardent i860 (i860-stardent-sysv4.0) - - 19.26 pretest reported to work. - -Stardent 1500 or 3000 - - See Titan. - -Stride (m68k-stride-sysv) - - Works (most recent news for 18.30) on their release 2.0. - For release 2.2, see the end of `src/m/stride.h'. - It may be possible to run on their V.1 system but changes - in the s- file would be needed. - -Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos, - sparc-sun-sunos4.1.3noshr, sparc-sun-solaris2.*, +Sun 3, 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 @@ -1074,13 +646,6 @@ Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos, for transferring text between clients. The Cut, Paste and Copy items in the menu bar Edit menu work with the clipboard. - It's important to include the SunOS version number in the - configuration name. For example, for SunOS release 4.0 on a Sun 3, - use `m68k-sun-sunos4.0'; for SunOS release 4.1 on a Sparc, use - `sparc-sun-sunos4.1'. For SunOS release 4.1.3 on a Sparc, use - `sparc-sun-sunos4.1.3'. Note that shared libraries are now - used by default on SunOS 4.1. - A user reported irreproducible segmentation faults when using 19.29 on Solaris 2.3 and 2.4 after compiling it with the Sun compiler. The problem went away when GCC 2.7.0 was used instead. We do not know @@ -1093,9 +658,6 @@ Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos, #define SeparateSharedCompile YES in site.def (after #ifdef AfterVendorCF). - Use `m68k' for the 68000-based Sun boxes, `sparc' for Sparcstations, - and `i386' for Sun Roadrunners. i386 calls for Sunos4.0. - 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 @@ -1103,16 +665,6 @@ Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos, add -lansi just before -lc. The precise file names depend on the compiler version, so we cannot easily arrange to supply them. - On SunOS 4.1.1, do not use /usr/5bin/cc. You can use gcc or/usr/bin/cc. - Make sure the environment variable LD_LIBRARY_PATH is not defined. - - Some people report crashes on SunOS 4.1.3 if SYSTEM_MALLOC is defined. - Others have reported that Emacs works if SYSTEM_MALLOC is defined, and not - if it is undefined. So far we do not know why results vary in this way. - The sources are set up so that SYSTEM_MALLOC is defined; if that crashes, - or if you want the benefit of the relocating memory allocator, you can - try enabling the #undef SYSTEM_MALLOC in src/s/sunos4-1-3.h. - On Solaris 2, you need to install patch 100947-02 to fix a system bug. Presumably this patch comes from Sun. You must alter the definition of LD_SWITCH_SYSTEM if your X11 libraries are not in /usr/openwin/lib. @@ -1139,10 +691,6 @@ Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos, src/s/sunos4-1.h to src/config.h. This problem is due to obsolete software in the nonshared standard library. - If you are compiling for X windows, and the X window library was - compiled to use the 68881, then you must edit config.h according - the comments at the end of `src/m/sun3.h'. - Note that Emacs on a Sun is not really as big as it looks. As dumped, it includes around 200k of zeros between the original text section and the original data section @@ -1175,15 +723,6 @@ Tadpole 68K (m68k-tadpole-sysv) chmod 2755 etc/movemail; chgrp mail etc/movemail -Tahoe (tahoe-tahoe-bsd4.2 or tahoe-tahoe-bsd4.3) - - 18.52 was known to work on some Tahoes, but a compiler bug intervenes - on others. Some Emacs versions have worked in Unisys 1r4 - (not in 1r3) and CCI I.21. - - If you have trouble compiling `lib-src/loadst.c', turn off the definition - of DKSTAT_HEADER_FILE in `src/m/tahoe.h'. - Tandem Integrity S2 (mips-tandem-sysv) Changes merged in 18.56 but subprocess support is turned off. @@ -1191,27 +730,6 @@ Tandem Integrity S2 (mips-tandem-sysv) You must edit `lib-src/Makefile' to define LOADLIBES = -mld. -Tektronix XD88 (m88k-tektronix-sysv3*) - - The 19.26 pretest was reported to work. - Minor changes merged in 19.19. - -Tektronix 16000 box (6130?) (ns16k-tektronix-bsd) - - Emacs 17.61 worked. - -Tektronix 4300 (m68k-tektronix-bsd) - - Emacs 19.26 pretest reported to work. - -Titan P2 or P3 (titan-titan-sysv) - - Changes probably merged in version 19. - -Ustation E30 (SS5E) (m68k-unisys-unipl) - - Changes merged in 18.52; don't know whether they work. - 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 @@ -1230,16 +748,6 @@ Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3), won't work very well, or even compile. Levitte is working on a port, so these problems should be fixed in the near future. -Whitechapel MG1 (ns16k-whitechapel-?) - - May work. Supposedly no changes were needed except in `src/m/mg1.h' - file. I do not know what Unix version runs on them. - -Wicat (m68k-wicat-sysv) - - Changes merged as of 18.6; whether they work is unknown. - See comments in `src/m/wicat.h' for things you should change - depending on the system and compiler version you have. Here are notes about some of the systems supported: @@ -1255,25 +763,6 @@ Berkeley 4.3 (bsd4.3) Works, on Vaxes at least. -Esix - - The following was written for Emacs 18.59 and has been - slightly adapted for Emacs 19. It may need more change to be correct. - - Use s/usg5-4.h for Esix System V 4.0.[34] systems if you also have - XFree86. If you insist on using the Esix X Window libraries, good - luck. s/esix5r4.h provides a starting point, but doesn't seem to - work consistently. The basic problems involve the need to load - -lX11 *last* in the link command, and even then some things break. - You get best results by installing XFree86 and forgetting about the - Esix stuff unless you want to run IXI xdt3, which really only needs - the Esix X11 shared libraries. - - To compile with XFree86, make sure that your LD_LIBRARY_PATH - contains /usr/X386/lib. Be careful if you also have the Esix X - Window libraries that /usr/X386/lib appears *first* in the - LD_LIBRARY_PATH. Then define C_SWITCH_X_SYSTEM -I/usr/X386/include. - Linux (actually GNU/Linux) Most of the complete systems which use the Linux kernel are close @@ -1304,8 +793,6 @@ MSDOS for information about using Emacs on MSDOS. SCO Unix - If you have TCP but not X, you need to edit src/s/sco4.h - to define HAVE_SOCKETS. If you are using MMDF instead of sendmail, you need to remove /usr/lib/sendmail or modify lisp/paths.el before compiling. @@ -1423,10 +910,6 @@ Ultrix (bsd4.3) The problem is said to be gone in UWS version 2.1. -Uniplus 5.2 (unipl5.2) - - Works, on Dual machines at least. - VMS (vmsM.N) Richard Levitte <levitte@e.kth.se> distributes a set of patches to @@ -1454,18 +937,6 @@ X86_64 GNU/Linux (using the location of the 32-bit X libraries on your system). -Xenix (xenix) - - Should work in 18.50, but you will need to edit the files - `lib-src/Makefile' and `src/ymakefile' - (see the comments that mention "Xenix" for what to change.) - Compiling Emacs with -O is said not to work. - - If you want Emacs to work with Smail (installed as /usr/bin/smail) - then add the line #define SMAIL to config.h. - - The file etc/XENIX suggests some useful things to do to Xenix - to make the Emacs meta key work. Local variables: mode: text diff --git a/etc/PROBLEMS b/etc/PROBLEMS index 21d4d695a1..1b4277b55d 100644 --- a/etc/PROBLEMS +++ b/etc/PROBLEMS @@ -379,8 +379,6 @@ the nameserver, but Emacs does not. The fix is to install an unshared library that corresponds to what you installed in the shared library, and then relink Emacs. -On SunOS 4.1, simply define HAVE_RES_INIT. - If you have already installed the name resolver in the file libresolv.a, then you need to compile Emacs to use that library. The easiest way to do this is to add to config.h a definition of LIBS_SYSTEM, LIBS_MACHINE @@ -2984,82 +2982,6 @@ the same problem. Display-time seems to be far the worst. The only known fix: Don't run display-time. -*** SunOS - -SunOS 4.1.4 stopped shipping on Sep 30 1998. - -**** SunOS: You get linker errors - ld: Undefined symbol - _get_wmShellWidgetClass - _get_applicationShellWidgetClass - -**** Sun 4.0.x: M-x shell persistently reports "Process shell exited abnormally with code 1". - -This happened on Suns as a result of what is said to be a bug in Sunos -version 4.0.x. The only fix was to reboot the machine. - -**** SunOS4.1.1 and SunOS4.1.3: Mail is lost when sent to local aliases. - -Many emacs mail user agents (VM and rmail, for instance) use the -sendmail.el library. This library can arrange for mail to be -delivered by passing messages to the /usr/lib/sendmail (usually) -program . In doing so, it passes the '-t' flag to sendmail, which -means that the name of the recipient of the message is not on the -command line and, therefore, that sendmail must parse the message to -obtain the destination address. - -There is a bug in the SunOS4.1.1 and SunOS4.1.3 versions of sendmail. -In short, when given the -t flag, the SunOS sendmail won't recognize -non-local (i.e. NIS) aliases. It has been reported that the Solaris -2.x versions of sendmail do not have this bug. For those using SunOS -4.1, the best fix is to install sendmail V8 or IDA sendmail (which -have other advantages over the regular sendmail as well). At the time -of this writing, these official versions are available: - - Sendmail V8 on ftp.cs.berkeley.edu in /ucb/sendmail: - sendmail.8.6.9.base.tar.Z (the base system source & documentation) - sendmail.8.6.9.cf.tar.Z (configuration files) - sendmail.8.6.9.misc.tar.Z (miscellaneous support programs) - sendmail.8.6.9.xdoc.tar.Z (extended documentation, with postscript) - - IDA sendmail on vixen.cso.uiuc.edu in /pub: - sendmail-5.67b+IDA-1.5.tar.gz - -**** Sunos 4: You get the error ld: Undefined symbol __lib_version. - -This is the result of using cc or gcc with the shared library meant -for acc (the Sunpro compiler). Check your LD_LIBRARY_PATH and delete -/usr/lang/SC2.0.1 or some similar directory. - -**** SunOS 4.1.3: Emacs unpredictably crashes in _yp_dobind_soft. - -This happens if you configure Emacs specifying just `sparc-sun-sunos4' -on a system that is version 4.1.3. You must specify the precise -version number (or let configure figure out the configuration, which -it can do perfectly well for SunOS). - -**** Sunos 4.1.3: Emacs gets hung shortly after startup. - -We think this is due to a bug in Sunos. The word is that -one of these Sunos patches fixes the bug: - -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 - -We don't know which of these patches really matter. If you find out -which ones, please inform bug-gnu-emacs@gnu.org. - -**** SunOS 4: Emacs processes keep going after you kill the X server -(or log out, if you logged in using X). - -Someone reported that recompiling with GCC 2.7.0 fixed this problem. - -The fix to this is to install patch 100573 for OpenWindows 3.0 -or link libXmu statically. - **** Sunos 5.3: Subprocesses remain, hanging but not zombies. A bug in Sunos 5.3 causes Emacs subprocesses to remain after Emacs @@ -3067,23 +2989,6 @@ exits. Sun patch # 101415-02 is part of the fix for this, but it only applies to ptys, and doesn't fix the problem with subprocesses communicating through pipes. -*** Apollo Domain - -**** Shell mode ignores interrupts on Apollo Domain. - -You may find that M-x shell prints the following message: - - Warning: no access to tty; thus no job control in this shell... - -This can happen if there are not enough ptys on your system. -Here is how to make more of them. - - % cd /dev - % ls pty* - # shows how many pty's you have. I had 8, named pty0 to pty7) - % /etc/crpty 8 - # creates eight new pty's - *** Irix *** Irix 6.2: No visible display on mips-sgi-irix6.2 when compiling with GCC 2.8.1. @@ -3771,27 +3676,6 @@ crt0.c together with linking with Fcrt1.o, Wcrt1.o or Mcrt1.o. However, the easiest approach is to build Xlib with the default floating point option: -fsoft. -** SunOS: Undefined symbols _dlopen, _dlsym and/or _dlclose. - -If you see undefined symbols _dlopen, _dlsym, or _dlclose when linking -with -lX11, compile and link against the file mit/util/misc/dlsym.c in -the MIT X11R5 distribution. Alternatively, link temacs using shared -libraries with s/sunos4shr.h. (This doesn't work if you use the X -toolkit.) - -If you get the additional error that the linker could not find -lib_version.o, try extracting it from X11/usr/lib/X11/libvim.a in -X11R4, then use it in the link. - -** SunOS4, DGUX 5.4.2: --with-x-toolkit version crashes when used with shared libraries. - -On some systems, including Sunos 4 and DGUX 5.4.2 and perhaps others, -unexec doesn't work properly with the shared library for the X -toolkit. You might be able to work around this by using a nonshared -libXt.a library. The real fix is to upgrade the various versions of -unexec and/or ralloc. We think this has been fixed on Sunos 4 -and Solaris in version 19.29. - ** HPUX 10.20: Emacs crashes during dumping on the HPPA machine. This seems to be due to a GCC bug; it is fixed in GCC 2.8.1. diff --git a/leim/ChangeLog b/leim/ChangeLog index c91ae26c1e..9e955c2aa0 100644 --- a/leim/ChangeLog +++ b/leim/ChangeLog @@ -1,3 +1,8 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * makefile.w32-in: + * Makefile.in: Remove references to Xenix. + 2007-12-15 Richard Stallman <rms@gnu.org> * quail/latin-post.el ("scandinavian-postfix"): Doc fix. diff --git a/leim/Makefile.in b/leim/Makefile.in index 14bcffb26f..268ede9c09 100644 --- a/leim/Makefile.in +++ b/leim/Makefile.in @@ -38,7 +38,7 @@ INSTALLDIR=$(DESTDIR)${datadir}/emacs/${version}/leim GZIP_PROG = @GZIP_PROG@ -# On Xenix and the IBM RS6000, double-dot gets screwed up. +# On IBM RS6000, double-dot gets screwed up. dot = . # Which Emacs to use to convert TIT files to Emacs Lisp files, diff --git a/leim/makefile.w32-in b/leim/makefile.w32-in index 4d760ff69c..68bdddbb17 100644 --- a/leim/makefile.w32-in +++ b/leim/makefile.w32-in @@ -27,7 +27,7 @@ srcdir=. # Where to install LEIM files. INSTALLDIR=$(INSTALL_DIR)/leim -# On Xenix and the IBM RS6000, double-dot gets screwed up. +# On IBM RS6000, double-dot gets screwed up. dot = . # Which Emacs to use to convert TIT files to Emacs Lisp files, diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 910e3a8c63..9665c6cd56 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,20 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * obsolete/x-apollo.el: Remove file for unsupported system. + + * term/x-win.el (vendor-specific-keysyms): Remove reference to + Apollo. + + * progmodes/gud.el (gud-dgux-p): Remove. + (dbx): Remove reference to dgux. + + * progmodes/ps-mode.el (ps-mode-print-function): + * ps-print.el (ps-lp-system): + * paths.el (rmail-spool-directory): + * ls-lisp.el (ls-lisp-emulation): + * lpr.el (lpr-lp-system): + * dired.el (dired-chown-program): Remove references to dgux. + 2008-01-05 Stefan Monnier <monnier@iro.umontreal.ca> * vc.el (vc-process-sentinel): Fix apparent typo. diff --git a/lisp/dired.el b/lisp/dired.el index 51067e4600..b9a360a6e9 100644 --- a/lisp/dired.el +++ b/lisp/dired.el @@ -70,7 +70,7 @@ If nil, `dired-listing-switches' is used.") ;;;###autoload (defvar dired-chown-program - (if (memq system-type '(hpux dgux usg-unix-v irix linux gnu/linux cygwin)) + (if (memq system-type '(hpux usg-unix-v irix linux gnu/linux cygwin)) "chown" (if (file-exists-p "/usr/sbin/chown") "/usr/sbin/chown" diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index a6b43d7831..91063c2a97 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,7 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * gnus.el (gnus-use-long-file-name): Remove reference to xenix. + 2007-12-28 Reiner Steib <Reiner.Steib@gmx.de> * message.el (message-send-mail-function): Increase custom version. diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index fc76fce86d..36066e8216 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el @@ -1522,7 +1522,7 @@ If it is nil, no confirmation is required." :type '(choice (const :tag "No limit" nil) integer)) -(defcustom gnus-use-long-file-name (not (memq system-type '(usg-unix-v xenix))) +(defcustom gnus-use-long-file-name (not (memq system-type '(usg-unix-v))) "*Non-nil means that the default name of a file to save articles in is the group name. If it's nil, the directory form of the group name is used instead. diff --git a/lisp/lpr.el b/lisp/lpr.el index 4df98d6d75..721657a095 100644 --- a/lisp/lpr.el +++ b/lisp/lpr.el @@ -37,7 +37,7 @@ ;;;###autoload (defvar lpr-lp-system - (memq system-type '(usg-unix-v dgux hpux irix))) + (memq system-type '(usg-unix-v hpux irix))) (defgroup lpr nil diff --git a/lisp/ls-lisp.el b/lisp/ls-lisp.el index a016b8369b..0c387c34a0 100644 --- a/lisp/ls-lisp.el +++ b/lisp/ls-lisp.el @@ -75,7 +75,7 @@ (cond ((eq system-type 'macos) 'MacOS) ;; ((eq system-type 'windows-nt) 'MS-Windows) ((memq system-type - '(hpux dgux usg-unix-v unisoft-unix rtu irix berkeley-unix)) + '(hpux usg-unix-v unisoft-unix irix berkeley-unix)) 'UNIX)) ; very similar to GNU ;; Anything else defaults to nil, meaning GNU. "*Platform to emulate: GNU (default), MacOS, MS-Windows, UNIX. diff --git a/lisp/obsolete/x-apollo.el b/lisp/obsolete/x-apollo.el deleted file mode 100644 index f06f793dc9..0000000000 --- a/lisp/obsolete/x-apollo.el +++ /dev/null @@ -1,98 +0,0 @@ -;;; x-apollo.el --- Apollo support functions - -;; Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005, -;; 2006, 2007 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, 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; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -;; Boston, MA 02110-1301, USA. - -;;; Commentary: - -;;; Code: - -(defun apollo-kill-entire-line () - "Kill the entire line containing point." - (interactive) - (beginning-of-line) - (kill-line 1)) - -(defun apollo-scroll-window-right () - "Scroll window to right ten columns." - (interactive) - (scroll-left 10)) - -(defun apollo-scroll-window-left () - "Scroll window to left ten columns." - (interactive) - (scroll-right 10)) - -(defun apollo-scroll-window-forward-line () - "Move window forward one line leaving cursor at position in window." - (interactive) - (scroll-up 1)) - -(defun apollo-scroll-window-backward-line () - "Move window backward one line leaving cursor at position in window." - (interactive) - (scroll-down 1)) - -;;; Define and Enable the Function Key Bindings. - -(global-set-key [S-tab] "\C-i") ;Shift TAB -(global-set-key [C-tab] "\C-i") ;Control TAB -(global-set-key [S-return] "\C-m") ;Shift RET -(global-set-key [C-return] "\C-m") ;Control RET -(global-set-key [linedel] 'apollo-kill-entire-line) ;LINE DEL -(global-set-key [chardel] 'delete-char) ;CHAR DEL -(global-set-key [leftbar] 'beginning-of-line) ;LEFT BAR ARROW -(global-set-key [rightbar] 'end-of-line) ;RIGHT BAR ARROW -(global-set-key [leftbox] 'apollo-scroll-window-left) ;LEFT BOX ARROW -(global-set-key [rightbox] 'apollo-scroll-window-right) ;RIGHT BOX ARROW -(global-set-key [S-up] 'apollo-scroll-window-backward-line) ;Shift UP ARROW -(global-set-key [S-down] 'apollo-scroll-window-forward-line) ;Shift DOWN ARROW -(global-set-key [select] 'set-mark-command) ;MARK -(global-set-key [S-insert] 'overwrite-mode) ;INS MODE -(global-set-key [S-linedel] 'yank) ;Shift LINE DEL -(global-set-key [S-chardel] 'delete-char) ;Shift CHAR DEL -(global-set-key [copy] 'copy-region-as-kill) ;COPY -(global-set-key [S-cut] 'kill-region) ;CUT -(global-set-key [paste] 'yank) ;PASTE -(global-set-key [S-undo] 'undo) ;UNDO -(global-set-key [S-left] 'backward-word) ;Shift LEFT ARROW -(global-set-key [S-right] 'forward-word) ;Shift RIGHT ARROW -(global-set-key [upbox] 'scroll-down) ;UP BOX ARROW -(global-set-key [S-upbox] 'beginning-of-buffer) ;Shift UP BOX ARROW -(global-set-key [downbox] 'scroll-up) ;DOWN BOX ARROW -(global-set-key [S-downbox] 'end-of-buffer) ;Shift DOWN BOX ARROW -(global-set-key [S-redo] 'toggle-read-only) ;Shift AGAIN -(global-set-key [exit] 'save-buffer) ;EXIT -(global-set-key [S-cancel] 'kill-buffer) ;ABORT -(global-set-key [S-save] 'save-buffer) ;SAVE -(global-set-key [S-leftbar] 'beginning-of-buffer) ;Shift LEFT BAR ARROW -(global-set-key [cmd] 'execute-extended-command) ;CMD -(global-set-key [S-rightbar] 'end-of-buffer) ;Shift RIGHT BAR ARROW -(global-set-key [next] 'other-window) ;NEXT WNDW -(global-set-key [S-next] 'delete-window) ;Shift NEXT WNDW -(global-set-key [read] 'find-file-read-only) ;READ -(global-set-key [edit] 'find-file) ;EDIT -(global-set-key [S-shell] 'shell) ;SHELL -(global-set-key [S-help] 'manual-entry) ;HELP - -(provide 'x-apollo) - -;;; arch-tag: 4f3e86f4-557c-44b3-978e-144fc4dc812e -;;; x-apollo.el ends here diff --git a/lisp/paths.el b/lisp/paths.el index 113bf2ec91..d335c758a3 100644 --- a/lisp/paths.el +++ b/lisp/paths.el @@ -153,7 +153,7 @@ The `ORGANIZATION' environment variable is used instead if defined.") ;; Many GNU/Linux systems use this name. ((file-exists-p "/var/spool/mail") "/var/spool/mail/") - ((memq system-type '(dgux hpux usg-unix-v unisoft-unix rtu irix)) + ((memq system-type '(hpux usg-unix-v unisoft-unix irix)) "/usr/mail/") (t "/usr/spool/mail/")) "Name of directory used by system mailer for delivering new mail. diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el index 3c6736ac79..5875e79482 100644 --- a/lisp/progmodes/gud.el +++ b/lisp/progmodes/gud.el @@ -1233,10 +1233,6 @@ a better solution in 6.1 upwards.") (setq result (substring result 0 (match-beginning 0)))))) (or result ""))) -(defvar gud-dgux-p (string-match "-dgux" system-configuration) - "Non-nil means to assume the interface approriate for DG/UX dbx. -This was tested using R4.11.") - ;; There are a couple of differences between DG's dbx output and normal ;; dbx output which make it nontrivial to integrate this into the ;; standard dbx-marker-filter (mainly, there are a different number of @@ -1295,9 +1291,6 @@ and source-file directory for your debugger." (gud-irix-p (gud-common-init command-line 'gud-dbx-massage-args 'gud-irixdbx-marker-filter)) - (gud-dgux-p - (gud-common-init command-line 'gud-dbx-massage-args - 'gud-dguxdbx-marker-filter)) (t (gud-common-init command-line 'gud-dbx-massage-args 'gud-dbx-marker-filter))) diff --git a/lisp/progmodes/ps-mode.el b/lisp/progmodes/ps-mode.el index 6327a68302..cc4e2a4f69 100644 --- a/lisp/progmodes/ps-mode.el +++ b/lisp/progmodes/ps-mode.el @@ -109,7 +109,7 @@ When the figure is finished these values should be replaced." (defcustom ps-mode-print-function (lambda () (let ((lpr-switches nil) - (lpr-command (if (memq system-type '(usg-unix-v dgux hpux irix)) + (lpr-command (if (memq system-type '(usg-unix-v hpux irix)) "lp" "lpr"))) (lpr-buffer))) "*Lisp function to print current buffer as PostScript." diff --git a/lisp/ps-print.el b/lisp/ps-print.el index 0e442f3b10..fdceffd972 100644 --- a/lisp/ps-print.el +++ b/lisp/ps-print.el @@ -1489,7 +1489,7 @@ Please send all bug fixes and enhancements to (defconst ps-windows-system (memq system-type '(emx win32 w32 mswindows ms-dos windows-nt))) (defconst ps-lp-system - (memq system-type '(usg-unix-v dgux hpux irix))) + (memq system-type '(usg-unix-v hpux irix))) (defun ps-xemacs-color-name (color) diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el index 66c5a272e1..da1d158050 100644 --- a/lisp/term/x-win.el +++ b/lisp/term/x-win.el @@ -1228,30 +1228,7 @@ XConsortium: rgb.txt,v 10.41 94/02/20 18:39:36 rws Exp") "Return the appropriate value of `system-key-alist' for VENDOR. VENDOR is a string containing the name of the X Server's vendor, as returned by `x-server-vendor'." - ;; Fixme: Drop Apollo now? - (cond ((string-equal vendor "Apollo Computer Inc.") - '((65280 . linedel) - (65281 . chardel) - (65282 . copy) - (65283 . cut) - (65284 . paste) - (65285 . move) - (65286 . grow) - (65287 . cmd) - (65288 . shell) - (65289 . leftbar) - (65290 . rightbar) - (65291 . leftbox) - (65292 . rightbox) - (65293 . upbox) - (65294 . downbox) - (65295 . pop) - (65296 . read) - (65297 . edit) - (65298 . save) - (65299 . exit) - (65300 . repeat))) - ((or (string-equal vendor "Hewlett-Packard Incorporated") + (cond ((or (string-equal vendor "Hewlett-Packard Incorporated") (string-equal vendor "Hewlett-Packard Company")) '(( 168 . mute-acute) ( 169 . mute-grave) diff --git a/src/ChangeLog b/src/ChangeLog index 3ad3584a23..029278e90b 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,118 @@ +2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> + + * m/7300.h: + * m/acorn.h: + * m/alliant-2800.h: + * m/alliant.h: + * m/alliant1.h: + * m/alliant4.h: + * m/altos.h: + * m/amdahl.h: + * m/apollo.h: + * m/att3b.h: + * m/aviion-intel.h: + * m/aviion.h: + * m/celerity.h: + * m/clipper.h: + * m/cnvrgnt.h: + * m/convex.h: + * m/cydra5.h: + * m/delta88k.h: + * m/dpx2.h: + * m/dual.h: + * m/elxsi.h: + * m/f301.h: + * m/gould-np1.h: + * m/gould.h: + * m/i860.h: + * m/ibmps2-aix.h: + * m/ibmrt-aix.h: + * m/ibmrt.h: + * m/irist.h: + * m/is386.h: + * m/isi-ov.h: + * m/mega68.h: + * m/mg1.h: + * m/news-r6.h: + * m/news-risc.h: + * m/news.h: + * m/nh3000.h: + * m/nh4000.h: + * m/ns16000.h: + * m/ns32000.h: + * m/nu.h: + * m/orion.h: + * m/orion105.h: + * m/paragon.h: + * m/pfa50.h: + * m/plexus.h: + * m/pyramid.h: + * m/pyrmips.h: + * m/sh3el.h: + * m/sps7.h: + * m/sr2k.h: + * m/stride.h: + * m/sun1.h: + * m/sun2.h: + * m/sun3-68881.h: + * m/sun3-fpa.h: + * m/sun3-soft.h: + * m/sun3.h: + * m/sun386.h: + * m/symmetry.h: + * m/tad68k.h: + * m/tahoe.h: + * m/targon31.h: + * m/tek4300.h: + * m/tekxd88.h: + * m/tower32.h: + * m/tower32v3.h: + * m/ustation.h: + * m/wicat.h: + * m/xps100.h: + * s/cxux.h: + * s/cxux7.h: + * s/dgux.h: + * s/dgux4.h: + * s/dgux5-4-3.h: + * s/dgux5-4r2.h: + * s/esix.h: + * s/esix5r4.h: + * s/hiuxmpp.h: + * s/hiuxwe2.h: + * s/iris3-5.h: + * s/iris3-6.h: + * s/isc2-2.h: + * s/isc3-0.h: + * s/isc4-0.h: + * s/isc4-1.h: + * s/newsos5.h: + * s/newsos6.h: + * s/osf1.h: + * s/osf5-0.h: + * s/riscix1-1.h: + * s/riscix12.h: + * s/sco4.h: + * s/sco5.h: + * s/sunos4-0.h: + * s/sunos4-1.h: + * s/sunos413.h: + * s/sunos4shr.h: + * s/umax.h: + * s/unipl5-2.h: + * s/xenix.h: + * cxux-crt0.s: + * unexapollo.c: + * unexconvex.c: + * unexenix.c: + * unexsni.c: Remove files for systems no longer supported. + + * m/intel386.h: Remove references to unsupported systems. + + * w32.c (get_emacs_configuration): Remove reference to i860. + + * sysdep.c: Remove dead code. + 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> * s/rtu.h: diff --git a/src/cxux-crt0.s b/src/cxux-crt0.s deleted file mode 100644 index d9c570a9c1..0000000000 --- a/src/cxux-crt0.s +++ /dev/null @@ -1,42 +0,0 @@ -/* - * External symbol setup file for GNU Emacs on CX/UX - * Copyright (C) 1990, 2002, 2003, 2004, 2005, - * 2006, 2007 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, 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; see the file COPYING. If not, write to - * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, - * Boston, MA 02110-1301, USA. - */ - -/* - * This file makes the start of the text and data regions of the program - * clearly visible to the GNU Emacs C source code, without any dependencies - * on any changes made to the standard C runtime startup module, crt0.o. - * It depends, however, on this file being passed down to the linker (ld) - * before any others, and the linker's behavior of assigning increasing - * addresses as it finds symbols. - */ - /* C symbol _start marks beginning of text region. */ - .text - .globl __start -__start: - /* C symbol data_start marks beginning of data region. */ - .data - .globl _data_start -_data_start: .space 4 - -/* arch-tag: ba84e4dc-615d-4a81-898c-f5b98ec71c9d - (do not change this comment) */ diff --git a/src/m/7300.h b/src/m/7300.h deleted file mode 100644 index 6e439a829c..0000000000 --- a/src/m/7300.h +++ /dev/null @@ -1,98 +0,0 @@ -/* machine description file for AT&T UNIX PC model 7300 - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 Free Software Foundation, Inc. - Modified for this machine by mtxinu!rtech!gonzo!daveb - -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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2-2" */ - -/* Supposedly now these machines have flexnames. - -/* # define SHORTNAMES */ - - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* XINT must explicitly sign-extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000 are the ones defined so far. */ - -# ifndef mc68k -# define mc68k -# endif -#ifndef m68k -#define m68k -#endif - -/* Cause crt0.c to define errno. */ - -#define NEED_ERRNO - -/* Data type of load average, as read out of kmem. */ -/* These are commented out since it is not supported by this machine. */ - -/* #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) */ - -#ifndef __GNUC__ - -#define SWITCH_ENUM_BUG - -#endif - -/* If you have the PD pty driver installed, uncomment the following line. */ -/* #define HAVE_PTYS */ - -#define HAVE_SYSVIPC - -/* We don't have memmove. */ -#define memmove(d, s, n) safe_bcopy (s, d, n) - -/* These three lines were new in 18.50. They were said to permit - a demand-paged executable, but someone else says they don't work. - Someone else says they do. They didn't work because errno was an - initialized variable in crt0.c, and because of %splimit (also therein), - both of which have been fixed now. */ -#define SECTION_ALIGNMENT 0x03ff -#define SEGMENT_MASK 0xffff -#define LD_SWITCH_MACHINE -z - -/* Insist on using cc when compiling this. GCC may have been - configured to use GAS syntax, which causes problems. */ -#define CRT0_COMPILE cc -c -O -Demacs - -/* arch-tag: 66219dc7-ef45-4f0c-bb98-f35421f39c8d - (do not change this comment) */ diff --git a/src/m/acorn.h b/src/m/acorn.h deleted file mode 100644 index 148d46454a..0000000000 --- a/src/m/acorn.h +++ /dev/null @@ -1,185 +0,0 @@ -/* Machine description file for Acorn RISCiX machines. - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - - -/* 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. We can't - * do this on the arm with gcc, since the first 4 args are in registers. */ - -#ifdef __GNUC__ -#define NO_ARG_ARRAY -#else -#undef NO_ARG_ARRAY -#endif - -/* 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. */ - -/* ARM note - The RISCiX Norcroft C Compiler has ALL - non-32-bit types as unsigned */ - -#define SIGN_EXTEND_CHAR(c) (((int)(c) << 24) >> 24) - -/* 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 */ - -/* ARM note - this is done by the Norcroft compiler - symbol is `__arm' */ - -/* 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 - -#ifdef LDAV_SYMBOL -#undef LDAV_SYMBOL -#endif - -#define LDAV_SYMBOL "_iavenrun" - - -/* 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 */ - -/* - * Scale factor for scaled integers used to count - * %cpu time and load averages. - */ - -/* FSHIFT and FSCALE are defined in param.h, but are required by - LOAD_AVE_CVT, so they need to be defined here. */ - -#ifndef FSHIFT -#define FSHIFT 8 /* bits to right of fixed binary point */ -#endif - -#ifndef FSCALE -#define FSCALE (1<<FSHIFT) -#endif - -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) - -/* 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. */ - -#undef VIRT_ADDR_VARIES - -/* This prevents Emacs dumping an unsqueezed binary with the - SQUEEZE bit set in the magic number. */ - -#define ADJUST_EXEC_HEADER {hdr.a_magic &= ~MF_SQUEEZED;} - -#ifdef __GNUC__ - -/* Keep gcc/RISCiX happy - it uses __gccmain where other versions of - gcc use __main, because of a library routine name clash. */ -#define __main __gccmain - -#endif /* __GNUC__ */ - -/* 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 - - -#ifndef NOT_C_CODE -#define TEXT_START 0x8000 -#define DATA_END &_edata -extern int _edata; -#define etext _etext -#endif - -/* Avoid debugging library */ -#define LIBS_DEBUG - -/* Avoid sharing libc */ -#define LIB_STANDARD -lc_n - -/* Avoid sharing libX11 */ -#define LIB_X11_LIB -lX11_n - -/* All kinds of symbol definitions, so as to avoid multiply defined symbol - errors from the RISCiX linker. */ - -#ifdef __GNUC__ -#define C_DEBUG_SWITCH - -#define C_OPTIMIZE_SWITCH -O1 -fomit-frame-pointer -w -g -Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind -Doptarg=gnu_optarg -Dcfree=gnu_cfree -D___type= - -#else -#define C_DEBUG_SWITCH -O -w -g -Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind -Doptarg=gnu_optarg -Dcfree=gnu_cfree -#endif - -/* Turn this on to avoid the emacs malloc and use standard one */ - -#undef SYSTEM_MALLOC - -/* Use <dirent.h>. */ -#define SYSV_SYSTEM_DIR - -#ifdef NO_REMAP -/* CRT0_O is defined in s/riscix1-1.h or s/riscix1-2.h, as appropriate. */ -#define START_FILES pre-crt0.o CRT0_O -#else -Cannot -do -this -yet -#endif - -/* arch-tag: acee2955-8c49-4b40-813c-579f76f4c0c3 - (do not change this comment) */ diff --git a/src/m/alliant-2800.h b/src/m/alliant-2800.h deleted file mode 100644 index 405267afb2..0000000000 --- a/src/m/alliant-2800.h +++ /dev/null @@ -1,130 +0,0 @@ -/* alliant-2800.h - Alliant FX/2800 machine running Concentrix 2800. - Copyright (C) 1990, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-3" */ - -/* 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 - -/* Define WORD_MACHINE if addresses and such have - * to be corrected before they can be used as byte counts. */ - -#undef WORD_MACHINE - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ - -#define ALLIANT -#define ALLIANT_2800 -#define sun /* Use X support for Sun keyboard stuff. */ -#define C_OPTIMIZE_SWITCH -Og /* No concurrent code allowed here. */ - -/* 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 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. */ -/* On Alliants, bitfields are unsigned. */ - -#define EXPLICIT_SIGN_EXTEND - -/* Concentrix uses a different kernel symbol for load average. */ - -#undef LDAV_SYMBOL /* Undo definition in s-bsd4-2.h */ -#define LDAV_SYMBOL "_Loadavg" - -/* 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) (x * 100 / LOADAVG_SCALE) - -/* include <sys/param.h> for the definition of LOADAVG_SCALE, and also - LOADAVG_SIZE, the number of items in the Loadavg array. */ - -/* 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 UNEXEC unexfx2800.o -#define LIBS_MACHINE -lalliant - -/* 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. */ - -#undef 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. */ -/* Actually, Alliant CONCENTRIX does paging "right": - data pages are copy-on-write, which means that the pure data areas - are shared automatically and remapping is not necessary. */ - -#define NO_REMAP - -/* Alliant needs special crt0.o because system version is not reentrant */ - -#define START_FILES crt0.o - -/* Alliant dependent code for dumping executing image. - See crt0.c code for alliant. */ - -#define ADJUST_EXEC_HEADER {\ -extern int _curbrk, _setbrk;\ -_setbrk = _curbrk;\ -hdr.a_bss_addr = bss_start;\ -unexec_text_start = hdr.a_text_addr;} - -/* POSIX Compatibility */ -/* Use System V.4 style getdents/readdir <dirent.h> for 2.2 and up. */ -#define SYSV_SYSTEM_DIR - -/* Use the K&R version of the DEFUN macro. */ -#define USE_NONANSI_DEFUN - -/* arch-tag: 8ba70b15-d082-40f6-931d-14adfd7f9dbd - (do not change this comment) */ diff --git a/src/m/alliant.h b/src/m/alliant.h deleted file mode 100644 index 7cad4bfb0c..0000000000 --- a/src/m/alliant.h +++ /dev/null @@ -1,123 +0,0 @@ -/* alliant.h Alliant machine running system version 2 or 3. - Copyright (C) 1985, 1986, 1987, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - Note that for version 1 of the Alliant system - you should use alliant1.h instead of this file. - Use alliant4.h for version 4. - -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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -/* 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. */ - -#ifdef ALLIANT_1 -#define NO_ARG_ARRAY -#endif - -/* Define WORD_MACHINE if addresses and such have - * to be corrected before they can be used as byte counts. */ - -#undef WORD_MACHINE - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ - -#define ALLIANT - -/* 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. */ -/* On Alliants, bitfields are unsigned. */ - -#define EXPLICIT_SIGN_EXTEND - -/* No load average information available for Alliants. */ - -#undef LOAD_AVE_TYPE -#undef LOAD_AVE_CVT - -/* 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. */ - -#undef 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. */ -/* Actually, Alliant CONCENTRIX does paging "right": - data pages are copy-on-write, which means that the pure data areas - are shared automatically and remapping is not necessary. */ - -#define NO_REMAP - -/* Alliant needs special crt0.o because system version is not reentrant */ - -#define START_FILES crt0.o - -/* Alliant dependent code for dumping executing image. - See crt0.c code for alliant. */ - -#define ADJUST_EXEC_HEADER {\ -extern int _curbrk, _setbrk;\ -_setbrk = _curbrk;\ -hdr.a_bss_addr = bss_start;\ -unexec_text_start = hdr.a_text_addr;} - -/* cc screws up on long names. Try making cpp replace them. */ - -#ifdef ALLIANT_1 -#define Finsert_abbrev_table_description Finsert_abbrev_table_descrip -#define internal_with_output_to_temp_buffer internal_with_output_to_tem -#endif - -/* "vector" is a typedef in /usr/include/machine/reg.h, so its use as - a variable name causes errors when compiling under ANSI C. */ - -#define vector xxvector - -/* arch-tag: 0ad5f932-f29a-4458-a24c-496cafdfd50d - (do not change this comment) */ diff --git a/src/m/alliant1.h b/src/m/alliant1.h deleted file mode 100644 index ca597ac276..0000000000 --- a/src/m/alliant1.h +++ /dev/null @@ -1,12 +0,0 @@ -/* config.h should include this file for version 1 of Alliant's - operating system. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -#define ALLIANT_1 -#include "alliant.h" - -/* arch-tag: 516688f9-4b94-4356-9bf0-92b2d72e664e - (do not change this comment) */ diff --git a/src/m/alliant4.h b/src/m/alliant4.h deleted file mode 100644 index 2ab0a6bde1..0000000000 --- a/src/m/alliant4.h +++ /dev/null @@ -1,27 +0,0 @@ -/* machine description file for Alliant Concentrix 4.0 or later. - Use alliant.h for versions 2 and 3. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -#include "alliant.h" - -/* Concentrix uses a different kernel symbol for load average. */ - -#undef LDAV_SYMBOL /* Undo definition in s-bsd4-2.h */ -#define LDAV_SYMBOL "_Loadavg" - -/* 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) (x * 100 / LOADAVG_SCALE) - -/* include <sys/param.h> for the definition of LOADAVG_SCALE, and also - LOADAVG_SIZE, the number of items in the Loadavg array. */ - -/* arch-tag: cf917b55-c95e-4079-a4d1-d31e00c61b66 - (do not change this comment) */ diff --git a/src/m/altos.h b/src/m/altos.h deleted file mode 100644 index 0f4bb9b810..0000000000 --- a/src/m/altos.h +++ /dev/null @@ -1,59 +0,0 @@ -/* altos machine description file Altos 3068 Unix System V Release 2 - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -#define EXPLICIT_SIGN_EXTEND - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -#define LIB_STANDARD -lc - -#define SWITCH_ENUM_BUG - -#define NO_REMAP - -#undef TERMINFO - -#undef CANNOT_DUMP -#undef SHORTNAMES -#define TERMCAP - -#define LIBS_TERMCAP -ltermlib -#define PURESIZE 220000 -#define ALTOS - -#ifdef __GNUC__ -#define COFF_ENCAPSULATE -#endif - -/* arch-tag: 4572d0ff-70bb-445f-80f1-2bbac3cf47cb - (do not change this comment) */ diff --git a/src/m/amdahl.h b/src/m/amdahl.h deleted file mode 100644 index 486e2925a5..0000000000 --- a/src/m/amdahl.h +++ /dev/null @@ -1,140 +0,0 @@ -/* amdahl machine description file - Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* -This file for amdahl_uts created by modifying the template.h -by Jishnu Mukerji 3/1/87 - -The following line tells the configuration script what sort of -operating system this machine is likely to run. -USUAL-OPSYS="usg5-2-2" - -This file works with the Amdahl uts native C compiler. The 5.2u370 -compiler is so brain damaged that it is not even worth trying to use it. -*/ - -/* 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. */ - -#undef 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 /* not actually used anywhere yet! */ - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ - -/* uts gets defined automatically */ -/* However for clarity define amdahl_uts */ -#define amdahl_uts - -/* 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)*/ - -/* 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*/ - -/* 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*/ - -#define TERMINFO - -/* The usual definition of XINT, which involves shifting, does not - sign-extend properly on this machine. */ - -#define XINT(i) (((sign_extend_temp=(i)) & 0x00800000) \ - ? (sign_extend_temp | 0xFF000000) \ - : (sign_extend_temp & 0x00FFFFFF)) - -#ifdef emacs /* Don't do this when making xmakefile! */ -extern int sign_extend_temp; -#endif - -/* The following needed to load the proper crt0.o and to get the - proper declaration of data_start in the #undef NO_REMAP case */ - -#ifndef NO_REMAP -#define START_FILES pre-crt0.o /lib/crt0.o -#endif - -/* Perhaps this means that the optimizer isn't safe to use. */ - -#define C_OPTIMIZE_SWITCH - -/* Put text and data on non-segment boundary; makes image smaller */ - -#define LD_SWITCH_MACHINE -N - -/* When writing the 'xemacs' file, make text segment ro */ -#define EXEC_MAGIC 0410 - -/* Mask for address bits within a memory segment */ -#define SEGSIZ 0x10000 /* Should this not be defined elsewhere ? */ -#define SEGMENT_MASK (SEGSIZ - 1) - -/* Compensate for error in signal.h. */ -#define NSIG_MINIMUM 20 - -/* arch-tag: cf665976-ddb1-49b0-b383-371e17f36acf - (do not change this comment) */ diff --git a/src/m/apollo.h b/src/m/apollo.h deleted file mode 100644 index 2eac3098db..0000000000 --- a/src/m/apollo.h +++ /dev/null @@ -1,96 +0,0 @@ -/* machine description file for Apollo machine. - Copyright (C) 1985, 1986, 1994, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-3" */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* Say this machine is a 68000 */ - -/* #define m68000 */ /* Done by the C compiler */ - -#define APOLLO - -/* Assume we use s-bsd4-3.h for system version 10. */ - -#ifdef BSD4_3 -#define APOLLO_SR10 -#endif - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* Do not define LOAD_AVE_TYPE or LOAD_AVE_CVT - since there is no /dev/kmem */ - -/* Undefine VIRT_ADDR_VARIES because the virtual addresses of - pure and impure space as loaded do not vary. */ - -#undef VIRT_ADDR_VARIES - -/* Prevent -lg from being used for debugging. Not needed. */ - -#define LIBS_DEBUG - -/* Can't use the system's termcap. It has compressed data sections that - interfere with dumping. That means we won't automatically get a vt100 - when we start up emacs in a dm pad (a dubious feature at best anyway). */ - -#undef LIBS_TERMCAP - -/* Must use the system's malloc and alloca. */ - -#define SYSTEM_MALLOC - -/* Define the file we use for UNEXEC. */ - -#define UNEXEC unexapollo.o - -/* The Apollo linker does not recognize the -X switch, so we remove it here. */ - -#define LD_SWITCH_SYSTEM - -/* Define C_SWITCH_MACHINE to compile for 68020/68030 or PRISM. - Define LD_SWITCH_MACHINE to save space by stripping symbols - and use X11 libraries. */ - -#if _ISP__A88K -#define C_SWITCH_MACHINE -W0,-ncompress -W0,-opt,2 -A cpu,a88k -A sys,any -A run,bsd4.3 -#define LD_SWITCH_MACHINE -A cpu,a88k -A sys,any -A run,bsd4.3 -#else -#define C_SWITCH_MACHINE -W0,-ncompress -W0,-opt,2 -A cpu,3000 -A sys,any -A run,bsd4.3 -#define LD_SWITCH_MACHINE -A cpu,m68k -A sys,any -A run,bsd4.3 -#endif - -#define OLDXMENU_OPTIONS ${C_SWITCH_MACHINE} - -/* In SR10.4, unistd.h has bad prototype for getpgrp, so we don't include it. */ -#undef HAVE_UNISTD_H - -/* arch-tag: 33336588-6242-4e2e-a194-e38848b12813 - (do not change this comment) */ diff --git a/src/m/att3b.h b/src/m/att3b.h deleted file mode 100644 index 8e9a589bcd..0000000000 --- a/src/m/att3b.h +++ /dev/null @@ -1,150 +0,0 @@ -/* Machine-dependent configuration for GNU Emacs for AT&T 3b machines. - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 Free Software Foundation, Inc. - - Modified by David Robinson (daver@csvax.caltech.edu) 6/6/86 - -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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2-2" */ - -/* 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 */ -#define ATT3B - -/* 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 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 / FSCALE) */ - -/* 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 */ /* Karl Kleinpaste says this isn't needed. */ - -/* SysV has alloca in the PW library */ - -#define LIB_STANDARD -lPW -lc - -/* 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 - -/* #define LD_SWITCH_MACHINE -N */ - -/* Use Terminfo, not Termcap. */ - -#define TERMINFO - -/* -O has been observed to make correct C code in Emacs not work. - So don't try to use it. */ - -#if u3b2 || u3b5 || u3b15 -#define C_OPTIMIZE_SWITCH -#endif - -/* Define our page size. */ - -#define NBPC 2048 - -#if 0 /* If this is still needed, don't hard-code assumptions about - the number of VALBITS, or other assumptions about the - Lisp_Object representation. Try to extend lisp.h instead, if - necessary. */ -/* The usual definition of XINT, which involves shifting, does not - sign-extend properly on this machine. */ - -#define XINT(i) (((sign_extend_temp=(i)) & 0x00800000) \ - ? (sign_extend_temp | 0xFF000000) \ - : (sign_extend_temp & 0x00FFFFFF)) -#endif - -#ifdef emacs /* Don't do this when making xmakefile! */ -extern int sign_extend_temp; -#endif - -#if u3b2 || u3b5 || u3b15 -/* On 3b2/5/15, data space has high order bit on. */ -#define DATA_SEG_BITS 0x80000000 -#endif /* 3b2, 3b5 or 3b15 */ - -#define TEXT_START 0 - -/* (short) negative-int doesn't sign-extend correctly */ -#define SHORT_CAST_BUG - -/* 3B2s with WIN/3B have winsize defined in ptem.h */ -#if u3b2 -#define NEED_PTEM_H -#endif /* u3b2 */ - -/* 3b2 does not have memmove, I'm told. */ -/* It is safe to have no parens around the args in the safe_bcopy call, - and parens would screw up the prototype decl for memmove. */ -#define memmove(d, s, n) safe_bcopy (s, d, n) - -/* This affects filemode.c. */ -#define NO_MODE_T - -/* arch-tag: 07441a37-d630-447f-94fa-7da19645c97a - (do not change this comment) */ diff --git a/src/m/aviion-intel.h b/src/m/aviion-intel.h deleted file mode 100644 index eb93a43214..0000000000 --- a/src/m/aviion-intel.h +++ /dev/null @@ -1,22 +0,0 @@ -/* This file is minor changes for the Data General AViiON intel machines - i586-dg-dguxR4* (tested on i586-dg-dguxR4.11MU04) - Done by Ehud Karni, 1998-may-30, ehud@unix.simonwiesel.co.il */ - -#include "aviion.h" /* 1st load m88k DGUX definitions */ - -#define INTEL_DGUX /* define for future possible use */ - -/* Intel machines are LITTLE ENDIAN */ -#undef WORDS_BIG_ENDIAN - -/* No correction needed for byte addresses */ -#undef WORD_MACHINE - -#ifndef INTEL386 -#define INTEL386 /* Identify as Intel machine */ -#endif - -#undef m88k /* It sure is NOT a Motorola machine */ - -/* arch-tag: 7cbf89ef-237c-4da5-bdd0-8d569ae5f3ce - (do not change this comment) */ diff --git a/src/m/aviion.h b/src/m/aviion.h deleted file mode 100644 index 832feb79a0..0000000000 --- a/src/m/aviion.h +++ /dev/null @@ -1,126 +0,0 @@ -/* machine description file for Data General AViiON. - Copyright (C) 1985, 1986, 1991, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* 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 - -/* Define DATA_SEG_BITS if pointers need to be corrected with - a segment field. */ - -#ifdef FIX_ADDRESS -#define DATA_SEG_BITS 0xef000000 -#endif - -/* 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 m88k -#define m88k -#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 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 / FSCALE) */ - -/* 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 */ - -#define alloca(x) __builtin_alloca(x) - -/* 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 - -/* Define ADDR_CORRECT(ADDR) to be a macro to correct an int which is - the bit pattern of a pointer to a byte into an int which is the - number of a byte. - - This macro has a default definition which is usually right. - This default definition is a no-op on most machines (where a - pointer looks like an int) but not on all machines. */ - -#define ADDR_CORRECT(ADDR) ((int)ADDR) - -/* Cast pointers to this type to compare them. */ - -#define PNTR_COMPARISON_TYPE void * - -/* Some machines that use COFF executables require that each section - start on a certain boundary *in the COFF file*. Such machines should - define SECTION_ALIGNMENT to a mask of the low-order bits that must be - zero on such a boundary. This mask is used to control padding between - segments in the COFF file. - - If SECTION_ALIGNMENT is not defined, the segments are written - consecutively with no attempt at alignment. This is right for - unmodified system V. */ - -#define SECTION_ALIGNMENT 0x7 - -/* arch-tag: 9de8e6ed-ddd8-4480-8308-17ddd7c86559 - (do not change this comment) */ diff --git a/src/m/celerity.h b/src/m/celerity.h deleted file mode 100644 index 556c276588..0000000000 --- a/src/m/celerity.h +++ /dev/null @@ -1,60 +0,0 @@ -/* machine description file for Celerity. - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* XINT must explicitly sign extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* celerity preprocessor defines "accel", however the following is clearer */ -#define celerity - -/* #define NO_UNION_TYPE would be preferable, - but it does not work, and the reason is not yet known. */ - -#define NO_UNION_TYPE - -/* 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)) - -/* A machine-specific loader switch is needed. */ - -#define LD_SWITCH_MACHINE -k100000 - -/* (short) negative-int doesn't sign-extend correctly */ -#define SHORT_CAST_BUG - -/* arch-tag: b4df1828-fab6-48f8-97bc-b8998c200eea - (do not change this comment) */ diff --git a/src/m/clipper.h b/src/m/clipper.h deleted file mode 100644 index c0006f48ea..0000000000 --- a/src/m/clipper.h +++ /dev/null @@ -1,98 +0,0 @@ -/* machine description file for clipper - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* 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 - -/* 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 */ - -#define clipper 1 - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* crt0.c should define a symbol `start' and do .globl with a dot. */ - -#define DOT_GLOBAL_START - -/* 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 */ - -/* USG systems I know of running on Vaxes do not actually - support the load average, so disable it for them. */ - -/* 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)) - -/* 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 */ /* Karl Kleinpaste says this isn't needed. */ - -/* 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 */ - -#ifdef USG -#define TEXT_START 0 -#endif /* USG */ - -#define LD_TEXT_START_ADDR 8000 - -/* arch-tag: 2f7981c1-7018-4a1e-b7b6-b2900de36a04 - (do not change this comment) */ diff --git a/src/m/cnvrgnt.h b/src/m/cnvrgnt.h deleted file mode 100644 index 22478a273b..0000000000 --- a/src/m/cnvrgnt.h +++ /dev/null @@ -1,97 +0,0 @@ -/* machine description file for convergent S series. - Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* 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. */ - -#define m68000 - -/* 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. - These are commented out since it is not supported by this machine. */ - -#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)) - -/* 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. */ - -#undef 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 - -/* Change some things to avoid bugs in compiler. */ - -#define SWITCH_ENUM_BUG - -/* some errno.h's don't actually allocate the variable itself. - Cause crt0.c to define errno. */ - -#define NEED_ERRNO - -/* arch-tag: 1a227f79-37e4-43af-a186-53c61296b0be - (do not change this comment) */ diff --git a/src/m/convex.h b/src/m/convex.h deleted file mode 100644 index c8f447cf2f..0000000000 --- a/src/m/convex.h +++ /dev/null @@ -1,189 +0,0 @@ -/* machine description file for Convex (all models). - Copyright (C) 1987, 1994, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-3" */ - -/* 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. - * Maybe it would be better to simply correct the code. */ - -#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 convex /* The compiler doesn't always do this. */ -#define convex -#endif - -/* Use type int rather than a union, to represent Lisp_Object */ -/* This is desirable for most machines. */ - -#define NO_UNION_TYPE - -#ifndef __GNUC__ /* David M. Cooke <dcooke@haven.larc.nasa.gov> - and Ralph Sobek <Ralph.Sobek@cerfacs.fr> agree - must ignore one arg when compiled with convex compiler. */ -#define CRT0_DUMMIES ignore, -#else -#define CRT0_DUMMIES -#endif - -/* crt0.c should define a symbol `start' and do .globl with a dot. */ - -#define DOT_GLOBAL_START - -/* 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) - -/* 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*/ - -/* Must use the system's termcap. It does special things. */ - -#define LIBS_TERMCAP -ltermcap - -/* 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 */ - -/* Addresses on the Convex have the high bit set. */ -#define DATA_SEG_BITS (1 << (BITS_PER_INT-1)) - -/* Right shift is logical shift. - And the usual way of handling such machines, which involves - copying the number into sign_extend_temp, does not work - for reasons as yet unknown. */ - -#define XINT(a) sign_extend_lisp_int (a) - -/* Convex uses a special version of unexec. */ - -#define UNEXEC unexconvex.o - -/* you gotta define 'COFF' for post 6.1 unexec. */ - -#define COFF -#define TEXT_START 0x80001000 - -/* Posix stuff for Convex OS 8.1 and up. */ - -#define LD_SWITCH_MACHINE \ - -e__start -L /usr/lib \ - '-A__iob=___ap$$iob' '-A_use_libc_sema=___ap$$use_libc_sema' - -/* Use <dirent.h>. */ -#define SYSV_SYSTEM_DIR - -#ifdef _POSIX_SOURCE - -/* These symbols have been undefined to advance the state of the art. */ - -#define S_IFMT _S_IFMT -#define S_IFDIR _S_IFDIR - -#define S_IREAD _S_IREAD -#define S_IWRITE _S_IWRITE -#define S_IEXEC _S_IEXEC - -#endif - -/* Ptys may start below ptyp0; call a routine to hunt for where. */ - -#undef FIRST_PTY_LETTER -#define FIRST_PTY_LETTER first_pty_letter() - -#if 0 -/* - * Force a K&R compilation and libraries with the Convex V 4.0 C compiler - */ -#define C_SWITCH_MACHINE -pcc -#define LIB_STANDARD -lc_old -#define LIBS_MACHINE -lC2_old -#define LD_SWITCH_MACHINE -X -NL -fn -Enoposix -A__iob=___ap\$$iob \ - -A_use_libc_sema=___ap\$$use_libc_sema -L /usr/lib -#endif - -/* Avoid error in xrdb.c - d.m.cooke@larc.nasa.gov. */ -#define DECLARE_GETPWUID_WITH_UID_T - -/* Call getpgrp properly. */ -#define GETPGRP_NO_ARG - -/* Tested for both Convex C and GNUC by d.m.cooke@larc.nasa.gov. */ -#define LIBS_MACHINE -lC2 - -/* Avoid error in getloadavg.c. */ -#define NLIST_NAME_UNION 1 - -#if 0 /* This is supposed to be an improvement. - It would be good for people to try enabling this code - and report the results. */ -/* gcc -nostdlib prevents some math symbols from being included. - So we have to use -nostartfiles instead. */ -#define LINKER $(CC) -nostartfiles - -#define ORDINARY_LINK - -#undef LD_SWITCH_MACHINE -#define LD_SWITCH_MACHINE \ - -L /usr/lib \ - '-A__iob=___ap$$iob' '-A_use_libc_sema=___ap$$use_libc_sema' -#endif - -/* There is some indication that the convex has sys/wait.h - but it does not work right. */ -#undef HAVE_SYS_WAIT_H - -/* arch-tag: 127e5ae1-4f03-40c0-a87e-d2cb02c59de8 - (do not change this comment) */ diff --git a/src/m/cydra5.h b/src/m/cydra5.h deleted file mode 100644 index 4c95f22637..0000000000 --- a/src/m/cydra5.h +++ /dev/null @@ -1,117 +0,0 @@ -/* machine description file for Cydrome's CYDRA 5 mini super computer - Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-3" */ - -/* 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. */ - -#undef 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 - -/* 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 */ - -/* 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) x - -/* 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 data space precedes text space, - numerically. */ - -#undef VIRT_ADDR_VARIES - -/* The data segment in this machine always starts at address 0x10000000. - An address of data cannot be stored correctly in a Lisp object; - we always lose the high bits. We must tell XPNTR to add them back. */ - -#define DATA_SEG_BITS 0x20000000 -#define DATA_START 0x20000000 - -/* 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 -#define BROKEN_FIONREAD /* We son't even have it */ -#define LIBS_MACHINE -lsocket -lnsl - -/* The data section in a coff file must be aligned in the file. */ -#define DATA_SECTION_ALIGNMENT 0xFFF - -/* Compiler won't allow switch (x) when x is an enum. */ -#define SWITCH_ENUM_BUG - - -/* Explain how pty filenames work. */ - -#define PTY_ITERATION for (i = 47; i >= 0; i--) -#define PTY_NAME_SPRINTF sprintf (ptyname, "/dev/pty%03x", i); -#define PTY_TTY_NAME_SPRINTF sprintf (ptyname, "/dev/ptm%03x", i); - -/* We can't do interrupt-driven input, so don't let user try. */ - -#define BROKEN_SIGIO - -/* arch-tag: ad70aae4-1f54-4e67-8677-6eeafb9bcbd9 - (do not change this comment) */ diff --git a/src/m/delta88k.h b/src/m/delta88k.h deleted file mode 100644 index b5d0c8f190..0000000000 --- a/src/m/delta88k.h +++ /dev/null @@ -1,163 +0,0 @@ -/* Machine description file for Motorola System V/88 machines - Copyright (C) 1985, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-3" */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -#ifndef m88000 /* Some 88k C compilers already define this */ -#define m88000 -#endif - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically. */ - - -/* 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. */ -/* No load average on Motorola machines. */ -/* #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)) */ - -/* 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 */ - -/* 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 - -/* Motorola SysV has PTYs. Not all usg3-5 systems do, so this is defined - here. */ - -#define HAVE_PTYS -#define SYSV_PTYS - -/* Ditto for IPC. */ - - -/* - * we now have job control in R32V1 - */ -#undef NOMULTIPLEJOBS - -/* - * we have bcopy, bzero, bcmp in libc.a (what isn't in libc.a?) - */ -#define BSTRING - -/* - * sockets are in R32V1 - */ -#define HAVE_SOCKETS - -/* - * we have the wrong name for networking libs - */ -#ifdef USG5_4 -/* rms: not needed; LIB_X11_LIB deals with this. */ -/* #define LIBX11_SYSTEM -lX11 */ -#else -#undef LIB_X11_LIB /* We don't have the shared libs as assumed in usg5-3.h. */ -#undef LIBX11_SYSTEM -#define LIBX11_SYSTEM -lnsl -lbsd -#endif /* USG5_4 */ - -#define BROKEN_FIONREAD - -/* previously defined in usg5-4, if we choose to use that. */ -#ifndef LIBS_SYSTEM -#ifdef USG5_4 -#define LIBS_SYSTEM -lsocket -lnsl -#else -#define LIBS_SYSTEM -lbsd -lg -#endif /* USG5_4 */ -#endif - -#define HAVE_TERMIOS -#undef HAVE_TERMIO -#define NO_TERMIO -#undef sigsetmask - -#define NO_SIOCTL_H - -#ifdef USG5_4 -#ifdef HAVE_X_WINDOWS -#else -#undef BSTRING -#endif /* HAVE_X_WINDOWS */ -#endif /* USG5_4 */ - -#define NO_PTY_H - -#define USE_GETOBAUD - -/* arch-tag: c8ea1965-99d7-43df-ba32-29b66fc069be - (do not change this comment) */ diff --git a/src/m/dpx2.h b/src/m/dpx2.h deleted file mode 100644 index b39ef93ee3..0000000000 --- a/src/m/dpx2.h +++ /dev/null @@ -1,222 +0,0 @@ -/* machine description for Bull DPX/2 range - Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-3" */ - -/* - * You need to either un-comment one of these lines, or copy one - * of them to config.h before you include this file. - * Note that some simply define a constant and others set a value. - */ - -/* #define ncl_el /* DPX/2 210,220 etc */ -/* #define ncl_mr 1 /* DPX/2 320,340 (and 360,380 ?) */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -/* /bin/cc on ncl_el and ncl_mr define m68k and mc68000 */ - -/* 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 FSCALE 1000.0 -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) - -/* 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 /**/ - -/* 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 - -/* - * end of the standard macro's - */ - -/* - * a neat identifier to handle source mods (if needed) - */ -#ifndef DPX2 -#define DPX2 -#endif - -/* Disable support for shared libraries in unexec. */ - -#undef USG_SHARED_LIBRARIES - -/* - * if we use X11, libX11.a has these... - */ -# undef LIB_X11_LIB -# define LIB_X11_LIB -lX11 -# undef LIBX11_SYSTEM -# define LIBX11_SYSTEM -lmalloc -lnsl -# define BSTRING - -/* - * we must have INET loaded so we have sockets - */ -# define HAVE_SOCKETS - -/* - * useful if you have INET loaded - */ -# define LIBS_MACHINE -linet - - -#if (defined(ncl_mr) || defined(ncl_el)) && !defined (NBPC) -# define NBPC 4096 -#endif - -/* - * if SIGIO is defined, much of the emacs - * code assumes we are BSD !! - */ -#define BROKEN_SIGIO - - -/* - * a good idea on multi-user systems :-) - */ -#define CLASH_DETECTION /* probably a good idea */ - - -/* - * sysdep.c(sys_suspend) works fine with emacs-18.58 - * and BOS 02.00.45, if you have an earler version - * of Emacs and/or BOS, or have problems, or just prefer - * to start a sub-shell rather than suspend-emacs, - * un-comment out the next line. - */ -/* # define BROKEN_SIGTSTP /* make suspend-emacs spawn a sub-shell */ -#ifdef NOMULTIPLEJOBS -# undef NOMULTIPLEJOBS -#endif -/* - * no we don't want this at all - */ -#ifdef USG_JOBCTRL -# undef USG_JOBCTRL -#endif - -/* - * but we have that -*/ -#define GETPGRP_NO_ARG - -/* select also needs this header file--but not in ymakefile. */ -#ifndef NOT_C_CODE -#include <sys/types.h> -#include <sys/select.h> -#endif - -#define TEXT_START 0 - -/* we have termios */ -#undef HAVE_TERMIO -#define HAVE_TERMIOS -#define HAVE_TCATTR - -/* we also have this */ -#define HAVE_PTYS -#define SYSV_PTYS - -/* It doesn't seem we have sigpause */ -#undef HAVE_SYSV_SIGPAUSE - -#define POSIX_SIGNALS - -/* We don't need the definition from usg5-3.h with POSIX_SIGNALS. */ -#undef sigsetmask - - -/* on bos2.00.45 there is a bug that makes the F_SETOWN fcntl() call - enters in an infinite loop. Avoid calling it */ -#define F_SETOWN_BUG - -/* system closedir sometimes complains about wrong descriptor - for no apparent reasons. Use the provided closedir in sysdep.c instead */ -#ifdef HAVE_CLOSEDIR -#undef HAVE_CLOSEDIR -#endif - -/* Send signals to subprocesses by "typing" signal chars at them. */ -#define SIGNALS_VIA_CHARACTERS - -/* This is to prevent memory clobbering on the DPX/2 200. */ -#define LD_SWITCH_MACHINE -N -T32 - - /* end of dpx2.h */ - - -/* arch-tag: 8cfdf817-aec7-4d99-a00d-0e77615e8e1b - (do not change this comment) */ diff --git a/src/m/dual.h b/src/m/dual.h deleted file mode 100644 index d287f9502d..0000000000 --- a/src/m/dual.h +++ /dev/null @@ -1,73 +0,0 @@ -/* machine description file for Dual machines using unisoft port. - Copyright (C) 1985, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Dual running System V (-machine=dual -opsystem=usg5-2) - - As of 17.46, this works except for a few changes - needed in unexec.c. - -Dual running Uniplus (-machine=dual -opsystem=unipl5-2) - - Works, as of 17.51. -NOTE-END */ - - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* XINT must explicitly sign-extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000 are the ones defined so far. */ - -#ifndef m68000 -#define m68000 -#endif - -/* Data type of load average, as read out of kmem. */ -/* These are commented out since it does not really work in uniplus */ - -/* #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) */ - -/* Change some things to avoid bugs in compiler */ - -#define SWITCH_ENUM_BUG 1 - -/* arch-tag: 7208d63c-9a23-469e-a9b1-908ac912c743 - (do not change this comment) */ diff --git a/src/m/elxsi.h b/src/m/elxsi.h deleted file mode 100644 index 07a00bbf71..0000000000 --- a/src/m/elxsi.h +++ /dev/null @@ -1,133 +0,0 @@ -/* machine description file for Elxsi machine (running enix). - Copyright (C) 1986, 1992, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 Free Software Foundation, Inc. - Adapted by John Salmon - -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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* This file was modified by Matt Crawford <matt@tank.uchicago.edu> - to work under Elxsi's 12.0 release of BSD unix. */ - -/* 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 */ - -/* 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: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ - -#ifndef elxsi -#define elxsi -#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 - - -/* Name of kernel load average variable */ - -#undef LDAV_SYMBOL -#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) - -/* 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. - - Earlier versions couldn't dump. - Changes for 12.0 release are in 19.1. - Dumping should work now. */ - -/* #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 */ - -/* 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*/ - -/* This is a guess for an alternate solution to whatever - problem motivated defining _sobuf in sysdep,c with extern char *_sobuf. */ -#define _sobuf xsobuf - -/* Address of start of text segment as loaded. */ - -#define TEXT_START 0x800 - -/* Tell crt0.c not to define environ. */ - -#define DONT_NEED_ENVIRON - -/* The elxsi has no debugger, so might as well optimize instead - of trying to make a symbol table. */ - -#define C_DEBUG_SWITCH -O - -/* Elxsi uses COFF under both Sys V and BSD environments */ - -#define COFF - -#define ADJUST_EXEC_HEADER {\ -extern int _init_brk;\ -_init_brk = bss_start;\ -} - -/* arch-tag: 73bf1120-a994-4c29-8d60-af425d8bf10c - (do not change this comment) */ diff --git a/src/m/f301.h b/src/m/f301.h deleted file mode 100644 index c427c19e05..0000000000 --- a/src/m/f301.h +++ /dev/null @@ -1,10 +0,0 @@ -/* Machine description file for Fujitsu F301 machines. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="uxpv" */ - -#include "delta88k.h" - -/* arch-tag: a0ed4f18-ecf2-4d9a-853b-36e0f6b45945 - (do not change this comment) */ diff --git a/src/m/gould-np1.h b/src/m/gould-np1.h deleted file mode 100644 index cb3da1825c..0000000000 --- a/src/m/gould-np1.h +++ /dev/null @@ -1,108 +0,0 @@ -/* machine description file for Gould NP1 with UTX/32 3.0 (first release for NP1) - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-3" */ - -/* If your system uses COFF (Common Object File Format) then define the - preprocessor symbol "COFF". */ -/* UTX 3.0 uses a cross between COFF and a.out format, but closer to COFF. */ -/* at least currently, already defined by cpp, but make sure */ -#ifndef COFF -#define COFF -#endif COFF - -#include "gould.h" - -/* undefine what gould.h defined */ -#undef ADJUST_EXEC_HEADER - -/* If your system uses COFF (Common Object File Format) then define the - preprocessor symbol "COFF". */ -/* UTX 3.0 uses a cross between COFF and a.out format, but closer to COFF. */ -#ifndef COFF /* at least currently, already defined by cpp */ -#define COFF -#endif COFF - -/* make Gould NP1 and PN COFF look like USG COFF */ -/* NP1 COFF */ -#undef aouthdr /* Since gould.h already defined these */ -#undef a_dtbase - -#ifdef IN_UNEXEC -#define aouthdr exec -#define ADJUST_TEXT_SCNHDR_SIZE - -/* Gould COFF - these are already defined in gould.h */ -/* - * #define COFF_WITH_BSD_SYMTAB - * #define HEADER_INCL_IN_TEXT - * #define magic a_magic - * #define tsize a_text - * #define dsize a_data - * #define bsize a_bss - * #define entry a_entry - * #define text_start a_txbase - * #define data_start a_dtbase -*/ -/* End Gould COFF */ -#endif /* IN_UNEXEC */ - -/* NP1 supports a slightly different set than PowerNode */ -#define BAUD_CONVERT { 0, 50, 75, 110, 134, 150, 300, 450, 600, 1200, \ - 1800, 2000, 2400, 3600, 4800, 7200, 9600, \ - 19200, 38400 } - -#define LD_SWITCH_SYSTEM -BS -e start - -/* Undef C_DEBUG_SWITCH because it may have been set in gould.h */ -/* It will compile and load and works with dbx. Runs under an incomplete - port of gdb, but gdb doesn't always find things correctly. */ -#undef C_DEBUG_SWITCH -#define C_DEBUG_SWITCH -g -#define LIBS_DEBUG -lg - - -/* The data segment in this machine always starts at address 0x1000000 = 16M. - An address of data cannot be stored correctly in a Lisp object; - we always lose the high bits. We must tell XPNTR to add them back. */ - -#define DATA_SEG_BITS 0x1000000 -#define DATA_START 0x1000000 - -/* The text segment always starts at 0. - This way we don't need to have a label _start defined. */ -#define TEXT_START 0 - -/* Data isn't right next to text on an NP1 */ -#define NO_REMAP - -/* The bcopy bug has reappeared */ -#undef BSTRING - -#ifndef GOULD_NP1 -#define GOULD_NP1 -#endif - - -/* arch-tag: cdfd3dbf-a5e4-464d-8cef-985fb7872873 - (do not change this comment) */ diff --git a/src/m/gould.h b/src/m/gould.h deleted file mode 100644 index cd16e09b78..0000000000 --- a/src/m/gould.h +++ /dev/null @@ -1,189 +0,0 @@ -/* machine description file for Gould PowerNodes with UTX/32 2.0 and 2.1. - (See MACHINES for older versions.) - -* NOTE: If you are running a pre-release of UTX/32 2.1 you should #define -* RELEASE2_1 in config.h. This may also be necessary with un-updated -* official releases of 2.1 - - Copyright (C) 1986, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Gould Power Node (-machine=gould -opsystem=bsd4-2 or bsd4-3) -(gould.h; s-bsd4-2.h or s-bsd4-3.h) - - 18.36 worked on versions 1.2 and 2.0 of the operating system. - - On UTX/32 2.0, use -opsystem=bsd4-3 - - On UTX/32 1.2 and UTX/32S 1.0, use -opsystem=bsd4-2 and note that compiling - lib-src/sorted-doc tickles a compiler bug: remove the -g flag to cc in the - makefile. - - UTX/32 1.3 has a bug in the bcopy library routine. Fix it by - #undef BSTRING in gould.h. - - Version 19 incorporates support for releases 2.1 and later of UTX/32. - A site running a pre-release of 2.1 should #define RELEASE2_1 in config.h. -NOTE-END */ - -/* 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 GOULD -#define GOULD -#endif - -/* sel is an old preprocessor name on gould machines - - it is no longer needed and interferes with a variable in xmenu.c */ -#undef sel - -/* 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 double - -/* 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) - -/* 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 - -/* No need to extend the user stack. */ - -/* If this is a 2.1 system, COFF will be predefined by cpp. If it's */ -/* pre-2.1 COFF won't be defined, which is as it should be. */ - -#ifdef COFF - -#define HEADER_INCL_IN_TEXT -#define COFF_BSD_SYMBOLS - -/* Seems to be necessary with coff */ -#define NO_REMAP - -#ifndef GOULD_NP1 -/* gould-np1.h includes this file */ -/* keep the old value - don't skip over the headers */ -#define KEEP_OLD_TEXT_SCNPTR -#define KEEP_OLD_PADDR -#ifndef RELEASE2_1 -#define ADJUST_TEXTBASE -#endif /*RELEASE2_1*/ -#endif /* GOULD_NP1 */ - -#ifdef IN_UNEXEC -/* make Gould NP and PN COFF look like USG COFF */ -/* PN COFF */ -#define aouthdr old_exec -/* PN COFF doesn't have a data_start or a_dtbase field in its */ -/* optional header, so substitute a junk field */ -#define a_dtbase a_ccvers -/* Gould COFF */ -#define magic a_magic -#define tsize a_text -#define dsize a_data -#define bsize a_bss -#define entry a_entry -#define text_start a_txbase -#define data_start a_dtbase -#endif /* IN_UNEXEC */ - -/* Define how to search all pty names. - * This is for UTX 2.1 and greater on PN and all NP versions. It is only - * accident that this happens to correspond to the same versions of UTX - * as COFF does, but we'll take advantage of that here. - */ - -/*#define USE_PTY_PAIR*/ - -#endif /* COFF */ - -/* -g is sometimes broken on the Gould. */ - -#define C_DEBUG_SWITCH - -/* Comparing pointers as unsigned ints tickles a bug in older compilers. */ - -#define PNTR_COMPARISON_TYPE int - -/* The GOULD machine counts the a.out file header as part of the text. */ - -#define A_TEXT_OFFSET(HDR) sizeof (HDR) - -/* Machine-dependent action when about to dump an executable file. */ - -#ifndef COFF -#define ADJUST_EXEC_HEADER \ - unexec_text_start = hdr.a_txbase + sizeof (hdr); -#endif - -/* We use the system's crt0.o. Somehow it avoids losing - with `environ' the way most standard crt0.o's do. */ - -#define START_FILES pre-crt0.o /lib/crt0.o - -/* arch-tag: 930cb9ef-f56f-4c06-aea0-5e81103bbf58 - (do not change this comment) */ diff --git a/src/m/i860.h b/src/m/i860.h deleted file mode 100644 index 6d79c5c8d3..0000000000 --- a/src/m/i860.h +++ /dev/null @@ -1,101 +0,0 @@ -/* machine description file for i860. - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ - -/* 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 - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -#define INTEL860 - -/* 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 / FSCALE) - -/* 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 */ - -/* 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 - -/* The X11 include files for i860-sysv4 need the macro SVR4 defined. - --Kaveh Ghazi (ghazi@noc.rutgers.edu) 8/9/94. */ -#ifdef USG5_4 -#ifndef SVR4 -#define SVR4 -#endif -#endif - -/* arch-tag: 99f3a078-95e1-49d6-8666-04726eb25647 - (do not change this comment) */ diff --git a/src/m/ibmps2-aix.h b/src/m/ibmps2-aix.h deleted file mode 100644 index 045bcf2c29..0000000000 --- a/src/m/ibmps2-aix.h +++ /dev/null @@ -1,235 +0,0 @@ -/* machine description file for ibm ps/2 aix386. - Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START - Use -opsystem=usg5-3 on AIX 1.2. - -opsystem=usg5-2-2 should work on either AIX 1.1 or 1.2, but may not - work with certain new X window managers, and may be suboptimal. -NOTE-END */ - -/* 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 */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -#define INTEL386 -#define aix386 - -#define IBMAIX - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* crt0.c, if it is used, should use the i386-bsd style of entry. - with no extra dummy args. On USG and XENIX, - NO_REMAP says this isn't used. */ - -#define CRT0_DUMMIES bogus_fp, - -/* crt0.c should define a symbol `start' and do .globl with a dot. */ - -#define DOT_GLOBAL_START - -/* USG systems do not actually support the load average, -so disable it for them. */ - -/* 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 */ - -/* Define addresses, macros, change some setup for dump */ - -#define NO_REMAP -#undef static - /* Since NO_REMAP, problem with statics doesn't exist */ - -#ifdef USG5_3 -#define TEXT_START 0x00000000 -#else -#define TEXT_START 0x00400000 -#define TEXT_END 0 -#define DATA_START 0x00800000 -#define DATA_END 0 - -/* The data segment in this machine always starts at address 0x00800000. - An address of data cannot be stored correctly in a Lisp object; - we always lose the high bits. We must tell XPNTR to add them back. */ - -#define DATA_SEG_BITS 0x00800000 -#endif - -#if 0 /* I refuse to promulgate a recommendation that would make - users unable to debug - RMS. */ -/* delete the following line to foil optimization, enable debugging */ -#define C_DEBUG_SWITCH -O -#endif - -#define BSTRING -#undef HAVE_TERMIO -#define HAVE_TERMIOS - -/* Send signals to subprocesses by "typing" special chars at them. */ - -#define SIGNALS_VIA_CHARACTERS - -/* - * 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 NONSYSTEM_DIR_LIBRARY to make Emacs emulate - * The 4.2 opendir, etc., library functions. - */ -#undef NONSYSTEM_DIR_LIBRARY - -/* AIX utimes allegedly causes SIGSEGV. */ -#undef HAVE_UTIMES /* override configuration decision */ - -/* AIX defines FIONREAD, but it does not work. */ -#define BROKEN_FIONREAD - -/* Data type of load average, as read out of kmem. */ - -#define LOAD_AVE_TYPE long /* For AIX (sysV) */ - -/* Convert that into an integer that is 100 for a load average of 1.0 */ - -#define LOAD_AVE_CVT(x) (int) (((double) (x)/65535.0) * 100.0) - -/* This page was added in June 1990. It may be incorrect for some versions - of aix, so delete it if it causes trouble. */ - -/* AIX has sigsetmask() */ -#undef sigsetmask - -/* AIX386 has BSD4.3 PTYs */ - -#define HAVE_PTYS - -/* AIX has IPC. It also has sockets, and either can be used for client/server. - I would suggest the client/server code be changed to use HAVE_SOCKETS rather - than BSD as the conditional if sockets provide any advantages. */ - -#define HAVE_SYSVIPC - -/* AIX has sockets */ - -#define HAVE_SOCKETS -/* #define SKTPAIR */ /* SKTPAIR works, but what is advantage over pipes? */ - -/* Specify the font for X to use. */ - -#define X_DEFAULT_FONT "8x13" - -/* AIX has a wait.h. */ - -#define HAVE_WAIT_HEADER - -/* sioctl.h should not be included, says bytheway@cs.utah.edu. */ -#undef NEED_SIOCTL -/* I'm guessing that that means it doesn't want ptem.h either. */ -#undef NEED_PTEM_H - -/* aix has `union wait' */ -#define HAVE_UNION_WAIT - -/* Here override various assumptions in ymakefile */ - -#ifdef __GNUC__ -#define alloca(n) __builtin_alloca(n) -#if __GNUC__ < 2 -#define LIB_STANDARD /usr/local/lib/gcc-gnulib -lbsd -lrts -lc -#endif -/* -g fails to work, so it is omitted. */ -/* tranle says that -fstrength-reduce does not help. */ -#define C_DEBUG_SWITCH -#else -#define LIBS_MACHINE -lbsd -lrts -#endif - -#define OBJECTS_MACHINE hftctl.o -#define LD_SWITCH_MACHINE -T0x00400000 -K -e start -#define LIBS_DEBUG /* no -lg on aix ps/2 */ - -#ifdef USG5_3 -#define XICCC -#undef LD_SWITCH_MACHINE -#define LD_SWITCH_MACHINE -T0x0 -K -e start - -/* Things defined in s-usg5-3.h that need to be overridden. */ -#undef NOMULTIPLEJOBS -#undef BROKEN_TIOCGETC -#undef BROKEN_TIOCGWINSZ -#undef LIBX11_SYSTEM -#undef LIB_X11_LIB -#endif - -/* Shared libraries are supported in a patch release of ps/2 1.2.1. - If the system has them, the user can turn them on, and this code - will make them work. */ -#define USG_SHARED_LIBRARIES /* Assume that by 19's release everyone has this. */ - -#ifdef USG_SHARED_LIBRARIES -#define ORDINARY_LINK -#undef LIB_STANDARD -#undef LD_SWITCH_MACHINE -#if __GNUC__ > 1 -#define LD_SWITCH_MACHINE -shlib -#endif -#endif - -/* arch-tag: 2e7f44df-6a61-4a47-aa53-f7961bfeff11 - (do not change this comment) */ diff --git a/src/m/ibmrt-aix.h b/src/m/ibmrt-aix.h deleted file mode 100644 index 57a9dbc4df..0000000000 --- a/src/m/ibmrt-aix.h +++ /dev/null @@ -1,165 +0,0 @@ -/* RTPC AIX machine/system dependent defines - Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2-2" */ - -/* 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 - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically. */ - -#ifndef IBMAIX -#define IBMAIX -#endif - -/* Use type int rather than a union, to represent Lisp_Object */ -/* This is desirable for most machines. */ - -#define NO_UNION_TYPE - -/* No load average information appears in the AIX kernel. VRM has this - info, and if anyone desires they should fix fns.c to get it out of VRM */ - -/* 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 addresses, macros, change some setup for dump */ - -#undef COFF -#define NO_REMAP -#undef static - /* Since NO_REMAP, problem with statics doesn't exist */ - -#define TEXT_START 0x10000000 -#define TEXT_END 0 -#define DATA_START 0x20000000 -#define DATA_END 0 - -/* The data segment in this machine always starts at address 0x20000000. - An address of data cannot be stored correctly in a Lisp object; - we always lose the high bits. We must tell XPNTR to add them back. */ - -#define DATA_SEG_BITS 0x20000000 - -#define N_BADMAG(x) BADMAG(x) -#define N_TXTOFF(x) A_TEXTPOS(x) -#define N_SYMOFF(x) A_SYMPOS(x) -#define A_TEXT_OFFSET(HDR) sizeof(HDR) -#define ADJUST_EXEC_HEADER \ - unexec_text_start += sizeof(hdr); \ - unexec_data_start = ohdr.a_dbase -#undef ADDR_CORRECT -#define ADDR_CORRECT(x) ((int)(x)) - -/* This is the offset of the executable's text, from the start of the file. */ - -#define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr)) - -/* AIX has PTYs, so define here, along with macros needed to make them work. */ - -#define HAVE_PTYS -#define PTY_ITERATION for (i=0; i<256; i++) -#define PTY_NAME_SPRINTF sprintf (ptyname, "/dev/ptc%d", i); - -#define PTY_TTY_NAME_SPRINTF \ -{ /* Check that server side not already open */ \ - if ((ioctl (*ptyv, PTYSTATUS, 0) & 0xFFFF) != 0) \ - { \ - emacs_close (*ptyv); \ - continue; \ - } \ - /* And finally to be sure we can open it later */ \ - sprintf (ptyname, "/dev/pts%d", i); \ - signal (SIGHUP,SIG_IGN); \ -} /* ignore hangup at process end */ - -/* TIOCNOTTY doesn't occur on AIX, but the rest - of the conditionalized code in process.c does - the right thing if we fake this out. */ -#define TIOCNOTTY IOCTYPE - -/* AIX has IPC. It also has sockets, and either can be used for client/server. - I would suggest the client/server code be changed to use HAVE_SOCKETS rather - than BSD_SYSTEM as the conditional if sockets provide any advantages. */ - -#define HAVE_SYSVIPC - -/* AIX has sockets */ - -#define HAVE_SOCKETS -/* #define SKTPAIR */ /* SKTPAIR works, but what is advantage over pipes? */ - -/* Specify the font for X to use. */ - -#define X_DEFAULT_FONT "Rom14.500" - -/* Here override various assumptions in ymakefile */ - -/* On AIX 2.2.1, use these definitions instead -#define C_SWITCH_MACHINE -I/usr/include -Nn2000 -#define LIBS_MACHINE -lX -lrts -*/ - -#define C_SWITCH_MACHINE -I/usr/include -I/usr/include/bsd -Nn2000 -#define LIBS_MACHINE -lXMenu -lX -lsock -lbsd -lrts - -#define OBJECTS_MACHINE hftctl.o -#define START_FILES /lib/crt0.o -/* -lXMenu, -lX must precede -lsock, -lbsd */ -#define LD_SWITCH_MACHINE -n -T0x10000000 -K -e start - -#if 0 /* I refuse to promulgate a recommendation that would make - users unable to debug - RMS. */ -/* delete the following line to foil optimization, enable debugging */ -#define C_DEBUG_SWITCH -O -#endif - - -/* Setup to do some things BSD way - these won't work previous to AIX 2.1.2 */ - -#include </usr/include/bsd/BSDtoAIX.h> -#define BSTRING - -/* AIX utimes allegedly causes SIGSEGV. */ -#undef HAVE_UTIMES /* override configuration decision */ - -/* AIX defines FIONREAD, but it does not work. */ -#define BROKEN_FIONREAD - -/* rocky@watson.ibm.com says this is needed. */ -#define HAVE_FTIME - -/* arch-tag: eea85307-0ca9-4a9c-a4f6-89fad7591d28 - (do not change this comment) */ diff --git a/src/m/ibmrt.h b/src/m/ibmrt.h deleted file mode 100644 index ca32db9451..0000000000 --- a/src/m/ibmrt.h +++ /dev/null @@ -1,123 +0,0 @@ -/* RTPC machine dependent defines - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -/* 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. */ - -#define ibmrt -#define romp /* unfortunately old include files are hanging around. */ - -/* 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 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 double /* For AIS (sysV) */ - -/* 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) - -/* 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. */ - -#undef VIRT_ADDR_VARIES - -/* The data segment in this machine starts at a fixed address. - An address of data cannot be stored correctly in a Lisp object; - we always lose the high bits. We must tell XPNTR to add them back. */ - -#define DATA_SEG_BITS 0x10000000 -#define DATA_START 0x10000000 - -/* The text segment always starts at a fixed address. - This way we don't need to have a label _start defined. */ -#define TEXT_START 0 - -/* Taking a pointer to a char casting it as int pointer */ -/* and then taking the int which the int pointer points to */ -/* is practically guaranteed to give erroneous results */ - -#define NEED_ERRNO - -#define SKTPAIR - -/* BSD has BSTRING. */ - -#define BSTRING - -/* Special switches to give the C compiler. */ - -#ifndef __GNUC__ -#define C_SWITCH_MACHINE -Dalloca=_Alloca -#endif - -/* Don't attempt to relabel some of the data as text when dumping. - It does not work because their virtual addresses are not consecutive. - This enables us to use the standard crt0.o. */ - -#define NO_REMAP - -/* Use the bitmap files that come with Emacs. */ -#define EMACS_BITMAP_FILES - -/* arch-tag: 89aa7e7d-593e-432c-966a-3db6aa2ad665 - (do not change this comment) */ diff --git a/src/m/intel386.h b/src/m/intel386.h index 22205ed762..4ca09296f0 100644 --- a/src/m/intel386.h +++ b/src/m/intel386.h @@ -25,15 +25,14 @@ Boston, MA 02110-1301, USA. */ USUAL-OPSYS="note" NOTE-START -Intel 386 (-machine=intel386 or -machine=is386.h) +Intel 386 (-machine=intel386) The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3, - isc2-2, 386-ix, esix, linux, sco3.2v4, and xenix. + isc2-2, 386-ix, and linux. 18.58 should support a wide variety of operating systems. Use isc2-2 for Interactive 386/ix version 2.2. Use 386ix for prior versions. - Use esix for Esix. Use linux for Linux. It isn't clear what to do on an SCO system. diff --git a/src/m/irist.h b/src/m/irist.h deleted file mode 100644 index c0d55f96d0..0000000000 --- a/src/m/irist.h +++ /dev/null @@ -1,136 +0,0 @@ -/* machine description file for Silicon Graphics Iris 2500 Turbos; - also possibly for non-turbo Irises with system release 2.5. - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" -NOTE-START -Version 18 said to work; use -opsystem=irist3-5 for system version 2.5 -and -opsystem=iris3-6 for system versions 3.6 and up. -NOTE-END */ - -#if 0 - Message-Id: <8705050653.AA20004@orville.arpa> - Subject: gnu emacs 18.41 on iris [23].5 machines - Date: 04 May 87 23:53:11 PDT (Mon) - From: raible@orville.arpa - - Aside from the SIGIOT, I know of only one bug, a real strange one: - I wrote a utimes interface, which copies elements from timevals - to utimbufs. This code is known good. The problem is that in - emacs, the utime doesn't seem to take effect (i.e. doesn't change the - dates at all) unless I call report_file_error *after* the utime returns! - - if (utime (name, &utb) < 0) - return; - else - /* XXX XXX XXX */ - /* For some reason, if this is taken out, then the utime above breaks! */ - /* (i.e. it doesn't set the time. This just makes no sense... */ - /* Eric - May 4, 1987 */ - report_file_error ("Worked just find\n", Qnil); - - Without any sort of debugger that works on emacs (I know... but I dont have - *time* right now to start with gdb), it was quite time consuming to track - it down to this. - - But since this code is only used for an optional 4th argument to one command - (copy-file), it would say that it is non-critical... -#endif /* 0 */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -#ifndef m68000 -#define m68000 -#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 FSCALE 1.0 -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) - -/* 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 */ - -/* 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 */ - -/* There is an inconsistency between the sgi assembler, linker which barfs - on these. */ - -#define internal_with_output_to_temp_buffer stupid_long_name1 -#define Finsert_abbrev_table_description stupid_long_name2 - -/* arch-tag: 4076b26c-1fe6-4c28-94f3-3c863f074767 - (do not change this comment) */ diff --git a/src/m/is386.h b/src/m/is386.h deleted file mode 100644 index 5041db9a6c..0000000000 --- a/src/m/is386.h +++ /dev/null @@ -1,29 +0,0 @@ -/* machine description file for Integrated Solutions 386 machine. */ - -#include "intel386.h" - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Intel 386 (-machine=intel386 or -machine=is386.h) - - The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3, - isc2-2, 386-ix, esix, or xenix. - - 18.58 should support a wide variety of operating systems. - Use isc2-2 for Interactive 386/ix version 2.2. - Use 386ix for prior versions. - Use esix for Esix. It isn't clear what to do on an SCO system. - - -machine=is386 is used for an Integrated Solutions 386 machine. - It may also be correct for Microport systems. -NOTE-END */ - -#define LIBX11_MACHINE -lnsl_s - -#define LIBS_DEBUG -lg - -/* arch-tag: b6b7e6ec-8b6c-440b-b9c8-961e4bebf0cf - (do not change this comment) */ diff --git a/src/m/isi-ov.h b/src/m/isi-ov.h deleted file mode 100644 index 6706ee9981..0000000000 --- a/src/m/isi-ov.h +++ /dev/null @@ -1,96 +0,0 @@ -/* machine description file for ISI 68000's - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Use `-opsystem=bsd4-2' or `-opsystem=bsd4-3'. -NOTE-END */ - -#define ISI68K - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* Say this machine is a 68000 */ - -#define m68000 - -/* 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. */ - -#ifdef BSD4_3 -#define LOAD_AVE_TYPE long -#else -#define LOAD_AVE_TYPE double -#endif BSD4_3 - -/* Convert that into an integer that is 100 for a load average of 1.0 */ - -#ifdef BSD4_3 -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) -#else -#define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) -#endif - -/* Mask for address bits within a memory segment */ - -#define SEGMENT_MASK 0x1ffff - -/* use the -20 switch to get the 68020 code */ -/* #define C_SWITCH_MACHINE -20 */ - -/* Use the version of the library for the 68020 - because the standard library requires some special hacks in crt0 - which the GNU crt0 does not have. */ - -#define LIB_STANDARD -lmc - -/* macros to make unexec work right */ - -#define A_TEXT_OFFSET(HDR) sizeof(HDR) -#define A_TEXT_SEEK(HDR) sizeof(HDR) - -/* A few changes for the newer systems. */ - -#ifdef BSD4_3 -/* The following line affects crt0.c. */ -#undef m68k - -#undef LIB_STANDARD -#define LIB_STANDARD -lmc -lc -#define C_DEBUG_SWITCH -20 -O -X23 -#endif - -/* arch-tag: 3bfb5a11-d94e-4372-923b-9f47d0851f42 - (do not change this comment) */ diff --git a/src/m/mega68.h b/src/m/mega68.h deleted file mode 100644 index 0d22b572fc..0000000000 --- a/src/m/mega68.h +++ /dev/null @@ -1,53 +0,0 @@ -/* machine description file for Megatest 68000's. - Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* XINT must explicitly sign-extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* Say this machine is a 68000 */ - -#define m68000 - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* 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)) - -/* arch-tag: 61e6deb4-a93e-444b-bbd5-9887a83f1bbc - (do not change this comment) */ diff --git a/src/m/mg1.h b/src/m/mg1.h deleted file mode 100644 index 515e9e23a9..0000000000 --- a/src/m/mg1.h +++ /dev/null @@ -1,107 +0,0 @@ -/* machine description file for Whitechapel Computer Works MG1 (ns16000 based). - Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 Free Software Foundation, Inc. - MG-1 version by L.M.McLoughlin - -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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -We are in the dark about what operating system runs on the Whitechapel -systems. Consult share-lib/MACHINES for information on which -operating systems Emacs has already been ported to; one of them might -work. If you find an existing system name that works or write your -own configuration files, please let the Free Software Foundation in on -your work; we'd like to distribute this information. -NOTE-END */ - -/* 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. */ -/* ns16000 call sequence used on mg1 means that &arg = the args as an array */ -#undef NO_ARG_ARRAY - -/* Define WORD_MACHINE if addresses and such have - * to be corrected before they can be used as byte counts. */ -/* ns16000 addresses are byte addresses */ -#undef WORD_MACHINE - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ -/* Say this machine is a 16000 and an mg1, cpp says its a 32000 */ -#define ns16000 -#define mg1 - -/* Use type int rather than a union, to represent Lisp_Object */ -/* This is desirable for most machines. */ -/* Not sure on mg-1 but this shouldn't hurt! */ -#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. */ -/* mg1 its an unsigned long */ -#define LOAD_AVE_TYPE unsigned long - -/* Convert that into an integer that is 100 for a load average of 1.0 */ -#define FSCALE 1000.0 -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) - -/* 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. */ -/* ns16000's have an unexec, so should the mg-1 */ -#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. */ -/* hmmmm... not sure. copied sequent.h */ -#undef 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. */ -/* mapping seems screwy */ -#define NO_REMAP - -/* Avoids a compiler bug */ -/* borrowed from sequent.h */ - -/* arch-tag: e15d9072-9e1a-44bf-8add-966be535967b - (do not change this comment) */ diff --git a/src/m/news-r6.h b/src/m/news-r6.h deleted file mode 100644 index cf6e019fd0..0000000000 --- a/src/m/news-r6.h +++ /dev/null @@ -1,53 +0,0 @@ -/* news-risc6.h is for the "RISC News", OS version 6. */ -/* This is in the public domain. */ - -/* 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 - -/* Use type int rather than a union, to represent Lisp_Object */ -/* This is desirable for most machines. */ - -#define NO_UNION_TYPE - -/* 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) - -/* 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 - -/* Alter some of the options used when linking. */ - -/*#define C_DEBUG_SWITCH -g*/ -#define C_DEBUG_SWITCH -O -Olimit 2000 -#ifdef __GNUC__ -#define LD_SWITCH_MACHINE -g -Xlinker -D -Xlinker 800000 -#else /* !__GNUC__ */ -/*#define LD_SWITCH_MACHINE -D 800000 -g*/ -#define LD_SWITCH_MACHINE -D 800000 -#endif /* !__GNUC__ */ -#define LIBS_MACHINE -lmld -#define LIBS_TERMCAP -lcurses - -/* 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: b9fd7b75-ba3c-46d4-8966-24381b13001b - (do not change this comment) */ diff --git a/src/m/news-risc.h b/src/m/news-risc.h deleted file mode 100644 index b7ea3dbcef..0000000000 --- a/src/m/news-risc.h +++ /dev/null @@ -1,83 +0,0 @@ -/* news-risc.h is for the "RISC News". - - Copyright (C) 1992, 1999, 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#include "mips.h" - -#ifdef NEWSOS5 - -/* NEWS-OS 5.0.2 */ - -#define LIBS_MACHINE -lmld - -#ifdef __GNUC__ -#define LD_SWITCH_MACHINE -g -Xlinker -D -Xlinker 800000 -#else -#define C_DEBUG_SWITCH -g3 -#define C_OPTIMIZE_SWITCH -g3 -#define LD_SWITCH_MACHINE -g3 -D 800000 -non_shared -#endif - -#else /* not NEWSOS5 */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-3" */ - -#define COFF -#undef LD_SWITCH_MACHINE -#ifdef __GNUC__ -#define LD_SWITCH_MACHINE -Xlinker -x -Xlinker -D -Xlinker 800000 -#else -#define LD_SWITCH_MACHINE -x -D 800000 -#endif - -/* #define C_OPTIMIZE_SWITCH -O2 */ -#define C_OPTIMIZE_SWITCH -O - -#ifndef __GNUC__ -#define C_DEBUG_SWITCH -g3 -#endif - -#undef TERMINFO - -/* We have no mode_t. */ -#define NO_MODE_T - -/* Don't use the definitions in m/mips.h. */ -#undef LINKER -#define LINKER $(CC) -nostdlib -#undef LIBS_MACHINE -#define LIBS_MACHINE -lmld - -#undef KERNEL_FILE -#define KERNEL_FILE "/vmunix" - -/* System's malloc, realloc, calloc and so on have bad prototypes, - using char * instead of void *, so tell gmalloc not to use the - prototypes. */ -#define BROKEN_PROTOTYPES - -#endif /* not NEWSOS5 */ - -/* arch-tag: cf17300c-dd34-4b9d-a657-2de718469662 - (do not change this comment) */ diff --git a/src/m/news.h b/src/m/news.h deleted file mode 100644 index 084c5abb92..0000000000 --- a/src/m/news.h +++ /dev/null @@ -1,65 +0,0 @@ -/* machine description file for Sony's NEWS workstations, NEWS-OS 3.0. - Copyright (C) 1985, 1986, 1989, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Use -opsystem=bsd4-2, or -opsystem=bsd4-3 for system release 3. -NOTE-END */ - -/* Say this machine is a 68000 */ - -#ifndef m68000 -#define m68000 -#endif - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* One CRT0 Dummy variable */ - -#if 0 /* larry@mitra.com says Sony's as doesn't like this. */ -#define CRT0_DUMMIES one_dummy, -#endif - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* 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)) - -/* Must use the system's termcap. It does special things. */ - -#define LIBS_TERMCAP -ltermcap - -/* arch-tag: 79bfd831-874a-4339-85fa-b8cbdc29bdab - (do not change this comment) */ diff --git a/src/m/nh3000.h b/src/m/nh3000.h deleted file mode 100644 index e4a9817d57..0000000000 --- a/src/m/nh3000.h +++ /dev/null @@ -1,109 +0,0 @@ -/* machine description for Harris Night Hawk Series 1200 and Series 3000 - MC68030-based systems (FPP on these is custom). These systems are - also known as "ecx" and "gcx". - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* This file manually constructed for Harris Night Hawk 4000 (and 5000) - * series Motorola 88100 and 88110 based machines. - */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -#ifndef gcx -#define gcx -#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 / FSCALE) - -/* 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 */ - -/* 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 - -/* Some really obscure 4.2-based systems (like Sequent DYNIX) - * do not support asynchronous I/O (using SIGIO) on sockets, - * even though it works fine on tty's. If you have one of - * these systems, define the following, and then use it in - * config.h (or elsewhere) to decide when (not) to use SIGIO. - * - * You'd think this would go in an operating-system description file, - * but since it only occurs on some, but not all, BSD systems, the - * reasonable place to select for it is in the machine description - * file. - */ - -/* #define NO_SOCK_SIGIO */ - -/* arch-tag: 1529f2bc-50d9-42e7-ae72-6f40afadf09e - (do not change this comment) */ diff --git a/src/m/nh4000.h b/src/m/nh4000.h deleted file mode 100644 index 20fadb71e4..0000000000 --- a/src/m/nh4000.h +++ /dev/null @@ -1,108 +0,0 @@ -/* machine description for Harris NightHawk 88k based machines - (includes nh4000 and nh5000 machines). - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* This file manually constructed for Harris Night Hawk 4000 (and 5000) - * series Motorola 88100 and 88110 based machines. - */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -#ifndef m88000 -#define m88000 -#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 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 / FSCALE) - -/* 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 */ - -/* 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 - -/* Some really obscure 4.2-based systems (like Sequent DYNIX) - * do not support asynchronous I/O (using SIGIO) on sockets, - * even though it works fine on tty's. If you have one of - * these systems, define the following, and then use it in - * config.h (or elsewhere) to decide when (not) to use SIGIO. - * - * You'd think this would go in an operating-system description file, - * but since it only occurs on some, but not all, BSD systems, the - * reasonable place to select for it is in the machine description - * file. - */ - -/* #define NO_SOCK_SIGIO */ - -/* arch-tag: d9e12769-ae79-4c25-953f-70db5b7ef5dd - (do not change this comment) */ diff --git a/src/m/ns16000.h b/src/m/ns16000.h deleted file mode 100644 index 6feddd9761..0000000000 --- a/src/m/ns16000.h +++ /dev/null @@ -1,95 +0,0 @@ -/* machine description file for ns16000. - Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -For the Encore, use `-opsystem=umax'. -For a Tektronix 16000 box (a 6130, perhaps?), use `-opsystem=bsd4-2'. -Use `-machine=ns16000' for both. -NOTE-END */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#undef WORDS_BIG_ENDIAN - -/* Say this machine is a 16000 */ - -#define ns16000 1 - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* Data type of load average, as read out of kmem. */ - -#ifndef USG -#define LOAD_AVE_TYPE double -#endif - -/* Convert that into an integer that is 100 for a load average of 1.0 */ - -#ifndef USG -#define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) -#endif - -#ifdef USG - -/* Control assembler syntax used in alloca.s. */ -#define NS5 - -/* On early NS systems ulimit was buggy. If set emacs uses this value - * for the maximum sbrk value instead of getting it from ulimit. - */ -#define ULIMIT_BREAK_VALUE 0x7E0000 - -/* Early NS compilers have this bug. I believe it has been fixed in later - * releases. - */ -#define SHORT_CAST_BUG - -#define SEGMENT_MASK (NBPS - 1) - -/* Variables to get crt0.c to come out correctly */ -#define CRT0_DUMMIES bogus_fp, -#define DOT_GLOBAL_START - -/* Control how emacsclient communicates. */ -#define HAVE_SYSVIPC - -/* Set this to /bin/mail unless you have a better mail posting program */ -#define MAIL_PROGRAM_NAME "/usr/local/bin/remail" - -/* Tell sysdep.c not to define bzero, etc. */ -#undef BSTRING -#define BSTRING - -/* This avoids problems with uninitialized static variables going in .data. */ -#define static - -#endif /* USG */ - -/* arch-tag: 4210db3c-e35c-4b96-9399-1dbde3e00a57 - (do not change this comment) */ diff --git a/src/m/ns32000.h b/src/m/ns32000.h deleted file mode 100644 index b6484b4b21..0000000000 --- a/src/m/ns32000.h +++ /dev/null @@ -1,102 +0,0 @@ -/* machine description file for National Semiconductor 32000, running Genix. - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-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 */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -/* 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 / FSCALE) */ - -/* 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 */ - -/* 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 */ - -#define TEXT_START 0 - -#if !defined (__NetBSD__) && !defined (__OpenBSD__) -#define EXEC_MAGIC 0410 - -#define PURESIZE 140000 - -#define START_FILES pre-crt0.o /lib/crt0.o -#endif - -/* arch-tag: 13dde0e0-8ed5-4bc3-a0dc-5456c9db5f94 - (do not change this comment) */ diff --git a/src/m/nu.h b/src/m/nu.h deleted file mode 100644 index 279d14ff91..0000000000 --- a/src/m/nu.h +++ /dev/null @@ -1,75 +0,0 @@ -/* machine description file for TI Nu machines using system V. - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* XINT must explicitly sign-extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000 are the ones defined so far. */ - -#ifndef m68000 -#define m68000 -#endif - -#ifndef NU -#define NU -#endif - -/* Data type of load average, as read out of kmem. */ -/* These are commented out since it does not really work in uniplus */ - -/* #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) */ - -/* Change some things to avoid bugs in compiler */ - -#define SWITCH_ENUM_BUG 1 - -/* The NU machine has a compiler that can handle long names. */ - -#undef SHORTNAMES - -/* Specify alignment requirement for start of text and data sections - in the executable file. */ - -#define SECTION_ALIGNMENT pagemask - -/* arch-tag: 7d2d9b6d-75d4-4c0d-96a9-a41f06212f35 - (do not change this comment) */ diff --git a/src/m/orion.h b/src/m/orion.h deleted file mode 100644 index cc3a7e395f..0000000000 --- a/src/m/orion.h +++ /dev/null @@ -1,70 +0,0 @@ -/* machine description file for HLH Orion. - Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#undef WORDS_BIG_ENDIAN - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically. */ - -#ifndef orion -#define orion -#endif - -/* 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 - -/* 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 */ - -#define EXPLICIT_SIGN_EXTEND - -/* 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 */ - -#ifndef FSCALE -#define FSCALE 1.0 -#endif -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) - -/* arch-tag: 4fcf38ad-d6b0-434b-bc10-16647d5a7fb6 - (do not change this comment) */ diff --git a/src/m/orion105.h b/src/m/orion105.h deleted file mode 100644 index fabcf67e2a..0000000000 --- a/src/m/orion105.h +++ /dev/null @@ -1,72 +0,0 @@ -/* machine description file for HLH Orion 1/05 (Clipper). - Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 Free Software Foundation, Inc. - Lee McLoughlin <lmjm%doc.imperial.ac.uk@nss.cs.ucl.ac.uk> - -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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-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 - -/* Define WORD_MACHINE if addresses and such have - * to be corrected before they can be used as byte counts. */ - -/* Use type int rather than a union, to represent Lisp_Object */ -/* This is desirable for most machines. */ - -#define NO_UNION_TYPE - -/* Data type of load average, as read out of kmem. */ -/* This used to be `double'. */ - -#define LOAD_AVE_TYPE long - -/* Convert that into an integer that is 100 for a load average of 1.0 */ - -/* This used to be 1.0. */ -#ifndef FSCALE -#define FSCALE 256 -#endif -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) - -/* HLH have a SIGWINCH defined (but unimplemented) so we need a sigmask */ -#ifndef sigmask -#define sigmask(m) (1 << ((m) - 1)) -#endif - -/* Here is where programs actually start running */ -#define TEXT_START 0x8000 -#define LD_TEXT_START_ADDR 8000 - -/* Arguments to ignore before argc in crt0.c. */ -#define DUMMIES dummy1, dummy2, - -/* arch-tag: 32fed6e3-8cae-4882-b327-a68c2af6db7a - (do not change this comment) */ diff --git a/src/m/paragon.h b/src/m/paragon.h deleted file mode 100644 index 11b98dea7e..0000000000 --- a/src/m/paragon.h +++ /dev/null @@ -1,13 +0,0 @@ -/* m/ file for Paragon i860 machine. */ - -#include "i860.h" -#define COFF -#define SYSTEM_MALLOC -#define TEXT_START 0x10000 -#define LIB_STANDARD -lc -lic -lmach -#define KEEP_OLD_TEXT_SCNPTR -#define KEEP_OLD_PADDR -#define drem fmod - -/* arch-tag: c1bc280c-25e5-4993-9b91-333c52ab3674 - (do not change this comment) */ diff --git a/src/m/pfa50.h b/src/m/pfa50.h deleted file mode 100644 index 5f98dc993c..0000000000 --- a/src/m/pfa50.h +++ /dev/null @@ -1,93 +0,0 @@ -/* Machine description file for PFU A-series. - Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* Say this machine is a 68000 */ - -#define m68000 -#define mc68000 1 - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* XINT must explicitly sign-extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* The symbol FIONREAD is defined, but the feature does not work. */ - -#define BROKEN_FIONREAD - -/* 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 - -/* Define TEXT_START_ADDR if your linker don't set execute point to _start. - If it needed, temacs always CORE-DUMP. */ - -#define TEXT_START_ADDR __start - -/* Define START_FILES if your machine used _start. - */ - -#define START_FILES crt0.o - -/* Define LD_SWITCH_MACHINE if your linker needs it. - */ - -#define LD_SWITCH_MACHINE -e __start - -#if pfa50 || pfa70 -/* On A-50/60/70/80, data space has high order byte use. */ -#define DATA_SEG_BITS 0x60000000 -#endif /* pfa50, pfa70 */ - -/* SX/A has alloca in the PW library. */ - -#define LIB_STANDARD -lPW -lc - -/* SX/A uses terminfo and lib/curses */ - -#define TERMINFO - -#define HAVE_PTYS -#define HAVE_SOCKETS - -/* SX/A use SystemV style getdents/readdir. */ - -/* SX/A does not have sigblock(2) */ -#define sigblock(mask) (0) - -#define NO_SIOCTL_H - -#define BROKEN_SIGIO - -/* arch-tag: f3a127d5-790b-4c78-b6be-837139fb12c4 - (do not change this comment) */ diff --git a/src/m/plexus.h b/src/m/plexus.h deleted file mode 100644 index 5196197790..0000000000 --- a/src/m/plexus.h +++ /dev/null @@ -1,109 +0,0 @@ -/* machine description file for the Plexus running System V.2. - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* 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. */ - -#undef 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 - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ -/* Plexus predefines m68 instead of m68000. */ -#define m68000 m68 - -/* 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. */ - -#undef EXPLICIT_SIGN_EXTEND - -/* Data type of load average, as read out of kmem. */ - -#undef LOAD_AVE_TYPE - -/* Convert that into an integer that is 100 for a load average of 1.0 */ - -#undef LOAD_AVE_CVT - -/* 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. */ - -#undef 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. */ - -#undef NO_REMAP - -/* Use the following on ld so we can use the gnu crt0 - The plexus ld looks for start */ -#define LD_SWITCH_MACHINE -e __start - -/* Use the PW library, which contains alloca. */ - -#define LIB_STANDARD -lPW -lc - -/* crt0.c should use the vax-bsd style of entry, with no dummy args. */ - -#define CRT0_DUMMIES zero1, zero2, - -/* This triggers some stuff to avoid a compiler bug */ - -#define TAHOE_REGISTER_BUG - -/* arch-tag: 78c607eb-b4f8-4750-b575-39670d979448 - (do not change this comment) */ diff --git a/src/m/pyramid.h b/src/m/pyramid.h deleted file mode 100644 index 1b834c60ba..0000000000 --- a/src/m/pyramid.h +++ /dev/null @@ -1,67 +0,0 @@ -/* machine description file for pyramid. - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-2" */ - -/* 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. */ - -#ifdef __GNUC__ -#define NO_ARG_ARRAY -#endif - -/* XINT must explicitly sign extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* pyramid preprocessor defines "pyr", however the following is clearer */ -#define pyramid - -/* Don't use the union types any more. They were used until Emacs 17.45. */ - -#define NO_UNION_TYPE - -/* 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)) - -/* Don't use the ordinary -g for debugging in cc */ - -#define C_DEBUG_SWITCH -gx - -/* Reenable this #define for old versions of the Pyramid system. */ - -/* #define PYRAMID_OLD */ - -/* arch-tag: b9097bc9-92be-46d4-acb1-13c2b966d581 - (do not change this comment) */ diff --git a/src/m/pyrmips.h b/src/m/pyrmips.h deleted file mode 100644 index 67705fb661..0000000000 --- a/src/m/pyrmips.h +++ /dev/null @@ -1,10 +0,0 @@ -/* Configuration file for the Pyramid machine that uses the MIPS cpu. */ -/* This does not fully work. */ - -#include "m-pyramid.h" - -#define SYSTEM_MALLOC -#define CANNOT_DUMP - -/* arch-tag: 82559148-25a8-466d-bbb3-f903f7666b7a - (do not change this comment) */ diff --git a/src/m/sh3el.h b/src/m/sh3el.h deleted file mode 100644 index 77f6dc12c2..0000000000 --- a/src/m/sh3el.h +++ /dev/null @@ -1,106 +0,0 @@ -/* machine description file for sh3el - Copyright (C) 1985, 1986, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ - -/* 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 - -/* Define WORD_MACHINE if addresses and such have - * to be corrected before they can be used as byte counts. */ - -#undef WORD_MACHINE - -/* 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 */ - -/* 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 / FSCALE) - -/* 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 HAVE_ALLOCA to say that the system provides a properly - working alloca function and it should be used. - Undefine it if an assembler-language alloca - in the file alloca.s should be used. */ - -#define HAVE_ALLOCA - -/* 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 - -/* After adding support for a new system, modify the large case - statement in the `configure' script to recognize reasonable - configuration names, and add a description of the system to - `etc/MACHINES'. - - If you've just fixed a problem in an existing configuration file, - you should also check `etc/MACHINES' to make sure its descriptions - of known problems in that configuration should be updated. */ - -/* arch-tag: ee325990-6f40-47a2-b9df-60ecf3599899 - (do not change this comment) */ diff --git a/src/m/sps7.h b/src/m/sps7.h deleted file mode 100644 index 67fc60c1b6..0000000000 --- a/src/m/sps7.h +++ /dev/null @@ -1,118 +0,0 @@ -/* machine description file for Bull SPS-7. - Copyright (C) 1986, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* Say this machine is a 68000 */ - -#ifndef m68000 -#define m68000 -#endif - -#define sps7 - -/* 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. */ -/* Suspect there is something weird about this machine, so turn it off. */ - -/* #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) */ - -#define SMX -#define V3x - -/* - * 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 - -/* Have the socketpair call -*/ - -#define SKTPAIR - -/* 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 - -/* Use Berkeley style interface to nlist */ - -#define NLIST_STRUCT - -/* Define this to cause -N to be passed to ld. This is needed - * in uniplus because of its funny memory space layout. - * SMX--If you are using 32 bit (COFF) use "-N", else don't use anything. - */ - -#define LD_SWITCH_MACHINE -N -T32 -e __start - -/* If you are compiling for a 68020, then use -lc32 else use -lc */ - -#define LIB_STANDARD -lc32 - -/* Fore 16 bit, -linet, for 32 bit -linet32 (be sure you have it!). */ - -#define LIBS_MACHINE -linet32 - -/* Use -T32 for 68020, -T16 otherwise */ - -#define C_SWITCH_MACHINE -T32 - -#define BROKEN_SIGIO - -/* Other than 68020 use ld16, as32, or undefine (defaults ld and as). */ - -#define ASS as32 - -#ifdef V3x -#define EXEC_MAGIC 0x10b -#define SEGMENT_MASK (NBPS-1) -#define ADJUST_EXEC_HEADER f_hdr.f_magic = SMROMAGIC;\ - f_ohdr.stsize = 0; -#endif - -/* arch-tag: 2240f71c-6f3b-4a82-80fc-4d56c682d7ad - (do not change this comment) */ diff --git a/src/m/sr2k.h b/src/m/sr2k.h deleted file mode 100644 index 6c17795e05..0000000000 --- a/src/m/sr2k.h +++ /dev/null @@ -1,160 +0,0 @@ -/* machine description file for Hitachi SR2001/SR2201 machines. - Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="hpux" */ - -/* 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. */ - -#undef WORD_MACHINE - -/* 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 - -/* 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 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 - -/* 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)) - -/* #ifdef __hpux */ -/* 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 - - -/* 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)) - - -/* 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 - -/* the data segment on this machine always starts at address 0x40000000. */ - -#define DATA_SEG_BITS 0x40000000 - -#define DATA_START 0x40000000 -#define TEXT_START 0x00000000 - -/* 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 - -/* This machine requires completely different unexec code - which lives in a separate file. Specify the file name. */ - -#define UNEXEC unexhp9k800.o - -#define LIBS_MACHINE -#define LIBS_DEBUG - -/* Include the file bsdtty.h, since this machine has job control. */ -/* #define NEED_BSDTTY */ - -/* The symbol in the kernel where the load average is found - is named _avenrun. At this time there are two major flavors - of hp-ux (there is the s800 and s300 (s200) flavors). The - differences are thusly moved to the corresponding machine description file. -*/ - -/* no underscore please */ -#define LDAV_SYMBOL "avenrun" - -#if 0 /* Supposedly no longer true. */ -/* In 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. */ - -#undef S_IFLNK -#endif - -/* On USG systems these have different names. */ - -#define index strchr -#define rindex strrchr - -/* #endif */ - -/* arch-tag: 4ced5b51-ffe6-4be1-9954-eb40657023a5 - (do not change this comment) */ diff --git a/src/m/stride.h b/src/m/stride.h deleted file mode 100644 index d846a6c984..0000000000 --- a/src/m/stride.h +++ /dev/null @@ -1,121 +0,0 @@ -/* Definitions file for GNU Emacs running on Stride Micro System-V.2.2 - Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* 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. */ - -#undef 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 - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000, pyramid, orion, tahoe, APOLLO and STRIDE - are the ones defined so far. */ - -#define m68000 /* because the SGS compiler defines "m68k" */ -#ifndef STRIDE -#define STRIDE -#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 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)) - -/* 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. */ - -#undef VIRT_ADDR_VARIES - -/* The STRIDE system is more powerful than standard USG5. */ - -#define HAVE_PTYS -#define BSTRING -#define SKTPAIR -#define HAVE_SOCKETS - -#define MAIL_USE_FLOCK -#undef TERMINFO -#define EXEC_MAGIC 0413 - -/* USG wins again: Foo! I can't get SIGIO to work properly on the Stride, because I'm - running a System V variant, and don't have a reliable way to block SIGIO - signals without losing them. So, I've gone back to non-SIGIO mode, so - please append this line to the file "stride.h": - */ -#define BROKEN_SIGIO - -/* Specify alignment requirement for start of text and data sections - in the executable file. */ - -#define SECTION_ALIGNMENT (getpagesize() - 1) - -/* - * UniStride has this in /lib/libc.a. - */ -#undef NONSYSTEM_DIR_LIBRARY - -/* Define this macro if system defines a type `union wait'. */ - -#define HAVE_UNION_WAIT - -/* arch-tag: 65c635ed-5bc7-4ace-ab20-f3442429c8ba - (do not change this comment) */ diff --git a/src/m/sun1.h b/src/m/sun1.h deleted file mode 100644 index 03cb4e803f..0000000000 --- a/src/m/sun1.h +++ /dev/null @@ -1,80 +0,0 @@ -/* machine description file for Sun 68000's - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3; - -opsystem=bsd4-2 or -opsystem=sunos4) - - Whether you should use sun1, sun2 or sun3 depends on the - VERSION OF THE OPERATING SYSTEM - you have. There are three machine types for different versions of - SunOS. All are derived from Berkeley 4.2, meaning that you should - use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will - need to use sun3 on Sun 2's running SunOS release 3. - - For SunOS release 4 on a Sun 3, use -machine=sun3 and - -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve - problems caused by bugs in the "export" version of SunOS 4. -NOTE-END */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* Say this machine is a 68000 */ - -#define m68000 - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* Sun can't write competent compilers */ -#define COMPILER_REGISTER_BUG - -/* 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) - -/* Must use the system's termcap. It does special things. */ - -#define LIBS_TERMCAP -ltermcap - -/* Mask for address bits within a memory segment */ - -#define SEGMENT_MASK (SEGSIZ - 1) - -/* arch-tag: 58ec9c79-48bd-4d1b-aad1-65a09a6b0d10 - (do not change this comment) */ diff --git a/src/m/sun2.h b/src/m/sun2.h deleted file mode 100644 index a872bf6f3b..0000000000 --- a/src/m/sun2.h +++ /dev/null @@ -1,89 +0,0 @@ -/* machine description file for Sun 68000's OPERATING SYSTEM version 2. - Note that "sun2.h" refers to the operating system version, not the - CPU model number. See the MACHINES file for details. - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3; - -opsystem=bsd4-2 or -opsystem=sunos4) - - Whether you should use sun1, sun2 or sun3 depends on the - VERSION OF THE OPERATING SYSTEM - you have. There are three machine types for different versions of - SunOS. All are derived from Berkeley 4.2, meaning that you should - use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will - need to use sun3 on Sun 2's running SunOS release 3. - - For SunOS release 4 on a Sun 3, use -machine=sun3 and - -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve - problems caused by bugs in the "export" version of SunOS 4. -NOTE-END */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* Say this machine is a 68000 */ - -#ifndef m68000 -#define m68000 -#endif - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* Sun can't write competent compilers */ -#define COMPILER_REGISTER_BUG - -/* 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 this is a Sun 2; must check for and maybe reinitialize - the "sky" board. */ - -#define sun2 - -/* Must use the system's termcap. It does special things. */ - -#define LIBS_TERMCAP -ltermcap - -/* Mask for address bits within a memory segment */ - -#define SEGMENT_MASK (SEGSIZ - 1) - -/* arch-tag: 543c3570-74ca-4099-aa47-db7c7b691c8e - (do not change this comment) */ diff --git a/src/m/sun3-68881.h b/src/m/sun3-68881.h deleted file mode 100644 index 33b9c2bd52..0000000000 --- a/src/m/sun3-68881.h +++ /dev/null @@ -1,31 +0,0 @@ -/* sun3-68881.h, for a Sun 3, using the 68881. */ - -#include "sun3.h" - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Sun with 68881 co-processor (-machine=sun3-68881; - -opsystem=bsd4-2 or -opsystem=sunos4) - - Versions 1, 2, and 3 of the operating system are derived from - Berkeley 4.2, meaning that you should use -opsystem=bsd4-2. - - For SunOS release 4 on a Sun 3 with a 68881, use -machine=sun3-68881 - and -opsystem=sunos4. See the file share-lib/SUNBUG for how to - solve problems caused by bugs in the "export" version of SunOS 4. -NOTE-END */ - -/* In case we are using floating point, work together with crt0.c. */ - -#ifndef __GNUC__ -#define C_SWITCH_MACHINE -f68881 -#endif - -#define sun_68881 -#define START_FILES crt0.o /usr/lib/Mcrt1.o - -/* arch-tag: f8659e89-5f5e-4921-940c-814a5786b901 - (do not change this comment) */ diff --git a/src/m/sun3-fpa.h b/src/m/sun3-fpa.h deleted file mode 100644 index b78adaf737..0000000000 --- a/src/m/sun3-fpa.h +++ /dev/null @@ -1,31 +0,0 @@ -/* sun3-fpa.h, for a Sun 3, using the Sun fpa. */ - -#include "sun3.h" - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Sun with FPA co-processor (-machine=sun3-fpa; - -opsystem=bsd4-2 or -opsystem=sunos4) - - Versions 1, 2, and 3 of the operating system are derived from - Berkeley 4.2, meaning that you should use -opsystem=bsd4-2. - - For SunOS release 4 on a Sun 3 with an FPA, use -machine=sun3-fpa - and -opsystem=sunos4. See the file share-lib/SUNBUG for how to - solve problems caused by bugs in the "export" version of SunOS 4. -NOTE-END */ - -/* In case we are using floating point, work together with crt0.c. */ - -#ifndef __GNUC__ -#define C_SWITCH_MACHINE -ffpa -#endif - -#define sun_fpa -#define START_FILES crt0.o /usr/lib/Wcrt1.o - -/* arch-tag: db287fbb-966f-4a70-a3f4-a6768c09326b - (do not change this comment) */ diff --git a/src/m/sun3-soft.h b/src/m/sun3-soft.h deleted file mode 100644 index 32b2558c01..0000000000 --- a/src/m/sun3-soft.h +++ /dev/null @@ -1,32 +0,0 @@ -/* sun3-soft.h, for a Sun 3, using the Sun with software floating point. */ - -#include "sun3.h" - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Sun with software floating point (-machine=sun3-soft; - -opsystem=bsd4-2 or -opsystem=sunos4) - - Versions 1, 2, and 3 of the operating system are derived from - Berkeley 4.2, meaning that you should use -opsystem=bsd4-2. - - If you want to use software floating point on SunOS release 4 on a - Sun 3, use -machine=sun3-68881 and -opsystem=sunos4. See the file - share-lib/SUNBUG for how to solve problems caused by bugs in the - "export" version of SunOS 4. -NOTE-END */ - -/* In case we are using floating point, work together with crt0.c. */ - -#ifndef __GNUC__ -#define C_SWITCH_MACHINE -fsoft -#endif - -#define sun_soft -#define START_FILES crt0.o /usr/lib/Fcrt1.o - -/* arch-tag: 76e9d7e6-66a8-4c4f-b0a5-335d082e5720 - (do not change this comment) */ diff --git a/src/m/sun3.h b/src/m/sun3.h deleted file mode 100644 index b271370341..0000000000 --- a/src/m/sun3.h +++ /dev/null @@ -1,53 +0,0 @@ -/* machine description file for Sun 68000's OPERATING SYSTEM version 3 - (for either 68000 or 68020 systems). */ - -#include "sun2.h" -#undef sun2 -#ifndef sun3 -#define sun3 -#endif - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3; - -opsystem=bsd4-2 or -opsystem=sunos4) - - Whether you should use sun1, sun2 or sun3 depends on the - VERSION OF THE OPERATING SYSTEM - you have. There are three machine types for different versions of - SunOS. All are derived from Berkeley 4.2, meaning that you should - use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will - need to use sun3 on Sun 2's running SunOS release 3. - - For SunOS release 4 on a Sun 3, use -machine=sun3 and - -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve - problems caused by bugs in the "export" version of SunOS 4. -NOTE-END */ - -/* 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) - -/* This is the offset of the executable's text, from the start of the file. */ - -#define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr)) - -/* In case we are using floating point, work together with crt0.c. */ - -#ifndef __GNUC__ -#define C_SWITCH_MACHINE -fsoft -#endif - -/* This line is needed if you are linking with X windows - and the library xlib was compiled to use the 68881. - For maximum cleanliness, don't edit this file; - instead, insert this line in config.h. */ -/* #define START_FILES crt0.o /usr/lib/Mcrt1.o */ - -/* arch-tag: d0559a79-2285-4a78-ad68-9694264d0d8a - (do not change this comment) */ diff --git a/src/m/sun386.h b/src/m/sun386.h deleted file mode 100644 index ed98960c80..0000000000 --- a/src/m/sun386.h +++ /dev/null @@ -1,74 +0,0 @@ -/* machine description file for Sun's 386-based RoadRunner. This file borrows heavily from - "sun2.h", but since that file is heavily cpu-specific, it was easier - not to include it. - - Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START - Use s-sunos4-0.h for operating system version 4.0, and s-sunos4-1.h - for later versions. See the file share-lib/SUNBUG for how to solve - problems caused by bugs in the "export" version of SunOS 4. -NOTE-END */ - -/* Say this machine is a bird */ -#ifndef roadrunner -#define roadrunner -#endif - -/* Actual cpu-specific defs */ -#include "intel386.h" - -/* 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) - -/* Underscores are not prepended to C symbols on this machine. */ -#undef LDAV_SYMBOL -#define LDAV_SYMBOL "avenrun" - -/* Must use the system's termcap. It does special things. */ - -#define LIBS_TERMCAP -ltermcap - -/* Roadrunner uses 'COFF' format */ -#define COFF - -#define C_SWITCH_MACHINE -Bstatic /* avoid dynamic linking */ -#define LD_SWITCH_MACHINE -n -Bstatic -/* Get rid of the -e __start that s-sunos4.h does. */ -#undef LD_SWITCH_SYSTEM - -#ifdef USG -/* USG detects Solaris. j.w.hawtin@lut.ac.uk says Solaris 2.1 - on the 386 needs this. */ -#define LIBS_MACHINE -lkvm -#endif - -/* arch-tag: 861af4b4-ce5f-475e-876e-ebff6436a1fe - (do not change this comment) */ diff --git a/src/m/symmetry.h b/src/m/symmetry.h deleted file mode 100644 index ea3d949350..0000000000 --- a/src/m/symmetry.h +++ /dev/null @@ -1,95 +0,0 @@ -/* machine description file for SEQUENT SYMMETRY machines - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* CHANGE: [Eric H. Herrin II; eric@ms.uky.edu - 15 Sept 1988] - * Modified the sequent.h file for the Sequent Symmetry machine. - * Biggest change was to align the sections in the a.out to 4K - * boundaries (this is the page size). - */ - - -/* NOTICE: this file works for DYNIX release 3.0.12 on Sequent Symmetry - * (Intel 80386) machines. Hasn't been tested on anything else. - */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-3" */ - -#include "intel386.h" - -/* Data type of load average, as read out of kmem. */ - -#define LOAD_AVE_TYPE unsigned long - -/* Convert that into an integer that is 100 for a load average of 1.0 */ - -#define FSCALE 1000.0 -#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) - -/* Name of file the to look in - for the kernel symbol table (for load average) */ - -#undef KERNEL_FILE -#define KERNEL_FILE "/dynix" - -/* Avoids a compiler bug */ - -#define TAHOE_REGISTER_BUG - -/* 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. Furthermore, the value written - in the a_text in the file must have N_ADDRADJ added to it. */ - -#define A_TEXT_OFFSET(HDR) (sizeof (HDR) + N_ADDRADJ (HDR)) - -/* This is the offset of the executable's text, from the start of the file. */ - -#define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr)) - -/* The file sections in the Symmetry a.out must be on 4K boundaries. - */ -#define SEGSIZ 4096 -#define SECTION_ALIGNMENT (SEGSIZ-1) - -/* (short) negative-int doesn't sign-extend correctly */ -#define SHORT_CAST_BUG - -/* Cause compilations to be done in parallel in ymakefile. */ -#define MAKE_PARALLEL & - -/* Define how to search all pty names. - This is for Dynix 3.0; delete next 5 definitions for older systems. */ - -#define PTY_MAJOR "pqrstuvwPQRSTUVW" -#define PTY_MINOR "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" -#define PTY_ITERATION \ - register int ma, mi; \ - for (ma = 0; ma < sizeof(PTY_MAJOR) - 1; ma++) \ - for (mi = 0; mi < sizeof(PTY_MINOR) - 1; mi++) -#define PTY_NAME_SPRINTF \ - sprintf (pty_name, "/dev/pty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]); -#define PTY_TTY_NAME_SPRINTF \ - sprintf (pty_name, "/dev/tty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]); - -/* arch-tag: 4169a89e-3764-4147-98df-1ba3bdd45a5b - (do not change this comment) */ diff --git a/src/m/tad68k.h b/src/m/tad68k.h deleted file mode 100644 index c8be8763fb..0000000000 --- a/src/m/tad68k.h +++ /dev/null @@ -1,115 +0,0 @@ -/* Machine-dependent configuration for GNU Emacs for Tadpole 68k machines - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-3" */ - -/* 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 */ - -/* 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 / FSCALE) */ - -/* 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 */ /* Karl Kleinpaste says this isn't needed. */ - -/* SysV has alloca in the PW library */ - -#define LIB_STANDARD -lPW -lc - -/* 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 */ - -/* Use Terminfo, not Termcap. */ - -#define TERMINFO - -/* TPIX extras */ - -#define TPIX /* used in various source files */ -#define BSTRING /* we do have the BSTRING functions */ -#define CLASH_DETECTION /* we want to know about clashes */ -#undef ADDR_CORRECT /* don't need this bug fix */ -#define fchmod /* we don't have fchmod() */ -#define SECTION_ALIGNMENT (2048-1) /* 2k boundaries required in unexec */ -#define SEGMENT_MASK (128*1024-1) /* 128k offsets required in unexec */ -#define C_DEBUG_SWITCH -O /* build with -O (TPIX has GCC 1.34) */ - -#define BROKEN_TIOCGWINSZ /* Don't try to use TIOCGWINSZ. */ - -/* omit next four lines if no TCP installed */ - -#define select gnu_select /* avoid select() name clash */ -#define HAVE_PTYS /* we do have PTYs if we have TCP */ -#define HAVE_SOCKETS /* we do have sockets if we have TCP */ -#define LIBS_SYSTEM -lsocket /* get TCP networking functions */ - -/* arch-tag: e0c09754-b0f2-48da-a8a5-aee3c94838f4 - (do not change this comment) */ diff --git a/src/m/tahoe.h b/src/m/tahoe.h deleted file mode 100644 index 9b9271577f..0000000000 --- a/src/m/tahoe.h +++ /dev/null @@ -1,72 +0,0 @@ -/* machine description file for tahoe. - Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Use -opsystem=bsd4-2 or -opsystem=bsd4-3, depending on the version of -Berkeley you are running. -NOTE-END */ - -/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word - is the most significant byte. */ - -#define WORDS_BIG_ENDIAN - -/* XINT must explicitly sign-extend */ - -#define EXPLICIT_SIGN_EXTEND - -/* Say this machine is a tahoe */ - -#ifndef tahoe -#define tahoe -#endif /* not tahoe */ - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* crt0.c should use the vax-bsd style of entry, with no dummy args. */ - -#define CRT0_DUMMIES - -/* crt0.c should define a symbol `start' and do .globl with a dot. */ - -#define DOT_GLOBAL_START - -/* 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 triggers some stuff to avoid a compiler bug */ - -#define TAHOE_REGISTER_BUG - -/* arch-tag: dd452693-80e1-413f-a164-0141eb68d831 - (do not change this comment) */ diff --git a/src/m/targon31.h b/src/m/targon31.h deleted file mode 100644 index 39e995b076..0000000000 --- a/src/m/targon31.h +++ /dev/null @@ -1,98 +0,0 @@ -/* targon31 machine description file - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2-2" */ - -/* 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: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ - -/* #define m68k is defined by the Compiler */ -/* #define m68000 */ - -/* 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 double */ - -/* 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) - -/* 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 */ - -/* 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 */ -/* Supposedly NO_REMAP is not needed with the following change. */ -#define SEGMENT_MASK 0xffff - -#define SWITCH_ENUM_BUG 1 - -/* arch-tag: f2438018-7d4e-4be5-b368-4bf342b7785b - (do not change this comment) */ diff --git a/src/m/tek4300.h b/src/m/tek4300.h deleted file mode 100644 index 6498238461..0000000000 --- a/src/m/tek4300.h +++ /dev/null @@ -1,105 +0,0 @@ -/* machine description file for tek4300. - Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="bsd4-3" */ - -/* 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. */ - -#undef 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 - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically. */ - -#ifndef tek4300 -#define tek4300 -#endif - -/* Use type int rather than a union, to represent Lisp_Object */ - -#define NO_UNION_TYPE - -/* 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) (x) - -/* 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 - -/* setjmp and longjmp can safely replace _setjmp and _longjmp, */ - -#define _longjmp longjmp -#define _setjmp setjmp - -/* The text segment always starts at a fixed address. - This way we don't need to have a label _start defined. */ - -#define TEXT_START 0 - -/* The Tektronix exec struct for ZMAGIC files is struct zexec */ - -#define EXEC_HDR_TYPE struct zexec - -/* The entry-point label (start of text segment) is `start', not `__start'. */ - -#define DEFAULT_ENTRY_ADDRESS start - -/* Use the system's malloc calls, gmalloc.c won't work for us. */ - -#define SYSTEM_MALLOC - -/* In building xmakefile, "cc -E -g" forcibly reads from stdin. Since we - can't remove the CFLAGS from that "cc -E" invocation, make sure we - never pass -g. If you want to debug, remove the following, and fix - src/Makefile.in so it doesn't pass ${CFLAGS} when creating xmakefile. */ - -#define C_DEBUG_SWITCH - -/* eirik@elf.ithaca.ny.us said this was needed in 19.22. */ -#define NO_MODE_T - -/* Process groups work in the traditional BSD manner. */ - -#define BSD_PGRPS - -/* arch-tag: afa06e53-094c-4a19-9219-155f8ba4bbcc - (do not change this comment) */ diff --git a/src/m/tekxd88.h b/src/m/tekxd88.h deleted file mode 100644 index f351229292..0000000000 --- a/src/m/tekxd88.h +++ /dev/null @@ -1,117 +0,0 @@ -/* Configuration file for the Tektronix XD88 running UTekV 3.2e, - contributed by Kaveh Ghazi (ghazi@caip.rutgers.edu) 1/15/93. - You probably need to use gnu make (version 3.63 or higher.) - Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ -#ifndef m88000 /* Some 88k C compilers already define this */ -#define m88000 -#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 */ -/* 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 double */ /* No load average on XD88. */ -/* Convert that into an integer that is 100 for a load average of 1.0 */ -/* #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) */ - -/* 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 */ - -/* 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 - -#ifndef __GNUC__ -# define C_OPTIMIZE_SWITCH -O -#endif /* __GNUC__ */ - -#undef NOMULTIPLEJOBS /* we have job control */ -#define HAVE_SOCKETS /* sockets are available */ -#define BROKEN_FIONREAD /* is this needed ? */ -#define BSTRING /* its in libc but not declared in any header file. */ -#undef sigsetmask /* XD88 has sigsetmask() */ - -#undef LIB_X11_LIB /* Don't use shared libraries defined in usg5-3.h */ -#undef LIBX11_SYSTEM - -#define HAVE_TERMIOS /* We have termios. */ -#undef HAVE_TERMIO /* Make sure termios ifdef code is used, not termio. */ -#define NO_TERMIO /* Don't include both termios.h and termio.h */ -#define HAVE_PTYS /* XD88 SysV has PTYs. */ -#define SYSV_PTYS /* Requires <termios.h> */ - -#ifdef ghs /* Stands for "Green Hills Software", defined only in /bin/cc */ -/* -X18 means do not allocate programmer-defined local variables to a - register unless they are declared register. (Copied from perl-4.036 - Green Hills C hints file. Might be needed for setjmp, I don't know.) */ -# define C_SWITCH_MACHINE -X18 -/* We need /lib/default.ld so that /bin/ld can read its link directives. */ -# define LD_SWITCH_SYSTEM /lib/default.ld -#endif /* ghs */ - -/* We need this to get dumping to work */ -#define KEEP_OLD_TEXT_SCNPTR - -/* arch-tag: fd3cebc3-2aed-4f8c-be9b-f37331c6e0ff - (do not change this comment) */ diff --git a/src/m/tower32.h b/src/m/tower32.h deleted file mode 100644 index 01daada242..0000000000 --- a/src/m/tower32.h +++ /dev/null @@ -1,115 +0,0 @@ -/* machine description file for the NCR Tower 32 running System V.2. - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2-2" */ - -/* 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: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ -#define m68000 - -/* 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 / FSCALE) */ - -/* 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 */ - -/* Change some things to avoid bugs in compiler */ - -#define SWITCH_ENUM_BUG 1 - -/* The standard C library is -lcieee, not -lc. - Also use the PW library, which contains alloca. */ - -#define LIB_STANDARD -lPW -lcieee - -/* crt0.c should use the vax-bsd style of entry. Beware that if you have - OS release 2.00.00 or later, *and* change src/ymakefile so that CFLAGS - includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, you need to - uncomment CRT0_DUMMIES and C_OPTIMIZE_SWITCH below. */ - -/* With the optimizer OFF */ - -#define CRT0_DUMMIES zero, bogus_fp, - -/* With the optimizer ON */ - -/* #define CRT0_DUMMIES */ -/* #define C_OPTIMIZE_SWITCH -O2 */ - -/* emacs's magic number isn't temacs's; - temacs is writable text (the default!). */ - -#include <asld.h> -#define EXEC_MAGIC AOUT1MAGIC -#define EXEC_PAGESIZE DATACLICK - -/* arch-tag: a08e7dea-d48e-44cc-b60d-c7f2e5187ff5 - (do not change this comment) */ diff --git a/src/m/tower32v3.h b/src/m/tower32v3.h deleted file mode 100644 index ff209edab4..0000000000 --- a/src/m/tower32v3.h +++ /dev/null @@ -1,113 +0,0 @@ -/* machine description file for the NCR Tower 32 running System V.3. - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-3" */ - -/* 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: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ -#define m68000 - -/* 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 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 / FSCALE) */ - -/* 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 */ - -#ifdef __GNUC__ -#define C_OPTIMIZE_SWITCH -O -fstrength-reduce -fomit-frame-pointer -#define LIB_STANDARD -lc /lib/crtn.o -#else -/* This section is correct if you do *not* change src/ymakefile so that - CFLAGS includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH. */ -#define C_DEBUG_SWITCH -g -O0 -#define LIB_STANDARD -lc -lPW /lib/crtn.o -/* This section is correct if you do enable C_OPTIMIZE_SWITCH. */ -/* #define C_OPTIMIZE_SWITCH -O2 */ -/* #define LIB_STANDARD -lc /lib/crtn.o */ -#endif - -/* The OS maps the data section far away from the text section. */ -#define NO_REMAP -#define TEXT_START 0 -#undef static -#define START_FILES pre-crt0.o /lib/crt1.o - -/* The OS has an implementation of symlinks that is semantically different - from BSD, but for some silly reason it partly has the same syntax. */ -#undef S_IFLNK - -/* The OS needs stream.h+ptem.h included in sysdep.c. */ -#define NO_SIOCTL_H -#define NEED_PTEM_H - -/* arch-tag: 3dff1355-7cb6-49e3-8834-85a369e4ea8f - (do not change this comment) */ diff --git a/src/m/ustation.h b/src/m/ustation.h deleted file mode 100644 index 0ac833c28d..0000000000 --- a/src/m/ustation.h +++ /dev/null @@ -1,132 +0,0 @@ -/* machine description file for U-station (Nihon Unisys, SS5E; Sumitomo Denkoh, U-Station E30). - Copyright (C) 1986, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-3" */ - -/* 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. */ - -#undef 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 - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO - are the ones defined so far. */ -/* Masscomp predefines mc68000. */ - -#define m68000 mc68000 - -/* 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. */ - -#undef EXPLICIT_SIGN_EXTEND - -/* 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)) - -/* 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 data space precedes text space, - numerically. */ - -#undef 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. */ - -#undef NO_REMAP - -/* Name of file the to look in - for the kernel symbol table (for load average) */ - -#define KERNEL_FILE "/unix" - -/* This triggers some stuff to avoid a compiler bug */ - -#define MASSC_REGISTER_BUG - -/* Prevent -lg from being used for debugging. Not implemented? */ - -#define LIBS_DEBUG - -/* - * Define HAVE_TERMIO if the system provides sysV-style ioctls - * for terminal control. - */ - -#define HAVE_TERMIO - -/* -lnet is not standard library */ - -#undef LIBS_SYSTEM - -/* Compiler's bug */ - -#define SWITCH_ENUM_BUG - -/* Termcap is available */ - -#define LIBS_TERMCAP -ltermcap - -#define EXEC_PAGESIZE 1024 -#define PURESIZE 130000 - -#define BROKEN_SIGIO -#define BROKEN_SIGTSTP - -/* arch-tag: 797f1d3e-3077-4eee-a81b-03fcf3a988fe - (do not change this comment) */ diff --git a/src/m/wicat.h b/src/m/wicat.h deleted file mode 100644 index 3ac7b53073..0000000000 --- a/src/m/wicat.h +++ /dev/null @@ -1,137 +0,0 @@ -/* machine description file for WICAT machines. - Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* 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. */ - -#undef 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 - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically: - vax, m68000, ns16000 are the ones defined so far. */ - -#ifndef m68000 -#define m68000 -#endif - -/* This flag is used only in alloca.s. */ -#define WICAT - -/* 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. */ - -#undef LOAD_AVE_TYPE - -/* Convert that into an integer that is 100 for a load average of 1.0 */ - -#undef LOAD_AVE_CVT - -/* 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. */ - -#undef 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. */ - -#undef NO_REMAP - -/* For WICAT, define TAHOE_REGISTER_BUG if you have a pre-4.2 C compiler */ - -#define TAHOE_REGISTER_BUG - -/* pagesize definition */ - -#define EXEC_PAGESIZE 0x1000 - -/* Delete this for WICAT sys V releases before 2.0. */ - -#define LIB_STANDARD -lc-nofp - -/* Special magic number */ - -#define EXEC_MAGIC MC68ROMAGIC - -/* Special switches to give to ld. */ - -#define LD_SWITCH_MACHINE -e __start -N - -/* Sigh...cannot define this for WICAT cuz 0 length memcpy blows chunks */ - -#undef BSTRING - -/* - * Define optimflags if you want to optimize. - * - Set to null string for pre-4.2 C compiler - * - Set to "-O -Wopt,-O-f" for 4.2 - */ - -#define C_OPTIMIZE_SWITCH /* -O -Wopt,-O-f */ - -/* For WICAT version supporting PTYs and select (currently internal only) */ - -#ifdef HAVE_PTYS -#undef FIRST_PTY_LETTER -#define FIRST_PTY_LETTER 'q' -#endif - -/* there is a select() in libcurses.a that causes a conflict so use termlib */ -#ifdef HAVE_SELECT -#undef TERMINFO -#define LIBS_TERMCAP select.o -ltermlib -#endif - -/* arch-tag: b181c512-0275-4d25-9bbc-be0c8ca7bcad - (do not change this comment) */ diff --git a/src/m/xps100.h b/src/m/xps100.h deleted file mode 100644 index 3b378319ce..0000000000 --- a/src/m/xps100.h +++ /dev/null @@ -1,98 +0,0 @@ -/* xps100.h for the Honeywell XPS100 running UNIX System V.2 - Mark J. Hewitt (mjh@uk.co.kernel) - - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="usg5-2" */ - -/* 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: - Ones defined so far include vax, m68000, ns16000, pyramid, - orion, tahoe, APOLLO and many others */ - -/* 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 / FSCALE) */ - -/* 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 */ - -/* 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 -#define TERMINFO -#define SWITCH_ENUM_BUG -#define LIB_STANDARD -lc -#define LD_SWITCH_MACHINE -X -#define SECTION_ALIGNMENT (0x3ff) - -/* arch-tag: 42316eb5-74b2-4762-970a-e372c6a2783d - (do not change this comment) */ diff --git a/src/s/cxux.h b/src/s/cxux.h deleted file mode 100644 index d5abebf1ae..0000000000 --- a/src/s/cxux.h +++ /dev/null @@ -1,236 +0,0 @@ -/* Header file for Harris CXUX. - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* - * Define symbols to identify the version of Unix this is. - * 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 _CX_UX -#define _CX_UX 1 -#endif - -/* Define this symbol if you are running CX/UX 7.0 or later (7.0 introduced - * support for ELF files, and while we still build emacs in COFF format, the - * way it is linked is different for 7.0). - */ -/* #define USING_CX_UX_7 */ - -#ifdef USING_CX_UX_7 -#define LINKER /usr/sde/coff/usr/bin/ld -#define LD_SWITCH_SYSTEM -L/usr/sde/coff/usr/lib -zzero_word -#define START_FILES pre-crt0.o /usr/sde/coff/usr/lib/crt0.o /usr/sde/coff/usr/lib/m88100.o -#else /* !USING_CX_UX_7 */ -#ifdef _M88K -#define START_FILES pre-crt0.o /lib/crt0.o -#else -#define START_FILES cxux-crt0.o /lib/crt0.o -#endif -#endif /* USING_CX_UX_7 */ - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -#define SYSTEM_TYPE "usg-unix-v" - -#define C_SWITCH_SYSTEM -Xa - -#define POSIX_SIGNALS - -/* With POSIX signals, also need to use sigaction rather than signal to - * setup signal handlers - */ -#define signal sys_signal - -/* 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 */ - -/* Emacs can read input using SIGIO and buffering characters itself, - or using CBREAK mode and making C-g cause SIGINT. - The choice is controlled by the variable interrupt_input. - - Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) - - Emacs uses the presence or absence of the SIGIO macro to indicate - whether or not signal-driven I/O is possible. It uses - INTERRUPT_INPUT to decide whether to use it by default. - - SIGIO can be used only on systems that implement it (4.2 and 4.3). - CBREAK mode has two disadvantages - 1) At least in 4.2, it is impossible to handle the Meta key properly. - I hear that in system V this problem does not exist. - 2) Control-G causes output to be discarded. - I do not know whether this can be fixed in system V. - - Another method of doing input is planned but not implemented. - It would have Emacs fork off a separate process - to read the input and send it to the true Emacs process - through a pipe. */ - -#define INTERRUPT_INPUT -/* #define BROKEN_FIONREAD */ - -/* Letter to use in finding device name of first pty, - if system supports pty's. 'a' means it is /dev/ptya0 */ - -#define FIRST_PTY_LETTER 'A' -#define PTY_ITERATION for (c = 'A'; c <= 'P'; c++) for (i = 0; i < 16; i++) - -/* - * Define HAVE_TERMIOS if the system provides POSIX-style - * functions and macros for terminal control. - * - * Define HAVE_TERMIO if the system provides sysV-style ioctls - * for terminal control. - * - * Do not define both. HAVE_TERMIOS is preferred, if it is - * supported on your system. - */ - -#define HAVE_TERMIOS -/* #define HAVE_TERMIO */ -#define NO_TERMIO - -/* - * Define HAVE_PTYS if the system supports pty devices. - */ - -#define HAVE_PTYS - -/* - * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate - * The 4.2 opendir, etc., library functions. - */ - -/* #define NONSYSTEM_DIR_LIBRARY */ - -#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 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 - -/* Define this if your operating system declares signal handlers to - have a type other than the usual. `The usual' is `void' for ANSI C - systems (i.e. when the __STDC__ macro is defined), and `int' for - pre-ANSI systems. If you're using GCC on an older system, __STDC__ - will be defined, but the system's include files will still say that - signal returns int or whatever; in situations like that, define - this to be what the system's include files want. */ -/* #define SIGTYPE int */ -#define SIGTYPE void - -/* If the character used to separate elements of the executable path - is not ':', #define this to be the appropriate character constant. */ -/* #define SEPCHAR ':' */ - -/* Here, on a separate page, add any special hacks needed - to make Emacs work on this system. For example, - you might define certain system call names that don't - exist on your system, or that do different things on - your system and must be used only through an encapsulation - (Which you should place, by convention, in sysdep.c). */ - -/* Yes! The Night Hawk has sockets! */ - -#define HAVE_SOCKETS - -/* The symbol in the kernel where the load average is found - is named _avenrun. */ - -#define LDAV_SYMBOL "_avenrun" - -#define KERNEL_FILE "/unix" - -/* There are too many kludges required to redefine malloc - use the system - one */ -#define SYSTEM_MALLOC - -#define _setjmp setjmp -#define _longjmp longjmp - -/* const really does work, but I can't get configure to run the C compiler - * with the right options so it figures that out. - */ -#undef const - -#ifdef sigmask -#undef sigmask -#endif - -/* - * <pwd.h> already declares getpwuid, and with a uid_t argument in ANSI C - * mode. Define this so xrdb.c will compile - */ -#ifdef __STDC__ -#define DECLARE_GETPWUID_WITH_UID_T -#endif - -/* Some compilers tend to put everything declared static - into the initialized data area, which becomes pure after dumping Emacs. - On these systems, you must #define static as nothing to foil this. - Note that emacs carefully avoids static vars inside functions. */ - -/* #define static */ - -/* arch-tag: 5febe5fe-f0b0-49cb-9280-9d5a9fa43710 - (do not change this comment) */ diff --git a/src/s/cxux7.h b/src/s/cxux7.h deleted file mode 100644 index b9ecf45f6b..0000000000 --- a/src/s/cxux7.h +++ /dev/null @@ -1,10 +0,0 @@ -/* Define this symbol if you are running CX/UX 7.0 or later (7.0 introduced - * support for ELF files, and while we still build emacs in COFF format, the - * way it is linked is different for 7.0). - */ -#define USING_CX_UX_7 - -#include "cxux.h" - -/* arch-tag: 520cfbad-fd5c-4b3b-ace4-66e9bcd31a60 - (do not change this comment) */ diff --git a/src/s/dgux.h b/src/s/dgux.h deleted file mode 100644 index f7ce0a6fd3..0000000000 --- a/src/s/dgux.h +++ /dev/null @@ -1,355 +0,0 @@ -/* Definitions file for GNU Emacs running on Data General's DG/UX - version 4.32 upto and including 5.4.1. - Copyright (C) 1994, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* - * Define symbols to identify the version of Unix this is. - * 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 BSD4_4 -#define BSD_SYSTEM - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -#define SYSTEM_TYPE "dgux" - -/* 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 */ - -/* Emacs can read input using SIGIO and buffering characters itself, - or using CBREAK mode and making C-g cause SIGINT. - The choice is controlled by the variable interrupt_input. - Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) - - SIGIO can be used only on systems that implement it (4.2 and 4.3). - CBREAK mode has two disadvantages - 1) At least in 4.2, it is impossible to handle the Meta key properly. - I hear that in system V this problem does not exist. - 2) Control-G causes output to be discarded. - I do not know whether this can be fixed in system V. - - Another method of doing input is planned but not implemented. - It would have Emacs fork off a separate process - to read the input and send it to the true Emacs process - through a pipe. - -*/ - -#define INTERRUPT_INPUT - -/* - * Define HAVE_SOCKETS if the system supports sockets. - */ - -#define HAVE_SOCKETS - -/* - * Define HAVE_UNIX_DOMAIN if the system supports Unix - * domain sockets. - */ - -#define HAVE_UNIX_DOMAIN - -/* - * Define HAVE_PTYS if the system supports pty devices. - */ - -#define HAVE_PTYS - -/* - * 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". - - DGUX can use either COFF or ELF; the default is ELF. - To compile for COFF (or BCS) use the TARGET_BINARY_INTERFACE - environment variable. */ - -#if defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) -#undef ELF -#ifndef COFF -#define COFF -#endif /* COFF */ -#else /* defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) */ -#undef COFF -#ifndef ELF -#define ELF -#endif /* ELF */ -#endif /* defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) */ - -#ifndef COFF /* People will probably find this apparently unreliable - till the NFS dumping bug is fixed. */ - -/* It is possible to undump to ELF with DG/UX 5.4, but for revisions below - 5.4.1 the undump MUST be done on a local file system, or the kernel will - panic. ELF executables have the advantage of using shared libraries, - while COFF executables will still work on 4.2x systems. */ - -#define UNEXEC unexelf.o - -/* This makes sure that all segments in the executable are undumped, - not just text, data, and bss. In the case of Mxdb and shared - libraries, additional information is stored in other sections. - It does not hurt to have this defined if you don't use Mxdb or - shared libraries. In fact, it makes no difference. */ - -/* Necessary for shared libraries and Mxdb debugging information. */ -#define USG_SHARED_LIBRARIES -#endif - -/* 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 */ - -/* Define a replacement for the baud rate switch, since DG/UX uses a different - from BSD. */ - -#define BAUD_CONVERT { 0, 110, 134, 150, 300, 600, 1200, 1800, 2400, \ - 4800, 9600, 19200, 38400 } - -/* - * Make WM Interface Compliant. - */ - -#define XICCC - -/* Here, on a separate page, add any special hacks needed - to make Emacs work on this system. For example, - you might define certain system call names that don't - exist on your system, or that do different things on - your system and must be used only through an encapsulation - (Which you should place, by convention, in sysdep.c). */ - -/* Some compilers tend to put everything declared static - into the initialized data area, which becomes pure after dumping Emacs. - On these systems, you must #define static as nothing to foil this. - Note that emacs carefully avoids static vars inside functions. */ - -/* #define static */ - -/* DG/UX SPECIFIC ADDITIONS TO TEMPLATE FOLLOW: */ - -/* Use the Berkeley flavors of the library routines, instead of System V. */ - -#define setpgrp(pid,pgrp) setpgrp2(pid,pgrp) -#define getpgrp(pid) getpgrp2(pid) - -/* Act like Berkeley. */ - -#define _setjmp(env) sigsetjmp(env,0) -#define _longjmp(env,val) longjmp(env,val) - -/* Use TERMINFO instead of termcap */ - -#define TERMINFO - -/* - * Send signals to subprocesses using characters. - * - */ - -#define SIGNALS_VIA_CHARACTERS - -/* - * Define HAVE_TERMIOS since this is POSIX, - * for terminal control. Prevent redundant inclusion of termio.h. - */ - -#define HAVE_TERMIOS -#define NO_TERMIO - -/* - * Use a Berkeley style sys/wait.h. - * This makes WIF* macros operate on structures instead of ints. - */ - -#define _BSD_WAIT_FLAVOR - -/* - * Use BSD and POSIX-style signals. This is crucial! - */ - -/* #define SYSTEM_MALLOC */ - -/* MAKING_MAKEFILE must be defined in "ymakefile" before including config.h */ -#ifndef NOT_C_CODE - -/* Make sure signal.h is included so macros below don't mess with it. */ -/* DG/UX include files prevent multiple inclusion. */ - -#include <signal.h> - -/* but undefine the sigmask and sigpause macros since they will get - #define'd later. */ -#undef sigmask -#undef sigpause - -#define POSIX_SIGNALS - -#ifndef NO_DGUX_SIGNAL_REDEF -/* Can't use sys_signal because then etc/server.c would need sysdep.o. */ -extern struct sigaction act, oact; -#define signal(SIG,FUNC) berk_signal(SIG,FUNC) -#endif - -#endif /* not NOT_C_CODE */ - -#ifndef __GNUC__ -#error You must use GCC to compiler Emascs on DGUX -#endif - -#define ORDINARY_LINK -#define START_FILES pre-crt0.o -#define LIB_GCC /usr/lib/gcc/libgcc.a - -#ifdef _M88KBCS_TARGET -/* Karl Berry says: the environment - recommended by gcc (88/open, a.k.a. m88kbcs) doesn't support some system - functions, and gcc doesn't make it easy to switch environments. */ -#define NO_GET_LOAD_AVG -#endif - -/* definitions for xmakefile production */ -#ifdef COFF - -/* Define the following to use all of the available pty's. */ - -#define PTY_ITERATION \ - for (c = 'p'; c < 't'; c++) \ - for (i = 0; (((c == 'p') && (i < 64)) || ((c != 'p') && (i < 16))); i++) - -#define PTY_NAME_SPRINTF \ - if (c == 'p') \ - sprintf (pty_name, "/dev/pty%c%d", c, i); \ - else \ - sprintf (pty_name, "/dev/pty%c%x", c, i); - -#define PTY_TTY_NAME_SPRINTF \ - if (c == 'p') \ - sprintf (pty_name, "/dev/tty%c%d", c, i); \ - else \ - sprintf (pty_name, "/dev/tty%c%x", c, i); - -#define C_DEBUG_SWITCH -g - -#else /* not COFF */ - -/* We are generating ELF object format. This makes the system more - SVR4 like. */ - -#define SVR4 - -/* Pseudo-terminal support under SVR4 only loops to deal with errors. */ - -#define PTY_ITERATION for (i = 0; i < 1; i++) - -/* This sets the name of the master side of the PTY. */ - -#define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptmx"); - -/* This sets the name of the slave side of the PTY. On SysVr4, - grantpt(3) forks a subprocess, so keep sigchld_handler() from - intercepting that death. If any child but grantpt's should die - within, it should be caught after sigrelse(2). */ - -#define PTY_TTY_NAME_SPRINTF \ - { \ - char *ptsname(), *ptyname; \ - \ - sigblock(sigmask(SIGCLD)); \ - if (grantpt(fd) == -1) \ - fatal("could not grant slave pty"); \ - sigunblock(sigmask(SIGCLD)); \ - if (unlockpt(fd) == -1) \ - fatal("could not unlock slave pty"); \ - if (!(ptyname = ptsname(fd))) \ - fatal ("could not enable slave pty"); \ - strncpy(pty_name, ptyname, sizeof(pty_name)); \ - pty_name[sizeof(pty_name) - 1] = 0; \ - } - -/* Push various streams modules onto a PTY channel. */ - -#define SETUP_SLAVE_PTY \ - if (ioctl (xforkin, I_PUSH, "ptem") == -1) \ - fatal ("ioctl I_PUSH ptem", errno); \ - if (ioctl (xforkin, I_PUSH, "ldterm") == -1) \ - fatal ("ioctl I_PUSH ldterm", errno); \ - if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \ - fatal ("ioctl I_PUSH ttcompat", errno); - -#ifdef __GNUC__ -#define C_DEBUG_SWITCH -g -V2 -mversion-03.00 -mstandard -#endif - -#endif /* ELF */ - -/* Extra stuff which probably should be someplace else but is here out - of expediency. */ - -#define LIB_X11_LIB -lX11 -#define LIB_MOTIF -lXm -lgen - -/* Process groups work in the traditional BSD manner. */ - -#define BSD_PGRPS - -/* arch-tag: 1b6d117d-82d2-4480-a6d0-3f7a8360f658 - (do not change this comment) */ diff --git a/src/s/dgux4.h b/src/s/dgux4.h deleted file mode 100644 index bf5a1b0e59..0000000000 --- a/src/s/dgux4.h +++ /dev/null @@ -1,144 +0,0 @@ -/* Definitions file for GNU Emacs running on Data General's DG/UX - Release 4.10 and above. - Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* This file was written by Roderick Schertler <roderick@ibcinc.com>, - contact me if you have problems with or comments about running Emacs - on dgux. - - A number of things in the older dgux*.h files don't make sense to me, - but since I'm relying on memory and I don't have any older dgux - systems installed on which to test changes I'm undoing or fixing them - here rather than fixing them at the source. */ - -/* In dgux.h it says "Can't use sys_signal because then etc/server.c - would need sysdep.o." and then it #defines signal() to be - berk_signal(), but emacsserver.c does `#undef signal' anyway, so that - doesn't make sense. - - Further, sys_signal() in sysdep.c already had a special case for - #ifdef DGUX, it called berk_signal() explicitly. I've removed that - special case because it also didn't make sense: All versions of dgux - which the dgux*.h headers take into account have POSIX signals - (POSIX_SIGNALS is #defined in dgux.h). The comments in sys_signal() - even acknowledged this (saying that the special berk_signal() case - wasn't really necessary), they said that sys_signal() was using - berk_signal() instead of sigaction() for efficiency. Since both give - reliable signals neither has to be invoked within the handler. If - the efficiency that the comments were talking about is the overhead - of setting up the sigaction struct rather than just passing the - function pointer in (which is the only efficiency I can think of) - then that's a needless optimization, the Emacs sources do better - without the special case. - - The following definition will prevent dgux.h from re-defining - signal(). I can't just say `#undef signal' after including dgux.h - because signal() is already a macro, defined in <sys/signal.h>, and - the original definition would be lost. */ -#define NO_DGUX_SIGNAL_REDEF - -#include "dgux5-4-3.h" - -#define LIBS_DEBUG /* nothing, -lg doesn't exist */ -#define LIBS_SYSTEM -lsocket -lnsl - -#ifndef NOT_C_CODE - -/* dgux.h defines _setjmp() to be sigsetjmp(), but it defines _longjmp - to be longjmp() rather than siglongjmp(). Further, it doesn't define - jmp_buf, so sigsetjmp() is being called with a jmp_buf rather than a - sigjmp_buf, and the buffer is then passed to vanilla longjmp(). This - provides a more complete emulation of the Berkeley semantics. */ - -#include <setjmp.h> -#undef jmp_buf -#undef _setjmp -#undef setjmp -#undef _longjmp -#undef longjmp -#define jmp_buf sigjmp_buf -#define _setjmp(env) sigsetjmp(env, 0) -#define setjmp(env) sigsetjmp(env, 1) -#define _longjmp siglongjmp -#define longjmp siglongjmp - -/* The BAUD_CONVERT definition in dgux.h is wrong with this version - of dgux, but I'm not sure when it changed. - - With the current system Emacs' standard handling of ospeed and - baud_rate don't work. The baud values (B9600 and so on) returned by - cfgetospeed() aren't compatible with those used by ospeed. speed_t, - the type returned by cfgetospeed(), is unsigned long and speed_t - values are large. Further, it isn't possible to get at both the - SysV3 (ospeed) and POSIX (cfgetospeed()) values through symbolic - constants simultaneously because they both use the same names - (B9600). To get both baud_rate and ospeed right at the same time - it's necessary to hardcode the values for one set of values, here I'm - hardcoding ospeed. */ -#undef BAUD_CONVERT -#define INIT_BAUD_RATE() \ - struct termios sg; \ - \ - tcgetattr (input_fd, &sg); \ - switch (cfgetospeed (&sg)) { \ - case B50: baud_rate = 50; ospeed = 0x1; break; \ - case B75: baud_rate = 75; ospeed = 0x2; break; \ - case B110: baud_rate = 110; ospeed = 0x3; break; \ - case B134: baud_rate = 134; ospeed = 0x4; break; \ - case B150: baud_rate = 150; ospeed = 0x5; break; \ - case B200: baud_rate = 200; ospeed = 0x6; break; \ - case B300: baud_rate = 300; ospeed = 0x7; break; \ - case B600: baud_rate = 600; ospeed = 0x8; break; \ - default: \ - case B1200: baud_rate = 1200; ospeed = 0x9; break; \ - case B1800: baud_rate = 1800; ospeed = 0xa; break; \ - case B2400: baud_rate = 2400; ospeed = 0xb; break; \ - case B4800: baud_rate = 4800; ospeed = 0xc; break; \ - case B9600: baud_rate = 9600; ospeed = 0xd; break; \ - case B19200: baud_rate = 19200; ospeed = 0xe; break; \ - case B38400: baud_rate = 38400; ospeed = 0xf; break; \ - } \ - return; - - -#if 0 /* Ehud Karni <ehud@unix.simonwiesel.co.il> says that the problem - still exists on m88k-dg-dguxR4.11MU04 and i586-dg-dguxR4.11MU04. */ -/* The `stop on tty output' problem which occurs when using - INTERRUPT_INPUT and when Emacs is invoked under X11 using a job - control shell (csh, ksh, etc.) in the background doesn't look to be - present in R4.11. (At least, I can't reproduce it using jsh, csh, - ksh or zsh.) */ -#undef BROKEN_FIONREAD -#define INTERRUPT_INPUT -#endif /* 0 - never */ - -/* In R4.11 (or maybe R4.10, I don't have a system with that version - loaded) some of the internal stdio semantics were changed. One I - found while working on MH is that _cnt has to be 0 before _filbuf() - is called. Another is that (_ptr - _base) doesn't indicate how many - characters are waiting to be sent. I can't spot a good way to get - that info from the FILE internals. */ -#define PENDING_OUTPUT_COUNT(FILE) (1) - -#endif /* NOT_C_CODE */ - -/* arch-tag: c7013e7b-6e2e-44f2-ba61-90b6d5e2ea45 - (do not change this comment) */ diff --git a/src/s/dgux5-4-3.h b/src/s/dgux5-4-3.h deleted file mode 100644 index d959b8c6f1..0000000000 --- a/src/s/dgux5-4-3.h +++ /dev/null @@ -1,68 +0,0 @@ -/* Definitions file for GNU Emacs running on Data General's DG/UX - version 5.4 Release 3.00 and above. - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* NOTE: DGUX5.4R3.00 will not build with the delivered gcc-2.4.5 - compiler. You must upgraded to at least gcc-2.5.8. If you are - running DGUX 5.4R3.00 check on the system dg-rtp.dg.com:/pub/gnu - for gcc-2.5.8 or later compiler. - -pmr@pajato.com */ - -#include "dgux5-4r2.h" - -/* DGUX 5.4R3.00 brought the definition of `struct inet_addr' into - compliance with the majority of Unix systems. The workaround - introduced in 5.4R2 is no longer necessary. */ - -#ifdef HAVE_BROKEN_INET_ADDR -#undef HAVE_BROKEN_INET_ADDR -#endif - -/* The `stop on tty output' problem which occurs when using - INTERRUPT_INPUT and when Emacs is invoked under X11 using a job - control shell (csh, ksh, etc.) in the background has not been fixed in - DGUX 5.4R3.00. - -pmr@pajato.com */ - -#if 0 -#ifdef BROKEN_FIONREAD -#undef BROKEN_FIONREAD -#endif -#ifndef INTERRUPT_INPUT -#define INTERRUPT_INPUT -#endif -#endif - -/* Under DGUX 5.4R3.00, getting a debuggable executable has been - greatly simplified and applies to either COFF or ELF - environments. */ - -#ifdef C_DEBUG_SWITCH -#undef C_DEBUG_SWITCH -#define C_DEBUG_SWITCH -g -#endif - -/* This is needed according to Ehud Karni <ehud@unix.simonwiesel.co.il> - for m88k-dg-dgux5.4R3.10. */ -#undef BSD_PGRPS - -/* arch-tag: c11938c9-0cb0-4652-88aa-7eb80bf1cda9 - (do not change this comment) */ diff --git a/src/s/dgux5-4r2.h b/src/s/dgux5-4r2.h deleted file mode 100644 index 570e90e9ac..0000000000 --- a/src/s/dgux5-4r2.h +++ /dev/null @@ -1,51 +0,0 @@ -/* Definitions file for GNU Emacs running on Data General's DG/UX - 5.4 Release 2.xx systems. - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -#include "dgux.h" - -/* There is a known kernel bug in DGUX 5.4R2.xx when using - INTERRUPT_INPUT and invoking Emacs with a job control shell (csh, - ksh, etc.) in the background. This bug manifests itself by - outputting `stop on tty output' and hanging. The workaround is to - set BROKEN_FIONREAD. - -pmr@pajato.com */ - -#ifndef BROKEN_FIONREAD -#define BROKEN_FIONREAD -#endif -#ifdef INTERRUPT_INPUT -#undef INTERRUPT_INPUT -#endif - -/* In DGUX 5.4R2.xx the function inet_addr() returns a `struct - in_addr' instead of the more common `unsigned long'. - -pmr@pajato.com */ - -#define HAVE_BROKEN_INET_ADDR - -#if 0 /* Shawn M. Carey <smcarey@mailbox.syr.edu> found this - caused trouble on DGUX 5.4.2. */ -#define LIBS_SYSTEM -ldgc -#endif - -/* arch-tag: a14f4043-6caa-4f01-a9b9-ae0fb0d2c96e - (do not change this comment) */ diff --git a/src/s/esix.h b/src/s/esix.h deleted file mode 100644 index 357e773647..0000000000 --- a/src/s/esix.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Definitions for ESIX, a variant of v.5.3 for the 386. */ -/* These are based on reports for ESIX 5.3.2 D. */ - -#include "usg5-3.h" - -/* Some versions of V.3 have this, but not all. ESIX does. */ -#define HAVE_PTYS -#define SYSV_PTYS - -/* Have -lg be used for debugging. */ -#undef LIBS_DEBUG -#define LIBS_DEBUG -lg - -/* If using Roell's X server, define X11R4 */ -#ifdef X11R4 /* Roell's X server */ -#define select sys_select /* Emacs select() not good enough? */ -#undef LIBX11_SYSTEM -#define LIBX11_SYSTEM -lpt -#endif /* X11R4 */ - -/* ESIX does not need <sys/sioctl.h>, but needs <sys/ptem.h> */ -#define NO_SIOCTL_H -#define NEED_PTEM_H -#define BROKEN_FIONREAD - -/* arch-tag: d66e6a70-0812-437d-aa35-9b01bd474941 - (do not change this comment) */ diff --git a/src/s/esix5r4.h b/src/s/esix5r4.h deleted file mode 100644 index 4240f3d7f4..0000000000 --- a/src/s/esix5r4.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Definitions for ESIX System V 4.0.4, a variant of V.4 for the 386. */ -/* Redone by zircon!joe@uunet.uu.net (Joe Kelsey). */ - -#include "usg5-4.h" - -#define SYSTEM_MALLOC 1 -#if defined (HAVE_XFREE386) -# undef LIB_STANDARD -# define LIB_STANDARD -lc -#else -# define LIB_X11_LIB -lsocket -lc -lX11 -# undef LIB_STANDARD -# ifdef ORDINARY_LINK -# define LIB_STANDARD -lnsl -lns -lelf /usr/ucblib/libucb.a -# else -# define LIB_STANDARD -lnsl -lns -lelf /usr/ucblib/libucb.a /usr/ccs/lib/crtn.o -# endif - -/* Resolve BSD string functions in X Window library from libucb.a. */ -# define BSTRING - -/* zircon!joe says this makes X windows work. */ -# define BROKEN_FIONREAD -#endif - -/* arch-tag: 2d314ae9-0357-4ddf-96e5-cf821071ba4b - (do not change this comment) */ diff --git a/src/s/hiuxmpp.h b/src/s/hiuxmpp.h deleted file mode 100644 index 7538adb163..0000000000 --- a/src/s/hiuxmpp.h +++ /dev/null @@ -1,67 +0,0 @@ -/* System description file for HI-UX. - -Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 - 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#define BSD 198911 /* system version (year & month) */ -#define DBL_DIG 15 /* same as the definition of <float.h> */ -#include "bsd4-3.h" - -/* Identify OSF1 for the m- files. */ - -#define OSF1 - -/* To avoid to include the non-existant header file <sys/vlimit.h>, - we define BSD4_2. - This definition does not mean that the OS is based on BSD 4.2. */ -#define BSD4_2 - -/* Define _BSD to tell the include files we're running under - the BSD universe and not the SYSV universe. - Define HITACHI and OSF for Xt's Boolean type as int intead of char. - (But for these defines, /usr/include/X11/Intrinsic.h defines - Boolean as char, but libXt.a on HI-UX/MPP requires it as int.) */ - -#define C_SWITCH_SYSTEM -D_BSD -DHITACHI -DOSF -#define LIBS_SYSTEM -lbsd - -#define GETPGRP_NO_ARG - -#define SYSV_SYSTEM_DIR - -/* If your system uses COFF (Common Object File Format) then define the - preprocessor symbol "COFF". */ - -/* #define COFF */ - -/* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option - says where to find X windows at run time. We convert it to a -rpath option - which is what OSF1 uses. */ -#define LD_SWITCH_SYSTEM - -#undef KERNEL_FILE -#define KERNEL_FILE "/mach_kernel" - -#undef LDAV_SYMBOL -#define LDAV_SYMBOL "avenrun" - -/* arch-tag: c5422584-cd86-4e10-8089-9f604523dab7 - (do not change this comment) */ diff --git a/src/s/hiuxwe2.h b/src/s/hiuxwe2.h deleted file mode 100644 index 418ea14cc9..0000000000 --- a/src/s/hiuxwe2.h +++ /dev/null @@ -1,67 +0,0 @@ -/* System description file for HI-UX. - -Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#define BSD 198911 /* system version (year & month) */ -#define DBL_DIG 15 /* same as the definition of <float.h> */ -#include "bsd4-3.h" - -/* Identify OSF1 for the m- files. */ - -#define OSF1 - -/* To avoid to include the non-existant header file <sys/vlimit.h>, - we define BSD4_2. - This definition does not mean that the OS is based on BSD 4.2. */ -#define BSD4_2 - -/* Define _BSD to tell the include files we're running under - the BSD universe and not the SYSV universe. - Define HITACHI and OSF for Xt's Boolean type as int intead of char. - (But for these defines, /usr/include/X11/Intrinsic.h defines - Boolean as char, but libXt.a on HI-UX/MPP requires it as int.) */ - -#define C_SWITCH_SYSTEM -D_BSD -DHITACHI -DOSF -#define LIBS_SYSTEM -lbsd - -#define GETPGRP_NO_ARG - -#define SYSV_SYSTEM_DIR - -/* If your system uses COFF (Common Object File Format) then define the - preprocessor symbol "COFF". */ - -/* #define COFF */ - -/* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option - says where to find X windows at run time. We convert it to a -rpath option - which is what OSF1 uses. */ -#define LD_SWITCH_SYSTEM - -#undef KERNEL_FILE -#define KERNEL_FILE "/mach_kernel" - -#undef LDAV_SYMBOL -#define LDAV_SYMBOL "avenrun" - -/* arch-tag: c56449e1-6d1b-4537-a596-0b08b8e4ec73 - (do not change this comment) */ diff --git a/src/s/iris3-5.h b/src/s/iris3-5.h deleted file mode 100644 index c3d16cbf61..0000000000 --- a/src/s/iris3-5.h +++ /dev/null @@ -1,166 +0,0 @@ -/* Definitions file for GNU Emacs running on Silicon Graphics 3.5 - Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* - * Define symbols to identify the version of Unix this is. - * Define all the symbols that apply correctly. - */ - -#define USG -#define USG5 -#define IRIS - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -#define SYSTEM_TYPE "irix" - -/* 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. 'a' means it is /dev/ptya0 */ - -#define FIRST_PTY_LETTER 'a' - -/* - * 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 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" - - -/* 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 */ - -/* The IRIS defines SIGIO in signal.h, but doesn't implement it. */ -#define BROKEN_SIGIO - -#define LIBS_MACHINE -lbsd -ldbm -lPW -#define C_SWITCH_MACHINE -I/usr/include/bsd - -/* 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) (int)((char *)(x) - (char*)0) - -/* some errno.h's don't actually allocate the variable itself */ - -#define NEED_ERRNO - -/* The symbol FIONREAD is defined, but the feature does not work. */ - -#define BROKEN_FIONREAD - -/* This is how to get the device name of the tty end of a pty. */ -#define PTY_TTY_NAME_SPRINTF \ - sprintf (ptyname, "/dev/ttyq%d", minor (stb.st_rdev)); - -/* arch-tag: 41161051-477f-44be-bb2a-0eead3142157 - (do not change this comment) */ diff --git a/src/s/iris3-6.h b/src/s/iris3-6.h deleted file mode 100644 index 85a13167ed..0000000000 --- a/src/s/iris3-6.h +++ /dev/null @@ -1,163 +0,0 @@ -/* Definitions file for GNU Emacs running on Silicon Graphics system 3.6. - Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* - * Define symbols to identify the version of Unix this is. - * Define all the symbols that apply correctly. - */ - -#define USG -#define USG5 -#define IRIS - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -#define SYSTEM_TYPE "irix" - -/* 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. 'a' means it is /dev/ptya0 */ - -#define FIRST_PTY_LETTER 'a' - -/* - * 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 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" - - -/* 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 */ -#define sigblock(x) x - -/* The IRIS defines SIGIO in signal.h, but doesn't implement it. */ -#define BROKEN_SIGIO - -#define LIBS_MACHINE -lbsd -ldbm -lPW -#define C_SWITCH_MACHINE -I/usr/include/bsd - -/* 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) (int)((char *)(x) - (char*)0) - -/* some errno.h's don't actually allocate the variable itself */ - -#define NEED_ERRNO - -/* This is how to get the device name of the tty end of a pty. */ -#define PTY_TTY_NAME_SPRINTF \ - sprintf (ptyname, "/dev/ttyq%d", minor (stb.st_rdev)); - -/* arch-tag: cdf2033e-a2d5-43e1-a1a2-a7243cf41a11 - (do not change this comment) */ diff --git a/src/s/isc2-2.h b/src/s/isc2-2.h deleted file mode 100644 index 34c79f17ea..0000000000 --- a/src/s/isc2-2.h +++ /dev/null @@ -1,100 +0,0 @@ -/* system description file for Interactive (ISC) Unix version 2.2 on the 386. - - Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#include "usg5-3.h" - -/* select (in -linet) works okay on X ptys, but not on the serial port. - karl@cs.umb.edu says that with that select call, subprocesses made by - (e.g.) M-x grep don't exit cleanly, they just hang. Similar problems - have been observed in ISC 3.0. */ -#define BROKEN_SELECT_NON_X - -/* karl@cs.umb.edu says that ISC's socket support (in -linet) isn't - what Emacs needs; it makes interrupt-shell-subjob and the like do - nothing. But that appears to have been another manifestation of - the broken select, so it should now be safe to define this again. */ -#define HAVE_SOCKETS - -#define NO_SOCKETS_IN_FILE_SYSTEM -#define NEED_NET_ERRNO_H - -/* This keeps the .cdbx section that gcc puts out when generating - stabs-in-coff output, so Emacs can be debugged. --karl@cs.umb.edu. */ -#define USG_SHARED_LIBRARIES - -/* We can support lock files. */ -#define CLASH_DETECTION -#define NO_FCHMOD - -#define HAVE_PTYS -#define MAXNAMLEN 512 -#define O_NDELAY O_NONBLOCK -#define MEMORY_IN_STRING_H - -/* Tell gmalloc.c that we don't have memmove (system include files to the - contrary!). */ -#define MEMMOVE_MISSING - -/* Send a signal to a subprocess by "typing" a signal character. */ -#define SIGNALS_VIA_CHARACTERS - -/* -lPW is only needed if not using Gcc. We used to include -lcposix here - for the rename function, but some people say ISC's rename doesn't - work correctly with Emacs so we use Emacs' emulation instead. */ -#if defined (__GNUC__) -# define LIB_STANDARD_1 -lcposix -#else /* !__GNUC__ */ -# define LIB_STANDARD_1 -lPW -#endif /* !__GNUC__ */ - -/* LIB_STANDARD_1 is used both here and in LIBS_SYSTEM - (the latter for the sake of configure). */ -#define LIB_STANDARD LIB_STANDARD_1 -lc - -#define NO_X_DESTROY_DATABASE - -/* -linet may be needed to avoid undefined symbols such as gethostname, - inet_addr, gethostbyname, socket, connect, ... */ -#define LIBS_SYSTEM -linet LIB_STANDARD_1 - -/* This system has job control. */ -#undef NOMULTIPLEJOBS - -/* Inhibit asm code in netinet/in.h. Strictly speaking, only necessary - when -traditional is being used, but it doesn't hurt to - unconditionally define this. */ -#define NO_ASM - -/* -traditional is not necessary if the system header files are fixed to - define getc and putc in the absence of _POSIX_SOURCE. GCC's from 2.4.4 - on do this. */ -#if !defined (__GNUC__) || __GNUC__ < 2 -# define C_SWITCH_SYSTEM -traditional -#endif - -/* Some versions of ISC are said to define S_IFLNK even tho - they don't really support symlinks. */ -#undef S_IFLNK - -/* arch-tag: 4de02713-eac5-4360-9d36-fd82c7a3ae44 - (do not change this comment) */ diff --git a/src/s/isc3-0.h b/src/s/isc3-0.h deleted file mode 100644 index 3df5503177..0000000000 --- a/src/s/isc3-0.h +++ /dev/null @@ -1,70 +0,0 @@ -/* s- file for Interactive (ISC) Unix version 3.0 on the 386. - -Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#include "isc2-2.h" - -/* This has been moved into isc2-2.h. */ -/* #define HAVE_SOCKETS */ - -/* This appears on 3.0, presumably as part of what SunSoft call X2. */ -#undef NO_X_DESTROY_DATABASE - -#ifdef __GNUC__ /* Currently we use -lcposix only with gcc */ -#define POSIX_SIGNALS - -/* We don't need the definition from usg5-3.h with POSIX_SIGNALS. */ -#undef sigsetmask -#undef HAVE_SYSV_SIGPAUSE -#endif - -/* People say that using -traditional causes lossage with `const', - so we might as well try getting rid of -traditional. */ -#undef C_SWITCH_SYSTEM - -/* We indirectly #include s/usg5-3.h, which says to use libX11_s and - libc_s. Martin Tomes <mt00@controls.eurotherm.co.uk> says that ISC - has no libX11_s, and that linking with libc_s causes sbrk not to work. */ -#undef LIB_X11_LIB -#undef LIBX11_SYSTEM -#define LIBX11_SYSTEM -lpt -lnls -lnsl_s - -/* TIOCGWINSZ isn't broken; you just have to know where to find it. */ -#undef BROKEN_TIOCGWINSZ -#define NEED_SIOCTL - -/* We need either _XOPEN_SOURCE or _POSIX_SOURCE to import the posix - signal symbols; might as well use _XOPEN_SOURCE. Defining _SYSV3 - ensures that we don't lose the traditional symbols as a side effect - from this or __STDC__ being defined. It can't hurt to Define - _XOPEN_SOURCE=500, the latest and greatest value as of this writing. */ -#define C_SWITCH_SYSTEM -D_XOPEN_SOURCE=500 -D_SYSV3 - -#ifdef __GNUC__ /* Currently we use -lcposix only with gcc */ -/* This works around a bug in ISC 4.0 and 3.0; it fails - to clear the "POSIX process" flag on an exec. - It won't be needed for 4.1. */ -#define EXTRA_INITIALIZE __setostype (0) -#endif - -/* arch-tag: c1aca3f2-813d-4c1c-ad64-ca6c20ec9bfb - (do not change this comment) */ diff --git a/src/s/isc4-0.h b/src/s/isc4-0.h deleted file mode 100644 index d180b5d182..0000000000 --- a/src/s/isc4-0.h +++ /dev/null @@ -1,33 +0,0 @@ -#include "isc3-0.h" - -#undef LIBS_SYSTEM -#define LIBS_SYSTEM -linet -lcposix - -#define ISC4_0 - -/* fmcphers@csugrad.cs.vt.edu reported this was necessary. - He used GCC. I don't know what is needed with other compilers. */ -#ifdef __GNUC__ -#undef LIBX11_SYSTEM -#define LIBX11_SYSTEM -lpt -lnls -lnsl_s -lcposix -lc -#endif - -/* Tobias Herbert <herbert@clipper.ikp.physik.th-darmstadt.de> - says this is needed. */ - -#ifndef POSIX_SIGNALS -#ifndef sigblock -#ifndef SIG_BLOCK -#define SIG_BLOCK 0 -#endif -#define sigblock(sig) \ - (sigprocmask_set = SIGEMPTYMASK | (sig), \ - sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL)) -#define sigunblock(sig) \ - (sigprocmask_set = SIGFULLMASK & ~(sig), \ - sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL)) -#endif -#endif /* not POSIX_SIGNALS */ - -/* arch-tag: 1278f86f-17f2-462d-88c9-85e4b5faa5c3 - (do not change this comment) */ diff --git a/src/s/isc4-1.h b/src/s/isc4-1.h deleted file mode 100644 index c37537e629..0000000000 --- a/src/s/isc4-1.h +++ /dev/null @@ -1,35 +0,0 @@ -#include "isc3-0.h" - -/* ISC 4.1 has renamed __setostype, but also has fixed the bug - for which we needed to call it; so just do nothing. uddeborg@carmen.se. */ -#undef EXTRA_INITIALIZE - -#define ISC4_1 - -#undef LIBS_SYSTEM -#define LIBS_SYSTEM -linet - -/* uddeborg@carmen.se recommends the rest of this file. */ - -/* A special startup file is used when compiling with Posix. */ -#define START_FILES pre-crt0.o /lib/crtp1.o - -/* -lPW is only needed if not using Gcc. */ -#undef LIB_STANDARD -#if defined (__GNUC__) -# define LIB_STANDARD -lcposix -lc /lib/crtn.o -#else /* !__GNUC__ */ -# define LIB_STANDARD -lPW -lcposix -lc /lib/crtn.o -#endif /* !__GNUC__ */ - -/* We have Posix termios. */ -#define HAVE_TERMIOS -/* According to template.h HAVE_TERMIO and HAVE_TERMIOS shouldn't be */ -/* defined at the same time. */ -#undef HAVE_TERMIO - -/* ISC 4.1 has sys/wait.h but it does not work right. */ -#undef HAVE_SYS_WAIT_H - -/* arch-tag: ec5c77d9-a330-4d93-8117-d2b374531c67 - (do not change this comment) */ diff --git a/src/s/newsos5.h b/src/s/newsos5.h deleted file mode 100644 index 9e149bc5ed..0000000000 --- a/src/s/newsos5.h +++ /dev/null @@ -1,53 +0,0 @@ -/* Definitions file for GNU Emacs running on Sony's NEWS-OS 5.0.2 - Copyright (C) 1992, 1994, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* Use the SysVr4 file for at least base configuration. */ - -#include "usg5-4.h" - -#define NEWSOS5 - -/* These will be defined by "m-mips.h". */ -#undef START_FILES -#undef LIB_STANDARD - -#undef LIBS_SYSTEM -#define LIBS_SYSTEM -lsocket -lnsl -lgen - -/* Disable use of "unexelf.c" and shared libraries, because - "unexelf.c" doesn't work correctly on NEWS-OS. "unexmips.c" does - work correctly if the program is linked statically without ELF. */ -#undef UNEXEC -#undef USG_SHARED_LIBRARIES - -/* Use `ld' directly rather than ordinary link, because ordinary link - can't produce a non-ELF executable. */ -#undef ORDINARY_LINK -#define LINKER /usr/lib/cmplrs/cc/ld -#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o -#define LIB_STANDARD -lc /usr/ccs/lib/crtn.o /usr/ccs/lib/values-Xt.o - -#ifndef HAVE_SOCKETS -#define HAVE_SOCKETS -#endif - -/* arch-tag: 2bb78fcd-fbc4-46dd-a14b-e4a9be957fe0 - (do not change this comment) */ diff --git a/src/s/newsos6.h b/src/s/newsos6.h deleted file mode 100644 index ca3dbe706d..0000000000 --- a/src/s/newsos6.h +++ /dev/null @@ -1,9 +0,0 @@ -/* Definitions file for GNU Emacs running on Sony's NEWS-OS 6.x */ - -#include "usg5-4-2.h" - -#define NEWSOS6 -#define HAVE_TEXT_START - -/* arch-tag: a0db9cb0-43bb-4f9e-85fa-384e30f02d74 - (do not change this comment) */ diff --git a/src/s/osf1.h b/src/s/osf1.h deleted file mode 100644 index 7e55ce4fb6..0000000000 --- a/src/s/osf1.h +++ /dev/null @@ -1,99 +0,0 @@ -/* Definitions file for GNU Emacs running on osf1. - Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#include "bsd4-3.h" - -/* Identify OSF1 for the m- files. */ - -#define OSF1 - -#define C_SWITCH_SYSTEM -D_BSD -#define LIBS_SYSTEM -lbsd - -#define GETPGRP_NO_ARG - -#define SYSV_SYSTEM_DIR - -/* If your system uses COFF (Common Object File Format) then define the - preprocessor symbol "COFF". */ - -#define COFF - -/* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option - says where to find X windows at run time. We convert it to a -rpath option - which is what OSF1 uses. */ -#define LD_SWITCH_SYSTEM `echo LD_SWITCH_X_SITE_AUX | sed -e 's/-R/-Wl,-rpath,/'` - -#define HAVE_TERMIOS - -#ifndef __GNUC__ -/* Optimize, inaccurate debugging. */ -#define C_DEBUG_SWITCH -g3 -#endif - -#ifndef NOT_C_CODE -#ifndef OSF5 /* fixed in 5.0 */ -/* Hack alert! For reasons unknown to mankind the string.h file insists - on defining bcopy etc. as taking char pointers as arguments. With - Emacs this produces an endless amount of warning which are harmless, - but tends to flood the real errors. This hack works around this problem - by not prototyping. */ -#define bcopy string_h_bcopy -#define bzero string_h_bzero -#define bcmp string_h_bcmp -#include <string.h> -#undef bcopy -#undef bzero -#undef bcmp -#endif -#endif - -#define ORDINARY_LINK - -/* Some systems seem to have this, others don't. */ -#ifdef HAVE_LIBDNET -#define LIBS_MACHINE -ldnet -#else -#define LIBS_MACHINE -ldnet_stub -#endif - -#define LIBS_DEBUG -#define START_FILES pre-crt0.o - -#define PTY_ITERATION for (i = 0; i < 1; i++) /* ick */ -#define PTY_NAME_SPRINTF /* none */ -#define PTY_TTY_NAME_SPRINTF /* none */ -#define PTY_OPEN \ - do \ - { \ - int dummy; \ - SIGMASKTYPE mask; \ - mask = sigblock (sigmask (SIGCHLD)); \ - if (-1 == openpty (&fd, &dummy, pty_name, 0, 0)) \ - fd = -1; \ - sigsetmask (mask); \ - emacs_close (dummy); \ - } \ - while (0) - -/* arch-tag: 65eaea67-fcc3-4de7-8574-d46beb82d4ed - (do not change this comment) */ diff --git a/src/s/osf5-0.h b/src/s/osf5-0.h deleted file mode 100644 index 4f22f6d641..0000000000 --- a/src/s/osf5-0.h +++ /dev/null @@ -1,25 +0,0 @@ -#define OSF5 -#include "osf1.h" - -/* It's enough to define _OSF_SOURCE instead of _BSD. */ - -#undef C_SWITCH_SYSTEM -#define C_SWITCH_SYSTEM -D_OSF_SOURCE - -#ifndef NSIG /* _OSF_SOURCE seems to get us this */ -#define NSIG __sys_nsig -#endif - -/* We have missing/inconsistent prototypes on 5.0, at least. */ -#define INHIBIT_X11R6_XIM - -#define USE_MMAP_FOR_BUFFERS 1 - -#define TERMINFO -#define LIBS_TERMCAP -lcurses - -#define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS - -/* arch-tag: 89580064-dd8c-4533-a47c-0f92d8090945 - (do not change this comment) */ diff --git a/src/s/riscix1-1.h b/src/s/riscix1-1.h deleted file mode 100644 index cccbbd3b2c..0000000000 --- a/src/s/riscix1-1.h +++ /dev/null @@ -1,9 +0,0 @@ -/* Definitions file for GNU Emacs running on RISCiX 1.1 (bsd 4.3) */ - -#define RISCiX_1_1 1 -#define RISCiX 11 -#define CRT0_O /lib/crt0.o -#include "bsd4-3.h" - -/* arch-tag: 382df034-9843-4a82-8a3a-2e50a4dd532c - (do not change this comment) */ diff --git a/src/s/riscix12.h b/src/s/riscix12.h deleted file mode 100644 index cc81c7da1c..0000000000 --- a/src/s/riscix12.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Definitions file for GNU Emacs running on RISCiX 1.2 (bsd 4.3) - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, - 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#define RISCiX_1_2 1 -#define RISCiX 12 -#define CRT0_O /usr/lib/crt0.o -#include "bsd4-3.h" - -/* arch-tag: f6b21e0a-f676-418a-9c8a-10fa8cd9dba7 - (do not change this comment) */ diff --git a/src/s/sco4.h b/src/s/sco4.h deleted file mode 100644 index d16bcbead4..0000000000 --- a/src/s/sco4.h +++ /dev/null @@ -1,145 +0,0 @@ -/* System description file for SCO 3.2v4. - Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* Contributed by Ian Lance Taylor, ian@cygnus.com. */ - -/* SCO is sort of like SVR3. */ -#include "usg5-3.h" -#define SCO_R4 - -#if 0 /* Turned off rather than make the Lisp code check for this. -- rms. - I am assuming that (at least most of) the tests for usg-unix-v - do the right thing for sco3.2v4 also. Things that *might* be wrong - as a result of turning off these lines include the values of - ange-ftp-remote-shell-file-name (now remsh) - dired-chown-program (now just chown) - lpr-command (now lp) - nntp-buggy-select (now t) - rmail-spool-directory (now /usr/mail?) - and the actions of the function print-region-1. */ - -/* SYSTEM_TYPE should indicate the kind of system you are using. */ -#undef SYSTEM_TYPE -#define SYSTEM_TYPE "SCO 3.2v4" -#endif - -/* SCO supports job control. */ -#undef NOMULTIPLEJOBS - -/* SCO has termios. */ -#define HAVE_TERMIOS - -/* SCO has ptys with unusual names. */ -#define HAVE_PTYS - -#define PTY_ITERATION \ - for (i = 0; ; i++) -#define PTY_NAME_SPRINTF \ - sprintf (pty_name, "/dev/ptyp%d", i); -#define PTY_TTY_NAME_SPRINTF \ - sprintf (pty_name, "/dev/ttyp%d", i); - -/* Sockets are an option on SCO. If you have X, you have them. - They also exist if you have TCP, but we don't know how to test - for that. */ -#ifdef HAVE_X_WINDOWS -#define HAVE_SOCKETS -#endif - -/* Must use 'cc' to link when build with motif toolkit. */ -#ifndef __GNUC__ -#define LINKER cc -#endif - -/* This is safe since we already assumed HAVE_SOCKET - if using X windows. */ -#undef LIBX11_SYSTEM -#define LIBX11_SYSTEM -lpt -lnls -lnsl_s -lc_s -lsocket - -/* Motif needs -lintl on some (maybe all) ofthese systems. */ -#ifdef HAVE_LIBINTL -#define LIB_MOTIF -lXm -lintl -#endif - -#ifdef HAVE_INET_SOCKETS /* This comes from autoconf. */ -#define HAVE_SOCKETS -#endif - -#ifdef HAVE_SOCKETS -#define LIBS_SYSTEM -lsocket -lPW - -/* SCO has gettimeofday in socket library */ -/* Autoconf should determine this, but for now, - play safe to avoid error rather than deleting this - and risking the wrong result. */ -#ifndef HAVE_GETTIMEOFDAY -#define HAVE_GETTIMEOFDAY -#endif -#endif - -/* This enables configure to tell that we have alloca. */ -#ifndef LIBS_SYSTEM -#define LIBS_SYSTEM -lPW -#endif - -/* configure can't get this right linking fails unless -lsocket is used. */ -#undef HAVE_XSCREENNUMBEROFSCREEN -#define HAVE_XSCREENNUMBEROFSCREEN - -/* We don't have -loldX, and we don't need it. */ -#define LIB_XMENU_LIB - -/* SCO does have TIOCGWINSZ. */ -#undef BROKEN_TIOCGWINSZ -#define NEED_PTEM_H - -/* We need to link with crt1.o and crtn.o. */ -#define START_FILES pre-crt0.o /lib/crt1.o -#define LIB_STANDARD -lc /lib/crtn.o - -/* Send signals to subprocesses by "typing" signal chars at them. */ -#define SIGNALS_VIA_CHARACTERS - -/* Specify program for etc/fakemail to run. Define SMAIL if you are - using smail, don't for MMDF. */ - -#ifdef SMAIL -#define MAIL_PROGRAM_NAME "/bin/smail -q0" -#else -#define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail" -#endif - -/* Tell process_send_signal to use VSUSP instead of VSWTCH. */ -#define PREFER_VSUSP - -/* wjs@wang.com (William Smith) says this is needed on 3.2.4.2. */ -#define POSIX_SIGNALS - -/* wjs@wiis.wang.com says SCO 3.2 v4.2 "has sockets", - but only for network connections. - It doesn't have the kind of sockets that emacsclient.c - and emacsserver.c would use. */ -#define NO_SOCKETS_IN_FILE_SYSTEM - -#define NARROWPROTO 1 - -/* arch-tag: 4dd6fe94-bcb7-4be0-942a-ff4bc3cd914e - (do not change this comment) */ diff --git a/src/s/sco5.h b/src/s/sco5.h deleted file mode 100644 index 1f56a99801..0000000000 --- a/src/s/sco5.h +++ /dev/null @@ -1,175 +0,0 @@ -/* System description file for SCO 3.2v5. - Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* Contributed by Mark Diekhans <markd@grizzly.com>. */ - -/* SCO is sort of like SVR3. */ -#include "usg5-3.h" -#define SCO_R5 - -#if 0 /* Turned off rather than make the Lisp code check for this. -- rms. - I am assuming that (at least most of) the tests for usg-unix-v - do the right thing for sco3.2v4 also. Things that *might* be wrong - as a result of turning off these lines include the values of - ange-ftp-remote-shell-file-name (now remsh) - dired-chown-program (now just chown) - lpr-command (now lp) - nntp-buggy-select (now t) - rmail-spool-directory (now /usr/mail?) - and the actions of the function print-region-1. */ - -/* SYSTEM_TYPE should indicate the kind of system you are using. */ -#undef SYSTEM_TYPE -#define SYSTEM_TYPE "SCO 3.2v4" -#endif - -/* SCO supports job control. */ -#undef NOMULTIPLEJOBS - -/* SCO has termios. */ -#define HAVE_TERMIOS - -/* SCO has ptys with unusual names. */ -#define HAVE_PTYS - -#define PTY_ITERATION \ - for (i = 0; ; i++) -#define PTY_NAME_SPRINTF \ - sprintf (pty_name, "/dev/ptyp%d", i); -#define PTY_TTY_NAME_SPRINTF \ - sprintf (pty_name, "/dev/ttyp%d", i); - -/* Sockets are an option on SCO. If you have X, you have them. - They also exist if you have TCP, but we don't know how to test - for that. */ -#ifdef HAVE_X_WINDOWS -#define HAVE_SOCKETS -#endif - -#ifndef __GNUC__ -#define LINKER ld -#endif - -/* This is safe since we already assumed HAVE_SOCKET - if using X windows. */ -#undef LIBX11_SYSTEM -#define LIBX11_SYSTEM_COMMON -lpt -lnls -lnsl -lc -lsocket -#ifdef MOTIF -# define LIBX11_SYSTEM -lgen LIBX11_SYSTEM_COMMON -#else /* ndef MOTIF */ -# define LIBX11_SYSTEM LIBX11_SYSTEM_COMMON -#endif /* ndef MOTIF */ - -#undef LIB_X11_LIB -#define LIB_X11_LIB -lX11 - -#ifdef HAVE_INET_SOCKETS /* This comes from autoconf. */ -#define HAVE_SOCKETS -#endif - -#ifdef HAVE_SOCKETS -#define LIBS_SYSTEM -lsocket -lPW -#endif - -#ifndef HAVE_GETTIMEOFDAY -#define HAVE_GETTIMEOFDAY -#endif - -/* This enables configure to tell that we have alloca. */ -#ifndef LIBS_SYSTEM -#define LIBS_SYSTEM -lPW -#endif - -/* configure can't get this right linking fails unless -lsocket is used. */ -#undef HAVE_XSCREENNUMBEROFSCREEN -#define HAVE_XSCREENNUMBEROFSCREEN - -/* We don't have -loldX, and we don't need it. */ -#define LIB_XMENU_LIB - -/* SCO does have TIOCGWINSZ. */ -#undef BROKEN_TIOCGWINSZ -#define NEED_PTEM_H - -/* We need to link with crt1.o and crtn.o. */ -#define START_FILES pre-crt0.o /lib/crt1.o -#define LIB_STANDARD -lc /lib/crtn.o - -/* Send signals to subprocesses by "typing" signal chars at them. */ -#define SIGNALS_VIA_CHARACTERS - -/* Specify program for etc/fakemail to run. Define SMAIL if you are - using smail, don't for MMDF. */ - -#ifdef SMAIL -#define MAIL_PROGRAM_NAME "/bin/smail -q0" -#else -#define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail" -#endif - -/* Tell process_send_signal to use VSUSP instead of VSWTCH. */ -#define PREFER_VSUSP - -/* SCO Unix has Posix signals, but in 3.2.5 something broken that causes - * all keyboard-quit signals to be lost after the first one. */ -#undef POSIX_SIGNALS - -#define SIGMASKTYPE long - -#ifndef NOT_C_CODE -extern SIGMASKTYPE sigprocmask_set; -#endif /* not NOT_C_CODE */ - -#define sigblock(sig) \ - (sigprocmask_set = SIGEMPTYMASK | (sig), \ - sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL)) -#define sigunblock(sig) \ - (sigprocmask_set = SIGFULLMASK & ~(sig), \ - sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL)) - -#ifndef PENDING_OUTPUT_COUNT -#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base) -#endif - -/* Use ELF and get real shared libraries */ - -#undef COFF -#define ELF - -#define UNEXEC unexelf.o - -#ifndef __GNUC__ -#define C_SWITCH_SYSTEM -belf -#define LD_SWITCH_SYSTEM -belf -#endif - -/* Don't disable static function, as SCO's header files have some.*/ -#undef static - -#undef START_FILES -#define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/values-Xt.o -#undef LIB_STANDARD -#define LIB_STANDARD -lc /usr/ccs/lib/crtn.o - -#define NARROWPROTO 1 - -/* arch-tag: 930541b5-52d9-4cbe-b73c-f4c72091f5df - (do not change this comment) */ diff --git a/src/s/sunos4-0.h b/src/s/sunos4-0.h deleted file mode 100644 index bf77812f32..0000000000 --- a/src/s/sunos4-0.h +++ /dev/null @@ -1,75 +0,0 @@ -/* Definitions file for GNU Emacs running on sunos 4.0. - - Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -#include "bsd4-2.h" - -#ifndef SUNOS4 -#define SUNOS4 -#endif - -#if 0 /* This may have been needed for an earlier version of Sun OS 4. - It seems to cause warnings in 4.0.3 and 4.1. */ -#define O_NDELAY FNDELAY /* Non-blocking I/O (4.2 style) */ -#endif - -/* We use the Sun syntax -Bstatic unconditionally, because even when we - use GCC, these are passed through to the linker, not handled by GCC - directly. */ -#define LD_SWITCH_SYSTEM -Bstatic - -/* We use this for linking temacs, but not for other programs - or for tests in configure. */ -#define LD_SWITCH_SYSTEM_TEMACS -e __start - -/* In SunOS 4.1, a static function called by tzsetwall reportedly - clears the byte just past an eight byte region it mallocs, corrupting - GNU malloc's memory pool. But Sun's malloc doesn't seem to mind. */ - -#define SYSTEM_MALLOC - -/* SunOS 4.x cc <stdlib.h> declares abort and free to return int. */ - -#ifndef __STDC__ -#define ABORT_RETURN_TYPE int -#define FREE_RETURN_TYPE int -#endif - -#ifdef __GNUC__ -/* We must define mkdir with this arg prototype - to match GCC's fixed stat.h. */ -#define MKDIR_PROTOTYPE \ - int mkdir (const char *dpath, unsigned short dmode) -#endif /* __GNUC__ */ - -/* Must use the system's termcap, if we use any termcap. - It does special things. */ - -#ifndef TERMINFO -#define LIBS_TERMCAP -ltermcap -#endif - -#define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS - -/* arch-tag: 362f3bfc-810d-4f6e-9b83-5a32f8f1a926 - (do not change this comment) */ diff --git a/src/s/sunos4-1.h b/src/s/sunos4-1.h deleted file mode 100644 index 2e41c55bbf..0000000000 --- a/src/s/sunos4-1.h +++ /dev/null @@ -1,36 +0,0 @@ -#include "sunos4-0.h" - -/* Cause the compilation of oldxmenu to use the right -I option. */ -#define OLDXMENU_OPTIONS CFLAGS=C_SWITCH_SYSTEM - -#if 0 /* This isn't right. Apparently some sites do have -lresolv - but don't use that. On those systems, the code below loses. - There's no way to win automatically unless someone - figures out a way of determining automatically which way is right - on any given system. */ -/* Some systems do not run the Network Information Service, but have - modified the shared C library to include resolver support without - also changing the C archive library (/usr/lib/libc.a). If we - detect the presence of libresolv.a, use -lresolv to supplement libc.a. - - We used to have #ifdef HAVE_GETHOSTNAME is to prevent configure from - setting libsrc_libs to -lresolv in lib-src/Makefile. But nowadays - configure is smarter about computing libsrc_libs, and would not - be fooled. Anyway, why not use -lresolv in lib-src? */ -/* #ifdef HAVE_GETHOSTNAME */ -#ifdef HAVE_LIBRESOLV -#define LIBS_SYSTEM -lresolv -#endif -/* #endif */ -#endif - -#if 0 /* Not necessary, since SYSTEM_MALLOC is defined in sunos4-0.h. */ -/* Tell GNU malloc to compensate for a bug in localtime. */ -#define SUNOS_LOCALTIME_BUG -#endif - -/* Define dlopen, dlclose, dlsym. */ -#define USE_DL_STUBS - -/* arch-tag: 154e2eb2-2180-4d66-90b9-7e56a22004f2 - (do not change this comment) */ diff --git a/src/s/sunos413.h b/src/s/sunos413.h deleted file mode 100644 index 9f40f2fa3a..0000000000 --- a/src/s/sunos413.h +++ /dev/null @@ -1,16 +0,0 @@ -#include "sunos4-1.h" - -/* jik@gza.com says this works now. */ -/* The bug that corrupts GNU malloc's memory pool is fixed in SunOS 4.1.3. */ - -#undef SYSTEM_MALLOC - -/* barrie@calvin.demon.co.uk says memmove is missing. */ -#ifndef SYSTEM_MALLOC -#define MEMMOVE_MISSING -#endif - -#define USE_MMAP_FOR_BUFFERS 1 - -/* arch-tag: ebd184b0-9084-4306-8e71-c0437330e1e1 - (do not change this comment) */ diff --git a/src/s/sunos4shr.h b/src/s/sunos4shr.h deleted file mode 100644 index 5ebbae3a0a..0000000000 --- a/src/s/sunos4shr.h +++ /dev/null @@ -1,84 +0,0 @@ -/* -Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, 2006, - 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* This file permits building Emacs with a shared libc on Sunos 4. - To make this work, you must 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 */ - - -#include "sunos4-1.h" - -/* 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. */ - -/* Misleading! Actually gets loaded after crt0.o */ -#define START_FILES pre-crt0.o - -/* - * Kludge! can't get at symbol "start" in std crt0.o - * Who the #$%&* decided to remove the __ characters! - * Someone needs to fix this in sysdep.c with an #ifdef BROKEN_START in - * sysdep.c. We do not use this address so any value should do really. Still - * may need it in the future? - */ -#define BROKEN_START -#define TEXT_START 0x2020 - -#define UNEXEC unexsunos4.o -#define RUN_TIME_REMAP -#define ORDINARY_LINK -#define SUNOS4_SHARED_LIBRARIES - -#undef LD_SWITCH_SYSTEM -#undef LD_SWITCH_SYSTEM_TEMACS - -#undef SYSTEM_MALLOC -#ifndef GNU_MALLOC -#define GNU_MALLOC -#endif -#ifndef REL_ALLOC -#define REL_ALLOC -#endif - -/* khera@cs.duke.edu says this is needed. */ -#define memmove(to, from, size) bcopy (from, to, size) - -#undef USE_DL_STUBS - -#ifndef HAVE_X11R6 -/* With X11R5 it was reported that linking -lXmu dynamically - did not work. With X11R6, it does work; and since normally - only the dynamic libraries are available, we should use them. */ -#ifdef __GNUC__ -#define LIBXMU -Xlinker -Bstatic -lXmu -Xlinker -Bdynamic -#else -#define LIBXMU -Bstatic -lXmu -Bdynamic -#endif - -#endif /* not HAVE_X11R6 */ - -/* arch-tag: cb54321a-ed45-4c17-a23e-1c157758da78 - (do not change this comment) */ diff --git a/src/s/umax.h b/src/s/umax.h deleted file mode 100644 index aa73faa491..0000000000 --- a/src/s/umax.h +++ /dev/null @@ -1,170 +0,0 @@ -/* Definitions file for GNU Emacs running on UMAX 4.2 - Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* - * Define symbols to identify the version of Unix this is. - * Define all the symbols that apply correctly. - */ - -/* #define UNIPLUS */ -/* #define USG5 */ -/* #define USG */ -/* #define BSD4_1 */ -#define BSD4_2 -/* #define BSD4_3 */ -#define BSD_SYSTEM -#define UMAX4_2 -#define UMAX -/* #define VMS */ - -/* 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 */ - -/* Emacs can read input using SIGIO and buffering characters itself, - or using CBREAK mode and making C-g cause SIGINT. - The choice is controlled by the variable interrupt_input. - Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) - - SIGIO can be used only on systems that implement it (4.2 and 4.3). - CBREAK mode has two disadvantages - 1) At least in 4.2, it is impossible to handle the Meta key properly. - I hear that in system V this problem does not exist. - 2) Control-G causes output to be discarded. - I do not know whether this can be fixed in system V. - - Another method of doing input is planned but not implemented. - It would have Emacs fork off a separate process - to read the input and send it to the true Emacs process - through a pipe. -*/ - -#define INTERRUPT_INPUT - -/* Letter to use in finding device name of first pty, - if system supports pty's. 'a' means it is /dev/ptya0 */ - -#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" - -/* Here, on a separate page, add any special hacks needed - to make Emacs work on this system. For example, - you might define certain system call names that don't - exist on your system, or that do different things on - your system and must be used only through an encapsulation - (Which you should place, by convention, in sysdep.c). */ - -/* Specify alignment requirement for start of text and data sections - in the executable file. */ - -#define SECTION_ALIGNMENT pagemask - - -#define SEGMENT_MASK (64 * 1024 - 1) - - -/* crt0.c needs this for compilation because it uses asm. */ - -#define C_SWITCH_ASM -q nodirect_code - -/* Encore machines with APC processor boards align sections on 4M - boundaries, so it is not easy to remap the start of the text segment - in the unexec() routine. For them you need the following two lines. - For DPC processors you can enable these or not, as you wish, but - you will get better performance without them. */ - -/* #define NO_REMAP - #define TEXT_START 0 -*/ - -/* Process groups work in the traditional BSD manner. */ - -#define BSD_PGRPS - -/* arch-tag: 2860edda-ce9e-4cfa-943d-3a06c7045854 - (do not change this comment) */ diff --git a/src/s/unipl5-2.h b/src/s/unipl5-2.h deleted file mode 100644 index 5730fa6528..0000000000 --- a/src/s/unipl5-2.h +++ /dev/null @@ -1,160 +0,0 @@ -/* Definitions file for GNU Emacs running on UniSoft's UniPlus 5.2 - Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* - * 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 UNIPLUS - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -#define SYSTEM_TYPE "unisoft-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 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 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. It is supported under UniPlus - 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 */ - -/* Uniplus 5.2 supports long names in C */ - -/* #define SHORTNAMES */ - -/* 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 - -/* Compiler bug bites when default ADDR_CORRECT is used. */ - -#define ADDR_CORRECT(x) (x) - -/* Special library needed for linking for Uniplus */ - -#define LIBS_SYSTEM -lnet - -/* A system-specific loader switch is needed. */ - -#define LD_SWITCH_SYSTEM -N -L/lib/libg /usr/lib/unshared.ld - -/* arch-tag: d3f952a9-fef5-45d5-9c1e-c1c32bfef86c - (do not change this comment) */ diff --git a/src/s/xenix.h b/src/s/xenix.h deleted file mode 100644 index c5b3cf225e..0000000000 --- a/src/s/xenix.h +++ /dev/null @@ -1,212 +0,0 @@ -/* Definitions file for GNU Emacs running SCO Xenix 386 Release 2.2 - Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* - * Define symbols to identify the version of Unix this is. - * Define all the symbols that apply correctly. - */ - -/* #define UNIPLUS */ -#define XENIX -#define USG5 -#define USG -/* #define HPUX */ -/* #define UMAX */ -/* #define BSD4_1 */ -/* #define BSD4_2 */ -/* #define BSD4_3 */ -/* #define BSD_SYSTEM */ -/* #define VMS */ - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -#define SYSTEM_TYPE "xenix" - -/* 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 - -/* Emacs can read input using SIGIO and buffering characters itself, - or using CBREAK mode and making C-g cause SIGINT. - The choice is controlled by the variable interrupt_input. - Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) - - SIGIO can be used only on systems that implement it (4.2 and 4.3). - CBREAK mode has two disadvantages: - 1) At least in 4.2, it is impossible to handle the Meta key properly. - I hear that in system V this problem does not exist. - 2) Control-G causes output to be discarded. - I do not know whether this can be fixed in system V. - - Another method of doing input is planned but not implemented. - It would have Emacs fork off a separate process - to read the input and send it to the true Emacs process - through a pipe. -*/ - -/* #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 */ - -/* Xenix requires completely different unexec code - which lives in a separate file. Specify the file name. */ - -#define UNEXEC unexenix.o - -/* 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. */ - -/* The way this is implemented requires long filenames... */ -/* #define CLASH_DETECTION */ - -/* Define SHORTNAMES if the C compiler can distinguish only - short names. It means that the stuff in ../shortnames - must be run to convert the long names to short ones. */ - -/* #define SHORTNAMES */ - -/* Compensate for one incompatibility between Xenix and V.0. */ -#define n_zeroes n_name[0] - -/* The file containing the kernel's symbol table is called /xenix. */ - -#define KERNEL_FILE "/xenix" - -/* 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 - -/* 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 - -/* Switches for linking temacs. */ - -#define LD_SWITCH_SYSTEM -i - -/* Xenix implements sysV style IPC. */ - -#define HAVE_SYSVIPC - -/* Use terminfo instead of termcap. */ - -/* Tell Emacs to use Terminfo. */ - -#define TERMINFO - -/* Tell Xenix curses to BE Terminfo. */ -#define M_TERMINFO - -/* Control program name for etc/fakemail to run. */ - -#ifdef SMAIL -#define MAIL_PROGRAM_NAME "/usr/bin/smail -q0" -#else -#define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail" -#endif - -/* Some variants have TIOCGETC, but the structures to go with it - are not declared. */ - -#define BROKEN_TIOCGETC - -/* arch-tag: 71d3985d-4e53-4572-8276-5dce26bbd076 - (do not change this comment) */ diff --git a/src/sysdep.c b/src/sysdep.c index d1f378a3f8..d421c55f2c 100644 --- a/src/sysdep.c +++ b/src/sysdep.c @@ -33,12 +33,6 @@ Boston, MA 02110-1301, USA. */ /* Including stdlib.h isn't necessarily enough to get srandom declared, e.g. without __USE_XOPEN_EXTENDED with glibc 2. */ #ifdef HAVE_RANDOM -#if 0 /* It turns out that defining _OSF_SOURCE in osf5-0.h gets - random prototyped as returning `int'. It looks to me as - though the best way to DTRT is to prefer the rand48 functions - (per libc.info). -- fx */ -extern long int random P_ ((void)); -#endif #if 0 /* Don't prototype srandom; it takes an unsigned argument on some systems, and an unsigned long on others, like FreeBSD 4.1. */ diff --git a/src/unexapollo.c b/src/unexapollo.c deleted file mode 100644 index 4facf823e1..0000000000 --- a/src/unexapollo.c +++ /dev/null @@ -1,301 +0,0 @@ -/* unexapollo.c -- COFF File UNEXEC for GNU Emacs on Apollo SR10.x - Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* Written by Leonard N. Zubkoff. */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif - -#include <fcntl.h> - - -#include <a.out.h> -#include <sys/file.h> -#include <apollo/base.h> -#include <apollo/ios.h> -#include <apollo/type_uids.h> -#include <apollo/dst.h> - - -#define DST_RECORD_HDR_SIZE 2 -#define LONG_ALIGN(X) (((X)+3)&(~3)) - - -void -unexec (target_file_name, source_file_name) - char *target_file_name, *source_file_name; -{ - struct filehdr file_header; - struct aouthdr domain_header; - struct scnhdr *section, *sections, *sections_limit; - struct scnhdr *first_data_section, *last_data_section; - struct scnhdr *rwdi_section, *blocks_section; - struct reloc reloc_entry; - unsigned long data_size, old_data_section_size, source_file_offset_past_rwdi; - unsigned char buffer[4096]; - long delta_before_rwdi, delta_after_rwdi, byte_count; - long first_changed_vaddr, old_rwdi_vaddr, i; - ios_$id_t target_file, source_file; - status_$t status; - /* Open the Source File. */ - if ((source_file = open (source_file_name, O_RDONLY)) < 0) - error ("cannot open source file for input"); - /* Read the File Header. */ - if (read (source_file, &file_header, sizeof (file_header)) != sizeof (file_header)) - error ("cannot read file header"); - - /* Read the Domain Header. */ - if (read (source_file, &domain_header, sizeof (domain_header)) - != sizeof (domain_header)) - error ("cannot read domain header"); - /* Read the Section Headers. */ - sections = - (struct scnhdr *) malloc (file_header.f_nscns*sizeof (struct scnhdr)); - if (sections == (struct scnhdr *) 0) - error ("cannot allocate section header storage"); - sections_limit = sections + file_header.f_nscns; - if (read (source_file, sections, file_header.f_nscns*sizeof (struct scnhdr)) - != file_header.f_nscns*sizeof (struct scnhdr)) - error ("cannot read section headers"); - /* Compute the new Size of the Data Section. */ - data_size = sbrk (0) - domain_header.data_start; - delta_before_rwdi = delta_after_rwdi = data_size - domain_header.dsize; - old_rwdi_vaddr = 0; - /* Find and Deallocate the .rwdi Section Information. */ - for (rwdi_section = sections; rwdi_section != sections_limit; rwdi_section++) - if (strcmp (rwdi_section->s_name, ".rwdi") == 0) - { - /* If there are relocation entries, we cannot "unrelocate" them. */ - if (rwdi_section->s_nreloc > 0) - error (".rwdi section needs relocation - cannot dump Emacs"); - delta_after_rwdi = delta_before_rwdi - rwdi_section->s_size; - old_rwdi_vaddr = rwdi_section->s_vaddr; - rwdi_section->s_paddr = 0; - rwdi_section->s_vaddr = 0; - rwdi_section->s_scnptr = 0; - rwdi_section->s_size = 0; - source_file_offset_past_rwdi = (rwdi_section+1)->s_scnptr; - break; - } - /* Skip over the Text Section Headers. */ - for (section = sections; (section->s_flags & STYP_TEXT) != 0; section++) ; - /* - Find the First and Last Data Sections and Fixup - Section Header Relocation Pointers. - */ - first_data_section = last_data_section = (struct scnhdr *) 0; - for (; section != sections_limit; section++) - { - if ((section->s_flags & STYP_DATA) != 0) - { - if (first_data_section == (struct scnhdr *) 0) - first_data_section = section; - last_data_section = section; - } - if (section->s_relptr != 0) - section->s_relptr += delta_after_rwdi; - } - /* Increment the Size of the Last Data Section. */ - old_data_section_size = last_data_section->s_size; - last_data_section->s_size += delta_before_rwdi; - - /* Update the File Header and Domain Header. */ - file_header.f_symptr += delta_after_rwdi; - domain_header.dsize = data_size; - domain_header.bsize = 0; - /* Skip over subsequent Bss Section Headers. */ - for (section = last_data_section+1; - (section->s_flags & STYP_BSS) != 0; section++) ; - /* Update the remaining Section Headers. */ - blocks_section = (struct scnhdr *) 0; - first_changed_vaddr = 0; - for (; section != sections_limit; section++) - { - long delta = (section < rwdi_section ? delta_before_rwdi : delta_after_rwdi); - if (section->s_paddr != 0) - section->s_paddr += delta; - if (section->s_vaddr != 0) - { - if (first_changed_vaddr == 0) - first_changed_vaddr = section->s_vaddr; - section->s_vaddr += delta; - } - if (section->s_scnptr != 0) - section->s_scnptr += delta; - if (strcmp (section->s_name, ".blocks") == 0) - blocks_section = section; - else if (strcmp (section->s_name, ".sri") == 0 && - domain_header.o_sri != 0) - domain_header.o_sri += delta; - else if (strcmp (section->s_name, ".inlib") == 0 && - domain_header.o_inlib != 0) - domain_header.o_inlib += delta; - } - /* Open the Target File. */ - ios_$create (target_file_name, strlen (target_file_name), coff_$uid, - ios_$recreate_mode, ios_$write_opt, &target_file, &status); - if (status.all != status_$ok) - error ("cannot open target file for output"); - /* Write the File Header. */ - if (write (target_file, &file_header, sizeof (file_header)) != sizeof (file_header)) - error ("cannot write file header"); - /* Write the Domain Header. */ - if (write (target_file, &domain_header, sizeof (domain_header)) - != sizeof (domain_header)) - error ("cannot write domain header"); - /* Write the Section Headers. */ - if (write (target_file, sections, file_header.f_nscns*sizeof (struct scnhdr)) - != file_header.f_nscns*sizeof (struct scnhdr)) - error ("cannot write section headers"); - /* Copy the Allocated Sections. */ - for (section = sections; section != first_data_section; section++) - if (section->s_scnptr != 0) - CopyData (target_file, source_file, LONG_ALIGN(section->s_size)); - /* Write the Expanded Data Segment. */ - if (write (target_file, first_data_section->s_vaddr, data_size) != data_size) - error ("cannot write new data section"); - - /* Skip over the Last Data Section and Copy until the .rwdi Section. */ - if (lseek (source_file, last_data_section->s_scnptr - +old_data_section_size, L_SET) == -1) - error ("cannot seek past data section"); - for (section = last_data_section+1; section != rwdi_section; section++) - if (section->s_scnptr != 0) - CopyData (target_file, source_file, LONG_ALIGN(section->s_size)); - /* Skip over the .rwdi Section and Copy Remainder of Source File. */ - if (lseek (source_file, source_file_offset_past_rwdi, L_SET) == -1) - error ("cannot seek past .rwdi section"); - while ((byte_count = read (source_file, buffer, sizeof (buffer))) > 0) - if (write (target_file, buffer, byte_count) != byte_count) - error ("cannot write data"); - /* Unrelocate .data references to Global Symbols. */ - for (section = first_data_section; section <= last_data_section; section++) - for (i = 0; i < section->s_nreloc; i++) - { - if (lseek (source_file, section->s_relptr - +i*sizeof (struct reloc)-delta_after_rwdi, L_SET) == -1) - error ("cannot seek to relocation info"); - if (read (source_file, &reloc_entry, sizeof (reloc_entry)) - != sizeof (reloc_entry)) - error ("cannot read reloc entry"); - if (lseek (source_file, reloc_entry.r_vaddr-section->s_vaddr - +section->s_scnptr, L_SET) == -1) - error ("cannot seek to data element"); - if (lseek (target_file, reloc_entry.r_vaddr-section->s_vaddr - +section->s_scnptr, L_SET) == -1) - error ("cannot seek to data element"); - if (read (source_file, buffer, 4) != 4) - error ("cannot read data element"); - if (write (target_file, buffer, 4) != 4) - error ("cannot write data element"); - } - - /* Correct virtual addresses in .blocks section. */ - if (blocks_section != (struct scnhdr *) 0) - { - dst_rec_t dst_record; - dst_rec_comp_unit_t *comp_unit; - unsigned short number_of_sections; - unsigned long section_base; - unsigned long section_offset = 0; - /* Find section tables and update section base addresses. */ - while (section_offset < blocks_section->s_size) - { - if (lseek (target_file, - blocks_section->s_scnptr+section_offset, L_SET) == -1) - error ("cannot seek to comp unit record"); - /* Handle pad records before the comp unit record. */ - if (read (target_file, &dst_record, DST_RECORD_HDR_SIZE) - != DST_RECORD_HDR_SIZE) - error ("cannot read dst record tag"); - if (dst_record.rec_type == dst_typ_pad) - section_offset += DST_RECORD_HDR_SIZE; - else if (dst_record.rec_type == dst_typ_comp_unit) - { - comp_unit = &dst_record.rec_data.comp_unit_; - if (read (target_file, comp_unit, sizeof (*comp_unit)) - != sizeof (*comp_unit)) - error ("cannot read comp unit record"); - if (lseek (target_file, blocks_section->s_scnptr - +section_offset -#if dst_version_major == 1 && dst_version_minor < 4 - +comp_unit->section_table -#else - +comp_unit->section_table.rel_offset -#endif - +DST_RECORD_HDR_SIZE, - L_SET) == -1) - error ("cannot seek to section table"); - if (read (target_file, &number_of_sections, sizeof (number_of_sections)) - != sizeof (number_of_sections)) - error ("cannot read section table size"); - for (i = 0; i < number_of_sections; i++) - { - if (read (target_file, §ion_base, sizeof (section_base)) - != sizeof (section_base)) - error ("cannot read section base value"); - if (section_base < first_changed_vaddr) - continue; - else if (section_base < old_rwdi_vaddr) - section_base += delta_before_rwdi; - else section_base += delta_after_rwdi; - if (lseek (target_file, -sizeof (section_base), L_INCR) == -1) - error ("cannot seek to section base value"); - if (write (target_file, §ion_base, sizeof (section_base)) - != sizeof (section_base)) - error ("cannot write section base"); - } - section_offset += comp_unit->data_size; - } - else error ("unexpected dst record type"); - } - } - - if (close (source_file) == -1) - error("cannot close source file"); - if (close (target_file) == -1) - error ("cannot close target file"); -} - - -static -CopyData (target_file, source_file, total_byte_count) - int target_file, source_file; - long total_byte_count; -{ - unsigned char buffer[4096]; - long byte_count; - while (total_byte_count > 0) - { - if (total_byte_count > sizeof (buffer)) - byte_count = sizeof (buffer); - else byte_count = total_byte_count; - if (read (source_file, buffer, byte_count) != byte_count) - error ("cannot read data"); - if (write (target_file, buffer, byte_count) != byte_count) - error ("cannot write data"); - total_byte_count -= byte_count; - } -} - -/* arch-tag: 783ebbdf-7d26-4df8-9469-17a1747dce96 - (do not change this comment) */ diff --git a/src/unexconvex.c b/src/unexconvex.c deleted file mode 100644 index 5682047d4f..0000000000 --- a/src/unexconvex.c +++ /dev/null @@ -1,605 +0,0 @@ -/* Modified version of unexec for convex machines. - Note that the GNU project considers support for the peculiarities - of the Convex operating system a peripheral activity which should - not be allowed to divert effort from development of the GNU system. - Changes in this code will be installed when Convex system - maintainers send them in, but aside from that we don't plan to - think about it, or about whether other Emacs maintenance might - break it. - - Copyright (C) 1985, 1986, 1988, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - -/* modified for C-1 arch by jthomp@convex 871103 */ -/* Corrected to support convex SOFF object file formats and thread specific - * regions. streepy@convex 890302 -*/ - -/* - * unexec.c - Convert a running program into an a.out file. - * - * Author: Spencer W. Thomas - * Computer Science Dept. - * University of Utah - * Date: Tue Mar 2 1982 - * Modified heavily since then. - * - * Synopsis: - * unexec (new_name, a_name, data_start, bss_start, entry_address) - * char *new_name, *a_name; - * unsigned data_start, bss_start, entry_address; - * - * Takes a snapshot of the program and makes an a.out format file in the - * file named by the string argument new_name. - * If a_name is non-NULL, the symbol table will be taken from the given file. - * On some machines, an existing a_name file is required. - * - * The boundaries within the a.out file may be adjusted with the data_start - * and bss_start arguments. Either or both may be given as 0 for defaults. - * - * Data_start gives the boundary between the text segment and the data - * segment of the program. The text segment can contain shared, read-only - * program code and literal data, while the data segment is always unshared - * and unprotected. Data_start gives the lowest unprotected address. - * The value you specify may be rounded down to a suitable boundary - * as required by the machine you are using. - * - * Specifying zero for data_start means the boundary between text and data - * should not be the same as when the program was loaded. - * If NO_REMAP is defined, the argument data_start is ignored and the - * segment boundaries are never changed. - * - * Bss_start indicates how much of the data segment is to be saved in the - * a.out file and restored when the program is executed. It gives the lowest - * unsaved address, and is rounded up to a page boundary. The default when 0 - * is given assumes that the entire data segment is to be stored, including - * the previous data and bss as well as any additional storage allocated with - * break (2). - * - * The new file is set up to start at entry_address. - * - * If you make improvements I'd like to get them too. - * harpo!utah-cs!thomas, thomas@Utah-20 - * - */ - -/* There are several compilation parameters affecting unexec: - -* COFF - -Define this if your system uses COFF for executables. -Otherwise we assume you use Berkeley format. - -* NO_REMAP - -Define this if you do not want to try to save Emacs's pure data areas -as part of the text segment. - -Saving them as text is good because it allows users to share more. - -However, on machines that locate the text area far from the data area, -the boundary cannot feasibly be moved. Such machines require -NO_REMAP. - -Also, remapping can cause trouble with the built-in startup routine -/lib/crt0.o, which defines `environ' as an initialized variable. -Dumping `environ' as pure does not work! So, to use remapping, -you must write a startup routine for your machine in Emacs's crt0.c. -If NO_REMAP is defined, Emacs uses the system's crt0.o. - -* SECTION_ALIGNMENT - -Some machines that use COFF executables require that each section -start on a certain boundary *in the COFF file*. Such machines should -define SECTION_ALIGNMENT to a mask of the low-order bits that must be -zero on such a boundary. This mask is used to control padding between -segments in the COFF file. - -If SECTION_ALIGNMENT is not defined, the segments are written -consecutively with no attempt at alignment. This is right for -unmodified system V. - -* SEGMENT_MASK - -Some machines require that the beginnings and ends of segments -*in core* be on certain boundaries. For most machines, a page -boundary is sufficient. That is the default. When a larger -boundary is needed, define SEGMENT_MASK to a mask of -the bits that must be zero on such a boundary. - -* A_TEXT_OFFSET(HDR) - -Some machines count the a.out header as part of the size of the text -segment (a_text); they may actually load the header into core as the -first data in the text segment. Some have additional padding between -the header and the real text of the program that is counted in a_text. - -For these machines, define A_TEXT_OFFSET(HDR) to examine the header -structure HDR and return the number of bytes to add to `a_text' -before writing it (above and beyond the number of bytes of actual -program text). HDR's standard fields are already correct, except that -this adjustment to the `a_text' field has not yet been made; -thus, the amount of offset can depend on the data in the file. - -* A_TEXT_SEEK(HDR) - -If defined, this macro specifies the number of bytes to seek into the -a.out file before starting to write the text segment.a - -* EXEC_MAGIC - -For machines using COFF, this macro, if defined, is a value stored -into the magic number field of the output file. - -* ADJUST_EXEC_HEADER - -This macro can be used to generate statements to adjust or -initialize nonstandard fields in the file header - -* ADDR_CORRECT(ADDR) - -Macro to correct an int which is the bit pattern of a pointer to a byte -into an int which is the number of a byte. - -This macro has a default definition which is usually right. -This default definition is a no-op on most machines (where a -pointer looks like an int) but not on all machines. - -*/ - -#include <config.h> -#define PERROR(file) report_error (file, new) - -#include <a.out.h> -/* Define getpagesize () if the system does not. - Note that this may depend on symbols defined in a.out.h - */ -#include "getpagesize.h" - -#include <sys/types.h> -#include <stdio.h> -#include <sys/stat.h> -#include <errno.h> - -extern char *start_of_text (); /* Start of text */ -extern char *start_of_data (); /* Start of initialized data */ - -#include <machine/filehdr.h> -#include <machine/opthdr.h> -#include <machine/scnhdr.h> -#include <machine/pte.h> - -static long block_copy_start; /* Old executable start point */ -static struct filehdr f_hdr; /* File header */ -static struct opthdr f_ohdr; /* Optional file header (a.out) */ -long bias; /* Bias to add for growth */ -#define SYMS_START block_copy_start - -static long text_scnptr; -static long data_scnptr; - -static int pagemask; -static int pagesz; - -static -report_error (file, fd) - char *file; - int fd; -{ - if (fd) - close (fd); - error ("Failure operating on %s", file); -} - -#define ERROR0(msg) report_error_1 (new, msg, 0, 0); return -1 -#define ERROR1(msg,x) report_error_1 (new, msg, x, 0); return -1 -#define ERROR2(msg,x,y) report_error_1 (new, msg, x, y); return -1 - -static -report_error_1 (fd, msg, a1, a2) -int fd; -char *msg; -int a1, a2; -{ - close (fd); - error (msg, a1, a2); -} - -/* **************************************************************** - * unexec - * - * driving logic. - */ -unexec (new_name, a_name, data_start, bss_start, entry_address) -char *new_name, *a_name; -unsigned data_start, bss_start, entry_address; -{ - int new, a_out = -1; - - if (a_name && (a_out = open (a_name, 0)) < 0) { - PERROR (a_name); - } - if ((new = creat (new_name, 0666)) < 0) { - PERROR (new_name); - } - - if (make_hdr (new, a_out, data_start, bss_start, entry_address, a_name, new_name) < 0 - || copy_text_and_data (new) < 0 - || copy_sym (new, a_out, a_name, new_name) < 0 ) { - close (new); - return -1; - } - - close (new); - if (a_out >= 0) - close (a_out); - mark_x (new_name); - return 0; -} - -/* **************************************************************** - * make_hdr - * - * Make the header in the new a.out from the header in core. - * Modify the text and data sizes. - */ - - struct scnhdr *stbl; /* Table of all scnhdr's */ - struct scnhdr *f_thdr; /* Text section header */ - struct scnhdr *f_dhdr; /* Data section header */ - struct scnhdr *f_tdhdr; /* Thread Data section header */ - struct scnhdr *f_bhdr; /* Bss section header */ - struct scnhdr *f_tbhdr; /* Thread Bss section header */ - -static int -make_hdr (new, a_out, data_start, bss_start, entry_address, a_name, new_name) - int new, a_out; - unsigned data_start, bss_start, entry_address; - char *a_name; - char *new_name; -{ - register int scns; - unsigned int bss_end; - unsigned int eo_data; /* End of initialized data in new exec file */ - int scntype; /* Section type */ - int i; /* Var for sorting by vaddr */ - struct scnhdr scntemp; /* For swapping entries in sort */ - extern char *start_of_data(); - - pagemask = (pagesz = getpagesize()) - 1; - - /* Adjust text/data boundary. */ - if (!data_start) - data_start = (unsigned) start_of_data (); - - data_start = data_start & ~pagemask; /* (Down) to page boundary. */ - - bss_end = (sbrk(0) + pagemask) & ~pagemask; - - /* Adjust data/bss boundary. */ - if (bss_start != 0) { - bss_start = (bss_start + pagemask) & ~pagemask;/* (Up) to page bdry. */ - if (bss_start > bss_end) { - ERROR1 ("unexec: Specified bss_start (%x) is past end of program", - bss_start); - } - } else - bss_start = bss_end; - - if (data_start > bss_start) { /* Can't have negative data size. */ - ERROR2 ("unexec: data_start (%x) can't be greater than bss_start (%x)", - data_start, bss_start); - } - - /* Salvage as much info from the existing file as possible */ - if (a_out < 0) { - ERROR0 ("can't build a COFF file from scratch yet"); - /*NOTREACHED*/ - } - - if (read (a_out, &f_hdr, sizeof (f_hdr)) != sizeof (f_hdr)) { - PERROR (a_name); - } - block_copy_start += sizeof (f_hdr); - if (f_hdr.h_opthdr > 0) { - if (read (a_out, &f_ohdr, sizeof (f_ohdr)) != sizeof (f_ohdr)) { - PERROR (a_name); - } - block_copy_start += sizeof (f_ohdr); - } - - /* Allocate room for scn headers */ - stbl = (struct scnhdr *)malloc( sizeof(struct scnhdr) * f_hdr.h_nscns ); - if( stbl == NULL ) { - ERROR0( "unexec: malloc of stbl failed" ); - } - - f_tdhdr = f_tbhdr = NULL; - - /* Loop through section headers, copying them in */ - for (scns = 0; scns < f_hdr.h_nscns; scns++) { - - if( read( a_out, &stbl[scns], sizeof(*stbl)) != sizeof(*stbl)) { - PERROR (a_name); - } - - scntype = stbl[scns].s_flags & S_TYPMASK; /* What type of section */ - - if( stbl[scns].s_scnptr > 0L) { - if( block_copy_start < stbl[scns].s_scnptr + stbl[scns].s_size ) - block_copy_start = stbl[scns].s_scnptr + stbl[scns].s_size; - } - - if( scntype == S_TEXT) { - f_thdr = &stbl[scns]; - } else if( scntype == S_DATA) { - f_dhdr = &stbl[scns]; -#ifdef S_TDATA - } else if( scntype == S_TDATA ) { - f_tdhdr = &stbl[scns]; - } else if( scntype == S_TBSS ) { - f_tbhdr = &stbl[scns]; -#endif /* S_TDATA (thread stuff) */ - - } else if( scntype == S_BSS) { - f_bhdr = &stbl[scns]; - } - - } - - /* We will now convert TEXT and DATA into TEXT, BSS into DATA, and leave - * all thread stuff alone. - */ - - /* Now we alter the contents of all the f_*hdr variables - to correspond to what we want to dump. */ - - f_thdr->s_vaddr = (long) start_of_text (); - f_thdr->s_size = data_start - f_thdr->s_vaddr; - f_thdr->s_scnptr = pagesz; - f_thdr->s_relptr = 0; - f_thdr->s_nrel = 0; - - eo_data = f_thdr->s_scnptr + f_thdr->s_size; - - if( f_tdhdr ) { /* Process thread data */ - - f_tdhdr->s_vaddr = data_start; - f_tdhdr->s_size += f_dhdr->s_size - (data_start - f_dhdr->s_vaddr); - f_tdhdr->s_scnptr = eo_data; - f_tdhdr->s_relptr = 0; - f_tdhdr->s_nrel = 0; - - eo_data += f_tdhdr->s_size; - - /* And now for DATA */ - - f_dhdr->s_vaddr = f_bhdr->s_vaddr; /* Take BSS start address */ - f_dhdr->s_size = bss_end - f_bhdr->s_vaddr; - f_dhdr->s_scnptr = eo_data; - f_dhdr->s_relptr = 0; - f_dhdr->s_nrel = 0; - - eo_data += f_dhdr->s_size; - - } else { - - f_dhdr->s_vaddr = data_start; - f_dhdr->s_size = bss_start - data_start; - f_dhdr->s_scnptr = eo_data; - f_dhdr->s_relptr = 0; - f_dhdr->s_nrel = 0; - - eo_data += f_dhdr->s_size; - - } - - f_bhdr->s_vaddr = bss_start; - f_bhdr->s_size = bss_end - bss_start + pagesz /* fudge */; - f_bhdr->s_scnptr = 0; - f_bhdr->s_relptr = 0; - f_bhdr->s_nrel = 0; - - text_scnptr = f_thdr->s_scnptr; - data_scnptr = f_dhdr->s_scnptr; - bias = eo_data - block_copy_start; - - if (f_ohdr.o_symptr > 0L) { - f_ohdr.o_symptr += bias; - } - - if (f_hdr.h_strptr > 0) { - f_hdr.h_strptr += bias; - } - - if (write (new, &f_hdr, sizeof (f_hdr)) != sizeof (f_hdr)) { - PERROR (new_name); - } - - if (write (new, &f_ohdr, sizeof (f_ohdr)) != sizeof (f_ohdr)) { - PERROR (new_name); - } - - for( scns = 0; scns < f_hdr.h_nscns; scns++ ) { - - /* This is a cheesy little loop to write out the section headers - * in order of increasing virtual address. Dull but effective. - */ - - for( i = scns+1; i < f_hdr.h_nscns; i++ ) { - if( stbl[i].s_vaddr < stbl[scns].s_vaddr ) { /* Swap */ - scntemp = stbl[i]; - stbl[i] = stbl[scns]; - stbl[scns] = scntemp; - } - } - - } - - for( scns = 0; scns < f_hdr.h_nscns; scns++ ) { - - if( write( new, &stbl[scns], sizeof(*stbl)) != sizeof(*stbl)) { - PERROR (new_name); - } - - } - - return (0); - -} - -/* **************************************************************** - * copy_text_and_data - * - * Copy the text and data segments from memory to the new a.out - */ -static int -copy_text_and_data (new) -int new; -{ - register int scns; - - for( scns = 0; scns < f_hdr.h_nscns; scns++ ) - write_segment( new, &stbl[scns] ); - - return 0; -} - -write_segment( new, sptr ) -int new; -struct scnhdr *sptr; -{ - register char *ptr, *end; - register int nwrite, ret; - char buf[80]; - extern int errno; - char zeros[128]; - - if( sptr->s_scnptr == 0 ) - return; /* Nothing to do */ - - if( lseek( new, (long) sptr->s_scnptr, 0 ) == -1 ) - PERROR( "unexecing" ); - - bzero (zeros, sizeof zeros); - - ptr = (char *) sptr->s_vaddr; - end = ptr + sptr->s_size; - - while( ptr < end ) { - - /* distance to next multiple of 128. */ - nwrite = (((int) ptr + 128) & -128) - (int) ptr; - /* But not beyond specified end. */ - if (nwrite > end - ptr) nwrite = end - ptr; - ret = write (new, ptr, nwrite); - /* If write gets a page fault, it means we reached - a gap between the old text segment and the old data segment. - This gap has probably been remapped into part of the text segment. - So write zeros for it. */ - if (ret == -1 && errno == EFAULT) - write (new, zeros, nwrite); - else if (nwrite != ret) { - sprintf (buf, - "unexec write failure: addr 0x%x, fileno %d, size 0x%x, wrote 0x%x, errno %d", - ptr, new, nwrite, ret, errno); - PERROR (buf); - } - ptr += nwrite; - } -} - -/* **************************************************************** - * copy_sym - * - * Copy the relocation information and symbol table from the a.out to the new - */ -static int -copy_sym (new, a_out, a_name, new_name) - int new, a_out; - char *a_name, *new_name; -{ - char page[1024]; - int n; - - if (a_out < 0) - return 0; - - if (SYMS_START == 0L) - return 0; - - lseek (a_out, SYMS_START, 0); /* Position a.out to symtab. */ - lseek( new, (long)f_ohdr.o_symptr, 0 ); - - while ((n = read (a_out, page, sizeof page)) > 0) { - if (write (new, page, n) != n) { - PERROR (new_name); - } - } - if (n < 0) { - PERROR (a_name); - } - return 0; -} - -/* **************************************************************** - * mark_x - * - * After successfully building the new a.out, mark it executable - */ -static -mark_x (name) -char *name; -{ - struct stat sbuf; - int um; - int new = 0; /* for PERROR */ - - um = umask (777); - umask (um); - if (stat (name, &sbuf) == -1) { - PERROR (name); - } - sbuf.st_mode |= 0111 & ~um; - if (chmod (name, sbuf.st_mode) == -1) - PERROR (name); -} - -/* Find the first pty letter. This is usually 'p', as in ptyp0, but - is sometimes configured down to 'm', 'n', or 'o' for some reason. */ - -first_pty_letter () -{ - struct stat buf; - char pty_name[16]; - char c; - - for (c = 'o'; c >= 'a'; c--) - { - sprintf (pty_name, "/dev/pty%c0", c); - if (stat (pty_name, &buf) < 0) - return c + 1; - } - return 'a'; -} - -/* arch-tag: 8199e06d-69b5-4f79-84d8-00f6ea929af9 - (do not change this comment) */ diff --git a/src/unexenix.c b/src/unexenix.c deleted file mode 100644 index 343eb6dfbd..0000000000 --- a/src/unexenix.c +++ /dev/null @@ -1,264 +0,0 @@ -/* Unexec for Xenix. - Note that the GNU project considers support for Xenix operation - a peripheral activity which should not be allowed to divert effort - from development of the GNU system. Changes in this code will be - installed when Xenix users send them in, but aside from that - we don't plan to think about it, or about whether other Emacs - maintenance might break it. - - Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004, - 2005, 2006, 2007 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. */ - - - -/* - On 80386 Xenix, segmentation screws prevent us from modifying the text - segment at all. We basically just plug a new value for "data segment - size" into the countless headers and copy the other records straight - through. The data segment is ORG'ed at the xs_rbase value of the data - segment's xseg record (always @ 0x1880000, thanks to the "sophisticated - memory management hardware" of the chip) and extends to sbrk(0), exactly. - This code is afraid to malloc (should it be?), and alloca has to be the - wimpy, malloc-based version; consequently, data is usually copied in - smallish chunks. - - gb@entity.com -*/ - -#include <config.h> -#include <sys/types.h> -#include <fcntl.h> -#include <sys/file.h> -#include <sys/stat.h> -#include <stdio.h> -#include <varargs.h> -#include <a.out.h> - -static void fatal_unexec (); - -#define READ(_fd, _buffer, _size, _error_message, _error_arg) \ - errno = EEOF; \ - if (read(_fd, _buffer, _size) != _size) \ - fatal_unexec(_error_message, _error_arg); - -#define WRITE(_fd, _buffer, _size, _error_message, _error_arg) \ - if (write(_fd, _buffer, _size) != _size) \ - fatal_unexec(_error_message, _error_arg); - -#define SEEK(_fd, _position, _error_message, _error_arg) \ - errno = EEOF; \ - if (lseek(_fd, _position, L_SET) != _position) \ - fatal_unexec(_error_message, _error_arg); - -extern int errno; -extern char *strerror (); -#define EEOF -1 - -#ifndef L_SET -#define L_SET 0 -#endif - -/* Should check the magic number of the old executable; - not yet written. */ -check_exec (x) - struct xexec *x; -{ -} - - -unexec (new_name, a_name, data_start, bss_start, entry_address) - char *new_name, *a_name; - unsigned data_start, bss_start, entry_address; -{ - char *sbrk (), *datalim = sbrk (0), *data_org; - long segpos, textseen, textpos, textlen, datapos, datadiff, datalen; - - struct xexec u_xexec, /* a.out header */ - *u_xexecp = &u_xexec; - struct xext u_xext, /* extended header */ - *u_xextp = &u_xext; - struct xseg u_xseg, /* segment table entry */ - *u_xsegp = &u_xseg; - int i, nsegs, isdata = 0, infd, outfd; - - infd = open (a_name, O_RDONLY, 0); - if (infd < 0) fatal_unexec ("opening %s", a_name); - - outfd = creat (new_name, 0666); - if (outfd < 0) fatal_unexec ("creating %s", new_name); - - READ (infd, u_xexecp, sizeof (struct xexec), - "error reading %s", a_name); - check_exec (u_xexecp); - READ (infd, u_xextp, sizeof (struct xext), - "error reading %s", a_name); - segpos = u_xextp->xe_segpos; - nsegs = u_xextp->xe_segsize / sizeof (struct xseg); - SEEK (infd, segpos, "seek error on %s", a_name); - for (i = 0; i < nsegs; i ++) - { - READ (infd, u_xsegp, sizeof (struct xseg), - "error reading %s", a_name); - switch (u_xsegp->xs_type) - { - case XS_TTEXT: - { - if (i == 0) - { - textpos = u_xsegp->xs_filpos; - textlen = u_xsegp->xs_psize; - break; - } - fatal_unexec ("invalid text segment in %s", a_name); - } - case XS_TDATA: - { - if (i == 1) - { - datapos = u_xsegp->xs_filpos; - datalen = datalim - (data_org = (char *)(u_xsegp->xs_rbase)); - datadiff = datalen - u_xsegp->xs_psize; - break; - } - fatal_unexec ("invalid data segment in %s", a_name); - } - default: - { - if (i > 1) break; - fatal_unexec ("invalid segment record in %s", a_name); - } - } - } - u_xexecp->x_data = datalen; - u_xexecp->x_bss = 0; - WRITE (outfd, u_xexecp, sizeof (struct xexec), - "error writing %s", new_name); - WRITE (outfd, u_xextp, sizeof (struct xext), - "error writing %s", new_name); - SEEK (infd, segpos, "seek error on %s", a_name); - SEEK (outfd, segpos, "seek error on %s", new_name); - - /* Copy the text segment record verbatim. */ - - copyrec (infd, outfd, sizeof (struct xseg), a_name, new_name); - - /* Read, modify, write the data segment record. */ - - READ (infd, u_xsegp, sizeof (struct xseg), - "error reading %s", a_name); - u_xsegp->xs_psize = u_xsegp->xs_vsize = datalen; - u_xsegp->xs_attr &= (~XS_AITER & ~XS_ABSS); - WRITE (outfd, u_xsegp, sizeof (struct xseg), - "error writing %s", new_name); - - /* Now copy any additional segment records, adjusting their - file position field */ - - for (i = 2; i < nsegs; i++) - { - READ (infd, u_xsegp, sizeof (struct xseg), - "error reading %s", a_name); - u_xsegp->xs_filpos += datadiff; - WRITE (outfd, u_xsegp, sizeof (struct xseg), - "error writing %s", new_name); - } - - SEEK (infd, textpos, "seek error on %s", a_name); - SEEK (outfd, textpos, "seek error on %s", new_name); - copyrec (infd, outfd, textlen, a_name, new_name); - - SEEK (outfd, datapos, "seek error on %s", new_name); - WRITE (outfd, data_org, datalen, - "write error on %s", new_name); - - for (i = 2, segpos += (2 * sizeof (struct xseg)); - i < nsegs; - i++, segpos += sizeof (struct xseg)) - { - SEEK (infd, segpos, "seek error on %s", a_name); - READ (infd, u_xsegp, sizeof (struct xseg), - "read error on %s", a_name); - SEEK (infd, u_xsegp->xs_filpos, "seek error on %s", a_name); - /* We should be at eof in the output file here, but we must seek - because the xs_filpos and xs_psize fields in symbol table - segments are inconsistent. */ - SEEK (outfd, u_xsegp->xs_filpos + datadiff, "seek error on %s", new_name); - copyrec (infd, outfd, u_xsegp->xs_psize, a_name, new_name); - } - close (infd); - close (outfd); - mark_x (new_name); - return 0; -} - -copyrec (infd, outfd, len, in_name, out_name) - int infd, outfd, len; - char *in_name, *out_name; -{ - char buf[BUFSIZ]; - int chunk; - - while (len) - { - chunk = BUFSIZ; - if (chunk > len) - chunk = len; - READ (infd, buf, chunk, "error reading %s", in_name); - WRITE (outfd, buf, chunk, "error writing %s", out_name); - len -= chunk; - } -} - -/* - * mark_x - * - * After successfully building the new a.out, mark it executable - */ -static -mark_x (name) - char *name; -{ - struct stat sbuf; - int um = umask (777); - umask (um); - if (stat (name, &sbuf) < 0) - fatal_unexec ("getting protection on %s", name); - sbuf.st_mode |= 0111 & ~um; - if (chmod (name, sbuf.st_mode) < 0) - fatal_unexec ("setting protection on %s", name); -} - -static void -fatal_unexec (s, va_alist) - va_dcl -{ - va_list ap; - if (errno == EEOF) - fputs ("unexec: unexpected end of file, ", stderr); - else - fprintf (stderr, "unexec: %s, ", strerror (errno)); - va_start (ap); - _doprnt (s, ap, stderr); - fputs (".\n", stderr); - exit (1); -} - -/* arch-tag: ce26be27-370a-438d-83b4-766059749a02 - (do not change this comment) */ diff --git a/src/unexsni.c b/src/unexsni.c deleted file mode 100644 index bbf9287e1f..0000000000 --- a/src/unexsni.c +++ /dev/null @@ -1,925 +0,0 @@ -/* Unexec for Siemens machines running Sinix (modified SVR4). - Copyright (C) 1985, 1986, 1987, 1988, 1990, 1992, 1993, 1994, 1995, 2001, - 2002, 2003, 2004, 2005, 2006, 2007 - 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, 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; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. - -In other words, you are welcome to use, share and improve this program. -You are forbidden to forbid anyone else to use, share and improve -what you give them. Help stamp out software-hoarding! */ - -/* - * unexec.c - Convert a running program into an a.out file. - * - * Author: Spencer W. Thomas - * Computer Science Dept. - * University of Utah - * Date: Tue Mar 2 1982 - * Modified heavily since then. - * - * Synopsis: - * unexec (new_name, a_name, data_start, bss_start, entry_address) - * char *new_name, *a_name; - * unsigned data_start, bss_start, entry_address; - * - * Takes a snapshot of the program and makes an a.out format file in the - * file named by the string argument new_name. - * If a_name is non-NULL, the symbol table will be taken from the given file. - * On some machines, an existing a_name file is required. - * - * The boundaries within the a.out file may be adjusted with the data_start - * and bss_start arguments. Either or both may be given as 0 for defaults. - * - * Data_start gives the boundary between the text segment and the data - * segment of the program. The text segment can contain shared, read-only - * program code and literal data, while the data segment is always unshared - * and unprotected. Data_start gives the lowest unprotected address. - * The value you specify may be rounded down to a suitable boundary - * as required by the machine you are using. - * - * Specifying zero for data_start means the boundary between text and data - * should not be the same as when the program was loaded. - * If NO_REMAP is defined, the argument data_start is ignored and the - * segment boundaries are never changed. - * - * Bss_start indicates how much of the data segment is to be saved in the - * a.out file and restored when the program is executed. It gives the lowest - * unsaved address, and is rounded up to a page boundary. The default when 0 - * is given assumes that the entire data segment is to be stored, including - * the previous data and bss as well as any additional storage allocated with - * break (2). - * - * The new file is set up to start at entry_address. - * - * If you make improvements I'd like to get them too. - * harpo!utah-cs!thomas, thomas@Utah-20 - * - */ - -/* Even more heavily modified by james@bigtex.cactus.org of Dell Computer Co. - * ELF support added. - * - * Basic theory: the data space of the running process needs to be - * dumped to the output file. Normally we would just enlarge the size - * of .data, scooting everything down. But we can't do that in ELF, - * because there is often something between the .data space and the - * .bss space. - * - * In the temacs dump below, notice that the Global Offset Table - * (.got) and the Dynamic link data (.dynamic) come between .data1 and - * .bss. It does not work to overlap .data with these fields. - * - * The solution is to create a new .data segment. This segment is - * filled with data from the current process. Since the contents of - * various sections refer to sections by index, the new .data segment - * is made the last in the table to avoid changing any existing index. - */ - -/* Modified by wtien@urbana.mcd.mot.com of Motorola Inc. - * - * The above mechanism does not work if the unexeced ELF file is being - * re-layout by other applications (such as `strip'). All the applications - * that re-layout the internal of ELF will layout all sections in ascending - * order of their file offsets. After the re-layout, the data2 section will - * still be the LAST section in the section header vector, but its file offset - * is now being pushed far away down, and causes part of it not to be mapped - * in (ie. not covered by the load segment entry in PHDR vector), therefore - * causes the new binary to fail. - * - * The solution is to modify the unexec algorithm to insert the new data2 - * section header right before the new bss section header, so their file - * offsets will be in the ascending order. Since some of the section's (all - * sections AFTER the bss section) indexes are now changed, we also need to - * modify some fields to make them point to the right sections. This is done - * by macro PATCH_INDEX. All the fields that need to be patched are: - * - * 1. ELF header e_shstrndx field. - * 2. section header sh_link and sh_info field. - * 3. symbol table entry st_shndx field. - */ - -/* - * New modifications for Siemens Nixdorf's MIPS-based machines. - * Marco.Walther@mch.sni.de - * marco@inreach.com - * - * The problem: Before the bss segment we have a so called sbss segment - * (small bss) and maybe an sdata segment. These segments - * must also be handled correct. - * - * /home1/marco/emacs/emacs-19.22/src - * dump -hv temacs - * - * temacs: - * - * **** SECTION HEADER TABLE **** - * [No] Type Flags Addr Offset Size Name - * Link Info Adralgn Entsize - * - * [1] PBIT -A-- 0x4000f4 0xf4 0x13 .interp - * 0 0 0x1 0 - * - * [2] REGI -A-- 0x400108 0x108 0x18 .reginfo - * 0 0 0x4 0x18 - * - * [3] DYNM -A-- 0x400120 0x120 0xb8 .dynamic - * 6 0 0x4 0x8 - * - * [4] HASH -A-- 0x4001d8 0x1d8 0x8a0 .hash - * 5 0 0x4 0x4 - * - * [5] DYNS -A-- 0x400a78 0xa78 0x11f0 .dynsym - * 6 2 0x4 0x10 - * - * [6] STRT -A-- 0x401c68 0x1c68 0xbf9 .dynstr - * 0 0 0x1 0 - * - * [7] REL -A-- 0x402864 0x2864 0x18 .rel.dyn - * 5 14 0x4 0x8 - * - * [8] PBIT -AI- 0x402880 0x2880 0x60 .init - * 0 0 0x10 0x1 - * - * [9] PBIT -AI- 0x4028e0 0x28e0 0x1234 .plt - * 0 0 0x4 0x4 - * - * [10] PBIT -AI- 0x403b20 0x3b20 0xee400 .text - * 0 0 0x20 0x1 - * - * [11] PBIT -AI- 0x4f1f20 0xf1f20 0x60 .fini - * 0 0 0x10 0x1 - * - * [12] PBIT -A-- 0x4f1f80 0xf1f80 0xd90 .rdata - * 0 0 0x10 0x1 - * - * [13] PBIT -A-- 0x4f2d10 0xf2d10 0x17e0 .rodata - * 0 0 0x10 0x1 - * - * [14] PBIT WA-- 0x5344f0 0xf44f0 0x4b3e4 .data <<<<< - * 0 0 0x10 0x1 - * - * [15] PBIT WA-G 0x57f8d4 0x13f8d4 0x2a84 .got - * 0 0 0x4 0x4 - * - * [16] PBIT WA-G 0x582360 0x142360 0x10 .sdata <<<<< - * 0 0 0x10 0x1 - * - * [17] NOBI WA-G 0x582370 0x142370 0xb84 .sbss <<<<< - * 0 0 0x4 0 - * - * [18] NOBI WA-- 0x582f00 0x142370 0x27ec0 .bss <<<<< - * 0 0 0x10 0x1 - * - * [19] SYMT ---- 0 0x142370 0x10e40 .symtab - * 20 1108 0x4 0x10 - * - * [20] STRT ---- 0 0x1531b0 0xed9e .strtab - * 0 0 0x1 0 - * - * [21] STRT ---- 0 0x161f4e 0xb5 .shstrtab - * 0 0 0x1 0 - * - * [22] PBIT ---- 0 0x162003 0x28e2a .comment - * 0 0 0x1 0x1 - * - * [23] PBIT ---- 0 0x18ae2d 0x592 .debug - * 0 0 0x1 0 - * - * [24] PBIT ---- 0 0x18b3bf 0x80 .line - * 0 0 0x1 0 - * - * [25] MDBG ---- 0 0x18b440 0x60 .mdebug - * 0 0 0x4 0 - * - * - * dump -hv emacs - * - * emacs: - * - * **** SECTION HEADER TABLE **** - * [No] Type Flags Addr Offset Size Name - * Link Info Adralgn Entsize - * - * [1] PBIT -A-- 0x4000f4 0xf4 0x13 .interp - * 0 0 0x1 0 - * - * [2] REGI -A-- 0x400108 0x108 0x18 .reginfo - * 0 0 0x4 0x18 - * - * [3] DYNM -A-- 0x400120 0x120 0xb8 .dynamic - * 6 0 0x4 0x8 - * - * [4] HASH -A-- 0x4001d8 0x1d8 0x8a0 .hash - * 5 0 0x4 0x4 - * - * [5] DYNS -A-- 0x400a78 0xa78 0x11f0 .dynsym - * 6 2 0x4 0x10 - * - * [6] STRT -A-- 0x401c68 0x1c68 0xbf9 .dynstr - * 0 0 0x1 0 - * - * [7] REL -A-- 0x402864 0x2864 0x18 .rel.dyn - * 5 14 0x4 0x8 - * - * [8] PBIT -AI- 0x402880 0x2880 0x60 .init - * 0 0 0x10 0x1 - * - * [9] PBIT -AI- 0x4028e0 0x28e0 0x1234 .plt - * 0 0 0x4 0x4 - * - * [10] PBIT -AI- 0x403b20 0x3b20 0xee400 .text - * 0 0 0x20 0x1 - * - * [11] PBIT -AI- 0x4f1f20 0xf1f20 0x60 .fini - * 0 0 0x10 0x1 - * - * [12] PBIT -A-- 0x4f1f80 0xf1f80 0xd90 .rdata - * 0 0 0x10 0x1 - * - * [13] PBIT -A-- 0x4f2d10 0xf2d10 0x17e0 .rodata - * 0 0 0x10 0x1 - * - * [14] PBIT WA-- 0x5344f0 0xf44f0 0x4b3e4 .data <<<<< - * 0 0 0x10 0x1 - * - * [15] PBIT WA-G 0x57f8d4 0x13f8d4 0x2a84 .got - * 0 0 0x4 0x4 - * - * [16] PBIT WA-G 0x582360 0x142360 0xb94 .sdata <<<<< - * 0 0 0x10 0x1 - * - * [17] PBIT WA-- 0x582f00 0x142f00 0x94100 .data <<<<< - * 0 0 0x10 0x1 - * - * [18] NOBI WA-G 0x617000 0x1d7000 0 .sbss <<<<< - * 0 0 0x4 0 - * - * [19] NOBI WA-- 0x617000 0x1d7000 0 .bss <<<<< - * 0 0 0x4 0x1 - * - * [20] SYMT ---- 0 0x1d7000 0x10e40 .symtab - * 21 1109 0x4 0x10 - * - * [21] STRT ---- 0 0x1e7e40 0xed9e .strtab - * 0 0 0x1 0 - * - * [22] STRT ---- 0 0x1f6bde 0xb5 .shstrtab - * 0 0 0x1 0 - * - * [23] PBIT ---- 0 0x1f6c93 0x28e2a .comment - * 0 0 0x1 0x1 - * - * [24] PBIT ---- 0 0x21fabd 0x592 .debug - * 0 0 0x1 0 - * - * [25] PBIT ---- 0 0x22004f 0x80 .line - * 0 0 0x1 0 - * - * [26] MDBG ---- 0 0x2200d0 0x60 .mdebug - * 0 0 0x4 0 - * - */ - -#include <sys/types.h> -#include <stdio.h> -#include <sys/stat.h> -#include <memory.h> -#include <string.h> -#include <errno.h> -#include <unistd.h> -#include <fcntl.h> -#include <elf.h> -#include <sys/mman.h> -#include <assert.h> - -/* #define DEBUG */ - -#ifndef emacs -#define fatal(a, b, c) fprintf(stderr, a, b, c), exit(1) -#else -extern void fatal(char *, ...); -#endif - -/* Get the address of a particular section or program header entry, - * accounting for the size of the entries. - */ - -#define OLD_SECTION_H(n) \ - (*(Elf32_Shdr *) ((byte *) old_section_h + old_file_h->e_shentsize * (n))) -#define NEW_SECTION_H(n) \ - (*(Elf32_Shdr *) ((byte *) new_section_h + new_file_h->e_shentsize * (n))) -#define OLD_PROGRAM_H(n) \ - (*(Elf32_Phdr *) ((byte *) old_program_h + old_file_h->e_phentsize * (n))) -#define NEW_PROGRAM_H(n) \ - (*(Elf32_Phdr *) ((byte *) new_program_h + new_file_h->e_phentsize * (n))) - -#define PATCH_INDEX(n) \ - do { \ - if ((n) >= old_sbss_index) \ - (n) += 1 + (old_sdata_index ? 0 : 1); } while (0) - -typedef unsigned char byte; - -/* Round X up to a multiple of Y. */ - -int -round_up (x, y) - int x, y; -{ - int rem = x % y; - if (rem == 0) - return x; - return x - rem + y; -} - -/* **************************************************************** - * unexec - * - * driving logic. - * - * In ELF, this works by replacing the old .bss section with a new - * .data section, and inserting an empty .bss immediately afterwards. - * - */ -void -unexec (new_name, old_name, data_start, bss_start, entry_address) - char *new_name, *old_name; - unsigned data_start, bss_start, entry_address; -{ - extern unsigned int bss_end; - int new_file, old_file, new_file_size; - - /* Pointers to the base of the image of the two files. */ - caddr_t old_base, new_base; - - /* Pointers to the file, program and section headers for the old and new - * files. - */ - Elf32_Ehdr *old_file_h, *new_file_h; - Elf32_Phdr *old_program_h, *new_program_h; - Elf32_Shdr *old_section_h, *new_section_h; - - /* Point to the section name table in the old file */ - char *old_section_names; - - Elf32_Addr old_bss_addr, new_bss_addr; - Elf32_Addr old_sbss_addr; - Elf32_Word old_bss_size, new_data2_size; - Elf32_Word old_sbss_size, new_data3_size; - Elf32_Off new_data2_offset; - Elf32_Off new_data3_offset; - Elf32_Addr new_data2_addr; - Elf32_Addr new_data3_addr; - - - Elf32_Addr old_rel_dyn_addr; - Elf32_Word old_rel_dyn_size; - int old_rel_dyn_index; - - Elf32_Word old_sdata_size, new_sdata_size; - int old_sdata_index = 0; - - int n, nn, old_data_index, new_data2_align; - int old_bss_index; - int old_sbss_index; - int old_bss_padding; - struct stat stat_buf; - - /* Open the old file & map it into the address space. */ - - old_file = open (old_name, O_RDONLY); - - if (old_file < 0) - fatal ("Can't open %s for reading: errno %d\n", old_name, errno); - - if (fstat (old_file, &stat_buf) == -1) - fatal ("Can't fstat(%s): errno %d\n", old_name, errno); - - old_base = mmap (0, stat_buf.st_size, PROT_READ, MAP_SHARED, old_file, 0); - - if (old_base == (caddr_t) -1) - fatal ("Can't mmap(%s): errno %d\n", old_name, errno); - -#ifdef DEBUG - fprintf (stderr, "mmap(%s, %x) -> %x\n", old_name, stat_buf.st_size, - old_base); -#endif - - /* Get pointers to headers & section names */ - - old_file_h = (Elf32_Ehdr *) old_base; - old_program_h = (Elf32_Phdr *) ((byte *) old_base + old_file_h->e_phoff); - old_section_h = (Elf32_Shdr *) ((byte *) old_base + old_file_h->e_shoff); - old_section_names = (char *) old_base - + OLD_SECTION_H(old_file_h->e_shstrndx).sh_offset; - - /* Find the old .sbss section. - */ - - for (old_sbss_index = 1; old_sbss_index < old_file_h->e_shnum; - old_sbss_index++) - { -#ifdef DEBUG - fprintf (stderr, "Looking for .sbss - found %s\n", - old_section_names + OLD_SECTION_H(old_sbss_index).sh_name); -#endif - if (!strcmp (old_section_names + OLD_SECTION_H(old_sbss_index).sh_name, - ".sbss")) - break; - } - if (old_sbss_index == old_file_h->e_shnum) - fatal ("Can't find .sbss in %s.\n", old_name, 0); - - if (!strcmp(old_section_names + OLD_SECTION_H(old_sbss_index - 1).sh_name, - ".sdata")) - { - old_sdata_index = old_sbss_index - 1; - } - - - /* Find the old .bss section. - */ - - for (old_bss_index = 1; old_bss_index < old_file_h->e_shnum; old_bss_index++) - { -#ifdef DEBUG - fprintf (stderr, "Looking for .bss - found %s\n", - old_section_names + OLD_SECTION_H(old_bss_index).sh_name); -#endif - if (!strcmp (old_section_names + OLD_SECTION_H(old_bss_index).sh_name, - ".bss")) - break; - } - if (old_bss_index == old_file_h->e_shnum) - fatal ("Can't find .bss in %s.\n", old_name, 0); - - if (old_sbss_index != (old_bss_index - 1)) - fatal (".sbss should come immediately before .bss in %s.\n", old_name, 0); - - /* Find the old .rel.dyn section. - */ - - for (old_rel_dyn_index = 1; old_rel_dyn_index < old_file_h->e_shnum; - old_rel_dyn_index++) - { -#ifdef DEBUG - fprintf (stderr, "Looking for .rel.dyn - found %s\n", - old_section_names + OLD_SECTION_H(old_rel_dyn_index).sh_name); -#endif - if (!strcmp (old_section_names + OLD_SECTION_H(old_rel_dyn_index).sh_name, - ".rel.dyn")) - break; - } - if (old_rel_dyn_index == old_file_h->e_shnum) - fatal ("Can't find .rel_dyn in %s.\n", old_name, 0); - - old_rel_dyn_addr = OLD_SECTION_H(old_rel_dyn_index).sh_addr; - old_rel_dyn_size = OLD_SECTION_H(old_rel_dyn_index).sh_size; - - /* Figure out parameters of the new data3 and data2 sections. - * Change the sbss and bss sections. - */ - - old_bss_addr = OLD_SECTION_H(old_bss_index).sh_addr; - old_bss_size = OLD_SECTION_H(old_bss_index).sh_size; - - old_sbss_addr = OLD_SECTION_H(old_sbss_index).sh_addr; - old_sbss_size = OLD_SECTION_H(old_sbss_index).sh_size; - - if (old_sdata_index) - { - old_sdata_size = OLD_SECTION_H(old_sdata_index).sh_size; - } - -#if defined(emacs) || !defined(DEBUG) - bss_end = (unsigned int) sbrk (0); - new_bss_addr = (Elf32_Addr) bss_end; -#else - new_bss_addr = old_bss_addr + old_bss_size + 0x1234; -#endif - if (old_sdata_index) - { - new_sdata_size = OLD_SECTION_H(old_sbss_index).sh_offset - - OLD_SECTION_H(old_sdata_index).sh_offset + old_sbss_size; - } - - new_data3_addr = old_sbss_addr; - new_data3_size = old_sbss_size; - new_data3_offset = OLD_SECTION_H(old_sbss_index).sh_offset; - - new_data2_addr = old_bss_addr; - new_data2_size = new_bss_addr - old_bss_addr; - new_data2_align = (new_data3_offset + old_sbss_size) % - OLD_SECTION_H(old_bss_index).sh_addralign; - new_data2_align = new_data2_align ? - OLD_SECTION_H(old_bss_index).sh_addralign - new_data2_align : - 0; - new_data2_offset = new_data3_offset + old_sbss_size + new_data2_align; - - old_bss_padding = OLD_SECTION_H(old_bss_index).sh_offset - - OLD_SECTION_H(old_sbss_index).sh_offset; -#ifdef DEBUG - fprintf (stderr, "old_bss_index %d\n", old_bss_index); - fprintf (stderr, "old_bss_addr %x\n", old_bss_addr); - fprintf (stderr, "old_bss_size %x\n", old_bss_size); - fprintf (stderr, "new_bss_addr %x\n", new_bss_addr); - fprintf (stderr, "new_data2_addr %x\n", new_data2_addr); - fprintf (stderr, "new_data2_size %x\n", new_data2_size); - fprintf (stderr, "new_data2_offset %x\n", new_data2_offset); - fprintf (stderr, "old_sbss_index %d\n", old_sbss_index); - fprintf (stderr, "old_sbss_addr %x\n", old_sbss_addr); - fprintf (stderr, "old_sbss_size %x\n", old_sbss_size); - fprintf (stderr, "old_rel_dyn_addr %x\n", old_rel_dyn_addr); - fprintf (stderr, "old_rel_dyn_size %x\n", old_rel_dyn_size); - if (old_sdata_index) - { - fprintf (stderr, "old_sdata_size %x\n", old_sdata_size); - fprintf (stderr, "new_sdata_size %x\n", new_sdata_size); - } - else - { - fprintf (stderr, "new_data3_addr %x\n", new_data3_addr); - fprintf (stderr, "new_data3_size %x\n", new_data3_size); - fprintf (stderr, "new_data3_offset %x\n", new_data3_offset); - } -#endif - - if ((unsigned) new_bss_addr < (unsigned) old_bss_addr + old_bss_size) - fatal (".bss shrank when undumping???\n", 0, 0); - - /* Set the output file to the right size and mmap(2) it. Set - * pointers to various interesting objects. stat_buf still has - * old_file data. - */ - - new_file = open (new_name, O_RDWR | O_CREAT, 0666); - if (new_file < 0) - fatal ("Can't creat(%s): errno %d\n", new_name, errno); - - new_file_size = stat_buf.st_size + - ((1 + (old_sdata_index ? 0 : 1)) * old_file_h->e_shentsize) + - new_data2_size + new_data3_size + new_data2_align; - - if (ftruncate (new_file, new_file_size)) - fatal ("Can't ftruncate(%s): errno %d\n", new_name, errno); - - new_base = mmap (0, new_file_size, PROT_READ | PROT_WRITE, MAP_SHARED, - new_file, 0); - - if (new_base == (caddr_t) -1) - fatal ("Can't mmap(%s): errno %d\n", new_name, errno); - - new_file_h = (Elf32_Ehdr *) new_base; - new_program_h = (Elf32_Phdr *) ((byte *) new_base + old_file_h->e_phoff); - new_section_h = (Elf32_Shdr *) ((byte *) new_base + - old_file_h->e_shoff + - new_data2_size + - new_data2_align + - new_data3_size); - - /* Make our new file, program and section headers as copies of the - * originals. - */ - - memcpy (new_file_h, old_file_h, old_file_h->e_ehsize); - memcpy (new_program_h, old_program_h, - old_file_h->e_phnum * old_file_h->e_phentsize); - - /* Modify the e_shstrndx if necessary. */ - PATCH_INDEX (new_file_h->e_shstrndx); - - /* Fix up file header. We'll add one section. Section header is - * further away now. - */ - - new_file_h->e_shoff += new_data2_size + new_data2_align + new_data3_size; - new_file_h->e_shnum += 1 + (old_sdata_index ? 0 : 1); - -#ifdef DEBUG - fprintf (stderr, "Old section offset %x\n", old_file_h->e_shoff); - fprintf (stderr, "Old section count %d\n", old_file_h->e_shnum); - fprintf (stderr, "New section offset %x\n", new_file_h->e_shoff); - fprintf (stderr, "New section count %d\n", new_file_h->e_shnum); -#endif - - /* Fix up a new program header. Extend the writable data segment so - * that the bss area is covered too. Find that segment by looking - * for a segment that ends just before the .bss area. Make sure - * that no segments are above the new .data2. Put a loop at the end - * to adjust the offset and address of any segment that is above - * data2, just in case we decide to allow this later. - */ - - for (n = new_file_h->e_phnum - 1; n >= 0; n--) - { - /* Compute maximum of all requirements for alignment of section. */ - int alignment = (NEW_PROGRAM_H (n)).p_align; - if ((OLD_SECTION_H (old_bss_index)).sh_addralign > alignment) - alignment = OLD_SECTION_H (old_bss_index).sh_addralign; - - if ((OLD_SECTION_H (old_sbss_index)).sh_addralign > alignment) - alignment = OLD_SECTION_H (old_sbss_index).sh_addralign; - - /* Supposedly this condition is okay for the SGI. */ -#if 0 - if (NEW_PROGRAM_H(n).p_vaddr + NEW_PROGRAM_H(n).p_filesz > old_bss_addr) - fatal ("Program segment above .bss in %s\n", old_name, 0); -#endif - - if (NEW_PROGRAM_H(n).p_type == PT_LOAD - && (round_up ((NEW_PROGRAM_H (n)).p_vaddr - + (NEW_PROGRAM_H (n)).p_filesz, - alignment) - == round_up (old_bss_addr, alignment))) - break; - } - if (n < 0) - fatal ("Couldn't find segment next to .bss in %s\n", old_name, 0); - - NEW_PROGRAM_H(n).p_filesz += new_data2_size + new_data2_align + - new_data3_size; - NEW_PROGRAM_H(n).p_memsz = NEW_PROGRAM_H(n).p_filesz; - -#if 1 /* Maybe allow section after data2 - does this ever happen? */ - for (n = new_file_h->e_phnum - 1; n >= 0; n--) - { - if (NEW_PROGRAM_H(n).p_vaddr - && NEW_PROGRAM_H(n).p_vaddr >= new_data3_addr) - NEW_PROGRAM_H(n).p_vaddr += new_data2_size - old_bss_size + - new_data3_size - old_sbss_size; - - if (NEW_PROGRAM_H(n).p_offset >= new_data3_offset) - NEW_PROGRAM_H(n).p_offset += new_data2_size + new_data2_align + - new_data3_size; - } -#endif - - /* Fix up section headers based on new .data2 section. Any section - * whose offset or virtual address is after the new .data2 section - * gets its value adjusted. .bss size becomes zero and new address - * is set. data2 section header gets added by copying the existing - * .data header and modifying the offset, address and size. - */ - for (old_data_index = 1; old_data_index < old_file_h->e_shnum; - old_data_index++) - if (!strcmp (old_section_names + OLD_SECTION_H(old_data_index).sh_name, - ".data")) - break; - if (old_data_index == old_file_h->e_shnum) - fatal ("Can't find .data in %s.\n", old_name, 0); - - /* Walk through all section headers, insert the new data2 section right - before the new bss section. */ - for (n = 1, nn = 1; n < old_file_h->e_shnum; n++, nn++) - { - caddr_t src; - - if (n == old_sbss_index) - - /* If it is sbss section, insert the new data3 section before it. */ - { - /* Steal the data section header for this data3 section. */ - if (!old_sdata_index) - { - memcpy (&NEW_SECTION_H(nn), &OLD_SECTION_H(old_data_index), - new_file_h->e_shentsize); - - NEW_SECTION_H(nn).sh_addr = new_data3_addr; - NEW_SECTION_H(nn).sh_offset = new_data3_offset; - NEW_SECTION_H(nn).sh_size = new_data3_size; - NEW_SECTION_H(nn).sh_flags = OLD_SECTION_H(n).sh_flags; - /* Use the sbss section's alignment. This will assure that the - new data3 section always be placed in the same spot as the old - sbss section by any other application. */ - NEW_SECTION_H(nn).sh_addralign = OLD_SECTION_H(n).sh_addralign; - - /* Now copy over what we have in the memory now. */ - memcpy (NEW_SECTION_H(nn).sh_offset + new_base, - (caddr_t) OLD_SECTION_H(n).sh_addr, - new_data3_size); - /* the new .data2 section should also come before the - * new .sbss section */ - nn += 2; - } - else - { - /* We always have a .sdata section: append the contents of the - * old .sbss section. - */ - memcpy (new_data3_offset + new_base, - (caddr_t) OLD_SECTION_H(n).sh_addr, - new_data3_size); - nn ++; - } - } - else if (n == old_bss_index) - - /* If it is bss section, insert the new data2 section before it. */ - { - Elf32_Word tmp_align; - Elf32_Addr tmp_addr; - - tmp_align = OLD_SECTION_H(n).sh_addralign; - tmp_addr = OLD_SECTION_H(n).sh_addr; - - nn -= 2; - /* Steal the data section header for this data2 section. */ - memcpy (&NEW_SECTION_H(nn), &OLD_SECTION_H(old_data_index), - new_file_h->e_shentsize); - - NEW_SECTION_H(nn).sh_addr = new_data2_addr; - NEW_SECTION_H(nn).sh_offset = new_data2_offset; - NEW_SECTION_H(nn).sh_size = new_data2_size; - /* Use the bss section's alignment. This will assure that the - new data2 section always be placed in the same spot as the old - bss section by any other application. */ - NEW_SECTION_H(nn).sh_addralign = tmp_align; - - /* Now copy over what we have in the memory now. */ - memcpy (NEW_SECTION_H(nn).sh_offset + new_base, - (caddr_t) tmp_addr, new_data2_size); - nn += 2; - } - - memcpy (&NEW_SECTION_H(nn), &OLD_SECTION_H(n), - old_file_h->e_shentsize); - - if (old_sdata_index && n == old_sdata_index) - /* The old .sdata section has now a new size */ - NEW_SECTION_H(nn).sh_size = new_sdata_size; - - /* The new bss section's size is zero, and its file offset and virtual - address should be off by NEW_DATA2_SIZE. */ - if (n == old_sbss_index) - { - /* NN should be `old_sbss_index + 2' at this point. */ - NEW_SECTION_H(nn).sh_offset += new_data2_size + new_data2_align + - new_data3_size; - NEW_SECTION_H(nn).sh_addr += new_data2_size + new_data2_align + - new_data3_size; - /* Let the new bss section address alignment be the same as the - section address alignment followed the old bss section, so - this section will be placed in exactly the same place. */ - NEW_SECTION_H(nn).sh_addralign = - OLD_SECTION_H(nn + (old_sdata_index ? 1 : 0)).sh_addralign; - NEW_SECTION_H(nn).sh_size = 0; - } - else if (n == old_bss_index) - { - /* NN should be `old_bss_index + 2' at this point. */ - NEW_SECTION_H(nn).sh_offset += new_data2_size + new_data2_align + - new_data3_size - old_bss_padding; - NEW_SECTION_H(nn).sh_addr += new_data2_size; - /* Let the new bss section address alignment be the same as the - section address alignment followed the old bss section, so - this section will be placed in exactly the same place. */ - NEW_SECTION_H(nn).sh_addralign = - OLD_SECTION_H((nn - (old_sdata_index ? 0 : 1))).sh_addralign; - NEW_SECTION_H(nn).sh_size = 0; - } - /* Any section that was original placed AFTER the bss section should now - be off by NEW_DATA2_SIZE. */ - else if (NEW_SECTION_H(nn).sh_offset >= new_data3_offset) - NEW_SECTION_H(nn).sh_offset += new_data2_size + - new_data2_align + - new_data3_size - - old_bss_padding; - - /* If any section hdr refers to the section after the new .data - section, make it refer to next one because we have inserted - a new section in between. */ - - PATCH_INDEX(NEW_SECTION_H(nn).sh_link); - PATCH_INDEX(NEW_SECTION_H(nn).sh_info); - - /* Now, start to copy the content of sections. */ - if (NEW_SECTION_H(nn).sh_type == SHT_NULL - || NEW_SECTION_H(nn).sh_type == SHT_NOBITS) - continue; - - /* Write out the sections. .data, .data1 and .sdata get copied from - * the current process instead of the old file. - */ - if (!strcmp (old_section_names + OLD_SECTION_H(n).sh_name, ".data") || - !strcmp (old_section_names + OLD_SECTION_H(n).sh_name, ".data1") || - (old_sdata_index && (n == old_sdata_index))) - src = (caddr_t) OLD_SECTION_H(n).sh_addr; - else - src = old_base + OLD_SECTION_H(n).sh_offset; - - memcpy (NEW_SECTION_H(nn).sh_offset + new_base, src, - ((n == old_sdata_index) ? - old_sdata_size : - NEW_SECTION_H(nn).sh_size)); - - /* If it is the symbol table, its st_shndx field needs to be patched. */ - if (NEW_SECTION_H(nn).sh_type == SHT_SYMTAB - || NEW_SECTION_H(nn).sh_type == SHT_DYNSYM) - { - Elf32_Shdr *spt = &NEW_SECTION_H(nn); - unsigned int num = spt->sh_size / spt->sh_entsize; - Elf32_Sym * sym = (Elf32_Sym *) (NEW_SECTION_H(nn).sh_offset + - new_base); - for (; num--; sym++) - { - if ((sym->st_shndx == SHN_UNDEF) - || (sym->st_shndx == SHN_ABS) - || (sym->st_shndx == SHN_COMMON)) - continue; - - PATCH_INDEX(sym->st_shndx); - } - } - } - { - Elf32_Rel *rel_p; - unsigned int old_data_addr_start; - unsigned int old_data_addr_end; - unsigned int old_data_offset; - unsigned int new_data_offset; - int i; - - rel_p = (Elf32_Rel *)OLD_SECTION_H(old_rel_dyn_index).sh_addr; - old_data_addr_start = OLD_SECTION_H(old_data_index).sh_addr; - old_data_addr_end = old_data_addr_start + - OLD_SECTION_H(old_data_index).sh_size; - old_data_offset = (int)OLD_SECTION_H(old_data_index).sh_offset + - (unsigned int)old_base; - new_data_offset = (int)NEW_SECTION_H(old_data_index).sh_offset + - (unsigned int)new_base; - -#ifdef DEBUG - fprintf(stderr, "old_data.sh_addr= 0x%08x ... 0x%08x\n", old_data_addr_start, - old_data_addr_end); -#endif /* DEBUG */ - - for (i = 0; i < old_rel_dyn_size/sizeof(Elf32_Rel); i++) - { -#ifdef DEBUG - fprintf(stderr, ".rel.dyn offset= 0x%08x type= %d sym= %d\n", - rel_p->r_offset, ELF32_R_TYPE(rel_p->r_info), ELF32_R_SYM(rel_p->r_info)); -#endif /* DEBUG */ - - if (rel_p->r_offset) - { - unsigned int offset; - - assert(old_data_addr_start <= rel_p->r_offset && - rel_p->r_offset <= old_data_addr_end); - - offset = rel_p->r_offset - old_data_addr_start; - -#ifdef DEBUG - fprintf(stderr, "r_offset= 0x%08x *r_offset= 0x%08x\n", - rel_p->r_offset, *((int *)(rel_p->r_offset))); - fprintf(stderr, "old = 0x%08x *old =0x%08x\n", - (old_data_offset + offset - (unsigned int)old_base), - *((int *)(old_data_offset + offset))); - fprintf(stderr, "new = 0x%08x *new =0x%08x\n", - (new_data_offset + offset - (unsigned int)new_base), - *((int *)(new_data_offset + offset))); -#endif /* DEBUG */ - - *((int *)(new_data_offset + offset)) = *((int *)(old_data_offset + offset)); - } - - rel_p++; - } - } - - /* Close the files and make the new file executable */ - - if (close (old_file)) - fatal ("Can't close(%s): errno %d\n", old_name, errno); - - if (close (new_file)) - fatal ("Can't close(%s): errno %d\n", new_name, errno); - - if (stat (new_name, &stat_buf) == -1) - fatal ("Can't stat(%s): errno %d\n", new_name, errno); - - n = umask (777); - umask (n); - stat_buf.st_mode |= 0111 & ~n; - if (chmod (new_name, stat_buf.st_mode) == -1) - fatal ("Can't chmod(%s): errno %d\n", new_name, errno); -} - -/* arch-tag: c784ead3-7a27-442b-83fe-7af8d08654d3 - (do not change this comment) */ @@ -1269,12 +1269,6 @@ get_emacs_configuration (void) break; #endif -#ifdef PROCESSOR_INTEL_860 - case PROCESSOR_INTEL_860: - arch = "i860"; - break; -#endif - #ifdef PROCESSOR_MIPS_R2000 case PROCESSOR_MIPS_R2000: case PROCESSOR_MIPS_R3000: |