diff options
| author | Dan Nicolaescu | 2008-01-06 00:56:56 +0000 |
|---|---|---|
| committer | Dan Nicolaescu | 2008-01-06 00:56:56 +0000 |
| commit | f3041af143f4ab74041fc918feee43aa8ac2da88 (patch) | |
| tree | a84bdb93b8f941075b511480aa283e2847fbbcac | |
| parent | 37d6e31370557ab868033dde113f11b54994e576 (diff) | |
| download | emacs-f3041af143f4ab74041fc918feee43aa8ac2da88.tar.gz emacs-f3041af143f4ab74041fc918feee43aa8ac2da88.zip | |
* 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 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * configure.in: Remove references to unsupported systems. | ||
| 4 | |||
| 1 | 2008-01-05 Romain Francoise <romain@orebokech.com> | 5 | 2008-01-05 Romain Francoise <romain@orebokech.com> |
| 2 | 6 | ||
| 3 | * make-dist: Add --bzip2. Update copyright. | 7 | * make-dist: Add --bzip2. Update copyright. |
diff --git a/admin/CPP-DEFINES b/admin/CPP-DEFINES index ea2ae95b25a..ab485360138 100644 --- a/admin/CPP-DEFINES +++ b/admin/CPP-DEFINES | |||
| @@ -43,47 +43,322 @@ FRAME_WINDOW_P A GUI frame (like X, w32, etc.) | |||
| 43 | REL_ALLOC Compile in the relocatable memory allocator ralloc.c. | 43 | REL_ALLOC Compile in the relocatable memory allocator ralloc.c. |
| 44 | SYSTEM_MALLOC Use the system library's malloc. | 44 | SYSTEM_MALLOC Use the system library's malloc. |
| 45 | 45 | ||
| 46 | ** All references to these symbols should be removed, all their definitions are gone ** | ||
| 47 | ALLIANT | ||
| 48 | ALLIANT_2800 | ||
| 49 | ALTOS | ||
| 50 | APOLLO | ||
| 51 | APOLLO_SR10 | ||
| 52 | RTU | ||
| 53 | STRIDE | ||
| 54 | UNIPLUS | ||
| 55 | GOULD | ||
| 56 | NU | ||
| 57 | pyramid | ||
| 58 | sps7 | ||
| 59 | tahoe | ||
| 60 | tek4300 | ||
| 61 | __DGUX | ||
| 62 | DGUX | ||
| 63 | romp | ||
| 64 | ibmrt | ||
| 65 | NEWSOS5 | ||
| 46 | 66 | ||
| 47 | ** Temporarily put defines from removed files here ** | 67 | ** Temporarily put defines from removed files here, check if these macros need to be documented or removed because they are not used anymore. ** |
| 48 | |||
| 49 | 68 | ||
| 69 | ABORT_RETURN_TYPE | ||
| 70 | ADDR_CORRECT | ||
| 50 | ADJUST_EXEC_HEADER | 71 | ADJUST_EXEC_HEADER |
| 72 | ADJUST_TEXTBASE | ||
| 73 | ADJUST_TEXT_SCNHDR_SIZE | ||
| 74 | A_TEXT_OFFSET | ||
| 75 | A_TEXT_SEEK | ||
| 76 | BAUD_CONVERT | ||
| 77 | BROKEN_FIONREAD | ||
| 78 | BROKEN_SELECT_NON_X | ||
| 79 | BROKEN_SIGIO | ||
| 80 | BROKEN_START | ||
| 81 | BROKEN_TIOCGETC | ||
| 82 | BROKEN_TIOCGWINSZ | ||
| 51 | BSD4_2 | 83 | BSD4_2 |
| 84 | BSD4_3 | ||
| 85 | BSD4_4 | ||
| 52 | BSD_PGRPS | 86 | BSD_PGRPS |
| 53 | BSD_SYSTEM | 87 | BSD_SYSTEM |
| 54 | BSTRING | 88 | BSTRING |
| 55 | CANNOT_DUMP | 89 | CANNOT_DUMP |
| 56 | CLASH_DETECTION | 90 | CLASH_DETECTION |
| 57 | COFF | 91 | COFF |
| 92 | COFF_BSD_SYMBOLS | ||
| 93 | COFF_ENCAPSULATE | ||
| 94 | CRT0_COMPILE | ||
| 58 | CRT0_DUMMIES | 95 | CRT0_DUMMIES |
| 96 | C_DEBUG_SWITCH | ||
| 97 | C_OPTIMIZE_SWITCH | ||
| 98 | C_SWITCH_ASM | ||
| 99 | C_SWITCH_MACHINE | ||
| 100 | C_SWITCH_SYSTEM | ||
| 101 | DATA_END | ||
| 102 | DATA_SECTION_ALIGNMENT | ||
| 103 | DATA_SEG_BITS | ||
| 104 | DATA_START | ||
| 105 | DEBUG | ||
| 106 | DECLARE_GETPWUID_WITH_UID_T | ||
| 107 | DEFAULT_ENTRY_ADDRESS | ||
| 108 | DONT_NEED_ENVIRON | ||
| 109 | DOT_GLOBAL_START | ||
| 110 | DUMMIES | ||
| 111 | EEOF | ||
| 112 | ELF | ||
| 113 | ERROR0 | ||
| 114 | ERROR1 | ||
| 115 | ERROR2 | ||
| 116 | EXEC_HDR_TYPE | ||
| 117 | EXEC_MAGIC | ||
| 118 | EXEC_PAGESIZE | ||
| 59 | EXPLICIT_SIGN_EXTEND | 119 | EXPLICIT_SIGN_EXTEND |
| 120 | EXTRA_INITIALIZE | ||
| 60 | FIRST_PTY_LETTER | 121 | FIRST_PTY_LETTER |
| 122 | FREE_RETURN_TYPE | ||
| 123 | FSCALE | ||
| 124 | F_SETOWN_BUG | ||
| 125 | GC_MARK_STACK | ||
| 126 | GC_SETJMP_WORKS | ||
| 127 | GETPGRP_NO_ARG | ||
| 128 | GNU_MALLOC | ||
| 129 | HAVE_ALLOCA | ||
| 130 | HAVE_BROKEN_INET_ADDR | ||
| 131 | HAVE_CLOSEDIR | ||
| 132 | HAVE_CONFIG_H | ||
| 133 | HAVE_CRTN | ||
| 134 | HAVE_GETTIMEOFDAY | ||
| 135 | HAVE_INET_SOCKETS | ||
| 136 | HAVE_LIBDNET | ||
| 137 | HAVE_LIBINTL | ||
| 138 | HAVE_LIBRESOLV | ||
| 61 | HAVE_PTYS | 139 | HAVE_PTYS |
| 140 | HAVE_SELECT | ||
| 62 | HAVE_SOCKETS | 141 | HAVE_SOCKETS |
| 63 | HAVE_SYSVIPC | 142 | HAVE_SYSVIPC |
| 143 | HAVE_SYSV_SIGPAUSE | ||
| 144 | HAVE_SYS_WAIT_H | ||
| 145 | HAVE_TCATTR | ||
| 64 | HAVE_TERMIO | 146 | HAVE_TERMIO |
| 147 | HAVE_TERMIOS | ||
| 148 | HAVE_TEXT_START | ||
| 65 | HAVE_UNION_WAIT | 149 | HAVE_UNION_WAIT |
| 150 | HAVE_UNISTD_H | ||
| 151 | HAVE_UNIX_DOMAIN | ||
| 152 | HAVE_UTIMES | ||
| 153 | HAVE_WAIT_HEADER | ||
| 154 | HAVE_X11R6 | ||
| 155 | HAVE_XFREE386 | ||
| 156 | HAVE_XSCREENNUMBEROFSCREEN | ||
| 157 | HAVE_X_WINDOWS | ||
| 158 | HEADER_INCL_IN_TEXT | ||
| 159 | IBMAIX | ||
| 160 | INHIBIT_X11R6_XIM | ||
| 161 | INIT_BAUD_RATE | ||
| 162 | INTEL386 | ||
| 66 | INTERRUPT_INPUT | 163 | INTERRUPT_INPUT |
| 164 | IN_UNEXEC | ||
| 165 | IRIS | ||
| 166 | IRIS_4D | ||
| 167 | IRIX6_5 | ||
| 168 | IRIX_FORCE_32_BITS | ||
| 169 | ISC4_0 | ||
| 170 | ISI68K | ||
| 171 | KEEP_OLD_PADDR | ||
| 172 | KEEP_OLD_TEXT_SCNPTR | ||
| 67 | KERNEL_FILE | 173 | KERNEL_FILE |
| 68 | LDAV_SYMBOL | 174 | LDAV_SYMBOL |
| 175 | LD_SWITCH_MACHINE | ||
| 176 | LD_SWITCH_SYSTEM | ||
| 177 | LD_SWITCH_SYSTEM_TEMACS | ||
| 178 | LD_TEXT_START_ADDR | ||
| 69 | LIBS_DEBUG | 179 | LIBS_DEBUG |
| 180 | LIBS_MACHINE | ||
| 181 | LIBS_SYSTEM | ||
| 182 | LIBS_TERMCAP | ||
| 183 | LIBX11_MACHINE | ||
| 184 | LIBX11_SYSTEM | ||
| 185 | LIBXMU | ||
| 186 | LIB_GCC | ||
| 187 | LIB_MOTIF | ||
| 188 | LIB_STANDARD | ||
| 189 | LIB_X11_LIB | ||
| 190 | LINKER | ||
| 70 | LOAD_AVE_CVT | 191 | LOAD_AVE_CVT |
| 71 | LOAD_AVE_TYPE | 192 | LOAD_AVE_TYPE |
| 193 | LONG_ALIGN | ||
| 194 | L_SET | ||
| 195 | MAIL_PROGRAM_NAME | ||
| 72 | MAIL_USE_FLOCK | 196 | MAIL_USE_FLOCK |
| 73 | MASSC_REGISTER_BUG | 197 | MAKE_PARALLEL |
| 198 | MAXNAMLEN | ||
| 199 | MEMMOVE_MISSING | ||
| 200 | MEMORY_IN_STRING_H | ||
| 201 | MKDIR_PROTOTYPE | ||
| 202 | MOTIF | ||
| 203 | M_TERMINFO | ||
| 204 | NARROWPROTO | ||
| 205 | NBPC | ||
| 206 | NEED_ERRNO | ||
| 207 | NEED_NET_ERRNO_H | ||
| 208 | NEED_PTEM_H | ||
| 209 | NEED_SIOCTL | ||
| 210 | NEW_PROGRAM_H | ||
| 211 | NEW_SECTION_H | ||
| 212 | NLIST_NAME_UNION | ||
| 213 | NLIST_STRUCT | ||
| 74 | NOMULTIPLEJOBS | 214 | NOMULTIPLEJOBS |
| 75 | NONSYSTEM_DIR_LIBRARY | 215 | NONSYSTEM_DIR_LIBRARY |
| 216 | NOT_C_CODE | ||
| 76 | NO_ARG_ARRAY | 217 | NO_ARG_ARRAY |
| 218 | NO_GET_LOAD_AVG | ||
| 219 | NO_MODE_T | ||
| 220 | NO_PTY_H | ||
| 77 | NO_REMAP | 221 | NO_REMAP |
| 222 | NO_SIOCTL_H | ||
| 223 | NO_SOCKETS_IN_FILE_SYSTEM | ||
| 224 | NO_TERMIO | ||
| 78 | NO_UNION_TYPE | 225 | NO_UNION_TYPE |
| 226 | NSIG | ||
| 227 | NSIG_MINIMUM | ||
| 228 | OBJECTS_MACHINE | ||
| 229 | OLDXMENU_OPTIONS | ||
| 230 | OLD_PROGRAM_H | ||
| 231 | OLD_SECTION_H | ||
| 232 | ORDINARY_LINK | ||
| 233 | OSF1 | ||
| 234 | O_NDELAY | ||
| 235 | PATCH_INDEX | ||
| 236 | PENDING_OUTPUT_COUNT | ||
| 237 | PERROR | ||
| 238 | PNTR_COMPARISON_TYPE | ||
| 239 | POSIX_SIGNALS | ||
| 240 | PREFER_VSUSP | ||
| 241 | PTY_ITERATION | ||
| 242 | PTY_MAJOR | ||
| 243 | PTY_MINOR | ||
| 79 | PTY_NAME_SPRINTF | 244 | PTY_NAME_SPRINTF |
| 245 | PTY_OPEN | ||
| 80 | PTY_TTY_NAME_SPRINTF | 246 | PTY_TTY_NAME_SPRINTF |
| 81 | RTU | 247 | PURESIZE |
| 248 | READ | ||
| 249 | REL_ALLOC | ||
| 250 | RISCiX | ||
| 251 | RISCiX_1_1 | ||
| 252 | RUN_TIME_REMAP | ||
| 253 | SECTION_ALIGNMENT | ||
| 254 | SEEK | ||
| 255 | SEGMENT_MASK | ||
| 256 | SEGSIZ | ||
| 257 | SETUP_SLAVE_PTY | ||
| 258 | SHORTNAMES | ||
| 259 | SHORT_CAST_BUG | ||
| 260 | SIGMASKTYPE | ||
| 261 | SIGNALS_VIA_CHARACTERS | ||
| 262 | SIGN_EXTEND_CHAR | ||
| 263 | SIGTYPE | ||
| 264 | SIG_BLOCK | ||
| 265 | SKTPAIR | ||
| 266 | SMAIL | ||
| 267 | START_FILES | ||
| 268 | SUNOS4 | ||
| 269 | SUNOS4_SHARED_LIBRARIES | ||
| 270 | SUNOS_LOCALTIME_BUG | ||
| 271 | SVR4 | ||
| 272 | SWITCH_ENUM_BUG | ||
| 273 | SYMS_START | ||
| 274 | SYSTEM_MALLOC | ||
| 82 | SYSTEM_TYPE | 275 | SYSTEM_TYPE |
| 276 | SYSV_PTYS | ||
| 277 | SYSV_SYSTEM_DIR | ||
| 278 | S_IEXEC | ||
| 279 | S_IFDIR | ||
| 280 | S_IFLNK | ||
| 281 | S_IFMT | ||
| 282 | S_IREAD | ||
| 283 | S_IWRITE | ||
| 284 | TAHOE_REGISTER_BUG | ||
| 285 | TERMCAP | ||
| 286 | TERMINFO | ||
| 287 | TEXT_END | ||
| 288 | TEXT_START | ||
| 289 | TEXT_START_ADDR | ||
| 290 | THIS_IS_MAKEFILE | ||
| 291 | TPIX | ||
| 292 | ULIMIT_BREAK_VALUE | ||
| 293 | UMAX | ||
| 294 | UMAX4_2 | ||
| 295 | UNEXEC | ||
| 296 | USE_DL_STUBS | ||
| 297 | USE_GETOBAUD | ||
| 298 | USE_MMAP_FOR_BUFFERS | ||
| 299 | USE_NONANSI_DEFUN | ||
| 300 | USG | ||
| 301 | USG5 | ||
| 302 | USG5_3 | ||
| 303 | USG5_4 | ||
| 304 | USG_JOBCTRL | ||
| 305 | USG_SHARED_LIBRARIES | ||
| 306 | V3x | ||
| 83 | VIRT_ADDR_VARIES | 307 | VIRT_ADDR_VARIES |
| 84 | WORDS_BIG_ENDIAN | 308 | WORDS_BIG_ENDIAN |
| 85 | WORD_MACHINE | 309 | WORD_MACHINE |
| 310 | WRITE | ||
| 311 | X11R4 | ||
| 312 | XENIX | ||
| 313 | XICCC | ||
| 314 | XINT | ||
| 315 | XSET | ||
| 316 | XUINT | ||
| 317 | X_DEFAULT_FONT | ||
| 318 | _ABIN32 | ||
| 319 | _CX_UX | ||
| 320 | _MIPS_SZLONG | ||
| 321 | _POSIX_SOURCE | ||
| 322 | __main | ||
| 323 | _longjmp | ||
| 324 | _setjmp | ||
| 325 | _sobuf | ||
| 326 | aix386 | ||
| 327 | alloca | ||
| 328 | amdahl_uts | ||
| 329 | aouthdr | ||
| 330 | celerity | ||
| 331 | clipper | ||
| 332 | convex | ||
| 333 | data_start | ||
| 334 | drem | ||
| 335 | dsize | ||
| 336 | elxsi | ||
| 337 | emacs | ||
| 338 | entry | ||
| 339 | etext | ||
| 340 | fatal | ||
| 341 | fchmod | ||
| 342 | getpgrp | ||
| 343 | ghs | ||
| 344 | hp9000s800 | ||
| 345 | index | ||
| 346 | internal_with_output_to_temp_buffer | ||
| 347 | jmp_buf | ||
| 348 | longjmp | ||
| 86 | m68000 | 349 | m68000 |
| 350 | m68k | ||
| 351 | m88k | ||
| 352 | magic | ||
| 353 | mc68000 | ||
| 354 | mips | ||
| 355 | orion | ||
| 356 | sel | ||
| 87 | subprocesses | 357 | subprocesses |
| 358 | sun | ||
| 359 | sun_68881 | ||
| 360 | sun_fpa | ||
| 361 | sun_soft | ||
| 362 | text_start | ||
| 88 | 363 | ||
| 89 | # arch-tag: bc80061a-1168-4911-9766-46aaf2640250 | 364 | # arch-tag: bc80061a-1168-4911-9766-46aaf2640250 |
diff --git a/admin/ChangeLog b/admin/ChangeLog index 31ff5af2bac..016f7d10c3a 100644 --- a/admin/ChangeLog +++ b/admin/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * notes/copyright: | ||
| 4 | * MAINTAINERS: Remove references to files that have been removed. | ||
| 5 | |||
| 1 | 2008-01-04 Glenn Morris <rgm@gnu.org> | 6 | 2008-01-04 Glenn Morris <rgm@gnu.org> |
| 2 | 7 | ||
| 3 | * admin.el (set-copyright): Add lib-src/ebrowse.c. | 8 | * admin.el (set-copyright): Add lib-src/ebrowse.c. |
diff --git a/admin/MAINTAINERS b/admin/MAINTAINERS index f14bc2068db..805b19a6b7d 100644 --- a/admin/MAINTAINERS +++ b/admin/MAINTAINERS | |||
| @@ -143,7 +143,6 @@ src/cmds.c | |||
| 143 | src/coding.c | 143 | src/coding.c |
| 144 | src/composite.c | 144 | src/composite.c |
| 145 | src/config.in | 145 | src/config.in |
| 146 | src/cxux-crt0.s | ||
| 147 | src/data.c | 146 | src/data.c |
| 148 | src/dispnew.c | 147 | src/dispnew.c |
| 149 | src/doc.c | 148 | src/doc.c |
| @@ -196,15 +195,11 @@ src/tparam.c | |||
| 196 | src/undo.c | 195 | src/undo.c |
| 197 | src/unexaix.c | 196 | src/unexaix.c |
| 198 | src/unexalpha.c | 197 | src/unexalpha.c |
| 199 | src/unexapollo.c | ||
| 200 | src/unexconvex.c | ||
| 201 | src/unexec.c | 198 | src/unexec.c |
| 202 | src/unexelf.c | 199 | src/unexelf.c |
| 203 | src/unexenix.c | ||
| 204 | src/unexhp9k800.c | 200 | src/unexhp9k800.c |
| 205 | src/unexmips.c | 201 | src/unexmips.c |
| 206 | src/unexnext.c | 202 | src/unexnext.c |
| 207 | src/unexsni.c | ||
| 208 | src/unexsunos4.c | 203 | src/unexsunos4.c |
| 209 | src/unexw32.c | 204 | src/unexw32.c |
| 210 | src/vm-limit.c | 205 | src/vm-limit.c |
diff --git a/admin/notes/copyright b/admin/notes/copyright index 4ab01feeae3..aac2328b7f4 100644 --- a/admin/notes/copyright +++ b/admin/notes/copyright | |||
| @@ -405,7 +405,7 @@ lisp/term/README | |||
| 405 | 405 | ||
| 406 | Accordingly, FSF copyright was added. | 406 | Accordingly, FSF copyright was added. |
| 407 | 407 | ||
| 408 | src/unexhp9k800.c (and dependent src/m/sr2k.h) | 408 | src/unexhp9k800.c |
| 409 | http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html | 409 | http://lists.gnu.org/archive/html/emacs-devel/2007-02/msg00138.html |
| 410 | - briefly removed due to legal uncertainly Jan-Mar 2007. The | 410 | - briefly removed due to legal uncertainly Jan-Mar 2007. The |
| 411 | relevant assignment is under "hp9k800" in copyright.list. File was | 411 | relevant assignment is under "hp9k800" in copyright.list. File was |
| @@ -480,7 +480,7 @@ says it is obsolete: | |||
| 480 | 480 | ||
| 481 | src/m/mips4.h, news-risc.h, pmax.h | 481 | src/m/mips4.h, news-risc.h, pmax.h |
| 482 | src/s/aix3-2.h, bsd386.h, hpux8.h, hpux9.h, irix4-0.h, irix5-0.h, | 482 | src/s/aix3-2.h, bsd386.h, hpux8.h, hpux9.h, irix4-0.h, irix5-0.h, |
| 483 | isc2-2.h, netbsd.h, osf1.h, sol2-3.h, sunos4-0.h, usg5-4-2.h | 483 | netbsd.h, sol2-3.h, usg5-4-2.h |
| 484 | - all these (not obviously trivial) files were missing copyrights | 484 | - all these (not obviously trivial) files were missing copyrights |
| 485 | till Feb 2007, when FSF copyright was added. Matt Norwood advised: | 485 | till Feb 2007, when FSF copyright was added. Matt Norwood advised: |
| 486 | 486 | ||
| @@ -515,16 +515,6 @@ pmax.h | |||
| 515 | I would say started non-trivial (1993, jimb, heavily based | 515 | I would say started non-trivial (1993, jimb, heavily based |
| 516 | on irix4-0.h). A few borderline non-tiny changes since. | 516 | on irix4-0.h). A few borderline non-tiny changes since. |
| 517 | 517 | ||
| 518 | ? isc2-2.h | ||
| 519 | started trivial. 2 non-tiny change, in 1993. looks to | ||
| 520 | be made up of several small tweaks from various sources. maybe | ||
| 521 | non-tiny total changes from Karl Berry (no emacs assignment). | ||
| 522 | |||
| 523 | osf1.h | ||
| 524 | started trivial. grown in tiny changes (one borderline tiny change | ||
| 525 | by fx in 2000, but most code was later removed). non-tiny addition | ||
| 526 | in 2002 from m/alpha.h, but that was and is copyright FSF. | ||
| 527 | |||
| 528 | usg5-4-2.h | 518 | usg5-4-2.h |
| 529 | started non-trivial, but was heavily based on usg5-4.h, which was and is | 519 | started non-trivial, but was heavily based on usg5-4.h, which was and is |
| 530 | copyright FSF. only tiny changes since installed. | 520 | copyright FSF. only tiny changes since installed. |
| @@ -533,7 +523,7 @@ sol2-3.h | |||
| 533 | started trivial. only non-tiny change (1994) incorporated code from | 523 | started trivial. only non-tiny change (1994) incorporated code from |
| 534 | usg5-4.h, which was and is copyright FSF. | 524 | usg5-4.h, which was and is copyright FSF. |
| 535 | 525 | ||
| 536 | aix3-2.h, bsd386.h, hpux8.h, hpux9.h, netbsd.h, sunos4-0.h | 526 | aix3-2.h, bsd386.h, hpux8.h, hpux9.h, netbsd.h |
| 537 | started trivial, grown in tiny changes. | 527 | started trivial, grown in tiny changes. |
| 538 | 528 | ||
| 539 | netbsd.h: | 529 | netbsd.h: |
| @@ -548,8 +538,8 @@ Someone might want to tweak the copyright years (for dates before | |||
| 548 | Note: erring on the side of caution, I also added notices to some | 538 | Note: erring on the side of caution, I also added notices to some |
| 549 | files I thought might be considered non-trivial (if one includes | 539 | files I thought might be considered non-trivial (if one includes |
| 550 | comment) in s/: | 540 | comment) in s/: |
| 551 | aix4-1.h hiuxmpp.h hiuxwe2.h hpux10.h irix6-0.h irix6-5.h isc3-0.h | 541 | aix4-1.h hpux10.h irix6-0.h irix6-5.h |
| 552 | ptx4.h sol2.h sunos4-0.h | 542 | ptx4.h sol2.h |
| 553 | 543 | ||
| 554 | (everything with > 30 non-blank lines, which at least is _some_ kind of | 544 | (everything with > 30 non-blank lines, which at least is _some_ kind of |
| 555 | system) | 545 | system) |
diff --git a/configure.in b/configure.in index 6d727dd642a..19471e32582 100644 --- a/configure.in +++ b/configure.in | |||
| @@ -217,8 +217,8 @@ dnl quotation begins | |||
| 217 | ### based on the machine portion of the configuration name, and an s- | 217 | ### based on the machine portion of the configuration name, and an s- |
| 218 | ### file based on the operating system portion. However, it turns out | 218 | ### file based on the operating system portion. However, it turns out |
| 219 | ### that each m/*.h file is pretty manufacturer-specific - for | 219 | ### that each m/*.h file is pretty manufacturer-specific - for |
| 220 | ### example, apollo.h, hp9000s300.h, mega68k, news.h, and tad68k are | 220 | ### example hp9000s300.h is a 68000 machine; |
| 221 | ### all 68000 machines; mips.h, pmax.h, and news-risc are all MIPS | 221 | ### mips.h, pmax.h are all MIPS |
| 222 | ### machines. So we basically have to have a special case for each | 222 | ### machines. So we basically have to have a special case for each |
| 223 | ### configuration name. | 223 | ### configuration name. |
| 224 | ### | 224 | ### |
| @@ -279,14 +279,12 @@ dnl see the `changequote' comment above. | |||
| 279 | mips-*-netbsd*) machine=pmax ;; | 279 | mips-*-netbsd*) machine=pmax ;; |
| 280 | mipsel-*-netbsd*) machine=pmax ;; | 280 | mipsel-*-netbsd*) machine=pmax ;; |
| 281 | mipseb-*-netbsd*) machine=pmax ;; | 281 | mipseb-*-netbsd*) machine=pmax ;; |
| 282 | ns32k-*-netbsd*) machine=ns32000 ;; | ||
| 283 | powerpc-*-netbsd*) machine=macppc ;; | 282 | powerpc-*-netbsd*) machine=macppc ;; |
| 284 | sparc*-*-netbsd*) machine=sparc ;; | 283 | sparc*-*-netbsd*) machine=sparc ;; |
| 285 | vax-*-netbsd*) machine=vax ;; | 284 | vax-*-netbsd*) machine=vax ;; |
| 286 | arm-*-netbsd*) machine=arm ;; | 285 | arm-*-netbsd*) machine=arm ;; |
| 287 | x86_64-*-netbsd*) machine=amdx86-64 ;; | 286 | x86_64-*-netbsd*) machine=amdx86-64 ;; |
| 288 | hppa-*-netbsd*) machine=hp800 ;; | 287 | hppa-*-netbsd*) machine=hp800 ;; |
| 289 | shle-*-netbsd*) machine=sh3el ;; | ||
| 290 | esac | 288 | esac |
| 291 | ;; | 289 | ;; |
| 292 | 290 | ||
| @@ -299,10 +297,8 @@ dnl see the `changequote' comment above. | |||
| 299 | hppa-*-openbsd*) machine=hp9000s300 ;; | 297 | hppa-*-openbsd*) machine=hp9000s300 ;; |
| 300 | i386-*-openbsd*) machine=intel386 ;; | 298 | i386-*-openbsd*) machine=intel386 ;; |
| 301 | m68k-*-openbsd*) machine=hp9000s300 ;; | 299 | m68k-*-openbsd*) machine=hp9000s300 ;; |
| 302 | m88k-*-openbsd*) machine=aviion ;; | ||
| 303 | mips64-*-openbsd*) machine=mips64 ;; | 300 | mips64-*-openbsd*) machine=mips64 ;; |
| 304 | powerpc-*-openbsd*) machine=macppc ;; | 301 | powerpc-*-openbsd*) machine=macppc ;; |
| 305 | sh-*-openbsd*) machine=sh3el ;; | ||
| 306 | sparc*-*-openbsd*) machine=sparc ;; | 302 | sparc*-*-openbsd*) machine=sparc ;; |
| 307 | vax-*-openbsd*) machine=vax ;; | 303 | vax-*-openbsd*) machine=vax ;; |
| 308 | x86_64-*-openbsd*) machine=amdx86-64 ;; | 304 | x86_64-*-openbsd*) machine=amdx86-64 ;; |
| @@ -318,16 +314,6 @@ dnl see the `changequote' comment above. | |||
| 318 | esac | 314 | esac |
| 319 | ;; | 315 | ;; |
| 320 | 316 | ||
| 321 | ## Acorn RISCiX: | ||
| 322 | arm-acorn-riscix1.1* ) | ||
| 323 | machine=acorn opsys=riscix1-1 | ||
| 324 | ;; | ||
| 325 | arm-acorn-riscix1.2* | arm-acorn-riscix ) | ||
| 326 | ## This name is riscix12 instead of riscix1.2 | ||
| 327 | ## to avoid a file name conflict on MSDOS. | ||
| 328 | machine=acorn opsys=riscix12 | ||
| 329 | ;; | ||
| 330 | |||
| 331 | ## BSDI ports | 317 | ## BSDI ports |
| 332 | *-*-bsdi* ) | 318 | *-*-bsdi* ) |
| 333 | opsys=bsdi | 319 | opsys=bsdi |
| @@ -345,19 +331,6 @@ dnl see the `changequote' comment above. | |||
| 345 | esac | 331 | esac |
| 346 | ;; | 332 | ;; |
| 347 | 333 | ||
| 348 | ## Alliant machines | ||
| 349 | ## Strictly speaking, we need the version of the alliant operating | ||
| 350 | ## system to choose the right machine file, but currently the | ||
| 351 | ## configuration name doesn't tell us enough to choose the right | ||
| 352 | ## one; we need to give alliants their own operating system name to | ||
| 353 | ## do this right. When someone cares, they can help us. | ||
| 354 | fx80-alliant-* ) | ||
| 355 | machine=alliant4 opsys=bsd4-2 | ||
| 356 | ;; | ||
| 357 | i860-alliant-* ) | ||
| 358 | machine=alliant-2800 opsys=bsd4-3 | ||
| 359 | ;; | ||
| 360 | |||
| 361 | ## Alpha (DEC) machines. | 334 | ## Alpha (DEC) machines. |
| 362 | alpha*-dec-osf* ) | 335 | alpha*-dec-osf* ) |
| 363 | machine=alpha opsys=osf1 | 336 | machine=alpha opsys=osf1 |
| @@ -383,21 +356,6 @@ dnl see the `changequote' comment above. | |||
| 383 | machine=arm opsys=gnu-linux | 356 | machine=arm opsys=gnu-linux |
| 384 | ;; | 357 | ;; |
| 385 | 358 | ||
| 386 | ## Altos 3068 | ||
| 387 | m68*-altos-sysv* ) | ||
| 388 | machine=altos opsys=usg5-2 | ||
| 389 | ;; | ||
| 390 | |||
| 391 | ## Amdahl UTS | ||
| 392 | 580-amdahl-sysv* ) | ||
| 393 | machine=amdahl opsys=usg5-2-2 | ||
| 394 | ;; | ||
| 395 | |||
| 396 | ## Apollo, Domain/OS | ||
| 397 | m68*-apollo-* ) | ||
| 398 | machine=apollo opsys=bsd4-3 | ||
| 399 | ;; | ||
| 400 | |||
| 401 | ## Apple Darwin / Mac OS X | 359 | ## Apple Darwin / Mac OS X |
| 402 | *-apple-darwin* ) | 360 | *-apple-darwin* ) |
| 403 | case "${canonical}" in | 361 | case "${canonical}" in |
| @@ -416,101 +374,16 @@ dnl see the `changequote' comment above. | |||
| 416 | fi | 374 | fi |
| 417 | ;; | 375 | ;; |
| 418 | 376 | ||
| 419 | ## AT&T 3b2, 3b5, 3b15, 3b20 | ||
| 420 | we32k-att-sysv* ) | ||
| 421 | machine=att3b opsys=usg5-2-2 | ||
| 422 | ;; | ||
| 423 | |||
| 424 | ## AT&T 3b1 - The Mighty Unix PC! | ||
| 425 | m68*-att-sysv* ) | ||
| 426 | machine=7300 opsys=usg5-2-2 | ||
| 427 | ;; | ||
| 428 | |||
| 429 | ## Bull dpx20 | ||
| 430 | rs6000-bull-bosx* ) | ||
| 431 | machine=ibmrs6000 opsys=aix3-2 | ||
| 432 | ;; | ||
| 433 | |||
| 434 | ## Bull dpx2 | ||
| 435 | m68*-bull-sysv3* ) | ||
| 436 | machine=dpx2 opsys=usg5-3 | ||
| 437 | ;; | ||
| 438 | |||
| 439 | ## Bull sps7 | ||
| 440 | m68*-bull-sysv2* ) | ||
| 441 | machine=sps7 opsys=usg5-2 | ||
| 442 | ;; | ||
| 443 | |||
| 444 | ## CCI 5/32, 6/32 -- see "Tahoe". | ||
| 445 | |||
| 446 | ## Celerity | ||
| 447 | ## I don't know what configuration name to use for this; config.sub | ||
| 448 | ## doesn't seem to know anything about it. Hey, Celerity users, get | ||
| 449 | ## in touch with us! | ||
| 450 | celerity-celerity-bsd* ) | ||
| 451 | machine=celerity opsys=bsd4-2 | ||
| 452 | ;; | ||
| 453 | |||
| 454 | ## Clipper | ||
| 455 | ## What operating systems does this chip run that Emacs has been | ||
| 456 | ## tested on? | ||
| 457 | clipper-* ) | ||
| 458 | machine=clipper | ||
| 459 | ## We'll use the catch-all code at the bottom to guess the | ||
| 460 | ## operating system. | ||
| 461 | ;; | ||
| 462 | |||
| 463 | ## Compaq Nonstop | 377 | ## Compaq Nonstop |
| 464 | mips-compaq-nonstopux* ) | 378 | mips-compaq-nonstopux* ) |
| 465 | machine=nonstopux opsys=nonstopux | 379 | machine=nonstopux opsys=nonstopux |
| 466 | ;; | 380 | ;; |
| 467 | 381 | ||
| 468 | ## Convex | ||
| 469 | *-convex-bsd* | *-convex-convexos* ) | ||
| 470 | machine=convex opsys=bsd4-3 | ||
| 471 | ## Prevents spurious white space in makefiles - d.m.cooke@larc.nasa.gov | ||
| 472 | NON_GNU_CPP="cc -E -P" | ||
| 473 | ;; | ||
| 474 | |||
| 475 | ## Cubix QBx/386 | 382 | ## Cubix QBx/386 |
| 476 | i[3456]86-cubix-sysv* ) | 383 | i[3456]86-cubix-sysv* ) |
| 477 | machine=intel386 opsys=usg5-3 | 384 | machine=intel386 opsys=usg5-3 |
| 478 | ;; | 385 | ;; |
| 479 | 386 | ||
| 480 | ## Cydra 5 | ||
| 481 | cydra*-cydrome-sysv* ) | ||
| 482 | machine=cydra5 opsys=usg5-3 | ||
| 483 | ;; | ||
| 484 | |||
| 485 | ## Data General AViiON Machines | ||
| 486 | ## DG changed naming conventions with the release of 5.4.4.10, they | ||
| 487 | ## dropped the initial 5.4 but left the intervening R. Because of the | ||
| 488 | ## R this shouldn't conflict with older versions of the OS (which I | ||
| 489 | ## think were named like dgux4.*). In addition, DG new AViiONs series | ||
| 490 | ## uses either Motorola M88k or Intel Pentium CPUs. | ||
| 491 | m88k-dg-dguxR4.* | m88k-dg-dgux4* ) | ||
| 492 | machine=aviion opsys=dgux4 | ||
| 493 | ;; | ||
| 494 | m88k-dg-dgux5.4R3* | m88k-dg-dgux5.4.3* ) | ||
| 495 | ## This name is dgux5-4-3 instead of dgux5-4r3 | ||
| 496 | ## to avoid a file name conflict on MSDOS. | ||
| 497 | machine=aviion opsys=dgux5-4-3 | ||
| 498 | ;; | ||
| 499 | m88k-dg-dgux5.4R2* | m88k-dg-dgux5.4.2* ) | ||
| 500 | machine=aviion opsys=dgux5-4r2 | ||
| 501 | ;; | ||
| 502 | m88k-dg-dgux* ) | ||
| 503 | machine=aviion opsys=dgux | ||
| 504 | ;; | ||
| 505 | |||
| 506 | ## Data General AViiON Intel (x86) Machines | ||
| 507 | ## Exists from 5.4.3 (current i586-dg-dguxR4.11) | ||
| 508 | ## Ehud Karni, 1998-may-30, ehud@unix.simonwiesel.co.il | ||
| 509 | i[345]86-dg-dguxR4* ) | ||
| 510 | machine=aviion-intel opsys=dgux4 | ||
| 511 | ;; | ||
| 512 | |||
| 513 | ## DECstations | ||
| 514 | mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* ) | 387 | mips-dec-ultrix[0-3].* | mips-dec-ultrix4.0* | mips-dec-bsd4.2* ) |
| 515 | machine=pmax opsys=bsd4-2 | 388 | machine=pmax opsys=bsd4-2 |
| 516 | ;; | 389 | ;; |
| @@ -527,96 +400,6 @@ dnl see the `changequote' comment above. | |||
| 527 | machine=pmax opsys=mach-bsd4-3 | 400 | machine=pmax opsys=mach-bsd4-3 |
| 528 | ;; | 401 | ;; |
| 529 | 402 | ||
| 530 | ## Motorola Delta machines | ||
| 531 | m68k-motorola-sysv* | m68000-motorola-sysv* ) | ||
| 532 | machine=delta opsys=usg5-3 | ||
| 533 | if test -z "`type gnucc | grep 'not found'`" | ||
| 534 | then | ||
| 535 | if test -s /etc/167config | ||
| 536 | then CC="gnucc -m68040" | ||
| 537 | else CC="gnucc -m68881" | ||
| 538 | fi | ||
| 539 | else | ||
| 540 | if test -z "`type gcc | grep 'not found'`" | ||
| 541 | then CC=gcc | ||
| 542 | else CC=cc | ||
| 543 | fi | ||
| 544 | fi | ||
| 545 | ;; | ||
| 546 | m88k-motorola-sysv4* ) | ||
| 547 | # jbotte@bnr.ca says that UNIX_System_V <hostName> 4.0 R40V4.3 m88k mc88110 | ||
| 548 | # needs POSIX_SIGNALS and therefore needs usg5-4-2. | ||
| 549 | # I hope there are not other 4.0 versions for this machine | ||
| 550 | # which really need usg5-4 instead. | ||
| 551 | machine=delta88k opsys=usg5-4-2 | ||
| 552 | ;; | ||
| 553 | m88k-motorola-sysv* | m88k-motorola-m88kbcs* ) | ||
| 554 | machine=delta88k opsys=usg5-3 | ||
| 555 | ;; | ||
| 556 | |||
| 557 | ## Dual machines | ||
| 558 | m68*-dual-sysv* ) | ||
| 559 | machine=dual opsys=usg5-2 | ||
| 560 | ;; | ||
| 561 | m68*-dual-uniplus* ) | ||
| 562 | machine=dual opsys=unipl5-2 | ||
| 563 | ;; | ||
| 564 | |||
| 565 | ## Elxsi 6400 | ||
| 566 | elxsi-elxsi-sysv* ) | ||
| 567 | machine=elxsi opsys=usg5-2 | ||
| 568 | ;; | ||
| 569 | |||
| 570 | ## Encore machines | ||
| 571 | ns16k-encore-bsd* ) | ||
| 572 | machine=ns16000 opsys=umax | ||
| 573 | ;; | ||
| 574 | |||
| 575 | ## The GEC 63 - apparently, this port isn't really finished yet. | ||
| 576 | # I'm sure we finished off the last of the machines, though. -- fx | ||
| 577 | |||
| 578 | ## Gould Power Node and NP1 | ||
| 579 | pn-gould-bsd4.2* ) | ||
| 580 | machine=gould opsys=bsd4-2 | ||
| 581 | ;; | ||
| 582 | pn-gould-bsd4.3* ) | ||
| 583 | machine=gould opsys=bsd4-3 | ||
| 584 | ;; | ||
| 585 | np1-gould-bsd* ) | ||
| 586 | machine=gould-np1 opsys=bsd4-3 | ||
| 587 | ;; | ||
| 588 | |||
| 589 | ## Harris Night Hawk machines running CX/UX (a 5000 looks just like a 4000 | ||
| 590 | ## as far as Emacs is concerned). | ||
| 591 | m88k-harris-cxux* ) | ||
| 592 | # Build needs to be different on 7.0 and later releases | ||
| 593 | case "`uname -r`" in | ||
| 594 | [56].[0-9] ) machine=nh4000 opsys=cxux ;; | ||
| 595 | [7].[0-9] ) machine=nh4000 opsys=cxux7 ;; | ||
| 596 | esac | ||
| 597 | NON_GNU_CPP="/lib/cpp" | ||
| 598 | ;; | ||
| 599 | ## Harris ecx or gcx running CX/UX (Series 1200, Series 3000) | ||
| 600 | m68k-harris-cxux* ) | ||
| 601 | machine=nh3000 opsys=cxux | ||
| 602 | ;; | ||
| 603 | ## Harris power pc NightHawk running Power UNIX (Series 6000) | ||
| 604 | powerpc-harris-powerunix ) | ||
| 605 | machine=nh6000 opsys=powerunix | ||
| 606 | NON_GNU_CPP="cc -Xo -E -P" | ||
| 607 | ;; | ||
| 608 | ## SR2001/SR2201 running HI-UX/MPP | ||
| 609 | hppa1.1-hitachi-hiuxmpp* ) | ||
| 610 | machine=sr2k opsys=hiuxmpp | ||
| 611 | ;; | ||
| 612 | hppa1.1-hitachi-hiuxwe2* ) | ||
| 613 | machine=sr2k opsys=hiuxwe2 | ||
| 614 | ;; | ||
| 615 | ## Honeywell XPS100 | ||
| 616 | xps*-honeywell-sysv* ) | ||
| 617 | machine=xps100 opsys=usg5-2 | ||
| 618 | ;; | ||
| 619 | |||
| 620 | ## HP 9000 series 200 or 300 | 403 | ## HP 9000 series 200 or 300 |
| 621 | m68*-hp-bsd* ) | 404 | m68*-hp-bsd* ) |
| 622 | machine=hp9000s300 opsys=bsd4-3 | 405 | machine=hp9000s300 opsys=bsd4-3 |
| @@ -678,21 +461,7 @@ dnl see the `changequote' comment above. | |||
| 678 | machine=hp800 opsys=nextstep | 461 | machine=hp800 opsys=nextstep |
| 679 | ;; | 462 | ;; |
| 680 | 463 | ||
| 681 | ## Orion machines | ||
| 682 | orion-orion-bsd* ) | ||
| 683 | machine=orion opsys=bsd4-2 | ||
| 684 | ;; | ||
| 685 | clipper-orion-bsd* ) | ||
| 686 | machine=orion105 opsys=bsd4-2 | ||
| 687 | ;; | ||
| 688 | |||
| 689 | ## IBM machines | 464 | ## IBM machines |
| 690 | i[3456]86-ibm-aix1.1* ) | ||
| 691 | machine=ibmps2-aix opsys=usg5-2-2 | ||
| 692 | ;; | ||
| 693 | i[3456]86-ibm-aix1.[23]* | i[3456]86-ibm-aix* ) | ||
| 694 | machine=ibmps2-aix opsys=usg5-3 | ||
| 695 | ;; | ||
| 696 | i370-ibm-aix*) | 465 | i370-ibm-aix*) |
| 697 | machine=ibm370aix opsys=usg5-3 | 466 | machine=ibm370aix opsys=usg5-3 |
| 698 | ;; | 467 | ;; |
| @@ -729,51 +498,12 @@ dnl see the `changequote' comment above. | |||
| 729 | rs6000-ibm-aix* | powerpc-ibm-aix* ) | 498 | rs6000-ibm-aix* | powerpc-ibm-aix* ) |
| 730 | machine=ibmrs6000 opsys=aix3-2 | 499 | machine=ibmrs6000 opsys=aix3-2 |
| 731 | ;; | 500 | ;; |
| 732 | romp-ibm-bsd4.3* ) | ||
| 733 | machine=ibmrt opsys=bsd4-3 | ||
| 734 | ;; | ||
| 735 | romp-ibm-bsd4.2* ) | ||
| 736 | machine=ibmrt opsys=bsd4-2 | ||
| 737 | ;; | ||
| 738 | romp-ibm-aos4.3* ) | ||
| 739 | machine=ibmrt opsys=bsd4-3 | ||
| 740 | ;; | ||
| 741 | romp-ibm-aos4.2* ) | ||
| 742 | machine=ibmrt opsys=bsd4-2 | ||
| 743 | ;; | ||
| 744 | romp-ibm-aos* ) | ||
| 745 | machine=ibmrt opsys=bsd4-3 | ||
| 746 | ;; | ||
| 747 | romp-ibm-bsd* ) | ||
| 748 | machine=ibmrt opsys=bsd4-3 | ||
| 749 | ;; | ||
| 750 | romp-ibm-aix* ) | ||
| 751 | machine=ibmrt-aix opsys=usg5-2-2 | ||
| 752 | ;; | ||
| 753 | |||
| 754 | ## Integrated Solutions `Optimum V' | ||
| 755 | m68*-isi-bsd4.2* ) | ||
| 756 | machine=isi-ov opsys=bsd4-2 | ||
| 757 | ;; | ||
| 758 | m68*-isi-bsd4.3* ) | ||
| 759 | machine=isi-ov opsys=bsd4-3 | ||
| 760 | ;; | ||
| 761 | |||
| 762 | ## Intel 386 machines where we do care about the manufacturer | ||
| 763 | i[3456]86-intsys-sysv* ) | ||
| 764 | machine=is386 opsys=usg5-2-2 | ||
| 765 | ;; | ||
| 766 | 501 | ||
| 767 | ## Prime EXL | 502 | ## Prime EXL |
| 768 | i[3456]86-prime-sysv* ) | 503 | i[3456]86-prime-sysv* ) |
| 769 | machine=i386 opsys=usg5-3 | 504 | machine=i386 opsys=usg5-3 |
| 770 | ;; | 505 | ;; |
| 771 | 506 | ||
| 772 | ## Sequent Symmetry running Dynix | ||
| 773 | i[3456]86-sequent-bsd* ) | ||
| 774 | machine=symmetry opsys=bsd4-3 | ||
| 775 | ;; | ||
| 776 | |||
| 777 | ## Sequent Symmetry running ptx 4, which is a modified SVR4. | 507 | ## Sequent Symmetry running ptx 4, which is a modified SVR4. |
| 778 | i[3456]86-sequent-ptx4* | i[3456]86-sequent-sysv4* ) | 508 | i[3456]86-sequent-ptx4* | i[3456]86-sequent-sysv4* ) |
| 779 | machine=sequent-ptx opsys=ptx4 | 509 | machine=sequent-ptx opsys=ptx4 |
| @@ -798,28 +528,11 @@ dnl see the `changequote' comment above. | |||
| 798 | machine=ncr386 opsys=usg5-4-2 | 528 | machine=ncr386 opsys=usg5-4-2 |
| 799 | ;; | 529 | ;; |
| 800 | 530 | ||
| 801 | ## Intel Paragon OSF/1 | ||
| 802 | i860-intel-osf1* ) | ||
| 803 | machine=paragon opsys=osf1 NON_GNU_CPP=/usr/mach/lib/cpp | ||
| 804 | ;; | ||
| 805 | |||
| 806 | ## Intel 860 | ||
| 807 | i860-*-sysv4* ) | ||
| 808 | machine=i860 opsys=usg5-4 | ||
| 809 | NON_GNU_CC="/bin/cc" # Ie, not the one in /usr/ucb/cc. | ||
| 810 | NON_GNU_CPP="/usr/ccs/lib/cpp" # cc -E tokenizes macro expansion. | ||
| 811 | ;; | ||
| 812 | |||
| 813 | ## Macintosh PowerPC | 531 | ## Macintosh PowerPC |
| 814 | powerpc*-*-linux-gnu* ) | 532 | powerpc*-*-linux-gnu* ) |
| 815 | machine=macppc opsys=gnu-linux | 533 | machine=macppc opsys=gnu-linux |
| 816 | ;; | 534 | ;; |
| 817 | 535 | ||
| 818 | ## Megatest machines | ||
| 819 | m68*-megatest-bsd* ) | ||
| 820 | machine=mega68 opsys=bsd4-2 | ||
| 821 | ;; | ||
| 822 | |||
| 823 | ## Workstations sold by MIPS | 536 | ## Workstations sold by MIPS |
| 824 | ## This is not necessarily all workstations using the MIPS processor - | 537 | ## This is not necessarily all workstations using the MIPS processor - |
| 825 | ## Irises are produced by SGI, and DECstations by DEC. | 538 | ## Irises are produced by SGI, and DECstations by DEC. |
| @@ -857,54 +570,11 @@ dnl see the `changequote' comment above. | |||
| 857 | machine=m68k opsys=nextstep | 570 | machine=m68k opsys=nextstep |
| 858 | ;; | 571 | ;; |
| 859 | 572 | ||
| 860 | ## The complete machine from National Semiconductor | ||
| 861 | ns32k-ns-genix* ) | ||
| 862 | machine=ns32000 opsys=usg5-2 | ||
| 863 | ;; | ||
| 864 | |||
| 865 | ## NCR machines | ||
| 866 | m68*-ncr-sysv2* | m68*-ncr-sysvr2* ) | ||
| 867 | machine=tower32 opsys=usg5-2-2 | ||
| 868 | ;; | ||
| 869 | m68*-ncr-sysv3* | m68*-ncr-sysvr3* ) | ||
| 870 | machine=tower32v3 opsys=usg5-3 | ||
| 871 | ;; | ||
| 872 | |||
| 873 | ## NEC EWS4800 | 573 | ## NEC EWS4800 |
| 874 | mips-nec-sysv4*) | 574 | mips-nec-sysv4*) |
| 875 | machine=ews4800 opsys=ux4800 | 575 | machine=ews4800 opsys=ux4800 |
| 876 | ;; | 576 | ;; |
| 877 | 577 | ||
| 878 | ## Nixdorf Targon 31 | ||
| 879 | m68*-nixdorf-sysv* ) | ||
| 880 | machine=targon31 opsys=usg5-2-2 | ||
| 881 | ;; | ||
| 882 | |||
| 883 | ## Nu (TI or LMI) | ||
| 884 | m68*-nu-sysv* ) | ||
| 885 | machine=nu opsys=usg5-2 | ||
| 886 | ;; | ||
| 887 | |||
| 888 | ## Plexus | ||
| 889 | m68*-plexus-sysv* ) | ||
| 890 | machine=plexus opsys=usg5-2 | ||
| 891 | ;; | ||
| 892 | |||
| 893 | ## Pyramid machines | ||
| 894 | ## I don't really have any idea what sort of processor the Pyramid has, | ||
| 895 | ## so I'm assuming it is its own architecture. | ||
| 896 | pyramid-pyramid-bsd* ) | ||
| 897 | machine=pyramid opsys=bsd4-2 | ||
| 898 | ;; | ||
| 899 | |||
| 900 | ## Sequent Balance | ||
| 901 | ns32k-sequent-bsd4.2* ) | ||
| 902 | machine=sequent opsys=bsd4-2 | ||
| 903 | ;; | ||
| 904 | ns32k-sequent-bsd4.3* ) | ||
| 905 | machine=sequent opsys=bsd4-3 | ||
| 906 | ;; | ||
| 907 | |||
| 908 | ## Siemens Nixdorf | 578 | ## Siemens Nixdorf |
| 909 | mips-siemens-sysv* | mips-sni-sysv*) | 579 | mips-siemens-sysv* | mips-sni-sysv*) |
| 910 | machine=mips-siemens opsys=usg5-4 | 580 | machine=mips-siemens opsys=usg5-4 |
| @@ -913,13 +583,6 @@ dnl see the `changequote' comment above. | |||
| 913 | ;; | 583 | ;; |
| 914 | 584 | ||
| 915 | ## Silicon Graphics machines | 585 | ## Silicon Graphics machines |
| 916 | ## Iris 2500 and Iris 2500 Turbo (aka the Iris 3030) | ||
| 917 | m68*-sgi-iris3.5* ) | ||
| 918 | machine=irist opsys=iris3-5 | ||
| 919 | ;; | ||
| 920 | m68*-sgi-iris3.6* | m68*-sgi-iris*) | ||
| 921 | machine=irist opsys=iris3-6 | ||
| 922 | ;; | ||
| 923 | ## Iris 4D | 586 | ## Iris 4D |
| 924 | mips-sgi-irix3* ) | 587 | mips-sgi-irix3* ) |
| 925 | machine=iris4d opsys=irix3-3 | 588 | machine=iris4d opsys=irix3-3 |
| @@ -950,31 +613,6 @@ dnl see the `changequote' comment above. | |||
| 950 | machine=iris4d opsys=irix5-2 | 613 | machine=iris4d opsys=irix5-2 |
| 951 | ;; | 614 | ;; |
| 952 | 615 | ||
| 953 | ## SONY machines | ||
| 954 | m68*-sony-bsd4.2* ) | ||
| 955 | machine=news opsys=bsd4-2 | ||
| 956 | ;; | ||
| 957 | m68*-sony-bsd4.3* ) | ||
| 958 | machine=news opsys=bsd4-3 | ||
| 959 | ;; | ||
| 960 | m68*-sony-newsos3* | m68*-sony-news3*) | ||
| 961 | machine=news opsys=bsd4-3 | ||
| 962 | ;; | ||
| 963 | mips-sony-bsd* | mips-sony-newsos4* | mips-sony-news4*) | ||
| 964 | machine=news-risc opsys=bsd4-3 | ||
| 965 | ;; | ||
| 966 | mips-sony-newsos6* ) | ||
| 967 | machine=news-r6 opsys=newsos6 | ||
| 968 | ;; | ||
| 969 | mips-sony-news* ) | ||
| 970 | machine=news-risc opsys=newsos5 | ||
| 971 | ;; | ||
| 972 | |||
| 973 | ## Stride | ||
| 974 | m68*-stride-sysv* ) | ||
| 975 | machine=stride opsys=usg5-2 | ||
| 976 | ;; | ||
| 977 | |||
| 978 | ## Suns | 616 | ## Suns |
| 979 | sparc-*-linux-gnu* | sparc64-*-linux-gnu* ) | 617 | sparc-*-linux-gnu* | sparc64-*-linux-gnu* ) |
| 980 | machine=sparc opsys=gnu-linux | 618 | machine=sparc opsys=gnu-linux |
| @@ -984,10 +622,6 @@ dnl see the `changequote' comment above. | |||
| 984 | | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* | powerpc*-*-solaris2* \ | 622 | | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* | powerpc*-*-solaris2* \ |
| 985 | | rs6000-*-solaris2*) | 623 | | rs6000-*-solaris2*) |
| 986 | case "${canonical}" in | 624 | case "${canonical}" in |
| 987 | m68*-sunos1* ) machine=sun1 ;; | ||
| 988 | m68*-sunos2* ) machine=sun2 ;; | ||
| 989 | m68* ) machine=sun3 ;; | ||
| 990 | i[3456]86-sun-sunos[34]* ) machine=sun386 ;; | ||
| 991 | i[3456]86-*-* ) machine=intel386 ;; | 625 | i[3456]86-*-* ) machine=intel386 ;; |
| 992 | amd64-*-*|x86_64-*-*) machine=amdx86-64 ;; | 626 | amd64-*-*|x86_64-*-*) machine=amdx86-64 ;; |
| 993 | powerpcle* ) machine=powerpcle ;; | 627 | powerpcle* ) machine=powerpcle ;; |
| @@ -996,26 +630,6 @@ dnl see the `changequote' comment above. | |||
| 996 | * ) unported=yes ;; | 630 | * ) unported=yes ;; |
| 997 | esac | 631 | esac |
| 998 | case "${canonical}" in | 632 | case "${canonical}" in |
| 999 | ## The Sun386 didn't get past 4.0. | ||
| 1000 | i[3456]86-*-sunos4 ) opsys=sunos4-0 ;; | ||
| 1001 | *-sunos4.0* ) opsys=sunos4-0 ;; | ||
| 1002 | *-sunos4.1.[3-9]*noshare ) | ||
| 1003 | ## This name is sunos413 instead of sunos4-1-3 | ||
| 1004 | ## to avoid a file name conflict on MSDOS. | ||
| 1005 | opsys=sunos413 | ||
| 1006 | NON_GNU_CPP=/usr/lib/cpp | ||
| 1007 | NON_GCC_TEST_OPTIONS=-Bstatic | ||
| 1008 | GCC_TEST_OPTIONS=-static | ||
| 1009 | ;; | ||
| 1010 | *-sunos4.1.[3-9]* | *-sunos4shr*) | ||
| 1011 | opsys=sunos4shr | ||
| 1012 | NON_GNU_CPP=/usr/lib/cpp | ||
| 1013 | ;; | ||
| 1014 | *-sunos4* | *-sunos ) | ||
| 1015 | opsys=sunos4-1 | ||
| 1016 | NON_GCC_TEST_OPTIONS=-Bstatic | ||
| 1017 | GCC_TEST_OPTIONS=-static | ||
| 1018 | ;; | ||
| 1019 | *-sunos5.3* | *-solaris2.3* ) | 633 | *-sunos5.3* | *-solaris2.3* ) |
| 1020 | opsys=sol2-3 | 634 | opsys=sol2-3 |
| 1021 | NON_GNU_CPP=/usr/ccs/lib/cpp | 635 | NON_GNU_CPP=/usr/ccs/lib/cpp |
| @@ -1058,50 +672,11 @@ dnl see the `changequote' comment above. | |||
| 1058 | machine=sparc opsys=nextstep | 672 | machine=sparc opsys=nextstep |
| 1059 | ;; | 673 | ;; |
| 1060 | 674 | ||
| 1061 | ## Tadpole 68k | ||
| 1062 | m68*-tadpole-sysv* ) | ||
| 1063 | machine=tad68k opsys=usg5-3 | ||
| 1064 | ;; | ||
| 1065 | |||
| 1066 | ## Tahoe machines | ||
| 1067 | tahoe-tahoe-bsd4.2* ) | ||
| 1068 | machine=tahoe opsys=bsd4-2 | ||
| 1069 | ;; | ||
| 1070 | tahoe-tahoe-bsd4.3* ) | ||
| 1071 | machine=tahoe opsys=bsd4-3 | ||
| 1072 | ;; | ||
| 1073 | |||
| 1074 | ## Tandem Integrity S2 | 675 | ## Tandem Integrity S2 |
| 1075 | mips-tandem-sysv* ) | 676 | mips-tandem-sysv* ) |
| 1076 | machine=tandem-s2 opsys=usg5-3 | 677 | machine=tandem-s2 opsys=usg5-3 |
| 1077 | ;; | 678 | ;; |
| 1078 | 679 | ||
| 1079 | ## Tektronix XD88 | ||
| 1080 | m88k-tektronix-sysv3* ) | ||
| 1081 | machine=tekxd88 opsys=usg5-3 | ||
| 1082 | ;; | ||
| 1083 | |||
| 1084 | ## Tektronix 16000 box (6130?) | ||
| 1085 | ns16k-tektronix-bsd* ) | ||
| 1086 | machine=ns16000 opsys=bsd4-2 | ||
| 1087 | ;; | ||
| 1088 | ## Tektronix 4300 | ||
| 1089 | ## src/m/tek4300.h hints that this is a m68k machine. | ||
| 1090 | m68*-tektronix-bsd* ) | ||
| 1091 | machine=tek4300 opsys=bsd4-3 | ||
| 1092 | ;; | ||
| 1093 | |||
| 1094 | ## Titan P2 or P3 | ||
| 1095 | ## We seem to have lost the machine-description file titan.h! | ||
| 1096 | titan-titan-sysv* ) | ||
| 1097 | machine=titan opsys=usg5-3 | ||
| 1098 | ;; | ||
| 1099 | |||
| 1100 | ## Ustation E30 (SS5E) | ||
| 1101 | m68*-unisys-uniplus* ) | ||
| 1102 | machine=ustation opsystem=unipl5-2 | ||
| 1103 | ;; | ||
| 1104 | |||
| 1105 | ## Vaxen. | 680 | ## Vaxen. |
| 1106 | vax-dec-* ) | 681 | vax-dec-* ) |
| 1107 | machine=vax | 682 | machine=vax |
| @@ -1116,18 +691,6 @@ dnl see the `changequote' comment above. | |||
| 1116 | esac | 691 | esac |
| 1117 | ;; | 692 | ;; |
| 1118 | 693 | ||
| 1119 | ## Whitechapel MG1 | ||
| 1120 | ns16k-whitechapel-* ) | ||
| 1121 | machine=mg1 | ||
| 1122 | ## We don't know what sort of OS runs on these; we'll let the | ||
| 1123 | ## operating system guessing code below try. | ||
| 1124 | ;; | ||
| 1125 | |||
| 1126 | ## Wicat | ||
| 1127 | m68*-wicat-sysv* ) | ||
| 1128 | machine=wicat opsys=usg5-2 | ||
| 1129 | ;; | ||
| 1130 | |||
| 1131 | ## IA-64 | 694 | ## IA-64 |
| 1132 | ia64*-*-linux* ) | 695 | ia64*-*-linux* ) |
| 1133 | machine=ia64 opsys=gnu-linux | 696 | machine=ia64 opsys=gnu-linux |
| @@ -1141,24 +704,8 @@ dnl see the `changequote' comment above. | |||
| 1141 | *-darwin* ) opsys=darwin | 704 | *-darwin* ) opsys=darwin |
| 1142 | CPP="${CC-cc} -E -no-cpp-precomp" | 705 | CPP="${CC-cc} -E -no-cpp-precomp" |
| 1143 | ;; | 706 | ;; |
| 1144 | *-isc1.* | *-isc2.[01]* ) opsys=386-ix ;; | ||
| 1145 | *-isc2.2* ) opsys=isc2-2 ;; | ||
| 1146 | *-isc4.0* ) opsys=isc4-0 ;; | ||
| 1147 | *-isc4.* ) opsys=isc4-1 | ||
| 1148 | GCC_TEST_OPTIONS=-posix | ||
| 1149 | NON_GCC_TEST_OPTIONS=-Xp | ||
| 1150 | ;; | ||
| 1151 | *-isc* ) opsys=isc3-0 ;; | ||
| 1152 | *-esix5* ) opsys=esix5r4; NON_GNU_CPP=/usr/lib/cpp ;; | ||
| 1153 | *-esix* ) opsys=esix ;; | ||
| 1154 | *-xenix* ) opsys=xenix ;; | 707 | *-xenix* ) opsys=xenix ;; |
| 1155 | *-linux-gnu* ) opsys=gnu-linux ;; | 708 | *-linux-gnu* ) opsys=gnu-linux ;; |
| 1156 | *-sco3.2v4* ) opsys=sco4 ; NON_GNU_CPP=/lib/cpp ;; | ||
| 1157 | *-sco3.2v5* ) opsys=sco5 | ||
| 1158 | NON_GNU_CPP=/lib/cpp | ||
| 1159 | # Prevent -belf from being passed to $CPP. | ||
| 1160 | # /lib/cpp does not accept it. | ||
| 1161 | OVERRIDE_CPPFLAGS=" " | ||
| 1162 | ;; | 709 | ;; |
| 1163 | *-sysv4.2uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; | 710 | *-sysv4.2uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; |
| 1164 | *-sysv5uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; | 711 | *-sysv5uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;; |
| @@ -1186,11 +733,6 @@ dnl see the `changequote' comment above. | |||
| 1186 | RANLIB="ar -ts" | 733 | RANLIB="ar -ts" |
| 1187 | ;; | 734 | ;; |
| 1188 | 735 | ||
| 1189 | ## UXP/V | ||
| 1190 | f301-fujitsu-uxpv4.1) | ||
| 1191 | machine=f301 opsys=uxpv | ||
| 1192 | ;; | ||
| 1193 | |||
| 1194 | ## AMD x86-64 Linux-based GNU system | 736 | ## AMD x86-64 Linux-based GNU system |
| 1195 | x86_64-*-linux-gnu* ) | 737 | x86_64-*-linux-gnu* ) |
| 1196 | machine=amdx86-64 opsys=gnu-linux | 738 | machine=amdx86-64 opsys=gnu-linux |
| @@ -3388,9 +2930,9 @@ typedef unsigned size_t; | |||
| 3388 | # ifndef GC_SETJMP_WORKS | 2930 | # ifndef GC_SETJMP_WORKS |
| 3389 | /* GC_SETJMP_WORKS is nearly always appropriate for GCC -- | 2931 | /* GC_SETJMP_WORKS is nearly always appropriate for GCC -- |
| 3390 | see NON_SAVING_SETJMP in the target descriptions. */ | 2932 | see NON_SAVING_SETJMP in the target descriptions. */ |
| 3391 | /* Exceptions (see NON_SAVING_SETJMP in target description) are ns32k, | 2933 | /* Exceptions (see NON_SAVING_SETJMP in target description) are |
| 3392 | SCO5 non-ELF (but Emacs specifies ELF) and SVR3 on x86. | 2934 | SCO5 non-ELF (but Emacs specifies ELF) and SVR3 on x86. |
| 3393 | Fixme: Deal with ns32k, SVR3. */ | 2935 | Fixme: Deal with SVR3. */ |
| 3394 | # define GC_SETJMP_WORKS 1 | 2936 | # define GC_SETJMP_WORKS 1 |
| 3395 | # endif | 2937 | # endif |
| 3396 | # ifndef GC_LISP_OBJECT_ALIGNMENT | 2938 | # ifndef GC_LISP_OBJECT_ALIGNMENT |
diff --git a/doc/lispref/ChangeLog b/doc/lispref/ChangeLog index d0beaba9a86..9d69ae81f67 100644 --- a/doc/lispref/ChangeLog +++ b/doc/lispref/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * os.texi (System Environment): Remove references to OSes that are | ||
| 4 | not supported anymore. | ||
| 5 | |||
| 1 | 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> | 6 | 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 7 | ||
| 3 | * os.texi (System Environment): Remove mention for Masscomp. | 8 | * os.texi (System Environment): Remove mention for Masscomp. |
diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi index fc7003d7d84..d23ff1b2269 100644 --- a/doc/lispref/os.texi +++ b/doc/lispref/os.texi | |||
| @@ -645,9 +645,6 @@ Berkeley BSD. | |||
| 645 | @item cygwin | 645 | @item cygwin |
| 646 | Cygwin. | 646 | Cygwin. |
| 647 | 647 | ||
| 648 | @item dgux | ||
| 649 | Data General DGUX operating system. | ||
| 650 | |||
| 651 | @item gnu | 648 | @item gnu |
| 652 | the GNU system (using the GNU kernel, which consists of the HURD and Mach). | 649 | the GNU system (using the GNU kernel, which consists of the HURD and Mach). |
| 653 | 650 | ||
| @@ -670,9 +667,6 @@ MS-Windows. | |||
| 670 | @item next-mach | 667 | @item next-mach |
| 671 | NeXT Mach-based system. | 668 | NeXT Mach-based system. |
| 672 | 669 | ||
| 673 | @item unisoft-unix | ||
| 674 | UniSoft UniPlus. | ||
| 675 | |||
| 676 | @item usg-unix-v | 670 | @item usg-unix-v |
| 677 | AT&T System V. | 671 | AT&T System V. |
| 678 | 672 | ||
| @@ -683,8 +677,6 @@ VAX VMS. | |||
| 683 | Microsoft windows NT. The same executable supports Windows 9X, but the | 677 | Microsoft windows NT. The same executable supports Windows 9X, but the |
| 684 | value of @code{system-type} is @code{windows-nt} in either case. | 678 | value of @code{system-type} is @code{windows-nt} in either case. |
| 685 | 679 | ||
| 686 | @item xenix | ||
| 687 | SCO Xenix 386. | ||
| 688 | @end table | 680 | @end table |
| 689 | 681 | ||
| 690 | We do not wish to add new symbols to make finer distinctions unless it | 682 | We do not wish to add new symbols to make finer distinctions unless it |
diff --git a/etc/ChangeLog b/etc/ChangeLog index f3ff65730d0..e478380f863 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * PROBLEMS: | ||
| 4 | * MACHINES: Remove references to systems not supported anymore. | ||
| 5 | |||
| 1 | 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> | 6 | 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 7 | ||
| 3 | * MACHINES: Remove Masscomp. | 8 | * MACHINES: Remove Masscomp. |
diff --git a/etc/MACHINES b/etc/MACHINES index 028062d2e2c..a4ce691ba17 100644 --- a/etc/MACHINES +++ b/etc/MACHINES | |||
| @@ -31,55 +31,7 @@ to operating system names (i.e. sunos4.1) or architecture names (i.e. | |||
| 31 | hppa1.1). If you leave out the version number, the `configure' script | 31 | hppa1.1). If you leave out the version number, the `configure' script |
| 32 | will configure Emacs for the latest version it knows about. | 32 | will configure Emacs for the latest version it knows about. |
| 33 | 33 | ||
| 34 | Acorn RISCiX (arm-acorn-riscix1.2) | 34 | Alpha (DEC) running GNU/Linux (alpha-dec-linux-gnu) |
| 35 | |||
| 36 | Emacs 19.29 has changes that ought to support RISCiX 1.2. | ||
| 37 | |||
| 38 | Due to a bug in the RISCiX C compiler (3.4.5), emacs must | ||
| 39 | be built with gcc (versions 2.5.8 onwards). | ||
| 40 | |||
| 41 | In addition, you will need GNU sed and GNU make, as the RISCiX release | ||
| 42 | versions of these utilities cannot cope with building emacs-19! | ||
| 43 | |||
| 44 | GNU sed should be configured with: | ||
| 45 | |||
| 46 | env 'DEFS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \ | ||
| 47 | -Doptarg=gnu_optarg' ./configure | ||
| 48 | |||
| 49 | GNU make (3.72+) should be configured with: | ||
| 50 | |||
| 51 | env 'CFLAGS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \ | ||
| 52 | -Doptarg=gnu_optarg' ./configure | ||
| 53 | |||
| 54 | Emacs may be configured to use the X toolkit, by adding --with-x-toolkit | ||
| 55 | to the configure command. If you do this, you will need to edit the line | ||
| 56 | in src/Makefile which defines LIBW (about line 59) to read: | ||
| 57 | |||
| 58 | LIBW= -lXaw_n | ||
| 59 | |||
| 60 | This ensures that the non-shared widget library is used. | ||
| 61 | |||
| 62 | It is unlikely that this version of emacs will work with RISCiX 1.1. | ||
| 63 | |||
| 64 | Alliant (fx80-alliant-bsd): | ||
| 65 | |||
| 66 | 18.52 worked on system version 4. Previous Emacs versions were | ||
| 67 | known to work on previous system versions. | ||
| 68 | |||
| 69 | If you are using older versions of their operating system, you may | ||
| 70 | need to edit `src/config.h' to use `m/alliant1.h' (on version 1) or | ||
| 71 | `m/alliant.h' (on versions 2 and 3). | ||
| 72 | |||
| 73 | Alliant FX/2800 (i860-alliant-bsd) | ||
| 74 | |||
| 75 | Known to work with 19.26 and OS version 2.2, compiler version 1.3. | ||
| 76 | |||
| 77 | Alpha (DEC) running OSF/1 or GNU/Linux (alpha-dec-osf1, alpha-dec-linux-gnu) | ||
| 78 | |||
| 79 | For OSF/1 (aka Digital Unix) version 4.0, update 386, | ||
| 80 | it is reported that you need to run configure this way: | ||
| 81 | |||
| 82 | configure --x-includes=/usr/include --x-libraries=/usr/shlib | ||
| 83 | 35 | ||
| 84 | DEC C compiler version 5.9 (DEC C V5.9-005 on Digital UNIX V4.0f) | 36 | DEC C compiler version 5.9 (DEC C V5.9-005 on Digital UNIX V4.0f) |
| 85 | is reported to produce bogus binaries of Emacs 21.2 when the | 37 | 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) | |||
| 96 | said to have bugs that prevent Emacs from working with X (as of | 48 | said to have bugs that prevent Emacs from working with X (as of |
| 97 | November 1995). Recent releases work (July 2000). | 49 | November 1995). Recent releases work (July 2000). |
| 98 | 50 | ||
| 99 | Altos 3068 (m68k-altos-sysv) | ||
| 100 | |||
| 101 | 18.52 was said to work, provided you don't compile unexec.c with -O. | ||
| 102 | |||
| 103 | Amdahl UTS (580-amdahl-sysv) | ||
| 104 | |||
| 105 | Small changes for 18.38 were merged in 18.39. It is mostly | ||
| 106 | working, but at last report a bug sometimes causes Emacs to | ||
| 107 | grab very large amounts of memory. No fix or explanation | ||
| 108 | has yet been reported. It may be possible to find this bug | ||
| 109 | if you find which Emacs command it happens within and then | ||
| 110 | run that command with a breakpoint set at malloc. | ||
| 111 | |||
| 112 | The 5.2u370 compiler is so brain damaged that it is not | ||
| 113 | even worth trying to use it. Success was obtained with the | ||
| 114 | uts native C compiler on uts version 5.2.5. | ||
| 115 | |||
| 116 | Apple Macintosh running Mac OS X | 51 | Apple Macintosh running Mac OS X |
| 117 | 52 | ||
| 118 | For installation on all versions of the Mac OS platform, see the file | 53 | For installation on all versions of the Mac OS platform, see the file |
| @@ -141,151 +76,11 @@ Apple PowerPC Macintosh running GNU/Linux | |||
| 141 | After that, reconfigure and rebuild Emacs. It should now build | 76 | After that, reconfigure and rebuild Emacs. It should now build |
| 142 | successfully. | 77 | successfully. |
| 143 | 78 | ||
| 144 | Apollo running X Windows (m68k-apollo-bsd) | ||
| 145 | |||
| 146 | Apollo version now supports dumping. It has been tested on SR10.3 and | ||
| 147 | SR10.4. It certainly requires at least SR10.0, and maybe SR10.2. Be sure | ||
| 148 | to build in the BSD environment. | ||
| 149 | |||
| 150 | By default, everything is compiled with the switch "-W0,-opt,2". Don't try | ||
| 151 | to change this to full optimization (-O). The full optimizer (in Domain CC | ||
| 152 | 6.7, 6.8 and 6.9) generates some bad code in several modules which causes | ||
| 153 | the emacs window, under X, to be refreshed with each keystroke. | ||
| 154 | |||
| 155 | The configuration stuff should work for the most part. However, some Domain | ||
| 156 | installations may have to edit src/Makefile manually after it is created. | ||
| 157 | There are too many versions of both cc and X to automate this easily. | ||
| 158 | |||
| 159 | In `lib-src/Makefile', emacsclient compiles and works fine under CC 6.9. | ||
| 160 | It now probably works under other versions of the compiler, as well. | ||
| 161 | |||
| 162 | The Apollo Domain CC compiler will issue quite a few warning messages, | ||
| 163 | mostly complaining about incompatible pointers. In general, these are | ||
| 164 | harmless and can be ignored. If you discover otherwise, please submit a bug | ||
| 165 | report identifying the problem in detail. | ||
| 166 | |||
| 167 | When you try to dump emacs, you may get the message ".rwdi section needs | ||
| 168 | relocation." This means you are linking with some code that has compressed | ||
| 169 | data sections. In some cases this comes from linking with X libraries. Try | ||
| 170 | using shared X libraries instead. With some versions of Domain/OS this is | ||
| 171 | as simple as removing the "-lX11" from the LIBX line in src/Makefile. | ||
| 172 | |||
| 173 | When running the configure script, use the configuration name | ||
| 174 | "m68k-apollo-bsd". You will also need to use the "-with-gcc=no" and | ||
| 175 | "-with-x" options. Depending upon your site configuration, you may have to | ||
| 176 | use other configure options, as well. Examine the INSTALL file for other | ||
| 177 | configure options. | ||
| 178 | |||
| 179 | Check out the file 'lisp/x-apollo.el'. To use it, add | ||
| 180 | |||
| 181 | (load "x-apollo") | ||
| 182 | |||
| 183 | to your .emacs file. It provides useful default Apollo function key | ||
| 184 | bindings. | ||
| 185 | |||
| 186 | AT&T 3b2, 3b5, 3b15, 3b20 (we32k-att-sysv) | ||
| 187 | |||
| 188 | Emacs will probably not work with certain kernel constants too small. | ||
| 189 | |||
| 190 | In param.h CDLIMIT should be at least (1L << 12) in order to allow | ||
| 191 | processes to write up to 2 Mbyte files. This parameter is configurable | ||
| 192 | by normal means in /etc/master.d/kernel; examine that file for the | ||
| 193 | symbol CDLIMIT or ULIMIT, and raise it by several powers of 2. Then | ||
| 194 | do normal kernel rebuild things via "cd /boot; mkboot -k KERNEL" and so | ||
| 195 | forth. | ||
| 196 | |||
| 197 | In seg.h NSEGP and STACKSEG should be at least 16 and 4 respectively | ||
| 198 | to allow processes with total size of up to 2Mbytes. | ||
| 199 | However, I'm told it is unlikely this would fail to be true. | ||
| 200 | |||
| 201 | The MAXMEM may also prevent Emacs from running. The file | ||
| 202 | 3B-MAXMEM in this directory explains how to increase MAXMEM. | ||
| 203 | |||
| 204 | On some of these machines, you may need to define IN_SCCS_ID | ||
| 205 | in config.h to make Emacs work. Supposedly you can tell whether | ||
| 206 | this is necessary by checking something in /usr/include/sys/time.h; | ||
| 207 | we do not know precisely what. | ||
| 208 | |||
| 209 | AT&T 7300 or 3b1 (m68k-att-sysv) | ||
| 210 | |||
| 211 | 18.52 worked. If you have strange troubles with dumping | ||
| 212 | Emacs, delete the last few lines from `src/m/7300.h' and recompile. | ||
| 213 | These lines are supposed to produce a sharable executable. | ||
| 214 | |||
| 215 | `src/m/7300.h' defines SHORTNAMES because operating system versions | ||
| 216 | older than 3.5 did not support long symbol names. Version 3.5 does | ||
| 217 | support them, so you can remove the #define SHORTNAMES in that | ||
| 218 | version. | ||
| 219 | |||
| 220 | Bull DPX/2 models 2nn or 3nn (m68k-bull-sysv3) | ||
| 221 | |||
| 222 | Minor fixes merged into 19.19, which should work with CC or GCC. | ||
| 223 | |||
| 224 | You should compile with all the POSIX stuff: undef _SYSV and define | ||
| 225 | _POSIX_SOURCE, _XOPEN_SOURCE and _BULL_SOURCE. | ||
| 226 | |||
| 227 | On bos2.00.45 there is a bug that makes the F_SETOWN fcntl | ||
| 228 | call enters in an infinite loop. F_SETOWN_BUG has been defined to avoid | ||
| 229 | calling it. | ||
| 230 | |||
| 231 | Bull DPX/20 (rs6000-bull-bosx) | ||
| 232 | |||
| 233 | Version 19 works. | ||
| 234 | |||
| 235 | Bull sps7 (m68k-bull-sysv2) | ||
| 236 | |||
| 237 | Changes partially merged in version 19, but some fixes are probably required. | ||
| 238 | |||
| 239 | CCI 5/32, 6/32 | ||
| 240 | |||
| 241 | See "Tahoe". | ||
| 242 | |||
| 243 | Celerity (celerity-celerity-bsd4.2) | ||
| 244 | |||
| 245 | Version 18.49 worked. This configuration name is a hack, because we | ||
| 246 | don't know the processor used by Celerities. If someone | ||
| 247 | who uses a Celerity could get in touch with us, we can teach | ||
| 248 | config.sub a better name for the configuration. | ||
| 249 | |||
| 250 | Clipper (clipper-???) | ||
| 251 | |||
| 252 | Version 19 has support for some brand of clipper system. If you | ||
| 253 | have successfully built Emacs 19 on some sort of clipper system, let | ||
| 254 | us know so we can flesh out this entry. | ||
| 255 | |||
| 256 | Note that the Orion 105 is also a clipper, but some system-related | ||
| 257 | parameters are different. | ||
| 258 | |||
| 259 | Convex (c1-convex-bsd, c2-convex-bsd, c32-convex-bsd, c34-convex-bsd, | ||
| 260 | c38-convex-bsd) | ||
| 261 | |||
| 262 | Support updated and residual bugs fixed in 19.26. | ||
| 263 | |||
| 264 | Cubix QBx/386 (i386-cubix-sysv) | 79 | Cubix QBx/386 (i386-cubix-sysv) |
| 265 | 80 | ||
| 266 | Changes merged in 19.1. Systems before 2/A/0 may fail to compile etags.c | 81 | Changes merged in 19.1. Systems before 2/A/0 may fail to compile etags.c |
| 267 | due to a compiler bug. | 82 | due to a compiler bug. |
| 268 | 83 | ||
| 269 | Cydra 5 (cydra-cydrome-sysv) | ||
| 270 | |||
| 271 | 18.51 worked in one version of their operating system but stopped | ||
| 272 | working in a newer version. This has not been fixed. | ||
| 273 | |||
| 274 | Data General Aviion (m88k-dg-dgux) | ||
| 275 | |||
| 276 | 19.23 works; however, the GCC provided with DGUX 5.4R3.00 fails to | ||
| 277 | compile src/emacs.c. GCC 2.5.8 does work. | ||
| 278 | The 19.26 pretest was reported to work; no word on which compiler. | ||
| 279 | System versions other than DGUX 5.4R3.00 have not been tested. | ||
| 280 | |||
| 281 | DGUX 5.4R3.10 works with 19.29 and 19.30. | ||
| 282 | |||
| 283 | DGUX R4.11 contains changes to the stdio internals and it doesn't work | ||
| 284 | with versions before 20.2 without patches. 20.2 works in interactive | ||
| 285 | mode but usually fails in batch mode. The problem is that using | ||
| 286 | stderr in the dumped emacs usually leads to a segmentation fault. | ||
| 287 | Only m88k has been tested. | ||
| 288 | |||
| 289 | DECstation (mips-dec-ultrix or mips-dec-osf) | 84 | DECstation (mips-dec-ultrix or mips-dec-osf) |
| 290 | 85 | ||
| 291 | This machine is the older Mips-based DECstation. | 86 | This machine is the older Mips-based DECstation. |
| @@ -319,45 +114,6 @@ Motorola Delta 147 (m68k-motorola-sysv) | |||
| 319 | The installation script chooses the compiler itself. gnucc is | 114 | The installation script chooses the compiler itself. gnucc is |
| 320 | preferred. | 115 | preferred. |
| 321 | 116 | ||
| 322 | Motorola Delta 187 (m88k-motorola-sysv, | ||
| 323 | m88k-motorola-sysvr4, or | ||
| 324 | m88k-motorola-m88kbcs) | ||
| 325 | |||
| 326 | The 19.26 pretest was reported to run on SVR3. However, if you | ||
| 327 | use --with-x-toolkit on svr3, you will have problems compiling some | ||
| 328 | files because time.h and sys/time.h get included twice. | ||
| 329 | One fix is to edit those files to protect against multiple inclusion. | ||
| 330 | |||
| 331 | As of version 19.13, Emacs was reported to run under SYSVr3 and SYSVr4. | ||
| 332 | |||
| 333 | Dual running System V (m68k-dual-sysv) | ||
| 334 | |||
| 335 | As of 17.46, this worked except for a few changes | ||
| 336 | needed in unexec.c. | ||
| 337 | |||
| 338 | Dual running Uniplus (m68k-dual-uniplus) | ||
| 339 | |||
| 340 | Worked, as of 17.51. | ||
| 341 | |||
| 342 | Elxsi 6400 (elxsi-elxsi-sysv) | ||
| 343 | |||
| 344 | Changes for 12.0 release are in 19.1. | ||
| 345 | Dumping should work now. | ||
| 346 | |||
| 347 | Encore machine (ns16k-encore-bsd) | ||
| 348 | |||
| 349 | This machine bizarrely uses 4.2BSD modified to use the COFF format | ||
| 350 | for object files. Works (as of 18.40). For the APC processor you | ||
| 351 | must enable two lines at the end of `src/s/umax.h', which are commented | ||
| 352 | out in the file as distributed. | ||
| 353 | |||
| 354 | WARNING: If you compile Emacs with the "-O" compiler switch, you | ||
| 355 | must also use the "-q enter_exits" switch so that all functions have | ||
| 356 | stack frames. Otherwise routines that call `alloca' all lose. | ||
| 357 | |||
| 358 | A kernel bug in some system versions causes input characters to be lost | ||
| 359 | occasionally. | ||
| 360 | |||
| 361 | Fujitsu DS/90 (sparc-fujitsu-sysv4) | 117 | Fujitsu DS/90 (sparc-fujitsu-sysv4) |
| 362 | 118 | ||
| 363 | Changes merged in 20.3. | 119 | Changes merged in 20.3. |
| @@ -368,50 +124,10 @@ GEC 63 (local-gec63-usg5.2) | |||
| 368 | more work. Let us know if you get this working, and we'll give it a | 124 | more work. Let us know if you get this working, and we'll give it a |
| 369 | real configuration name. | 125 | real configuration name. |
| 370 | 126 | ||
| 371 | Gould Power Node (pn-gould-bsd4.2 or pn-gould-bsd4.3) | ||
| 372 | |||
| 373 | 18.36 worked on versions 1.2 and 2.0 of the operating system. | ||
| 374 | |||
| 375 | On UTX/32 2.0, use pn-gould-bsd4.3. | ||
| 376 | |||
| 377 | On UTX/32 1.2 and UTX/32S 1.0, use pn-gould-bsd4.2 and note that | ||
| 378 | compiling `lib-src/sorted-doc' tickles a compiler bug: remove the -g | ||
| 379 | flag to cc in the makefile. | ||
| 380 | |||
| 381 | UTX/32 1.3 has a bug in the bcopy library routine. Fix it by | ||
| 382 | #undef BSTRING in `src/m/gould.h'. | ||
| 383 | |||
| 384 | Version 19 incorporates support for releases 2.1 and later of UTX/32. | ||
| 385 | A site running a pre-release of 2.1 should #define RELEASE2_1 in config.h. | ||
| 386 | |||
| 387 | Gould NP1 (np1-gould-bsd) | ||
| 388 | |||
| 389 | Version 19 supposedly works. | ||
| 390 | |||
| 391 | Harris Night Hawk (m68k-harris-cxux or m88k-harris-cxux) | ||
| 392 | |||
| 393 | This port was added in 19.23. The configuration actually tested was | ||
| 394 | a Night Hawk 4800 running CX/UX 7.0. | ||
| 395 | |||
| 396 | If you have GCC ported and want to build with it, you probably need to | ||
| 397 | change things (like compiler switches) defined in the s/cxux.h file. | ||
| 398 | |||
| 399 | If you have X11R6 installed in /usr/lib, configure will fail to find | ||
| 400 | it and may find X11R5 instead. To work around this problem, use | ||
| 401 | --x-libraries=/usr/lib when you run configure. | ||
| 402 | |||
| 403 | With CX/UX 7.0 and later releases, you need to build after setting the | ||
| 404 | SDE_TARGET environment variable to COFF (a port using ELF and shared | ||
| 405 | libraries has not yet been done). | ||
| 406 | |||
| 407 | Harris Power PC (powerpc-harris-powerunix) | 127 | Harris Power PC (powerpc-harris-powerunix) |
| 408 | 128 | ||
| 409 | Patches have been merged in 19.31. | 129 | Patches have been merged in 19.31. |
| 410 | 130 | ||
| 411 | Honeywell XPS100 (xps100-honeywell-sysv) | ||
| 412 | |||
| 413 | Config file added in version 19. | ||
| 414 | |||
| 415 | Hewlett-Packard 9000 series 200 or 300 (m68k-hp-bsd or m68k-hp-hpux | 131 | Hewlett-Packard 9000 series 200 or 300 (m68k-hp-bsd or m68k-hp-hpux |
| 416 | or m68k-hp-netbsd) | 132 | or m68k-hp-netbsd) |
| 417 | 133 | ||
| @@ -532,35 +248,6 @@ HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux | |||
| 532 | do not require any special software). If the file "/etc/filesets/C" | 248 | do not require any special software). If the file "/etc/filesets/C" |
| 533 | exists on your machine, you have this software, otherwise you do not. | 249 | exists on your machine, you have this software, otherwise you do not. |
| 534 | 250 | ||
| 535 | High Level Hardware Orion (orion-highlevel-bsd) | ||
| 536 | |||
| 537 | This is the original microprogrammed hardware. | ||
| 538 | Machine description file ought to work. | ||
| 539 | |||
| 540 | High Level Hardware Orion 1/05 (clipper-highlevel-bsd) | ||
| 541 | |||
| 542 | Changes merged in 18.52. This is the one with the Clipper cpu. | ||
| 543 | Note that systems which lack NFS need LOAD_AVE_TYPE changed to `double'. | ||
| 544 | |||
| 545 | C compiler has a bug; it loops compiling eval.c. | ||
| 546 | Compile it by hand without optimization. | ||
| 547 | |||
| 548 | HITACHI SR2001/SR2201 series (hppa1.1-hitachi-hiuxwe2) | ||
| 549 | |||
| 550 | These machines are based on PA architecture running HI-UX/MPP | ||
| 551 | (based on OSF1. `MPP' stands for `Massively Parallel Processor'). | ||
| 552 | |||
| 553 | Emacs 19.34 is believed to work; its pretest was tested | ||
| 554 | both on SR2001 (output of `uname -rv' is `00-01-BB 0') and | ||
| 555 | SR2201 (`02-00 0'). | ||
| 556 | |||
| 557 | Emacs 20.7 was reported to build on a system whose `uname -rs' | ||
| 558 | output is `HI-UX/MPP 03-04'. | ||
| 559 | |||
| 560 | The machine description file is `src/m/sr2k.h' is based on | ||
| 561 | `src/m/hp800.h'. The system description file is `src/s/hiuxwe2.h' | ||
| 562 | based on `src/s/osf1.h'. Note that this system doesn't use COFF. | ||
| 563 | |||
| 564 | IBM PS/2 (i386-ibm-aix1.1 or i386-ibm-aix1.2) | 251 | IBM PS/2 (i386-ibm-aix1.1 or i386-ibm-aix1.2) |
| 565 | 252 | ||
| 566 | Changes merged in version 19. You may need to copy | 253 | Changes merged in version 19. You may need to copy |
| @@ -604,19 +291,6 @@ IBM RS/6000 (rs6000-ibm-aix*) | |||
| 604 | If anyone can fix the above problems, or confirm that they don't happen | 291 | If anyone can fix the above problems, or confirm that they don't happen |
| 605 | with certain versions of various programs, we would appreciate it. | 292 | with certain versions of various programs, we would appreciate it. |
| 606 | 293 | ||
| 607 | IBM RT/PC (romp-ibm-bsd or romp-ibm-aix) | ||
| 608 | |||
| 609 | Use romp-ibm-bsd for the 4.2-like system and romp-ibm-aix for AIX. | ||
| 610 | 19.22 is reported to work under bsd. We don't know about AIX. | ||
| 611 | |||
| 612 | On BSD, if you have trouble, try compiling with a different compiler. | ||
| 613 | |||
| 614 | On AIX, the file /usr/lib/samples/hft/hftctl.c must be compiled into | ||
| 615 | hftctl.o, with this result left in the src directory (hftctl.c is | ||
| 616 | part of the standard AIX distribution). | ||
| 617 | |||
| 618 | window.c must not be compiled with -O on AIX. | ||
| 619 | |||
| 620 | IBM System/390 running GNU/Linux (s390-*-linux-gnu) | 294 | IBM System/390 running GNU/Linux (s390-*-linux-gnu) |
| 621 | 295 | ||
| 622 | As of Emacs 21.2, a 31-bit only version is supported on this | 296 | 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) | |||
| 638 | in a system header file, which confuses Emacs (which thinks that UMAX | 312 | in a system header file, which confuses Emacs (which thinks that UMAX |
| 639 | indicates the Umax operating system). | 313 | indicates the Umax operating system). |
| 640 | 314 | ||
| 641 | Intel 386 (i386-*-isc, i386-*-esix, i386-*-bsdi2, | 315 | Intel 386 (i386-*-bsdi2, i386-*-freebsd, i386-*-linux-gnu, |
| 642 | i386-*-xenix, i386-*-freebsd, i386-*-linux-gnu, | ||
| 643 | i386-*-sol2.4, i386-*-sysv3, i386-intsys-sysv, | 316 | i386-*-sol2.4, i386-*-sysv3, i386-intsys-sysv, |
| 644 | i386-*-sysv4, i386-*-sysv4.2, | 317 | i386-*-sysv4, i386-*-sysv4.2, |
| 645 | i386-*-sysv5.3, i386-*-bsd4.2, i386-*-cygwin, | 318 | i386-*-sysv5.3, i386-*-bsd4.2, i386-*-cygwin, |
| 646 | i386-*-sco3.2v4, i386-*-bsd386, i386-*-386bsd, | 319 | i386-*-bsd386, i386-*-386bsd, |
| 647 | i386-*-msdos, i386-*-windowsnt. | 320 | i386-*-msdos, i386-*-windowsnt. |
| 648 | i386... can be replaced with i486... or i586...) | 321 | i386... can be replaced with i486... or i586...) |
| 649 | 322 | ||
| @@ -654,13 +327,11 @@ Intel 386 (i386-*-isc, i386-*-esix, i386-*-bsdi2, | |||
| 654 | When using the ISC configurations, be sure to specify the isc | 327 | When using the ISC configurations, be sure to specify the isc |
| 655 | version number - for example, if you're running ISC 3.0, use | 328 | version number - for example, if you're running ISC 3.0, use |
| 656 | i386-unknown-isc3.0 as your configuration name. | 329 | i386-unknown-isc3.0 as your configuration name. |
| 657 | Use i386-*-esix for Esix; Emacs runs as of version 19.6. | ||
| 658 | Use i386-*-linux-gnu for GNU/Linux systems; Emacs runs as of version 19.26. | 330 | Use i386-*-linux-gnu for GNU/Linux systems; Emacs runs as of version 19.26. |
| 659 | Use i386-*-cygwin for Cygwin; Emacs builds as of version 22.1, in both X11 | 331 | Use i386-*-cygwin for Cygwin; Emacs builds as of version 22.1, in both X11 |
| 660 | and non-X11 modes. (The Cygwin site has source and binaries for 21.2.) | 332 | and non-X11 modes. (The Cygwin site has source and binaries for 21.2.) |
| 661 | Use i386-intsys-sysv for Integrated Solutions 386 machines. | 333 | Use i386-intsys-sysv for Integrated Solutions 386 machines. |
| 662 | It may also be correct for Microport systems. | 334 | It may also be correct for Microport systems. |
| 663 | Use i386-*-sco3.2v4 for SCO 3.2v4; Emacs runs as of version 19.26. | ||
| 664 | 335 | ||
| 665 | On GNU/Linux systems, Emacs 19.23 was said to work properly with libc | 336 | On GNU/Linux systems, Emacs 19.23 was said to work properly with libc |
| 666 | version 4.5.21, but not with 4.5.19. If your system uses QMAGIC | 337 | 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, | |||
| 692 | For System V release 4, use i386-*-sysv4. | 363 | For System V release 4, use i386-*-sysv4. |
| 693 | For System V release 4.2, use i386-*-sysv4.2. | 364 | For System V release 4.2, use i386-*-sysv4.2. |
| 694 | 365 | ||
| 695 | If you are using Xenix, see notes at end under Xenix. | ||
| 696 | If you are using Esix, see notes at end under Esix. | ||
| 697 | If you are using SCO Unix, see notes at end under SCO. | 366 | If you are using SCO Unix, see notes at end under SCO. |
| 698 | 367 | ||
| 699 | On 386bsd, NetBSD and FreeBSD, at one time, it was necessary to use | 368 | On 386bsd, NetBSD and FreeBSD, at one time, it was necessary to use |
| @@ -774,11 +443,6 @@ Iris 4D (mips-sgi-irix[456].*) | |||
| 774 | could also try reinstalling the same version of GCC, and telling us | 443 | could also try reinstalling the same version of GCC, and telling us |
| 775 | whether that fixes the problem. | 444 | whether that fixes the problem. |
| 776 | 445 | ||
| 777 | Megatest (m68k-megatest-bsd) | ||
| 778 | |||
| 779 | Emacs 15 worked; do not have any reports about Emacs 16 or 17 | ||
| 780 | but any new bugs are probably not difficult. | ||
| 781 | |||
| 782 | Mips (mips-mips-riscos, mips-mips-riscos4.0, or mips-mips-bsd) | 446 | Mips (mips-mips-riscos, mips-mips-riscos4.0, or mips-mips-bsd) |
| 783 | 447 | ||
| 784 | The C compiler on Riscos 4.51 dumps core trying to optimize | 448 | 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) | |||
| 818 | on a riscos4bsd site. But it is not clear whether this is needed in | 482 | on a riscos4bsd site. But it is not clear whether this is needed in |
| 819 | general or only because of quirks on a particular site. | 483 | general or only because of quirks on a particular site. |
| 820 | 484 | ||
| 821 | National Semiconductor 32000 (ns32k-ns-genix) | ||
| 822 | |||
| 823 | This is for a complete machine from National Semiconductor, | ||
| 824 | running Genix. Changes merged in version 19. | ||
| 825 | |||
| 826 | NCR Tower 32 (m68k-ncr-sysv2 or m68k-ncr-sysv3) | ||
| 827 | |||
| 828 | If you are running System V release 2, use m68k-ncr-sysv2. | ||
| 829 | If you are running System V release 3, use m68k-ncr-sysv3. | ||
| 830 | |||
| 831 | These both worked as of 18.56. If you change `src/ymakefile' so that | ||
| 832 | CFLAGS includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, check | ||
| 833 | out the comments in `src/m/tower32.h' (for System V release 2) or | ||
| 834 | `src/m/tower32v3.h' (for System V release 3) about this. | ||
| 835 | |||
| 836 | There is a report that compilation with -O did not work with 18.54 | ||
| 837 | under System V release 2. | ||
| 838 | |||
| 839 | NCR Intel system (i386-ncr-sysv4.2) | 485 | NCR Intel system (i386-ncr-sysv4.2) |
| 840 | 486 | ||
| 841 | This system works in 19.31, but if you don't link it with GNU ld, | 487 | This system works in 19.31, but if you don't link it with GNU ld, |
| @@ -860,30 +506,6 @@ NeXT (m68k-next-nextstep) | |||
| 860 | 506 | ||
| 861 | Thanks to Thorsten Ohl for working on the NeXT port of Emacs 19. | 507 | Thanks to Thorsten Ohl for working on the NeXT port of Emacs 19. |
| 862 | 508 | ||
| 863 | Nixdorf Targon 31 (m68k-nixdorf-sysv) | ||
| 864 | |||
| 865 | Machine description file for version 17 is included in 18 | ||
| 866 | but whether it works is not known. | ||
| 867 | `src/unexec.c' bombs if compiled with -O. | ||
| 868 | Note that the "Targon 35" is really a Pyramid. | ||
| 869 | |||
| 870 | Nu (TI or LMI) (m68k-nu-sysv) | ||
| 871 | |||
| 872 | Version 18 is believed to work. | ||
| 873 | |||
| 874 | Paragon OSF/1 (i860-intel-osf1) | ||
| 875 | |||
| 876 | Changes merged in 19.29. | ||
| 877 | |||
| 878 | There is a bug in OSF/1 make which claims there is a syntax error | ||
| 879 | in the src/xmakefile. You can successfully build emacs with: | ||
| 880 | |||
| 881 | pmake MAKE=pmake | ||
| 882 | |||
| 883 | Plexus (m68k-plexus-sysv) | ||
| 884 | |||
| 885 | Worked as of 17.56. | ||
| 886 | |||
| 887 | Pmax (DEC Mips) (mips-dec-ultrix or mips-dec-osf1) | 509 | Pmax (DEC Mips) (mips-dec-ultrix or mips-dec-osf1) |
| 888 | 510 | ||
| 889 | See under DECstation, above. | 511 | See under DECstation, above. |
| @@ -892,39 +514,6 @@ Prime EXL (i386-prime-sysv) | |||
| 892 | 514 | ||
| 893 | Minor changes merged in 19.1. | 515 | Minor changes merged in 19.1. |
| 894 | 516 | ||
| 895 | Pyramid (pyramid-pyramid-bsd) | ||
| 896 | |||
| 897 | The 19.26 pretest was observed to work on OSx 5.0, but it is necessary | ||
| 898 | to edit gmalloc.c. You must add #include <sys/types.h> at the top, | ||
| 899 | and delete the #define for size_t. | ||
| 900 | |||
| 901 | You need to build Emacs in the Berkeley universe with | ||
| 902 | the `ucb' command, as in `ucb make' or `ucb build-install'. | ||
| 903 | |||
| 904 | In OSx 4.0, it seems necessary to add the following two lines | ||
| 905 | to `src/m/pyramid.h': | ||
| 906 | #define _longjmp longjmp | ||
| 907 | #define _setjmp setjmp | ||
| 908 | |||
| 909 | In Pyramid system 2.5 there has been a compiler bug making | ||
| 910 | Emacs crash just after screen-splitting with Qnil containing 0. | ||
| 911 | A compiler that fixes this is Pyramid customer number 8494, | ||
| 912 | internal number 1923. | ||
| 913 | |||
| 914 | Some versions of the pyramid compiler get fatal | ||
| 915 | errors when the -gx compiler switch is used; if this | ||
| 916 | happens to you, change `src/m/pyramid.h' to define | ||
| 917 | C_DEBUG_SWITCH with an empty definition. | ||
| 918 | |||
| 919 | Some old system versions may require you to define PYRAMID_OLD | ||
| 920 | in when alloca.s is preprocessed, in order to define _longjmp and _setjmp. | ||
| 921 | |||
| 922 | Sequent Balance (ns32k-sequent-bsd4.2 or ns32k-sequent-bsd4.3) | ||
| 923 | |||
| 924 | Emacs 18.51 worked on system version 3.0. 18.52 is said to work. | ||
| 925 | Delete some lines at the end of `src/m/sequent.h' for earlier system | ||
| 926 | versions. | ||
| 927 | |||
| 928 | Sequent Symmetry (i386-sequent-bsd, i386-sequent-ptx, i386-sequent-ptx4) | 517 | Sequent Symmetry (i386-sequent-bsd, i386-sequent-ptx, i386-sequent-ptx4) |
| 929 | 518 | ||
| 930 | 19.33 has changes to support ptx 4 (a modified SVR4). | 519 | 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) | |||
| 949 | 538 | ||
| 950 | Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4) | 539 | Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4) |
| 951 | 540 | ||
| 952 | Changes merged in 19.29. This configuration should also work for | 541 | Changes merged in 19.29. The version configured with |
| 953 | Pyramid MIS Server running DC-OSX 1.x. The version configured with | ||
| 954 | `--with-x' works without any modifications, but `--with-x-toolkit' | 542 | `--with-x' works without any modifications, but `--with-x-toolkit' |
| 955 | works only if the Athena library and the Toolkit library are linked | 543 | works only if the Athena library and the Toolkit library are linked |
| 956 | statically. For this, edit `src/Makefile' after the `configure' run | 544 | statically. For this, edit `src/Makefile' after the `configure' run |
| @@ -982,23 +570,7 @@ SONY News 3000 series (RISC NEWS) (mips-sony-bsd) | |||
| 982 | Emacs from working under any debugger. But you can change init_data | 570 | Emacs from working under any debugger. But you can change init_data |
| 983 | in data.c if you wish. | 571 | in data.c if you wish. |
| 984 | 572 | ||
| 985 | Stardent i860 (i860-stardent-sysv4.0) | 573 | Sun 3, Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*, |
| 986 | |||
| 987 | 19.26 pretest reported to work. | ||
| 988 | |||
| 989 | Stardent 1500 or 3000 | ||
| 990 | |||
| 991 | See Titan. | ||
| 992 | |||
| 993 | Stride (m68k-stride-sysv) | ||
| 994 | |||
| 995 | Works (most recent news for 18.30) on their release 2.0. | ||
| 996 | For release 2.2, see the end of `src/m/stride.h'. | ||
| 997 | It may be possible to run on their V.1 system but changes | ||
| 998 | in the s- file would be needed. | ||
| 999 | |||
| 1000 | Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos, | ||
| 1001 | sparc-sun-sunos4.1.3noshr, sparc-sun-solaris2.*, | ||
| 1002 | i386-sun-solaris2.*, sparc*-*-linux-gnu) | 574 | i386-sun-solaris2.*, sparc*-*-linux-gnu) |
| 1003 | 575 | ||
| 1004 | To build a 32-bit Emacs (i.e. if you are having any sort of problem | 576 | 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, | |||
| 1074 | for transferring text between clients. The Cut, Paste and Copy items | 646 | for transferring text between clients. The Cut, Paste and Copy items |
| 1075 | in the menu bar Edit menu work with the clipboard. | 647 | in the menu bar Edit menu work with the clipboard. |
| 1076 | 648 | ||
| 1077 | It's important to include the SunOS version number in the | ||
| 1078 | configuration name. For example, for SunOS release 4.0 on a Sun 3, | ||
| 1079 | use `m68k-sun-sunos4.0'; for SunOS release 4.1 on a Sparc, use | ||
| 1080 | `sparc-sun-sunos4.1'. For SunOS release 4.1.3 on a Sparc, use | ||
| 1081 | `sparc-sun-sunos4.1.3'. Note that shared libraries are now | ||
| 1082 | used by default on SunOS 4.1. | ||
| 1083 | |||
| 1084 | A user reported irreproducible segmentation faults when using 19.29 | 649 | A user reported irreproducible segmentation faults when using 19.29 |
| 1085 | on Solaris 2.3 and 2.4 after compiling it with the Sun compiler. | 650 | on Solaris 2.3 and 2.4 after compiling it with the Sun compiler. |
| 1086 | The problem went away when GCC 2.7.0 was used instead. We do not know | 651 | 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, | |||
| 1093 | #define SeparateSharedCompile YES | 658 | #define SeparateSharedCompile YES |
| 1094 | in site.def (after #ifdef AfterVendorCF). | 659 | in site.def (after #ifdef AfterVendorCF). |
| 1095 | 660 | ||
| 1096 | Use `m68k' for the 68000-based Sun boxes, `sparc' for Sparcstations, | ||
| 1097 | and `i386' for Sun Roadrunners. i386 calls for Sunos4.0. | ||
| 1098 | |||
| 1099 | If you compile with Sun's ANSI compiler acc, you need additional options | 661 | If you compile with Sun's ANSI compiler acc, you need additional options |
| 1100 | when linking temacs, such as | 662 | when linking temacs, such as |
| 1101 | /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1 | 663 | /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, | |||
| 1103 | add -lansi just before -lc. The precise file names depend on the | 665 | add -lansi just before -lc. The precise file names depend on the |
| 1104 | compiler version, so we cannot easily arrange to supply them. | 666 | compiler version, so we cannot easily arrange to supply them. |
| 1105 | 667 | ||
| 1106 | On SunOS 4.1.1, do not use /usr/5bin/cc. You can use gcc or/usr/bin/cc. | ||
| 1107 | Make sure the environment variable LD_LIBRARY_PATH is not defined. | ||
| 1108 | |||
| 1109 | Some people report crashes on SunOS 4.1.3 if SYSTEM_MALLOC is defined. | ||
| 1110 | Others have reported that Emacs works if SYSTEM_MALLOC is defined, and not | ||
| 1111 | if it is undefined. So far we do not know why results vary in this way. | ||
| 1112 | The sources are set up so that SYSTEM_MALLOC is defined; if that crashes, | ||
| 1113 | or if you want the benefit of the relocating memory allocator, you can | ||
| 1114 | try enabling the #undef SYSTEM_MALLOC in src/s/sunos4-1-3.h. | ||
| 1115 | |||
| 1116 | On Solaris 2, you need to install patch 100947-02 to fix a system bug. | 668 | On Solaris 2, you need to install patch 100947-02 to fix a system bug. |
| 1117 | Presumably this patch comes from Sun. You must alter the definition of | 669 | Presumably this patch comes from Sun. You must alter the definition of |
| 1118 | LD_SWITCH_SYSTEM if your X11 libraries are not in /usr/openwin/lib. | 670 | 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, | |||
| 1139 | src/s/sunos4-1.h to src/config.h. This problem is due to obsolete | 691 | src/s/sunos4-1.h to src/config.h. This problem is due to obsolete |
| 1140 | software in the nonshared standard library. | 692 | software in the nonshared standard library. |
| 1141 | 693 | ||
| 1142 | If you are compiling for X windows, and the X window library was | ||
| 1143 | compiled to use the 68881, then you must edit config.h according | ||
| 1144 | the comments at the end of `src/m/sun3.h'. | ||
| 1145 | |||
| 1146 | Note that Emacs on a Sun is not really as big as it looks. | 694 | Note that Emacs on a Sun is not really as big as it looks. |
| 1147 | As dumped, it includes around 200k of zeros between the | 695 | As dumped, it includes around 200k of zeros between the |
| 1148 | original text section and the original data section | 696 | original text section and the original data section |
| @@ -1175,15 +723,6 @@ Tadpole 68K (m68k-tadpole-sysv) | |||
| 1175 | 723 | ||
| 1176 | chmod 2755 etc/movemail; chgrp mail etc/movemail | 724 | chmod 2755 etc/movemail; chgrp mail etc/movemail |
| 1177 | 725 | ||
| 1178 | Tahoe (tahoe-tahoe-bsd4.2 or tahoe-tahoe-bsd4.3) | ||
| 1179 | |||
| 1180 | 18.52 was known to work on some Tahoes, but a compiler bug intervenes | ||
| 1181 | on others. Some Emacs versions have worked in Unisys 1r4 | ||
| 1182 | (not in 1r3) and CCI I.21. | ||
| 1183 | |||
| 1184 | If you have trouble compiling `lib-src/loadst.c', turn off the definition | ||
| 1185 | of DKSTAT_HEADER_FILE in `src/m/tahoe.h'. | ||
| 1186 | |||
| 1187 | Tandem Integrity S2 (mips-tandem-sysv) | 726 | Tandem Integrity S2 (mips-tandem-sysv) |
| 1188 | 727 | ||
| 1189 | Changes merged in 18.56 but subprocess support is turned off. | 728 | Changes merged in 18.56 but subprocess support is turned off. |
| @@ -1191,27 +730,6 @@ Tandem Integrity S2 (mips-tandem-sysv) | |||
| 1191 | 730 | ||
| 1192 | You must edit `lib-src/Makefile' to define LOADLIBES = -mld. | 731 | You must edit `lib-src/Makefile' to define LOADLIBES = -mld. |
| 1193 | 732 | ||
| 1194 | Tektronix XD88 (m88k-tektronix-sysv3*) | ||
| 1195 | |||
| 1196 | The 19.26 pretest was reported to work. | ||
| 1197 | Minor changes merged in 19.19. | ||
| 1198 | |||
| 1199 | Tektronix 16000 box (6130?) (ns16k-tektronix-bsd) | ||
| 1200 | |||
| 1201 | Emacs 17.61 worked. | ||
| 1202 | |||
| 1203 | Tektronix 4300 (m68k-tektronix-bsd) | ||
| 1204 | |||
| 1205 | Emacs 19.26 pretest reported to work. | ||
| 1206 | |||
| 1207 | Titan P2 or P3 (titan-titan-sysv) | ||
| 1208 | |||
| 1209 | Changes probably merged in version 19. | ||
| 1210 | |||
| 1211 | Ustation E30 (SS5E) (m68k-unisys-unipl) | ||
| 1212 | |||
| 1213 | Changes merged in 18.52; don't know whether they work. | ||
| 1214 | |||
| 1215 | Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3), | 733 | Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3), |
| 1216 | Ultrix (vax-dec-ultrix), | 734 | Ultrix (vax-dec-ultrix), |
| 1217 | System V (vax-dec-sysv0, vax-dec-sysv2), or | 735 | 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), | |||
| 1230 | won't work very well, or even compile. Levitte is working on a | 748 | won't work very well, or even compile. Levitte is working on a |
| 1231 | port, so these problems should be fixed in the near future. | 749 | port, so these problems should be fixed in the near future. |
| 1232 | 750 | ||
| 1233 | Whitechapel MG1 (ns16k-whitechapel-?) | ||
| 1234 | |||
| 1235 | May work. Supposedly no changes were needed except in `src/m/mg1.h' | ||
| 1236 | file. I do not know what Unix version runs on them. | ||
| 1237 | |||
| 1238 | Wicat (m68k-wicat-sysv) | ||
| 1239 | |||
| 1240 | Changes merged as of 18.6; whether they work is unknown. | ||
| 1241 | See comments in `src/m/wicat.h' for things you should change | ||
| 1242 | depending on the system and compiler version you have. | ||
| 1243 | 751 | ||
| 1244 | Here are notes about some of the systems supported: | 752 | Here are notes about some of the systems supported: |
| 1245 | 753 | ||
| @@ -1255,25 +763,6 @@ Berkeley 4.3 (bsd4.3) | |||
| 1255 | 763 | ||
| 1256 | Works, on Vaxes at least. | 764 | Works, on Vaxes at least. |
| 1257 | 765 | ||
| 1258 | Esix | ||
| 1259 | |||
| 1260 | The following was written for Emacs 18.59 and has been | ||
| 1261 | slightly adapted for Emacs 19. It may need more change to be correct. | ||
| 1262 | |||
| 1263 | Use s/usg5-4.h for Esix System V 4.0.[34] systems if you also have | ||
| 1264 | XFree86. If you insist on using the Esix X Window libraries, good | ||
| 1265 | luck. s/esix5r4.h provides a starting point, but doesn't seem to | ||
| 1266 | work consistently. The basic problems involve the need to load | ||
| 1267 | -lX11 *last* in the link command, and even then some things break. | ||
| 1268 | You get best results by installing XFree86 and forgetting about the | ||
| 1269 | Esix stuff unless you want to run IXI xdt3, which really only needs | ||
| 1270 | the Esix X11 shared libraries. | ||
| 1271 | |||
| 1272 | To compile with XFree86, make sure that your LD_LIBRARY_PATH | ||
| 1273 | contains /usr/X386/lib. Be careful if you also have the Esix X | ||
| 1274 | Window libraries that /usr/X386/lib appears *first* in the | ||
| 1275 | LD_LIBRARY_PATH. Then define C_SWITCH_X_SYSTEM -I/usr/X386/include. | ||
| 1276 | |||
| 1277 | Linux (actually GNU/Linux) | 766 | Linux (actually GNU/Linux) |
| 1278 | 767 | ||
| 1279 | Most of the complete systems which use the Linux kernel are close | 768 | Most of the complete systems which use the Linux kernel are close |
| @@ -1304,8 +793,6 @@ MSDOS | |||
| 1304 | for information about using Emacs on MSDOS. | 793 | for information about using Emacs on MSDOS. |
| 1305 | 794 | ||
| 1306 | SCO Unix | 795 | SCO Unix |
| 1307 | If you have TCP but not X, you need to edit src/s/sco4.h | ||
| 1308 | to define HAVE_SOCKETS. | ||
| 1309 | 796 | ||
| 1310 | If you are using MMDF instead of sendmail, you need to remove | 797 | If you are using MMDF instead of sendmail, you need to remove |
| 1311 | /usr/lib/sendmail or modify lisp/paths.el before compiling. | 798 | /usr/lib/sendmail or modify lisp/paths.el before compiling. |
| @@ -1423,10 +910,6 @@ Ultrix (bsd4.3) | |||
| 1423 | 910 | ||
| 1424 | The problem is said to be gone in UWS version 2.1. | 911 | The problem is said to be gone in UWS version 2.1. |
| 1425 | 912 | ||
| 1426 | Uniplus 5.2 (unipl5.2) | ||
| 1427 | |||
| 1428 | Works, on Dual machines at least. | ||
| 1429 | |||
| 1430 | VMS (vmsM.N) | 913 | VMS (vmsM.N) |
| 1431 | 914 | ||
| 1432 | Richard Levitte <levitte@e.kth.se> distributes a set of patches to | 915 | Richard Levitte <levitte@e.kth.se> distributes a set of patches to |
| @@ -1454,18 +937,6 @@ X86_64 GNU/Linux | |||
| 1454 | 937 | ||
| 1455 | (using the location of the 32-bit X libraries on your system). | 938 | (using the location of the 32-bit X libraries on your system). |
| 1456 | 939 | ||
| 1457 | Xenix (xenix) | ||
| 1458 | |||
| 1459 | Should work in 18.50, but you will need to edit the files | ||
| 1460 | `lib-src/Makefile' and `src/ymakefile' | ||
| 1461 | (see the comments that mention "Xenix" for what to change.) | ||
| 1462 | Compiling Emacs with -O is said not to work. | ||
| 1463 | |||
| 1464 | If you want Emacs to work with Smail (installed as /usr/bin/smail) | ||
| 1465 | then add the line #define SMAIL to config.h. | ||
| 1466 | |||
| 1467 | The file etc/XENIX suggests some useful things to do to Xenix | ||
| 1468 | to make the Emacs meta key work. | ||
| 1469 | 940 | ||
| 1470 | Local variables: | 941 | Local variables: |
| 1471 | mode: text | 942 | mode: text |
diff --git a/etc/PROBLEMS b/etc/PROBLEMS index 21d4d695a17..1b4277b55dd 100644 --- a/etc/PROBLEMS +++ b/etc/PROBLEMS | |||
| @@ -379,8 +379,6 @@ the nameserver, but Emacs does not. | |||
| 379 | The fix is to install an unshared library that corresponds to what you | 379 | The fix is to install an unshared library that corresponds to what you |
| 380 | installed in the shared library, and then relink Emacs. | 380 | installed in the shared library, and then relink Emacs. |
| 381 | 381 | ||
| 382 | On SunOS 4.1, simply define HAVE_RES_INIT. | ||
| 383 | |||
| 384 | If you have already installed the name resolver in the file libresolv.a, | 382 | If you have already installed the name resolver in the file libresolv.a, |
| 385 | then you need to compile Emacs to use that library. The easiest way to | 383 | then you need to compile Emacs to use that library. The easiest way to |
| 386 | do this is to add to config.h a definition of LIBS_SYSTEM, LIBS_MACHINE | 384 | 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. | |||
| 2984 | 2982 | ||
| 2985 | The only known fix: Don't run display-time. | 2983 | The only known fix: Don't run display-time. |
| 2986 | 2984 | ||
| 2987 | *** SunOS | ||
| 2988 | |||
| 2989 | SunOS 4.1.4 stopped shipping on Sep 30 1998. | ||
| 2990 | |||
| 2991 | **** SunOS: You get linker errors | ||
| 2992 | ld: Undefined symbol | ||
| 2993 | _get_wmShellWidgetClass | ||
| 2994 | _get_applicationShellWidgetClass | ||
| 2995 | |||
| 2996 | **** Sun 4.0.x: M-x shell persistently reports "Process shell exited abnormally with code 1". | ||
| 2997 | |||
| 2998 | This happened on Suns as a result of what is said to be a bug in Sunos | ||
| 2999 | version 4.0.x. The only fix was to reboot the machine. | ||
| 3000 | |||
| 3001 | **** SunOS4.1.1 and SunOS4.1.3: Mail is lost when sent to local aliases. | ||
| 3002 | |||
| 3003 | Many emacs mail user agents (VM and rmail, for instance) use the | ||
| 3004 | sendmail.el library. This library can arrange for mail to be | ||
| 3005 | delivered by passing messages to the /usr/lib/sendmail (usually) | ||
| 3006 | program . In doing so, it passes the '-t' flag to sendmail, which | ||
| 3007 | means that the name of the recipient of the message is not on the | ||
| 3008 | command line and, therefore, that sendmail must parse the message to | ||
| 3009 | obtain the destination address. | ||
| 3010 | |||
| 3011 | There is a bug in the SunOS4.1.1 and SunOS4.1.3 versions of sendmail. | ||
| 3012 | In short, when given the -t flag, the SunOS sendmail won't recognize | ||
| 3013 | non-local (i.e. NIS) aliases. It has been reported that the Solaris | ||
| 3014 | 2.x versions of sendmail do not have this bug. For those using SunOS | ||
| 3015 | 4.1, the best fix is to install sendmail V8 or IDA sendmail (which | ||
| 3016 | have other advantages over the regular sendmail as well). At the time | ||
| 3017 | of this writing, these official versions are available: | ||
| 3018 | |||
| 3019 | Sendmail V8 on ftp.cs.berkeley.edu in /ucb/sendmail: | ||
| 3020 | sendmail.8.6.9.base.tar.Z (the base system source & documentation) | ||
| 3021 | sendmail.8.6.9.cf.tar.Z (configuration files) | ||
| 3022 | sendmail.8.6.9.misc.tar.Z (miscellaneous support programs) | ||
| 3023 | sendmail.8.6.9.xdoc.tar.Z (extended documentation, with postscript) | ||
| 3024 | |||
| 3025 | IDA sendmail on vixen.cso.uiuc.edu in /pub: | ||
| 3026 | sendmail-5.67b+IDA-1.5.tar.gz | ||
| 3027 | |||
| 3028 | **** Sunos 4: You get the error ld: Undefined symbol __lib_version. | ||
| 3029 | |||
| 3030 | This is the result of using cc or gcc with the shared library meant | ||
| 3031 | for acc (the Sunpro compiler). Check your LD_LIBRARY_PATH and delete | ||
| 3032 | /usr/lang/SC2.0.1 or some similar directory. | ||
| 3033 | |||
| 3034 | **** SunOS 4.1.3: Emacs unpredictably crashes in _yp_dobind_soft. | ||
| 3035 | |||
| 3036 | This happens if you configure Emacs specifying just `sparc-sun-sunos4' | ||
| 3037 | on a system that is version 4.1.3. You must specify the precise | ||
| 3038 | version number (or let configure figure out the configuration, which | ||
| 3039 | it can do perfectly well for SunOS). | ||
| 3040 | |||
| 3041 | **** Sunos 4.1.3: Emacs gets hung shortly after startup. | ||
| 3042 | |||
| 3043 | We think this is due to a bug in Sunos. The word is that | ||
| 3044 | one of these Sunos patches fixes the bug: | ||
| 3045 | |||
| 3046 | 100075-11 100224-06 100347-03 100482-05 100557-02 100623-03 100804-03 101080-01 | ||
| 3047 | 100103-12 100249-09 100496-02 100564-07 100630-02 100891-10 101134-01 | ||
| 3048 | 100170-09 100296-04 100377-09 100507-04 100567-04 100650-02 101070-01 101145-01 | ||
| 3049 | 100173-10 100305-15 100383-06 100513-04 100570-05 100689-01 101071-03 101200-02 | ||
| 3050 | 100178-09 100338-05 100421-03 100536-02 100584-05 100784-01 101072-01 101207-01 | ||
| 3051 | |||
| 3052 | We don't know which of these patches really matter. If you find out | ||
| 3053 | which ones, please inform bug-gnu-emacs@gnu.org. | ||
| 3054 | |||
| 3055 | **** SunOS 4: Emacs processes keep going after you kill the X server | ||
| 3056 | (or log out, if you logged in using X). | ||
| 3057 | |||
| 3058 | Someone reported that recompiling with GCC 2.7.0 fixed this problem. | ||
| 3059 | |||
| 3060 | The fix to this is to install patch 100573 for OpenWindows 3.0 | ||
| 3061 | or link libXmu statically. | ||
| 3062 | |||
| 3063 | **** Sunos 5.3: Subprocesses remain, hanging but not zombies. | 2985 | **** Sunos 5.3: Subprocesses remain, hanging but not zombies. |
| 3064 | 2986 | ||
| 3065 | A bug in Sunos 5.3 causes Emacs subprocesses to remain after Emacs | 2987 | 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 | |||
| 3067 | applies to ptys, and doesn't fix the problem with subprocesses | 2989 | applies to ptys, and doesn't fix the problem with subprocesses |
| 3068 | communicating through pipes. | 2990 | communicating through pipes. |
| 3069 | 2991 | ||
| 3070 | *** Apollo Domain | ||
| 3071 | |||
| 3072 | **** Shell mode ignores interrupts on Apollo Domain. | ||
| 3073 | |||
| 3074 | You may find that M-x shell prints the following message: | ||
| 3075 | |||
| 3076 | Warning: no access to tty; thus no job control in this shell... | ||
| 3077 | |||
| 3078 | This can happen if there are not enough ptys on your system. | ||
| 3079 | Here is how to make more of them. | ||
| 3080 | |||
| 3081 | % cd /dev | ||
| 3082 | % ls pty* | ||
| 3083 | # shows how many pty's you have. I had 8, named pty0 to pty7) | ||
| 3084 | % /etc/crpty 8 | ||
| 3085 | # creates eight new pty's | ||
| 3086 | |||
| 3087 | *** Irix | 2992 | *** Irix |
| 3088 | 2993 | ||
| 3089 | *** Irix 6.2: No visible display on mips-sgi-irix6.2 when compiling with GCC 2.8.1. | 2994 | *** 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. | |||
| 3771 | However, the easiest approach is to build Xlib with the default | 3676 | However, the easiest approach is to build Xlib with the default |
| 3772 | floating point option: -fsoft. | 3677 | floating point option: -fsoft. |
| 3773 | 3678 | ||
| 3774 | ** SunOS: Undefined symbols _dlopen, _dlsym and/or _dlclose. | ||
| 3775 | |||
| 3776 | If you see undefined symbols _dlopen, _dlsym, or _dlclose when linking | ||
| 3777 | with -lX11, compile and link against the file mit/util/misc/dlsym.c in | ||
| 3778 | the MIT X11R5 distribution. Alternatively, link temacs using shared | ||
| 3779 | libraries with s/sunos4shr.h. (This doesn't work if you use the X | ||
| 3780 | toolkit.) | ||
| 3781 | |||
| 3782 | If you get the additional error that the linker could not find | ||
| 3783 | lib_version.o, try extracting it from X11/usr/lib/X11/libvim.a in | ||
| 3784 | X11R4, then use it in the link. | ||
| 3785 | |||
| 3786 | ** SunOS4, DGUX 5.4.2: --with-x-toolkit version crashes when used with shared libraries. | ||
| 3787 | |||
| 3788 | On some systems, including Sunos 4 and DGUX 5.4.2 and perhaps others, | ||
| 3789 | unexec doesn't work properly with the shared library for the X | ||
| 3790 | toolkit. You might be able to work around this by using a nonshared | ||
| 3791 | libXt.a library. The real fix is to upgrade the various versions of | ||
| 3792 | unexec and/or ralloc. We think this has been fixed on Sunos 4 | ||
| 3793 | and Solaris in version 19.29. | ||
| 3794 | |||
| 3795 | ** HPUX 10.20: Emacs crashes during dumping on the HPPA machine. | 3679 | ** HPUX 10.20: Emacs crashes during dumping on the HPPA machine. |
| 3796 | 3680 | ||
| 3797 | This seems to be due to a GCC bug; it is fixed in GCC 2.8.1. | 3681 | 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 c91ae26c1ef..9e955c2aa02 100644 --- a/leim/ChangeLog +++ b/leim/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * makefile.w32-in: | ||
| 4 | * Makefile.in: Remove references to Xenix. | ||
| 5 | |||
| 1 | 2007-12-15 Richard Stallman <rms@gnu.org> | 6 | 2007-12-15 Richard Stallman <rms@gnu.org> |
| 2 | 7 | ||
| 3 | * quail/latin-post.el ("scandinavian-postfix"): Doc fix. | 8 | * quail/latin-post.el ("scandinavian-postfix"): Doc fix. |
diff --git a/leim/Makefile.in b/leim/Makefile.in index 14bcffb26fe..268ede9c09e 100644 --- a/leim/Makefile.in +++ b/leim/Makefile.in | |||
| @@ -38,7 +38,7 @@ INSTALLDIR=$(DESTDIR)${datadir}/emacs/${version}/leim | |||
| 38 | 38 | ||
| 39 | GZIP_PROG = @GZIP_PROG@ | 39 | GZIP_PROG = @GZIP_PROG@ |
| 40 | 40 | ||
| 41 | # On Xenix and the IBM RS6000, double-dot gets screwed up. | 41 | # On IBM RS6000, double-dot gets screwed up. |
| 42 | dot = . | 42 | dot = . |
| 43 | 43 | ||
| 44 | # Which Emacs to use to convert TIT files to Emacs Lisp files, | 44 | # 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 4d760ff69c8..68bdddbb17f 100644 --- a/leim/makefile.w32-in +++ b/leim/makefile.w32-in | |||
| @@ -27,7 +27,7 @@ srcdir=. | |||
| 27 | # Where to install LEIM files. | 27 | # Where to install LEIM files. |
| 28 | INSTALLDIR=$(INSTALL_DIR)/leim | 28 | INSTALLDIR=$(INSTALL_DIR)/leim |
| 29 | 29 | ||
| 30 | # On Xenix and the IBM RS6000, double-dot gets screwed up. | 30 | # On IBM RS6000, double-dot gets screwed up. |
| 31 | dot = . | 31 | dot = . |
| 32 | 32 | ||
| 33 | # Which Emacs to use to convert TIT files to Emacs Lisp files, | 33 | # Which Emacs to use to convert TIT files to Emacs Lisp files, |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 910e3a8c63c..9665c6cd561 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,20 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * obsolete/x-apollo.el: Remove file for unsupported system. | ||
| 4 | |||
| 5 | * term/x-win.el (vendor-specific-keysyms): Remove reference to | ||
| 6 | Apollo. | ||
| 7 | |||
| 8 | * progmodes/gud.el (gud-dgux-p): Remove. | ||
| 9 | (dbx): Remove reference to dgux. | ||
| 10 | |||
| 11 | * progmodes/ps-mode.el (ps-mode-print-function): | ||
| 12 | * ps-print.el (ps-lp-system): | ||
| 13 | * paths.el (rmail-spool-directory): | ||
| 14 | * ls-lisp.el (ls-lisp-emulation): | ||
| 15 | * lpr.el (lpr-lp-system): | ||
| 16 | * dired.el (dired-chown-program): Remove references to dgux. | ||
| 17 | |||
| 1 | 2008-01-05 Stefan Monnier <monnier@iro.umontreal.ca> | 18 | 2008-01-05 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 19 | ||
| 3 | * vc.el (vc-process-sentinel): Fix apparent typo. | 20 | * vc.el (vc-process-sentinel): Fix apparent typo. |
diff --git a/lisp/dired.el b/lisp/dired.el index 51067e46001..b9a360a6e91 100644 --- a/lisp/dired.el +++ b/lisp/dired.el | |||
| @@ -70,7 +70,7 @@ If nil, `dired-listing-switches' is used.") | |||
| 70 | 70 | ||
| 71 | ;;;###autoload | 71 | ;;;###autoload |
| 72 | (defvar dired-chown-program | 72 | (defvar dired-chown-program |
| 73 | (if (memq system-type '(hpux dgux usg-unix-v irix linux gnu/linux cygwin)) | 73 | (if (memq system-type '(hpux usg-unix-v irix linux gnu/linux cygwin)) |
| 74 | "chown" | 74 | "chown" |
| 75 | (if (file-exists-p "/usr/sbin/chown") | 75 | (if (file-exists-p "/usr/sbin/chown") |
| 76 | "/usr/sbin/chown" | 76 | "/usr/sbin/chown" |
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index a6b43d7831e..91063c2a974 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * gnus.el (gnus-use-long-file-name): Remove reference to xenix. | ||
| 4 | |||
| 1 | 2007-12-28 Reiner Steib <Reiner.Steib@gmx.de> | 5 | 2007-12-28 Reiner Steib <Reiner.Steib@gmx.de> |
| 2 | 6 | ||
| 3 | * message.el (message-send-mail-function): Increase custom version. | 7 | * message.el (message-send-mail-function): Increase custom version. |
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el index fc76fce86d7..36066e82166 100644 --- a/lisp/gnus/gnus.el +++ b/lisp/gnus/gnus.el | |||
| @@ -1522,7 +1522,7 @@ If it is nil, no confirmation is required." | |||
| 1522 | :type '(choice (const :tag "No limit" nil) | 1522 | :type '(choice (const :tag "No limit" nil) |
| 1523 | integer)) | 1523 | integer)) |
| 1524 | 1524 | ||
| 1525 | (defcustom gnus-use-long-file-name (not (memq system-type '(usg-unix-v xenix))) | 1525 | (defcustom gnus-use-long-file-name (not (memq system-type '(usg-unix-v))) |
| 1526 | "*Non-nil means that the default name of a file to save articles in is the group name. | 1526 | "*Non-nil means that the default name of a file to save articles in is the group name. |
| 1527 | If it's nil, the directory form of the group name is used instead. | 1527 | If it's nil, the directory form of the group name is used instead. |
| 1528 | 1528 | ||
diff --git a/lisp/lpr.el b/lisp/lpr.el index 4df98d6d751..721657a095f 100644 --- a/lisp/lpr.el +++ b/lisp/lpr.el | |||
| @@ -37,7 +37,7 @@ | |||
| 37 | 37 | ||
| 38 | ;;;###autoload | 38 | ;;;###autoload |
| 39 | (defvar lpr-lp-system | 39 | (defvar lpr-lp-system |
| 40 | (memq system-type '(usg-unix-v dgux hpux irix))) | 40 | (memq system-type '(usg-unix-v hpux irix))) |
| 41 | 41 | ||
| 42 | 42 | ||
| 43 | (defgroup lpr nil | 43 | (defgroup lpr nil |
diff --git a/lisp/ls-lisp.el b/lisp/ls-lisp.el index a016b8369bf..0c387c34a0c 100644 --- a/lisp/ls-lisp.el +++ b/lisp/ls-lisp.el | |||
| @@ -75,7 +75,7 @@ | |||
| 75 | (cond ((eq system-type 'macos) 'MacOS) | 75 | (cond ((eq system-type 'macos) 'MacOS) |
| 76 | ;; ((eq system-type 'windows-nt) 'MS-Windows) | 76 | ;; ((eq system-type 'windows-nt) 'MS-Windows) |
| 77 | ((memq system-type | 77 | ((memq system-type |
| 78 | '(hpux dgux usg-unix-v unisoft-unix rtu irix berkeley-unix)) | 78 | '(hpux usg-unix-v unisoft-unix irix berkeley-unix)) |
| 79 | 'UNIX)) ; very similar to GNU | 79 | 'UNIX)) ; very similar to GNU |
| 80 | ;; Anything else defaults to nil, meaning GNU. | 80 | ;; Anything else defaults to nil, meaning GNU. |
| 81 | "*Platform to emulate: GNU (default), MacOS, MS-Windows, UNIX. | 81 | "*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 f06f793dc94..00000000000 --- a/lisp/obsolete/x-apollo.el +++ /dev/null | |||
| @@ -1,98 +0,0 @@ | |||
| 1 | ;;; x-apollo.el --- Apollo support functions | ||
| 2 | |||
| 3 | ;; Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005, | ||
| 4 | ;; 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | ;; This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | ;; GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | ;; it under the terms of the GNU General Public License as published by | ||
| 10 | ;; the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | ;; any later version. | ||
| 12 | |||
| 13 | ;; GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | ;; GNU General Public License for more details. | ||
| 17 | |||
| 18 | ;; You should have received a copy of the GNU General Public License | ||
| 19 | ;; along with GNU Emacs; see the file COPYING. If not, write to the | ||
| 20 | ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | ;; Boston, MA 02110-1301, USA. | ||
| 22 | |||
| 23 | ;;; Commentary: | ||
| 24 | |||
| 25 | ;;; Code: | ||
| 26 | |||
| 27 | (defun apollo-kill-entire-line () | ||
| 28 | "Kill the entire line containing point." | ||
| 29 | (interactive) | ||
| 30 | (beginning-of-line) | ||
| 31 | (kill-line 1)) | ||
| 32 | |||
| 33 | (defun apollo-scroll-window-right () | ||
| 34 | "Scroll window to right ten columns." | ||
| 35 | (interactive) | ||
| 36 | (scroll-left 10)) | ||
| 37 | |||
| 38 | (defun apollo-scroll-window-left () | ||
| 39 | "Scroll window to left ten columns." | ||
| 40 | (interactive) | ||
| 41 | (scroll-right 10)) | ||
| 42 | |||
| 43 | (defun apollo-scroll-window-forward-line () | ||
| 44 | "Move window forward one line leaving cursor at position in window." | ||
| 45 | (interactive) | ||
| 46 | (scroll-up 1)) | ||
| 47 | |||
| 48 | (defun apollo-scroll-window-backward-line () | ||
| 49 | "Move window backward one line leaving cursor at position in window." | ||
| 50 | (interactive) | ||
| 51 | (scroll-down 1)) | ||
| 52 | |||
| 53 | ;;; Define and Enable the Function Key Bindings. | ||
| 54 | |||
| 55 | (global-set-key [S-tab] "\C-i") ;Shift TAB | ||
| 56 | (global-set-key [C-tab] "\C-i") ;Control TAB | ||
| 57 | (global-set-key [S-return] "\C-m") ;Shift RET | ||
| 58 | (global-set-key [C-return] "\C-m") ;Control RET | ||
| 59 | (global-set-key [linedel] 'apollo-kill-entire-line) ;LINE DEL | ||
| 60 | (global-set-key [chardel] 'delete-char) ;CHAR DEL | ||
| 61 | (global-set-key [leftbar] 'beginning-of-line) ;LEFT BAR ARROW | ||
| 62 | (global-set-key [rightbar] 'end-of-line) ;RIGHT BAR ARROW | ||
| 63 | (global-set-key [leftbox] 'apollo-scroll-window-left) ;LEFT BOX ARROW | ||
| 64 | (global-set-key [rightbox] 'apollo-scroll-window-right) ;RIGHT BOX ARROW | ||
| 65 | (global-set-key [S-up] 'apollo-scroll-window-backward-line) ;Shift UP ARROW | ||
| 66 | (global-set-key [S-down] 'apollo-scroll-window-forward-line) ;Shift DOWN ARROW | ||
| 67 | (global-set-key [select] 'set-mark-command) ;MARK | ||
| 68 | (global-set-key [S-insert] 'overwrite-mode) ;INS MODE | ||
| 69 | (global-set-key [S-linedel] 'yank) ;Shift LINE DEL | ||
| 70 | (global-set-key [S-chardel] 'delete-char) ;Shift CHAR DEL | ||
| 71 | (global-set-key [copy] 'copy-region-as-kill) ;COPY | ||
| 72 | (global-set-key [S-cut] 'kill-region) ;CUT | ||
| 73 | (global-set-key [paste] 'yank) ;PASTE | ||
| 74 | (global-set-key [S-undo] 'undo) ;UNDO | ||
| 75 | (global-set-key [S-left] 'backward-word) ;Shift LEFT ARROW | ||
| 76 | (global-set-key [S-right] 'forward-word) ;Shift RIGHT ARROW | ||
| 77 | (global-set-key [upbox] 'scroll-down) ;UP BOX ARROW | ||
| 78 | (global-set-key [S-upbox] 'beginning-of-buffer) ;Shift UP BOX ARROW | ||
| 79 | (global-set-key [downbox] 'scroll-up) ;DOWN BOX ARROW | ||
| 80 | (global-set-key [S-downbox] 'end-of-buffer) ;Shift DOWN BOX ARROW | ||
| 81 | (global-set-key [S-redo] 'toggle-read-only) ;Shift AGAIN | ||
| 82 | (global-set-key [exit] 'save-buffer) ;EXIT | ||
| 83 | (global-set-key [S-cancel] 'kill-buffer) ;ABORT | ||
| 84 | (global-set-key [S-save] 'save-buffer) ;SAVE | ||
| 85 | (global-set-key [S-leftbar] 'beginning-of-buffer) ;Shift LEFT BAR ARROW | ||
| 86 | (global-set-key [cmd] 'execute-extended-command) ;CMD | ||
| 87 | (global-set-key [S-rightbar] 'end-of-buffer) ;Shift RIGHT BAR ARROW | ||
| 88 | (global-set-key [next] 'other-window) ;NEXT WNDW | ||
| 89 | (global-set-key [S-next] 'delete-window) ;Shift NEXT WNDW | ||
| 90 | (global-set-key [read] 'find-file-read-only) ;READ | ||
| 91 | (global-set-key [edit] 'find-file) ;EDIT | ||
| 92 | (global-set-key [S-shell] 'shell) ;SHELL | ||
| 93 | (global-set-key [S-help] 'manual-entry) ;HELP | ||
| 94 | |||
| 95 | (provide 'x-apollo) | ||
| 96 | |||
| 97 | ;;; arch-tag: 4f3e86f4-557c-44b3-978e-144fc4dc812e | ||
| 98 | ;;; x-apollo.el ends here | ||
diff --git a/lisp/paths.el b/lisp/paths.el index 113bf2ec91e..d335c758a3d 100644 --- a/lisp/paths.el +++ b/lisp/paths.el | |||
| @@ -153,7 +153,7 @@ The `ORGANIZATION' environment variable is used instead if defined.") | |||
| 153 | ;; Many GNU/Linux systems use this name. | 153 | ;; Many GNU/Linux systems use this name. |
| 154 | ((file-exists-p "/var/spool/mail") | 154 | ((file-exists-p "/var/spool/mail") |
| 155 | "/var/spool/mail/") | 155 | "/var/spool/mail/") |
| 156 | ((memq system-type '(dgux hpux usg-unix-v unisoft-unix rtu irix)) | 156 | ((memq system-type '(hpux usg-unix-v unisoft-unix irix)) |
| 157 | "/usr/mail/") | 157 | "/usr/mail/") |
| 158 | (t "/usr/spool/mail/")) | 158 | (t "/usr/spool/mail/")) |
| 159 | "Name of directory used by system mailer for delivering new mail. | 159 | "Name of directory used by system mailer for delivering new mail. |
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el index 3c6736ac79b..5875e794828 100644 --- a/lisp/progmodes/gud.el +++ b/lisp/progmodes/gud.el | |||
| @@ -1233,10 +1233,6 @@ a better solution in 6.1 upwards.") | |||
| 1233 | (setq result (substring result 0 (match-beginning 0)))))) | 1233 | (setq result (substring result 0 (match-beginning 0)))))) |
| 1234 | (or result ""))) | 1234 | (or result ""))) |
| 1235 | 1235 | ||
| 1236 | (defvar gud-dgux-p (string-match "-dgux" system-configuration) | ||
| 1237 | "Non-nil means to assume the interface approriate for DG/UX dbx. | ||
| 1238 | This was tested using R4.11.") | ||
| 1239 | |||
| 1240 | ;; There are a couple of differences between DG's dbx output and normal | 1236 | ;; There are a couple of differences between DG's dbx output and normal |
| 1241 | ;; dbx output which make it nontrivial to integrate this into the | 1237 | ;; dbx output which make it nontrivial to integrate this into the |
| 1242 | ;; standard dbx-marker-filter (mainly, there are a different number of | 1238 | ;; standard dbx-marker-filter (mainly, there are a different number of |
| @@ -1295,9 +1291,6 @@ and source-file directory for your debugger." | |||
| 1295 | (gud-irix-p | 1291 | (gud-irix-p |
| 1296 | (gud-common-init command-line 'gud-dbx-massage-args | 1292 | (gud-common-init command-line 'gud-dbx-massage-args |
| 1297 | 'gud-irixdbx-marker-filter)) | 1293 | 'gud-irixdbx-marker-filter)) |
| 1298 | (gud-dgux-p | ||
| 1299 | (gud-common-init command-line 'gud-dbx-massage-args | ||
| 1300 | 'gud-dguxdbx-marker-filter)) | ||
| 1301 | (t | 1294 | (t |
| 1302 | (gud-common-init command-line 'gud-dbx-massage-args | 1295 | (gud-common-init command-line 'gud-dbx-massage-args |
| 1303 | 'gud-dbx-marker-filter))) | 1296 | 'gud-dbx-marker-filter))) |
diff --git a/lisp/progmodes/ps-mode.el b/lisp/progmodes/ps-mode.el index 6327a68302b..cc4e2a4f69b 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." | |||
| 109 | (defcustom ps-mode-print-function | 109 | (defcustom ps-mode-print-function |
| 110 | (lambda () | 110 | (lambda () |
| 111 | (let ((lpr-switches nil) | 111 | (let ((lpr-switches nil) |
| 112 | (lpr-command (if (memq system-type '(usg-unix-v dgux hpux irix)) | 112 | (lpr-command (if (memq system-type '(usg-unix-v hpux irix)) |
| 113 | "lp" "lpr"))) | 113 | "lp" "lpr"))) |
| 114 | (lpr-buffer))) | 114 | (lpr-buffer))) |
| 115 | "*Lisp function to print current buffer as PostScript." | 115 | "*Lisp function to print current buffer as PostScript." |
diff --git a/lisp/ps-print.el b/lisp/ps-print.el index 0e442f3b104..fdceffd9721 100644 --- a/lisp/ps-print.el +++ b/lisp/ps-print.el | |||
| @@ -1489,7 +1489,7 @@ Please send all bug fixes and enhancements to | |||
| 1489 | (defconst ps-windows-system | 1489 | (defconst ps-windows-system |
| 1490 | (memq system-type '(emx win32 w32 mswindows ms-dos windows-nt))) | 1490 | (memq system-type '(emx win32 w32 mswindows ms-dos windows-nt))) |
| 1491 | (defconst ps-lp-system | 1491 | (defconst ps-lp-system |
| 1492 | (memq system-type '(usg-unix-v dgux hpux irix))) | 1492 | (memq system-type '(usg-unix-v hpux irix))) |
| 1493 | 1493 | ||
| 1494 | 1494 | ||
| 1495 | (defun ps-xemacs-color-name (color) | 1495 | (defun ps-xemacs-color-name (color) |
diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el index 66c5a272e1c..da1d158050c 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") | |||
| 1228 | "Return the appropriate value of `system-key-alist' for VENDOR. | 1228 | "Return the appropriate value of `system-key-alist' for VENDOR. |
| 1229 | VENDOR is a string containing the name of the X Server's vendor, | 1229 | VENDOR is a string containing the name of the X Server's vendor, |
| 1230 | as returned by `x-server-vendor'." | 1230 | as returned by `x-server-vendor'." |
| 1231 | ;; Fixme: Drop Apollo now? | 1231 | (cond ((or (string-equal vendor "Hewlett-Packard Incorporated") |
| 1232 | (cond ((string-equal vendor "Apollo Computer Inc.") | ||
| 1233 | '((65280 . linedel) | ||
| 1234 | (65281 . chardel) | ||
| 1235 | (65282 . copy) | ||
| 1236 | (65283 . cut) | ||
| 1237 | (65284 . paste) | ||
| 1238 | (65285 . move) | ||
| 1239 | (65286 . grow) | ||
| 1240 | (65287 . cmd) | ||
| 1241 | (65288 . shell) | ||
| 1242 | (65289 . leftbar) | ||
| 1243 | (65290 . rightbar) | ||
| 1244 | (65291 . leftbox) | ||
| 1245 | (65292 . rightbox) | ||
| 1246 | (65293 . upbox) | ||
| 1247 | (65294 . downbox) | ||
| 1248 | (65295 . pop) | ||
| 1249 | (65296 . read) | ||
| 1250 | (65297 . edit) | ||
| 1251 | (65298 . save) | ||
| 1252 | (65299 . exit) | ||
| 1253 | (65300 . repeat))) | ||
| 1254 | ((or (string-equal vendor "Hewlett-Packard Incorporated") | ||
| 1255 | (string-equal vendor "Hewlett-Packard Company")) | 1232 | (string-equal vendor "Hewlett-Packard Company")) |
| 1256 | '(( 168 . mute-acute) | 1233 | '(( 168 . mute-acute) |
| 1257 | ( 169 . mute-grave) | 1234 | ( 169 . mute-grave) |
diff --git a/src/ChangeLog b/src/ChangeLog index 3ad3584a236..029278e90b4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,118 @@ | |||
| 1 | 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * m/7300.h: | ||
| 4 | * m/acorn.h: | ||
| 5 | * m/alliant-2800.h: | ||
| 6 | * m/alliant.h: | ||
| 7 | * m/alliant1.h: | ||
| 8 | * m/alliant4.h: | ||
| 9 | * m/altos.h: | ||
| 10 | * m/amdahl.h: | ||
| 11 | * m/apollo.h: | ||
| 12 | * m/att3b.h: | ||
| 13 | * m/aviion-intel.h: | ||
| 14 | * m/aviion.h: | ||
| 15 | * m/celerity.h: | ||
| 16 | * m/clipper.h: | ||
| 17 | * m/cnvrgnt.h: | ||
| 18 | * m/convex.h: | ||
| 19 | * m/cydra5.h: | ||
| 20 | * m/delta88k.h: | ||
| 21 | * m/dpx2.h: | ||
| 22 | * m/dual.h: | ||
| 23 | * m/elxsi.h: | ||
| 24 | * m/f301.h: | ||
| 25 | * m/gould-np1.h: | ||
| 26 | * m/gould.h: | ||
| 27 | * m/i860.h: | ||
| 28 | * m/ibmps2-aix.h: | ||
| 29 | * m/ibmrt-aix.h: | ||
| 30 | * m/ibmrt.h: | ||
| 31 | * m/irist.h: | ||
| 32 | * m/is386.h: | ||
| 33 | * m/isi-ov.h: | ||
| 34 | * m/mega68.h: | ||
| 35 | * m/mg1.h: | ||
| 36 | * m/news-r6.h: | ||
| 37 | * m/news-risc.h: | ||
| 38 | * m/news.h: | ||
| 39 | * m/nh3000.h: | ||
| 40 | * m/nh4000.h: | ||
| 41 | * m/ns16000.h: | ||
| 42 | * m/ns32000.h: | ||
| 43 | * m/nu.h: | ||
| 44 | * m/orion.h: | ||
| 45 | * m/orion105.h: | ||
| 46 | * m/paragon.h: | ||
| 47 | * m/pfa50.h: | ||
| 48 | * m/plexus.h: | ||
| 49 | * m/pyramid.h: | ||
| 50 | * m/pyrmips.h: | ||
| 51 | * m/sh3el.h: | ||
| 52 | * m/sps7.h: | ||
| 53 | * m/sr2k.h: | ||
| 54 | * m/stride.h: | ||
| 55 | * m/sun1.h: | ||
| 56 | * m/sun2.h: | ||
| 57 | * m/sun3-68881.h: | ||
| 58 | * m/sun3-fpa.h: | ||
| 59 | * m/sun3-soft.h: | ||
| 60 | * m/sun3.h: | ||
| 61 | * m/sun386.h: | ||
| 62 | * m/symmetry.h: | ||
| 63 | * m/tad68k.h: | ||
| 64 | * m/tahoe.h: | ||
| 65 | * m/targon31.h: | ||
| 66 | * m/tek4300.h: | ||
| 67 | * m/tekxd88.h: | ||
| 68 | * m/tower32.h: | ||
| 69 | * m/tower32v3.h: | ||
| 70 | * m/ustation.h: | ||
| 71 | * m/wicat.h: | ||
| 72 | * m/xps100.h: | ||
| 73 | * s/cxux.h: | ||
| 74 | * s/cxux7.h: | ||
| 75 | * s/dgux.h: | ||
| 76 | * s/dgux4.h: | ||
| 77 | * s/dgux5-4-3.h: | ||
| 78 | * s/dgux5-4r2.h: | ||
| 79 | * s/esix.h: | ||
| 80 | * s/esix5r4.h: | ||
| 81 | * s/hiuxmpp.h: | ||
| 82 | * s/hiuxwe2.h: | ||
| 83 | * s/iris3-5.h: | ||
| 84 | * s/iris3-6.h: | ||
| 85 | * s/isc2-2.h: | ||
| 86 | * s/isc3-0.h: | ||
| 87 | * s/isc4-0.h: | ||
| 88 | * s/isc4-1.h: | ||
| 89 | * s/newsos5.h: | ||
| 90 | * s/newsos6.h: | ||
| 91 | * s/osf1.h: | ||
| 92 | * s/osf5-0.h: | ||
| 93 | * s/riscix1-1.h: | ||
| 94 | * s/riscix12.h: | ||
| 95 | * s/sco4.h: | ||
| 96 | * s/sco5.h: | ||
| 97 | * s/sunos4-0.h: | ||
| 98 | * s/sunos4-1.h: | ||
| 99 | * s/sunos413.h: | ||
| 100 | * s/sunos4shr.h: | ||
| 101 | * s/umax.h: | ||
| 102 | * s/unipl5-2.h: | ||
| 103 | * s/xenix.h: | ||
| 104 | * cxux-crt0.s: | ||
| 105 | * unexapollo.c: | ||
| 106 | * unexconvex.c: | ||
| 107 | * unexenix.c: | ||
| 108 | * unexsni.c: Remove files for systems no longer supported. | ||
| 109 | |||
| 110 | * m/intel386.h: Remove references to unsupported systems. | ||
| 111 | |||
| 112 | * w32.c (get_emacs_configuration): Remove reference to i860. | ||
| 113 | |||
| 114 | * sysdep.c: Remove dead code. | ||
| 115 | |||
| 1 | 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> | 116 | 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 117 | ||
| 3 | * s/rtu.h: | 118 | * s/rtu.h: |
diff --git a/src/cxux-crt0.s b/src/cxux-crt0.s deleted file mode 100644 index d9c570a9c18..00000000000 --- a/src/cxux-crt0.s +++ /dev/null | |||
| @@ -1,42 +0,0 @@ | |||
| 1 | /* | ||
| 2 | * External symbol setup file for GNU Emacs on CX/UX | ||
| 3 | * Copyright (C) 1990, 2002, 2003, 2004, 2005, | ||
| 4 | * 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | * | ||
| 6 | * This file is part of GNU Emacs. | ||
| 7 | * | ||
| 8 | * GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | * it under the terms of the GNU General Public License as published by | ||
| 10 | * the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | * any later version. | ||
| 12 | * | ||
| 13 | * GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | * GNU General Public License for more details. | ||
| 17 | * | ||
| 18 | * You should have received a copy of the GNU General Public License | ||
| 19 | * along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | * Boston, MA 02110-1301, USA. | ||
| 22 | */ | ||
| 23 | |||
| 24 | /* | ||
| 25 | * This file makes the start of the text and data regions of the program | ||
| 26 | * clearly visible to the GNU Emacs C source code, without any dependencies | ||
| 27 | * on any changes made to the standard C runtime startup module, crt0.o. | ||
| 28 | * It depends, however, on this file being passed down to the linker (ld) | ||
| 29 | * before any others, and the linker's behavior of assigning increasing | ||
| 30 | * addresses as it finds symbols. | ||
| 31 | */ | ||
| 32 | /* C symbol _start marks beginning of text region. */ | ||
| 33 | .text | ||
| 34 | .globl __start | ||
| 35 | __start: | ||
| 36 | /* C symbol data_start marks beginning of data region. */ | ||
| 37 | .data | ||
| 38 | .globl _data_start | ||
| 39 | _data_start: .space 4 | ||
| 40 | |||
| 41 | /* arch-tag: ba84e4dc-615d-4a81-898c-f5b98ec71c9d | ||
| 42 | (do not change this comment) */ | ||
diff --git a/src/m/7300.h b/src/m/7300.h deleted file mode 100644 index 6e439a829cc..00000000000 --- a/src/m/7300.h +++ /dev/null | |||
| @@ -1,98 +0,0 @@ | |||
| 1 | /* machine description file for AT&T UNIX PC model 7300 | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | Modified for this machine by mtxinu!rtech!gonzo!daveb | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | /* The following line tells the configuration script what sort of | ||
| 25 | operating system this machine is likely to run. | ||
| 26 | USUAL-OPSYS="usg5-2-2" */ | ||
| 27 | |||
| 28 | /* Supposedly now these machines have flexnames. | ||
| 29 | |||
| 30 | /* # define SHORTNAMES */ | ||
| 31 | |||
| 32 | |||
| 33 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 34 | is the most significant byte. */ | ||
| 35 | |||
| 36 | #define WORDS_BIG_ENDIAN | ||
| 37 | |||
| 38 | /* XINT must explicitly sign-extend */ | ||
| 39 | |||
| 40 | #define EXPLICIT_SIGN_EXTEND | ||
| 41 | |||
| 42 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 43 | |||
| 44 | #define NO_UNION_TYPE | ||
| 45 | |||
| 46 | /* Now define a symbol for the cpu type, if your compiler | ||
| 47 | does not define it automatically: | ||
| 48 | vax, m68000, ns16000 are the ones defined so far. */ | ||
| 49 | |||
| 50 | # ifndef mc68k | ||
| 51 | # define mc68k | ||
| 52 | # endif | ||
| 53 | #ifndef m68k | ||
| 54 | #define m68k | ||
| 55 | #endif | ||
| 56 | |||
| 57 | /* Cause crt0.c to define errno. */ | ||
| 58 | |||
| 59 | #define NEED_ERRNO | ||
| 60 | |||
| 61 | /* Data type of load average, as read out of kmem. */ | ||
| 62 | /* These are commented out since it is not supported by this machine. */ | ||
| 63 | |||
| 64 | /* #define LOAD_AVE_TYPE long */ | ||
| 65 | |||
| 66 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 67 | |||
| 68 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) */ | ||
| 69 | |||
| 70 | #ifndef __GNUC__ | ||
| 71 | |||
| 72 | #define SWITCH_ENUM_BUG | ||
| 73 | |||
| 74 | #endif | ||
| 75 | |||
| 76 | /* If you have the PD pty driver installed, uncomment the following line. */ | ||
| 77 | /* #define HAVE_PTYS */ | ||
| 78 | |||
| 79 | #define HAVE_SYSVIPC | ||
| 80 | |||
| 81 | /* We don't have memmove. */ | ||
| 82 | #define memmove(d, s, n) safe_bcopy (s, d, n) | ||
| 83 | |||
| 84 | /* These three lines were new in 18.50. They were said to permit | ||
| 85 | a demand-paged executable, but someone else says they don't work. | ||
| 86 | Someone else says they do. They didn't work because errno was an | ||
| 87 | initialized variable in crt0.c, and because of %splimit (also therein), | ||
| 88 | both of which have been fixed now. */ | ||
| 89 | #define SECTION_ALIGNMENT 0x03ff | ||
| 90 | #define SEGMENT_MASK 0xffff | ||
| 91 | #define LD_SWITCH_MACHINE -z | ||
| 92 | |||
| 93 | /* Insist on using cc when compiling this. GCC may have been | ||
| 94 | configured to use GAS syntax, which causes problems. */ | ||
| 95 | #define CRT0_COMPILE cc -c -O -Demacs | ||
| 96 | |||
| 97 | /* arch-tag: 66219dc7-ef45-4f0c-bb98-f35421f39c8d | ||
| 98 | (do not change this comment) */ | ||
diff --git a/src/m/acorn.h b/src/m/acorn.h deleted file mode 100644 index 148d46454ab..00000000000 --- a/src/m/acorn.h +++ /dev/null | |||
| @@ -1,185 +0,0 @@ | |||
| 1 | /* Machine description file for Acorn RISCiX machines. | ||
| 2 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | |||
| 24 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 25 | is the most significant byte. */ | ||
| 26 | |||
| 27 | #undef WORDS_BIG_ENDIAN | ||
| 28 | |||
| 29 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 30 | * group of arguments and treat it as an array of the arguments. We can't | ||
| 31 | * do this on the arm with gcc, since the first 4 args are in registers. */ | ||
| 32 | |||
| 33 | #ifdef __GNUC__ | ||
| 34 | #define NO_ARG_ARRAY | ||
| 35 | #else | ||
| 36 | #undef NO_ARG_ARRAY | ||
| 37 | #endif | ||
| 38 | |||
| 39 | /* Define WORD_MACHINE if addresses and such have | ||
| 40 | * to be corrected before they can be used as byte counts. */ | ||
| 41 | |||
| 42 | #undef WORD_MACHINE | ||
| 43 | |||
| 44 | /* Define how to take a char and sign-extend into an int. | ||
| 45 | On machines where char is signed, this is a no-op. */ | ||
| 46 | |||
| 47 | /* ARM note - The RISCiX Norcroft C Compiler has ALL | ||
| 48 | non-32-bit types as unsigned */ | ||
| 49 | |||
| 50 | #define SIGN_EXTEND_CHAR(c) (((int)(c) << 24) >> 24) | ||
| 51 | |||
| 52 | /* Now define a symbol for the cpu type, if your compiler | ||
| 53 | does not define it automatically: | ||
| 54 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 55 | orion, tahoe, APOLLO and many others */ | ||
| 56 | |||
| 57 | /* ARM note - this is done by the Norcroft compiler - symbol is `__arm' */ | ||
| 58 | |||
| 59 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 60 | /* This is desirable for most machines. */ | ||
| 61 | |||
| 62 | #define NO_UNION_TYPE | ||
| 63 | |||
| 64 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 65 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 66 | are always unsigned. | ||
| 67 | |||
| 68 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 69 | |||
| 70 | #define EXPLICIT_SIGN_EXTEND | ||
| 71 | |||
| 72 | #ifdef LDAV_SYMBOL | ||
| 73 | #undef LDAV_SYMBOL | ||
| 74 | #endif | ||
| 75 | |||
| 76 | #define LDAV_SYMBOL "_iavenrun" | ||
| 77 | |||
| 78 | |||
| 79 | /* Data type of load average, as read out of kmem. */ | ||
| 80 | |||
| 81 | #define LOAD_AVE_TYPE long | ||
| 82 | |||
| 83 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 84 | |||
| 85 | /* | ||
| 86 | * Scale factor for scaled integers used to count | ||
| 87 | * %cpu time and load averages. | ||
| 88 | */ | ||
| 89 | |||
| 90 | /* FSHIFT and FSCALE are defined in param.h, but are required by | ||
| 91 | LOAD_AVE_CVT, so they need to be defined here. */ | ||
| 92 | |||
| 93 | #ifndef FSHIFT | ||
| 94 | #define FSHIFT 8 /* bits to right of fixed binary point */ | ||
| 95 | #endif | ||
| 96 | |||
| 97 | #ifndef FSCALE | ||
| 98 | #define FSCALE (1<<FSHIFT) | ||
| 99 | #endif | ||
| 100 | |||
| 101 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 102 | |||
| 103 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 104 | Then the function dump-emacs will not be defined | ||
| 105 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 106 | |||
| 107 | #undef CANNOT_DUMP | ||
| 108 | |||
| 109 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 110 | pure and impure space as loaded can vary, and even their | ||
| 111 | relative order cannot be relied on. | ||
| 112 | |||
| 113 | Otherwise Emacs assumes that text space precedes data space, | ||
| 114 | numerically. */ | ||
| 115 | |||
| 116 | #undef VIRT_ADDR_VARIES | ||
| 117 | |||
| 118 | /* This prevents Emacs dumping an unsqueezed binary with the | ||
| 119 | SQUEEZE bit set in the magic number. */ | ||
| 120 | |||
| 121 | #define ADJUST_EXEC_HEADER {hdr.a_magic &= ~MF_SQUEEZED;} | ||
| 122 | |||
| 123 | #ifdef __GNUC__ | ||
| 124 | |||
| 125 | /* Keep gcc/RISCiX happy - it uses __gccmain where other versions of | ||
| 126 | gcc use __main, because of a library routine name clash. */ | ||
| 127 | #define __main __gccmain | ||
| 128 | |||
| 129 | #endif /* __GNUC__ */ | ||
| 130 | |||
| 131 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 132 | to change the boundary between the text section and data section | ||
| 133 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 134 | code will not be sharable; but that's better than failing completely. */ | ||
| 135 | |||
| 136 | #define NO_REMAP | ||
| 137 | |||
| 138 | |||
| 139 | #ifndef NOT_C_CODE | ||
| 140 | #define TEXT_START 0x8000 | ||
| 141 | #define DATA_END &_edata | ||
| 142 | extern int _edata; | ||
| 143 | #define etext _etext | ||
| 144 | #endif | ||
| 145 | |||
| 146 | /* Avoid debugging library */ | ||
| 147 | #define LIBS_DEBUG | ||
| 148 | |||
| 149 | /* Avoid sharing libc */ | ||
| 150 | #define LIB_STANDARD -lc_n | ||
| 151 | |||
| 152 | /* Avoid sharing libX11 */ | ||
| 153 | #define LIB_X11_LIB -lX11_n | ||
| 154 | |||
| 155 | /* All kinds of symbol definitions, so as to avoid multiply defined symbol | ||
| 156 | errors from the RISCiX linker. */ | ||
| 157 | |||
| 158 | #ifdef __GNUC__ | ||
| 159 | #define C_DEBUG_SWITCH | ||
| 160 | |||
| 161 | #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= | ||
| 162 | |||
| 163 | #else | ||
| 164 | #define C_DEBUG_SWITCH -O -w -g -Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind -Doptarg=gnu_optarg -Dcfree=gnu_cfree | ||
| 165 | #endif | ||
| 166 | |||
| 167 | /* Turn this on to avoid the emacs malloc and use standard one */ | ||
| 168 | |||
| 169 | #undef SYSTEM_MALLOC | ||
| 170 | |||
| 171 | /* Use <dirent.h>. */ | ||
| 172 | #define SYSV_SYSTEM_DIR | ||
| 173 | |||
| 174 | #ifdef NO_REMAP | ||
| 175 | /* CRT0_O is defined in s/riscix1-1.h or s/riscix1-2.h, as appropriate. */ | ||
| 176 | #define START_FILES pre-crt0.o CRT0_O | ||
| 177 | #else | ||
| 178 | Cannot | ||
| 179 | do | ||
| 180 | this | ||
| 181 | yet | ||
| 182 | #endif | ||
| 183 | |||
| 184 | /* arch-tag: acee2955-8c49-4b40-813c-579f76f4c0c3 | ||
| 185 | (do not change this comment) */ | ||
diff --git a/src/m/alliant-2800.h b/src/m/alliant-2800.h deleted file mode 100644 index 405267afb2b..00000000000 --- a/src/m/alliant-2800.h +++ /dev/null | |||
| @@ -1,130 +0,0 @@ | |||
| 1 | /* alliant-2800.h - Alliant FX/2800 machine running Concentrix 2800. | ||
| 2 | Copyright (C) 1990, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #undef WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #define NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 45 | are the ones defined so far. */ | ||
| 46 | |||
| 47 | #define ALLIANT | ||
| 48 | #define ALLIANT_2800 | ||
| 49 | #define sun /* Use X support for Sun keyboard stuff. */ | ||
| 50 | #define C_OPTIMIZE_SWITCH -Og /* No concurrent code allowed here. */ | ||
| 51 | |||
| 52 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 53 | /* This is desirable for most machines. */ | ||
| 54 | |||
| 55 | #define NO_UNION_TYPE | ||
| 56 | |||
| 57 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 58 | the bit field into an int. In other words, if bit fields | ||
| 59 | are always unsigned. | ||
| 60 | |||
| 61 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 62 | /* On Alliants, bitfields are unsigned. */ | ||
| 63 | |||
| 64 | #define EXPLICIT_SIGN_EXTEND | ||
| 65 | |||
| 66 | /* Concentrix uses a different kernel symbol for load average. */ | ||
| 67 | |||
| 68 | #undef LDAV_SYMBOL /* Undo definition in s-bsd4-2.h */ | ||
| 69 | #define LDAV_SYMBOL "_Loadavg" | ||
| 70 | |||
| 71 | /* Data type of load average, as read out of kmem. */ | ||
| 72 | |||
| 73 | #define LOAD_AVE_TYPE long | ||
| 74 | |||
| 75 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 76 | |||
| 77 | #define LOAD_AVE_CVT(x) (x * 100 / LOADAVG_SCALE) | ||
| 78 | |||
| 79 | /* include <sys/param.h> for the definition of LOADAVG_SCALE, and also | ||
| 80 | LOADAVG_SIZE, the number of items in the Loadavg array. */ | ||
| 81 | |||
| 82 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 83 | Then the function dump-emacs will not be defined | ||
| 84 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 85 | |||
| 86 | /* #define CANNOT_DUMP */ | ||
| 87 | #define UNEXEC unexfx2800.o | ||
| 88 | #define LIBS_MACHINE -lalliant | ||
| 89 | |||
| 90 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 91 | pure and impure space as loaded can vary, and even their | ||
| 92 | relative order cannot be relied on. | ||
| 93 | |||
| 94 | Otherwise Emacs assumes that text space precedes data space, | ||
| 95 | numerically. */ | ||
| 96 | |||
| 97 | #undef VIRT_ADDR_VARIES | ||
| 98 | |||
| 99 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 100 | to change the boundary between the text section and data section | ||
| 101 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 102 | code will not be sharable; but that's better than failing completely. */ | ||
| 103 | /* Actually, Alliant CONCENTRIX does paging "right": | ||
| 104 | data pages are copy-on-write, which means that the pure data areas | ||
| 105 | are shared automatically and remapping is not necessary. */ | ||
| 106 | |||
| 107 | #define NO_REMAP | ||
| 108 | |||
| 109 | /* Alliant needs special crt0.o because system version is not reentrant */ | ||
| 110 | |||
| 111 | #define START_FILES crt0.o | ||
| 112 | |||
| 113 | /* Alliant dependent code for dumping executing image. | ||
| 114 | See crt0.c code for alliant. */ | ||
| 115 | |||
| 116 | #define ADJUST_EXEC_HEADER {\ | ||
| 117 | extern int _curbrk, _setbrk;\ | ||
| 118 | _setbrk = _curbrk;\ | ||
| 119 | hdr.a_bss_addr = bss_start;\ | ||
| 120 | unexec_text_start = hdr.a_text_addr;} | ||
| 121 | |||
| 122 | /* POSIX Compatibility */ | ||
| 123 | /* Use System V.4 style getdents/readdir <dirent.h> for 2.2 and up. */ | ||
| 124 | #define SYSV_SYSTEM_DIR | ||
| 125 | |||
| 126 | /* Use the K&R version of the DEFUN macro. */ | ||
| 127 | #define USE_NONANSI_DEFUN | ||
| 128 | |||
| 129 | /* arch-tag: 8ba70b15-d082-40f6-931d-14adfd7f9dbd | ||
| 130 | (do not change this comment) */ | ||
diff --git a/src/m/alliant.h b/src/m/alliant.h deleted file mode 100644 index 7cad4bfb0c1..00000000000 --- a/src/m/alliant.h +++ /dev/null | |||
| @@ -1,123 +0,0 @@ | |||
| 1 | /* alliant.h Alliant machine running system version 2 or 3. | ||
| 2 | Copyright (C) 1985, 1986, 1987, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | Note that for version 1 of the Alliant system | ||
| 5 | you should use alliant1.h instead of this file. | ||
| 6 | Use alliant4.h for version 4. | ||
| 7 | |||
| 8 | This file is part of GNU Emacs. | ||
| 9 | |||
| 10 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 11 | it under the terms of the GNU General Public License as published by | ||
| 12 | the Free Software Foundation; either version 3, or (at your option) | ||
| 13 | any later version. | ||
| 14 | |||
| 15 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 16 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 17 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 18 | GNU General Public License for more details. | ||
| 19 | |||
| 20 | You should have received a copy of the GNU General Public License | ||
| 21 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 22 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 23 | Boston, MA 02110-1301, USA. */ | ||
| 24 | |||
| 25 | /* The following line tells the configuration script what sort of | ||
| 26 | operating system this machine is likely to run. | ||
| 27 | USUAL-OPSYS="bsd4-2" */ | ||
| 28 | |||
| 29 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 30 | is the most significant byte. */ | ||
| 31 | |||
| 32 | #define WORDS_BIG_ENDIAN | ||
| 33 | |||
| 34 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 35 | * group of arguments and treat it as an array of the arguments. */ | ||
| 36 | |||
| 37 | #ifdef ALLIANT_1 | ||
| 38 | #define NO_ARG_ARRAY | ||
| 39 | #endif | ||
| 40 | |||
| 41 | /* Define WORD_MACHINE if addresses and such have | ||
| 42 | * to be corrected before they can be used as byte counts. */ | ||
| 43 | |||
| 44 | #undef WORD_MACHINE | ||
| 45 | |||
| 46 | /* Now define a symbol for the cpu type, if your compiler | ||
| 47 | does not define it automatically: | ||
| 48 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 49 | are the ones defined so far. */ | ||
| 50 | |||
| 51 | #define ALLIANT | ||
| 52 | |||
| 53 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 54 | /* This is desirable for most machines. */ | ||
| 55 | |||
| 56 | #define NO_UNION_TYPE | ||
| 57 | |||
| 58 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 59 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 60 | are always unsigned. | ||
| 61 | |||
| 62 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 63 | /* On Alliants, bitfields are unsigned. */ | ||
| 64 | |||
| 65 | #define EXPLICIT_SIGN_EXTEND | ||
| 66 | |||
| 67 | /* No load average information available for Alliants. */ | ||
| 68 | |||
| 69 | #undef LOAD_AVE_TYPE | ||
| 70 | #undef LOAD_AVE_CVT | ||
| 71 | |||
| 72 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 73 | Then the function dump-emacs will not be defined | ||
| 74 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 75 | |||
| 76 | #undef CANNOT_DUMP | ||
| 77 | |||
| 78 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 79 | pure and impure space as loaded can vary, and even their | ||
| 80 | relative order cannot be relied on. | ||
| 81 | |||
| 82 | Otherwise Emacs assumes that text space precedes data space, | ||
| 83 | numerically. */ | ||
| 84 | |||
| 85 | #undef VIRT_ADDR_VARIES | ||
| 86 | |||
| 87 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 88 | to change the boundary between the text section and data section | ||
| 89 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 90 | code will not be sharable; but that's better than failing completely. */ | ||
| 91 | /* Actually, Alliant CONCENTRIX does paging "right": | ||
| 92 | data pages are copy-on-write, which means that the pure data areas | ||
| 93 | are shared automatically and remapping is not necessary. */ | ||
| 94 | |||
| 95 | #define NO_REMAP | ||
| 96 | |||
| 97 | /* Alliant needs special crt0.o because system version is not reentrant */ | ||
| 98 | |||
| 99 | #define START_FILES crt0.o | ||
| 100 | |||
| 101 | /* Alliant dependent code for dumping executing image. | ||
| 102 | See crt0.c code for alliant. */ | ||
| 103 | |||
| 104 | #define ADJUST_EXEC_HEADER {\ | ||
| 105 | extern int _curbrk, _setbrk;\ | ||
| 106 | _setbrk = _curbrk;\ | ||
| 107 | hdr.a_bss_addr = bss_start;\ | ||
| 108 | unexec_text_start = hdr.a_text_addr;} | ||
| 109 | |||
| 110 | /* cc screws up on long names. Try making cpp replace them. */ | ||
| 111 | |||
| 112 | #ifdef ALLIANT_1 | ||
| 113 | #define Finsert_abbrev_table_description Finsert_abbrev_table_descrip | ||
| 114 | #define internal_with_output_to_temp_buffer internal_with_output_to_tem | ||
| 115 | #endif | ||
| 116 | |||
| 117 | /* "vector" is a typedef in /usr/include/machine/reg.h, so its use as | ||
| 118 | a variable name causes errors when compiling under ANSI C. */ | ||
| 119 | |||
| 120 | #define vector xxvector | ||
| 121 | |||
| 122 | /* arch-tag: 0ad5f932-f29a-4458-a24c-496cafdfd50d | ||
| 123 | (do not change this comment) */ | ||
diff --git a/src/m/alliant1.h b/src/m/alliant1.h deleted file mode 100644 index ca597ac2762..00000000000 --- a/src/m/alliant1.h +++ /dev/null | |||
| @@ -1,12 +0,0 @@ | |||
| 1 | /* config.h should include this file for version 1 of Alliant's | ||
| 2 | operating system. */ | ||
| 3 | |||
| 4 | /* The following line tells the configuration script what sort of | ||
| 5 | operating system this machine is likely to run. | ||
| 6 | USUAL-OPSYS="bsd4-2" */ | ||
| 7 | |||
| 8 | #define ALLIANT_1 | ||
| 9 | #include "alliant.h" | ||
| 10 | |||
| 11 | /* arch-tag: 516688f9-4b94-4356-9bf0-92b2d72e664e | ||
| 12 | (do not change this comment) */ | ||
diff --git a/src/m/alliant4.h b/src/m/alliant4.h deleted file mode 100644 index 2ab0a6bde1d..00000000000 --- a/src/m/alliant4.h +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | /* machine description file for Alliant Concentrix 4.0 or later. | ||
| 2 | Use alliant.h for versions 2 and 3. */ | ||
| 3 | |||
| 4 | /* The following line tells the configuration script what sort of | ||
| 5 | operating system this machine is likely to run. | ||
| 6 | USUAL-OPSYS="bsd4-2" */ | ||
| 7 | |||
| 8 | #include "alliant.h" | ||
| 9 | |||
| 10 | /* Concentrix uses a different kernel symbol for load average. */ | ||
| 11 | |||
| 12 | #undef LDAV_SYMBOL /* Undo definition in s-bsd4-2.h */ | ||
| 13 | #define LDAV_SYMBOL "_Loadavg" | ||
| 14 | |||
| 15 | /* Data type of load average, as read out of kmem. */ | ||
| 16 | |||
| 17 | #define LOAD_AVE_TYPE long | ||
| 18 | |||
| 19 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 20 | |||
| 21 | #define LOAD_AVE_CVT(x) (x * 100 / LOADAVG_SCALE) | ||
| 22 | |||
| 23 | /* include <sys/param.h> for the definition of LOADAVG_SCALE, and also | ||
| 24 | LOADAVG_SIZE, the number of items in the Loadavg array. */ | ||
| 25 | |||
| 26 | /* arch-tag: cf917b55-c95e-4079-a4d1-d31e00c61b66 | ||
| 27 | (do not change this comment) */ | ||
diff --git a/src/m/altos.h b/src/m/altos.h deleted file mode 100644 index 0f4bb9b810f..00000000000 --- a/src/m/altos.h +++ /dev/null | |||
| @@ -1,59 +0,0 @@ | |||
| 1 | /* altos machine description file Altos 3068 Unix System V Release 2 | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | #define EXPLICIT_SIGN_EXTEND | ||
| 33 | |||
| 34 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 35 | |||
| 36 | #define NO_UNION_TYPE | ||
| 37 | |||
| 38 | #define LIB_STANDARD -lc | ||
| 39 | |||
| 40 | #define SWITCH_ENUM_BUG | ||
| 41 | |||
| 42 | #define NO_REMAP | ||
| 43 | |||
| 44 | #undef TERMINFO | ||
| 45 | |||
| 46 | #undef CANNOT_DUMP | ||
| 47 | #undef SHORTNAMES | ||
| 48 | #define TERMCAP | ||
| 49 | |||
| 50 | #define LIBS_TERMCAP -ltermlib | ||
| 51 | #define PURESIZE 220000 | ||
| 52 | #define ALTOS | ||
| 53 | |||
| 54 | #ifdef __GNUC__ | ||
| 55 | #define COFF_ENCAPSULATE | ||
| 56 | #endif | ||
| 57 | |||
| 58 | /* arch-tag: 4572d0ff-70bb-445f-80f1-2bbac3cf47cb | ||
| 59 | (do not change this comment) */ | ||
diff --git a/src/m/amdahl.h b/src/m/amdahl.h deleted file mode 100644 index 486e2925a55..00000000000 --- a/src/m/amdahl.h +++ /dev/null | |||
| @@ -1,140 +0,0 @@ | |||
| 1 | /* amdahl machine description file | ||
| 2 | Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* | ||
| 23 | This file for amdahl_uts created by modifying the template.h | ||
| 24 | by Jishnu Mukerji 3/1/87 | ||
| 25 | |||
| 26 | The following line tells the configuration script what sort of | ||
| 27 | operating system this machine is likely to run. | ||
| 28 | USUAL-OPSYS="usg5-2-2" | ||
| 29 | |||
| 30 | This file works with the Amdahl uts native C compiler. The 5.2u370 | ||
| 31 | compiler is so brain damaged that it is not even worth trying to use it. | ||
| 32 | */ | ||
| 33 | |||
| 34 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 35 | is the most significant byte. */ | ||
| 36 | |||
| 37 | #define WORDS_BIG_ENDIAN | ||
| 38 | |||
| 39 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 40 | * group of arguments and treat it as an array of the arguments. */ | ||
| 41 | |||
| 42 | #undef NO_ARG_ARRAY | ||
| 43 | |||
| 44 | /* Define WORD_MACHINE if addresses and such have | ||
| 45 | * to be corrected before they can be used as byte counts. */ | ||
| 46 | |||
| 47 | #define WORD_MACHINE /* not actually used anywhere yet! */ | ||
| 48 | |||
| 49 | /* Now define a symbol for the cpu type, if your compiler | ||
| 50 | does not define it automatically: | ||
| 51 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 52 | are the ones defined so far. */ | ||
| 53 | |||
| 54 | /* uts gets defined automatically */ | ||
| 55 | /* However for clarity define amdahl_uts */ | ||
| 56 | #define amdahl_uts | ||
| 57 | |||
| 58 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 59 | /* This is desirable for most machines. */ | ||
| 60 | |||
| 61 | #define NO_UNION_TYPE | ||
| 62 | |||
| 63 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 64 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 65 | are always unsigned. | ||
| 66 | |||
| 67 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 68 | |||
| 69 | #define EXPLICIT_SIGN_EXTEND | ||
| 70 | |||
| 71 | /* Data type of load average, as read out of kmem. */ | ||
| 72 | |||
| 73 | /* #define LOAD_AVE_TYPE long*/ | ||
| 74 | |||
| 75 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 76 | |||
| 77 | /*#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0)*/ | ||
| 78 | |||
| 79 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 80 | Then the function dump-emacs will not be defined | ||
| 81 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 82 | |||
| 83 | /* #define CANNOT_DUMP | ||
| 84 | |||
| 85 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 86 | pure and impure space as loaded can vary, and even their | ||
| 87 | relative order cannot be relied on. | ||
| 88 | |||
| 89 | Otherwise Emacs assumes that text space precedes data space, | ||
| 90 | numerically. */ | ||
| 91 | |||
| 92 | /* #define VIRT_ADDR_VARIES*/ | ||
| 93 | |||
| 94 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 95 | to change the boundary between the text section and data section | ||
| 96 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 97 | code will not be sharable; but that's better than failing completely. */ | ||
| 98 | |||
| 99 | /*#define NO_REMAP*/ | ||
| 100 | |||
| 101 | #define TERMINFO | ||
| 102 | |||
| 103 | /* The usual definition of XINT, which involves shifting, does not | ||
| 104 | sign-extend properly on this machine. */ | ||
| 105 | |||
| 106 | #define XINT(i) (((sign_extend_temp=(i)) & 0x00800000) \ | ||
| 107 | ? (sign_extend_temp | 0xFF000000) \ | ||
| 108 | : (sign_extend_temp & 0x00FFFFFF)) | ||
| 109 | |||
| 110 | #ifdef emacs /* Don't do this when making xmakefile! */ | ||
| 111 | extern int sign_extend_temp; | ||
| 112 | #endif | ||
| 113 | |||
| 114 | /* The following needed to load the proper crt0.o and to get the | ||
| 115 | proper declaration of data_start in the #undef NO_REMAP case */ | ||
| 116 | |||
| 117 | #ifndef NO_REMAP | ||
| 118 | #define START_FILES pre-crt0.o /lib/crt0.o | ||
| 119 | #endif | ||
| 120 | |||
| 121 | /* Perhaps this means that the optimizer isn't safe to use. */ | ||
| 122 | |||
| 123 | #define C_OPTIMIZE_SWITCH | ||
| 124 | |||
| 125 | /* Put text and data on non-segment boundary; makes image smaller */ | ||
| 126 | |||
| 127 | #define LD_SWITCH_MACHINE -N | ||
| 128 | |||
| 129 | /* When writing the 'xemacs' file, make text segment ro */ | ||
| 130 | #define EXEC_MAGIC 0410 | ||
| 131 | |||
| 132 | /* Mask for address bits within a memory segment */ | ||
| 133 | #define SEGSIZ 0x10000 /* Should this not be defined elsewhere ? */ | ||
| 134 | #define SEGMENT_MASK (SEGSIZ - 1) | ||
| 135 | |||
| 136 | /* Compensate for error in signal.h. */ | ||
| 137 | #define NSIG_MINIMUM 20 | ||
| 138 | |||
| 139 | /* arch-tag: cf665976-ddb1-49b0-b383-371e17f36acf | ||
| 140 | (do not change this comment) */ | ||
diff --git a/src/m/apollo.h b/src/m/apollo.h deleted file mode 100644 index 2eac3098db9..00000000000 --- a/src/m/apollo.h +++ /dev/null | |||
| @@ -1,96 +0,0 @@ | |||
| 1 | /* machine description file for Apollo machine. | ||
| 2 | Copyright (C) 1985, 1986, 1994, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Say this machine is a 68000 */ | ||
| 33 | |||
| 34 | /* #define m68000 */ /* Done by the C compiler */ | ||
| 35 | |||
| 36 | #define APOLLO | ||
| 37 | |||
| 38 | /* Assume we use s-bsd4-3.h for system version 10. */ | ||
| 39 | |||
| 40 | #ifdef BSD4_3 | ||
| 41 | #define APOLLO_SR10 | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 45 | |||
| 46 | #define NO_UNION_TYPE | ||
| 47 | |||
| 48 | /* Do not define LOAD_AVE_TYPE or LOAD_AVE_CVT | ||
| 49 | since there is no /dev/kmem */ | ||
| 50 | |||
| 51 | /* Undefine VIRT_ADDR_VARIES because the virtual addresses of | ||
| 52 | pure and impure space as loaded do not vary. */ | ||
| 53 | |||
| 54 | #undef VIRT_ADDR_VARIES | ||
| 55 | |||
| 56 | /* Prevent -lg from being used for debugging. Not needed. */ | ||
| 57 | |||
| 58 | #define LIBS_DEBUG | ||
| 59 | |||
| 60 | /* Can't use the system's termcap. It has compressed data sections that | ||
| 61 | interfere with dumping. That means we won't automatically get a vt100 | ||
| 62 | when we start up emacs in a dm pad (a dubious feature at best anyway). */ | ||
| 63 | |||
| 64 | #undef LIBS_TERMCAP | ||
| 65 | |||
| 66 | /* Must use the system's malloc and alloca. */ | ||
| 67 | |||
| 68 | #define SYSTEM_MALLOC | ||
| 69 | |||
| 70 | /* Define the file we use for UNEXEC. */ | ||
| 71 | |||
| 72 | #define UNEXEC unexapollo.o | ||
| 73 | |||
| 74 | /* The Apollo linker does not recognize the -X switch, so we remove it here. */ | ||
| 75 | |||
| 76 | #define LD_SWITCH_SYSTEM | ||
| 77 | |||
| 78 | /* Define C_SWITCH_MACHINE to compile for 68020/68030 or PRISM. | ||
| 79 | Define LD_SWITCH_MACHINE to save space by stripping symbols | ||
| 80 | and use X11 libraries. */ | ||
| 81 | |||
| 82 | #if _ISP__A88K | ||
| 83 | #define C_SWITCH_MACHINE -W0,-ncompress -W0,-opt,2 -A cpu,a88k -A sys,any -A run,bsd4.3 | ||
| 84 | #define LD_SWITCH_MACHINE -A cpu,a88k -A sys,any -A run,bsd4.3 | ||
| 85 | #else | ||
| 86 | #define C_SWITCH_MACHINE -W0,-ncompress -W0,-opt,2 -A cpu,3000 -A sys,any -A run,bsd4.3 | ||
| 87 | #define LD_SWITCH_MACHINE -A cpu,m68k -A sys,any -A run,bsd4.3 | ||
| 88 | #endif | ||
| 89 | |||
| 90 | #define OLDXMENU_OPTIONS ${C_SWITCH_MACHINE} | ||
| 91 | |||
| 92 | /* In SR10.4, unistd.h has bad prototype for getpgrp, so we don't include it. */ | ||
| 93 | #undef HAVE_UNISTD_H | ||
| 94 | |||
| 95 | /* arch-tag: 33336588-6242-4e2e-a194-e38848b12813 | ||
| 96 | (do not change this comment) */ | ||
diff --git a/src/m/att3b.h b/src/m/att3b.h deleted file mode 100644 index 8e9a589bcd2..00000000000 --- a/src/m/att3b.h +++ /dev/null | |||
| @@ -1,150 +0,0 @@ | |||
| 1 | /* Machine-dependent configuration for GNU Emacs for AT&T 3b machines. | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | Modified by David Robinson (daver@csvax.caltech.edu) 6/6/86 | ||
| 6 | |||
| 7 | This file is part of GNU Emacs. | ||
| 8 | |||
| 9 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 10 | it under the terms of the GNU General Public License as published by | ||
| 11 | the Free Software Foundation; either version 3, or (at your option) | ||
| 12 | any later version. | ||
| 13 | |||
| 14 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | GNU General Public License for more details. | ||
| 18 | |||
| 19 | You should have received a copy of the GNU General Public License | ||
| 20 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 21 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 22 | Boston, MA 02110-1301, USA. */ | ||
| 23 | |||
| 24 | |||
| 25 | /* The following line tells the configuration script what sort of | ||
| 26 | operating system this machine is likely to run. | ||
| 27 | USUAL-OPSYS="usg5-2-2" */ | ||
| 28 | |||
| 29 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 30 | is the most significant byte. */ | ||
| 31 | |||
| 32 | #define WORDS_BIG_ENDIAN | ||
| 33 | |||
| 34 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 35 | * group of arguments and treat it as an array of the arguments. */ | ||
| 36 | |||
| 37 | /* #define NO_ARG_ARRAY */ | ||
| 38 | |||
| 39 | /* Define WORD_MACHINE if addresses and such have | ||
| 40 | * to be corrected before they can be used as byte counts. */ | ||
| 41 | |||
| 42 | /* #define WORD_MACHINE */ | ||
| 43 | |||
| 44 | /* Now define a symbol for the cpu type, if your compiler | ||
| 45 | does not define it automatically */ | ||
| 46 | #define ATT3B | ||
| 47 | |||
| 48 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 49 | /* This is desirable for most machines. */ | ||
| 50 | |||
| 51 | #define NO_UNION_TYPE | ||
| 52 | |||
| 53 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 54 | the bit field into an int. In other words, if bit fields | ||
| 55 | are always unsigned. | ||
| 56 | |||
| 57 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 58 | |||
| 59 | #define EXPLICIT_SIGN_EXTEND | ||
| 60 | |||
| 61 | /* Data type of load average, as read out of kmem. */ | ||
| 62 | /* #define LOAD_AVE_TYPE long */ | ||
| 63 | |||
| 64 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 65 | |||
| 66 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */ | ||
| 67 | |||
| 68 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 69 | Then the function dump-emacs will not be defined | ||
| 70 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 71 | /* #define CANNOT_DUMP */ | ||
| 72 | |||
| 73 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 74 | pure and impure space as loaded can vary, and even their | ||
| 75 | relative order cannot be relied on. | ||
| 76 | |||
| 77 | Otherwise Emacs assumes that text space precedes data space, | ||
| 78 | numerically. */ | ||
| 79 | |||
| 80 | /* #define VIRT_ADDR_VARIES */ /* Karl Kleinpaste says this isn't needed. */ | ||
| 81 | |||
| 82 | /* SysV has alloca in the PW library */ | ||
| 83 | |||
| 84 | #define LIB_STANDARD -lPW -lc | ||
| 85 | |||
| 86 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 87 | to change the boundary between the text section and data section | ||
| 88 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 89 | code will not be sharable; but that's better than failing completely. */ | ||
| 90 | |||
| 91 | #define NO_REMAP | ||
| 92 | |||
| 93 | /* #define LD_SWITCH_MACHINE -N */ | ||
| 94 | |||
| 95 | /* Use Terminfo, not Termcap. */ | ||
| 96 | |||
| 97 | #define TERMINFO | ||
| 98 | |||
| 99 | /* -O has been observed to make correct C code in Emacs not work. | ||
| 100 | So don't try to use it. */ | ||
| 101 | |||
| 102 | #if u3b2 || u3b5 || u3b15 | ||
| 103 | #define C_OPTIMIZE_SWITCH | ||
| 104 | #endif | ||
| 105 | |||
| 106 | /* Define our page size. */ | ||
| 107 | |||
| 108 | #define NBPC 2048 | ||
| 109 | |||
| 110 | #if 0 /* If this is still needed, don't hard-code assumptions about | ||
| 111 | the number of VALBITS, or other assumptions about the | ||
| 112 | Lisp_Object representation. Try to extend lisp.h instead, if | ||
| 113 | necessary. */ | ||
| 114 | /* The usual definition of XINT, which involves shifting, does not | ||
| 115 | sign-extend properly on this machine. */ | ||
| 116 | |||
| 117 | #define XINT(i) (((sign_extend_temp=(i)) & 0x00800000) \ | ||
| 118 | ? (sign_extend_temp | 0xFF000000) \ | ||
| 119 | : (sign_extend_temp & 0x00FFFFFF)) | ||
| 120 | #endif | ||
| 121 | |||
| 122 | #ifdef emacs /* Don't do this when making xmakefile! */ | ||
| 123 | extern int sign_extend_temp; | ||
| 124 | #endif | ||
| 125 | |||
| 126 | #if u3b2 || u3b5 || u3b15 | ||
| 127 | /* On 3b2/5/15, data space has high order bit on. */ | ||
| 128 | #define DATA_SEG_BITS 0x80000000 | ||
| 129 | #endif /* 3b2, 3b5 or 3b15 */ | ||
| 130 | |||
| 131 | #define TEXT_START 0 | ||
| 132 | |||
| 133 | /* (short) negative-int doesn't sign-extend correctly */ | ||
| 134 | #define SHORT_CAST_BUG | ||
| 135 | |||
| 136 | /* 3B2s with WIN/3B have winsize defined in ptem.h */ | ||
| 137 | #if u3b2 | ||
| 138 | #define NEED_PTEM_H | ||
| 139 | #endif /* u3b2 */ | ||
| 140 | |||
| 141 | /* 3b2 does not have memmove, I'm told. */ | ||
| 142 | /* It is safe to have no parens around the args in the safe_bcopy call, | ||
| 143 | and parens would screw up the prototype decl for memmove. */ | ||
| 144 | #define memmove(d, s, n) safe_bcopy (s, d, n) | ||
| 145 | |||
| 146 | /* This affects filemode.c. */ | ||
| 147 | #define NO_MODE_T | ||
| 148 | |||
| 149 | /* arch-tag: 07441a37-d630-447f-94fa-7da19645c97a | ||
| 150 | (do not change this comment) */ | ||
diff --git a/src/m/aviion-intel.h b/src/m/aviion-intel.h deleted file mode 100644 index eb93a43214f..00000000000 --- a/src/m/aviion-intel.h +++ /dev/null | |||
| @@ -1,22 +0,0 @@ | |||
| 1 | /* This file is minor changes for the Data General AViiON intel machines | ||
| 2 | i586-dg-dguxR4* (tested on i586-dg-dguxR4.11MU04) | ||
| 3 | Done by Ehud Karni, 1998-may-30, ehud@unix.simonwiesel.co.il */ | ||
| 4 | |||
| 5 | #include "aviion.h" /* 1st load m88k DGUX definitions */ | ||
| 6 | |||
| 7 | #define INTEL_DGUX /* define for future possible use */ | ||
| 8 | |||
| 9 | /* Intel machines are LITTLE ENDIAN */ | ||
| 10 | #undef WORDS_BIG_ENDIAN | ||
| 11 | |||
| 12 | /* No correction needed for byte addresses */ | ||
| 13 | #undef WORD_MACHINE | ||
| 14 | |||
| 15 | #ifndef INTEL386 | ||
| 16 | #define INTEL386 /* Identify as Intel machine */ | ||
| 17 | #endif | ||
| 18 | |||
| 19 | #undef m88k /* It sure is NOT a Motorola machine */ | ||
| 20 | |||
| 21 | /* arch-tag: 7cbf89ef-237c-4da5-bdd0-8d569ae5f3ce | ||
| 22 | (do not change this comment) */ | ||
diff --git a/src/m/aviion.h b/src/m/aviion.h deleted file mode 100644 index 832feb79a00..00000000000 --- a/src/m/aviion.h +++ /dev/null | |||
| @@ -1,126 +0,0 @@ | |||
| 1 | /* machine description file for Data General AViiON. | ||
| 2 | Copyright (C) 1985, 1986, 1991, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 24 | is the most significant byte. */ | ||
| 25 | |||
| 26 | #define WORDS_BIG_ENDIAN | ||
| 27 | |||
| 28 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 29 | * group of arguments and treat it as an array of the arguments. */ | ||
| 30 | |||
| 31 | #define NO_ARG_ARRAY | ||
| 32 | |||
| 33 | /* Define WORD_MACHINE if addresses and such have | ||
| 34 | * to be corrected before they can be used as byte counts. */ | ||
| 35 | |||
| 36 | #define WORD_MACHINE | ||
| 37 | |||
| 38 | /* Define DATA_SEG_BITS if pointers need to be corrected with | ||
| 39 | a segment field. */ | ||
| 40 | |||
| 41 | #ifdef FIX_ADDRESS | ||
| 42 | #define DATA_SEG_BITS 0xef000000 | ||
| 43 | #endif | ||
| 44 | |||
| 45 | /* Now define a symbol for the cpu type, if your compiler | ||
| 46 | does not define it automatically: | ||
| 47 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 48 | orion, tahoe, APOLLO and many others */ | ||
| 49 | |||
| 50 | #ifndef m88k | ||
| 51 | #define m88k | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 55 | /* This is desirable for most machines. */ | ||
| 56 | |||
| 57 | #define NO_UNION_TYPE | ||
| 58 | |||
| 59 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 60 | the bit field into an int. In other words, if bit fields | ||
| 61 | are always unsigned. | ||
| 62 | |||
| 63 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 64 | |||
| 65 | #define EXPLICIT_SIGN_EXTEND | ||
| 66 | |||
| 67 | /* Data type of load average, as read out of kmem. */ | ||
| 68 | |||
| 69 | /* #define LOAD_AVE_TYPE long */ | ||
| 70 | |||
| 71 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 72 | |||
| 73 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */ | ||
| 74 | |||
| 75 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 76 | Then the function dump-emacs will not be defined | ||
| 77 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 78 | |||
| 79 | /* #define CANNOT_DUMP */ | ||
| 80 | |||
| 81 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 82 | pure and impure space as loaded can vary, and even their | ||
| 83 | relative order cannot be relied on. | ||
| 84 | |||
| 85 | Otherwise Emacs assumes that text space precedes data space, | ||
| 86 | numerically. */ | ||
| 87 | |||
| 88 | /* #define VIRT_ADDR_VARIES */ | ||
| 89 | |||
| 90 | #define alloca(x) __builtin_alloca(x) | ||
| 91 | |||
| 92 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 93 | to change the boundary between the text section and data section | ||
| 94 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 95 | code will not be sharable; but that's better than failing completely. */ | ||
| 96 | |||
| 97 | #define NO_REMAP | ||
| 98 | |||
| 99 | /* Define ADDR_CORRECT(ADDR) to be a macro to correct an int which is | ||
| 100 | the bit pattern of a pointer to a byte into an int which is the | ||
| 101 | number of a byte. | ||
| 102 | |||
| 103 | This macro has a default definition which is usually right. | ||
| 104 | This default definition is a no-op on most machines (where a | ||
| 105 | pointer looks like an int) but not on all machines. */ | ||
| 106 | |||
| 107 | #define ADDR_CORRECT(ADDR) ((int)ADDR) | ||
| 108 | |||
| 109 | /* Cast pointers to this type to compare them. */ | ||
| 110 | |||
| 111 | #define PNTR_COMPARISON_TYPE void * | ||
| 112 | |||
| 113 | /* Some machines that use COFF executables require that each section | ||
| 114 | start on a certain boundary *in the COFF file*. Such machines should | ||
| 115 | define SECTION_ALIGNMENT to a mask of the low-order bits that must be | ||
| 116 | zero on such a boundary. This mask is used to control padding between | ||
| 117 | segments in the COFF file. | ||
| 118 | |||
| 119 | If SECTION_ALIGNMENT is not defined, the segments are written | ||
| 120 | consecutively with no attempt at alignment. This is right for | ||
| 121 | unmodified system V. */ | ||
| 122 | |||
| 123 | #define SECTION_ALIGNMENT 0x7 | ||
| 124 | |||
| 125 | /* arch-tag: 9de8e6ed-ddd8-4480-8308-17ddd7c86559 | ||
| 126 | (do not change this comment) */ | ||
diff --git a/src/m/celerity.h b/src/m/celerity.h deleted file mode 100644 index 556c2765883..00000000000 --- a/src/m/celerity.h +++ /dev/null | |||
| @@ -1,60 +0,0 @@ | |||
| 1 | /* machine description file for Celerity. | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* XINT must explicitly sign extend */ | ||
| 33 | |||
| 34 | #define EXPLICIT_SIGN_EXTEND | ||
| 35 | |||
| 36 | /* celerity preprocessor defines "accel", however the following is clearer */ | ||
| 37 | #define celerity | ||
| 38 | |||
| 39 | /* #define NO_UNION_TYPE would be preferable, | ||
| 40 | but it does not work, and the reason is not yet known. */ | ||
| 41 | |||
| 42 | #define NO_UNION_TYPE | ||
| 43 | |||
| 44 | /* Data type of load average, as read out of kmem. */ | ||
| 45 | |||
| 46 | #define LOAD_AVE_TYPE double | ||
| 47 | |||
| 48 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 49 | |||
| 50 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 51 | |||
| 52 | /* A machine-specific loader switch is needed. */ | ||
| 53 | |||
| 54 | #define LD_SWITCH_MACHINE -k100000 | ||
| 55 | |||
| 56 | /* (short) negative-int doesn't sign-extend correctly */ | ||
| 57 | #define SHORT_CAST_BUG | ||
| 58 | |||
| 59 | /* arch-tag: b4df1828-fab6-48f8-97bc-b8998c200eea | ||
| 60 | (do not change this comment) */ | ||
diff --git a/src/m/clipper.h b/src/m/clipper.h deleted file mode 100644 index c0006f48eab..00000000000 --- a/src/m/clipper.h +++ /dev/null | |||
| @@ -1,98 +0,0 @@ | |||
| 1 | /* machine description file for clipper | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 24 | is the most significant byte. */ | ||
| 25 | |||
| 26 | #undef WORDS_BIG_ENDIAN | ||
| 27 | |||
| 28 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 29 | * group of arguments and treat it as an array of the arguments. */ | ||
| 30 | |||
| 31 | #define NO_ARG_ARRAY | ||
| 32 | |||
| 33 | /* Define WORD_MACHINE if addresses and such have | ||
| 34 | * to be corrected before they can be used as byte counts. */ | ||
| 35 | |||
| 36 | /* #define WORD_MACHINE */ | ||
| 37 | |||
| 38 | /* Now define a symbol for the cpu type, if your compiler | ||
| 39 | does not define it automatically */ | ||
| 40 | |||
| 41 | #define clipper 1 | ||
| 42 | |||
| 43 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 44 | |||
| 45 | #define NO_UNION_TYPE | ||
| 46 | |||
| 47 | /* crt0.c should define a symbol `start' and do .globl with a dot. */ | ||
| 48 | |||
| 49 | #define DOT_GLOBAL_START | ||
| 50 | |||
| 51 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 52 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 53 | are always unsigned. | ||
| 54 | |||
| 55 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 56 | |||
| 57 | /* #define EXPLICIT_SIGN_EXTEND */ | ||
| 58 | |||
| 59 | /* USG systems I know of running on Vaxes do not actually | ||
| 60 | support the load average, so disable it for them. */ | ||
| 61 | |||
| 62 | /* Data type of load average, as read out of kmem. */ | ||
| 63 | |||
| 64 | #define LOAD_AVE_TYPE double | ||
| 65 | |||
| 66 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 67 | |||
| 68 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 69 | |||
| 70 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 71 | Then the function dump-emacs will not be defined | ||
| 72 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 73 | /* #define CANNOT_DUMP */ | ||
| 74 | |||
| 75 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 76 | pure and impure space as loaded can vary, and even their | ||
| 77 | relative order cannot be relied on. | ||
| 78 | |||
| 79 | Otherwise Emacs assumes that text space precedes data space, | ||
| 80 | numerically. */ | ||
| 81 | |||
| 82 | /* #define VIRT_ADDR_VARIES */ /* Karl Kleinpaste says this isn't needed. */ | ||
| 83 | |||
| 84 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 85 | to change the boundary between the text section and data section | ||
| 86 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 87 | code will not be sharable; but that's better than failing completely. */ | ||
| 88 | |||
| 89 | /* #define NO_REMAP */ | ||
| 90 | |||
| 91 | #ifdef USG | ||
| 92 | #define TEXT_START 0 | ||
| 93 | #endif /* USG */ | ||
| 94 | |||
| 95 | #define LD_TEXT_START_ADDR 8000 | ||
| 96 | |||
| 97 | /* arch-tag: 2f7981c1-7018-4a1e-b7b6-b2900de36a04 | ||
| 98 | (do not change this comment) */ | ||
diff --git a/src/m/cnvrgnt.h b/src/m/cnvrgnt.h deleted file mode 100644 index 22478a273b6..00000000000 --- a/src/m/cnvrgnt.h +++ /dev/null | |||
| @@ -1,97 +0,0 @@ | |||
| 1 | /* machine description file for convergent S series. | ||
| 2 | Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 24 | is the most significant byte. */ | ||
| 25 | |||
| 26 | #define WORDS_BIG_ENDIAN | ||
| 27 | |||
| 28 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 29 | * group of arguments and treat it as an array of the arguments. */ | ||
| 30 | |||
| 31 | /* #define NO_ARG_ARRAY */ | ||
| 32 | |||
| 33 | /* Define WORD_MACHINE if addresses and such have | ||
| 34 | * to be corrected before they can be used as byte counts. */ | ||
| 35 | |||
| 36 | /* #define WORD_MACHINE */ | ||
| 37 | |||
| 38 | /* Now define a symbol for the cpu type, if your compiler | ||
| 39 | does not define it automatically. */ | ||
| 40 | |||
| 41 | #define m68000 | ||
| 42 | |||
| 43 | /* Use type int rather than a union, to represent Lisp_Object. | ||
| 44 | This is desirable for most machines. */ | ||
| 45 | |||
| 46 | #define NO_UNION_TYPE | ||
| 47 | |||
| 48 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 49 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 50 | are always unsigned. | ||
| 51 | |||
| 52 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 53 | |||
| 54 | #define EXPLICIT_SIGN_EXTEND | ||
| 55 | |||
| 56 | /* Data type of load average, as read out of kmem. | ||
| 57 | These are commented out since it is not supported by this machine. */ | ||
| 58 | |||
| 59 | #define LOAD_AVE_TYPE double | ||
| 60 | |||
| 61 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 62 | |||
| 63 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 64 | |||
| 65 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 66 | Then the function dump-emacs will not be defined | ||
| 67 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 68 | |||
| 69 | /* #define CANNOT_DUMP */ | ||
| 70 | |||
| 71 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 72 | pure and impure space as loaded can vary, and even their | ||
| 73 | relative order cannot be relied on. | ||
| 74 | |||
| 75 | Otherwise Emacs assumes that text space precedes data space, | ||
| 76 | numerically. */ | ||
| 77 | |||
| 78 | #undef VIRT_ADDR_VARIES | ||
| 79 | |||
| 80 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 81 | to change the boundary between the text section and data section | ||
| 82 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 83 | code will not be sharable; but that's better than failing completely. */ | ||
| 84 | |||
| 85 | #define NO_REMAP | ||
| 86 | |||
| 87 | /* Change some things to avoid bugs in compiler. */ | ||
| 88 | |||
| 89 | #define SWITCH_ENUM_BUG | ||
| 90 | |||
| 91 | /* some errno.h's don't actually allocate the variable itself. | ||
| 92 | Cause crt0.c to define errno. */ | ||
| 93 | |||
| 94 | #define NEED_ERRNO | ||
| 95 | |||
| 96 | /* arch-tag: 1a227f79-37e4-43af-a186-53c61296b0be | ||
| 97 | (do not change this comment) */ | ||
diff --git a/src/m/convex.h b/src/m/convex.h deleted file mode 100644 index c8f447cf2fa..00000000000 --- a/src/m/convex.h +++ /dev/null | |||
| @@ -1,189 +0,0 @@ | |||
| 1 | /* machine description file for Convex (all models). | ||
| 2 | Copyright (C) 1987, 1994, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. | ||
| 34 | * Maybe it would be better to simply correct the code. */ | ||
| 35 | |||
| 36 | #define NO_ARG_ARRAY | ||
| 37 | |||
| 38 | /* Define WORD_MACHINE if addresses and such have | ||
| 39 | * to be corrected before they can be used as byte counts. */ | ||
| 40 | |||
| 41 | /* #define WORD_MACHINE */ | ||
| 42 | |||
| 43 | /* Now define a symbol for the cpu type, if your compiler | ||
| 44 | does not define it automatically. */ | ||
| 45 | #ifndef convex /* The compiler doesn't always do this. */ | ||
| 46 | #define convex | ||
| 47 | #endif | ||
| 48 | |||
| 49 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 50 | /* This is desirable for most machines. */ | ||
| 51 | |||
| 52 | #define NO_UNION_TYPE | ||
| 53 | |||
| 54 | #ifndef __GNUC__ /* David M. Cooke <dcooke@haven.larc.nasa.gov> | ||
| 55 | and Ralph Sobek <Ralph.Sobek@cerfacs.fr> agree | ||
| 56 | must ignore one arg when compiled with convex compiler. */ | ||
| 57 | #define CRT0_DUMMIES ignore, | ||
| 58 | #else | ||
| 59 | #define CRT0_DUMMIES | ||
| 60 | #endif | ||
| 61 | |||
| 62 | /* crt0.c should define a symbol `start' and do .globl with a dot. */ | ||
| 63 | |||
| 64 | #define DOT_GLOBAL_START | ||
| 65 | |||
| 66 | /* Data type of load average, as read out of kmem. */ | ||
| 67 | |||
| 68 | #define LOAD_AVE_TYPE double | ||
| 69 | |||
| 70 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 71 | |||
| 72 | #define LOAD_AVE_CVT(x) (int) ((x) * 100.0) | ||
| 73 | |||
| 74 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 75 | Then the function dump-emacs will not be defined | ||
| 76 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 77 | |||
| 78 | /* #define CANNOT_DUMP */ | ||
| 79 | |||
| 80 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 81 | pure and impure space as loaded can vary, and even their | ||
| 82 | relative order cannot be relied on. | ||
| 83 | |||
| 84 | Otherwise Emacs assumes that text space precedes data space, | ||
| 85 | numerically. */ | ||
| 86 | |||
| 87 | /*#define VIRT_ADDR_VARIES*/ | ||
| 88 | |||
| 89 | /* Must use the system's termcap. It does special things. */ | ||
| 90 | |||
| 91 | #define LIBS_TERMCAP -ltermcap | ||
| 92 | |||
| 93 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 94 | to change the boundary between the text section and data section | ||
| 95 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 96 | code will not be sharable; but that's better than failing completely. */ | ||
| 97 | |||
| 98 | /* #define NO_REMAP */ | ||
| 99 | |||
| 100 | /* Addresses on the Convex have the high bit set. */ | ||
| 101 | #define DATA_SEG_BITS (1 << (BITS_PER_INT-1)) | ||
| 102 | |||
| 103 | /* Right shift is logical shift. | ||
| 104 | And the usual way of handling such machines, which involves | ||
| 105 | copying the number into sign_extend_temp, does not work | ||
| 106 | for reasons as yet unknown. */ | ||
| 107 | |||
| 108 | #define XINT(a) sign_extend_lisp_int (a) | ||
| 109 | |||
| 110 | /* Convex uses a special version of unexec. */ | ||
| 111 | |||
| 112 | #define UNEXEC unexconvex.o | ||
| 113 | |||
| 114 | /* you gotta define 'COFF' for post 6.1 unexec. */ | ||
| 115 | |||
| 116 | #define COFF | ||
| 117 | #define TEXT_START 0x80001000 | ||
| 118 | |||
| 119 | /* Posix stuff for Convex OS 8.1 and up. */ | ||
| 120 | |||
| 121 | #define LD_SWITCH_MACHINE \ | ||
| 122 | -e__start -L /usr/lib \ | ||
| 123 | '-A__iob=___ap$$iob' '-A_use_libc_sema=___ap$$use_libc_sema' | ||
| 124 | |||
| 125 | /* Use <dirent.h>. */ | ||
| 126 | #define SYSV_SYSTEM_DIR | ||
| 127 | |||
| 128 | #ifdef _POSIX_SOURCE | ||
| 129 | |||
| 130 | /* These symbols have been undefined to advance the state of the art. */ | ||
| 131 | |||
| 132 | #define S_IFMT _S_IFMT | ||
| 133 | #define S_IFDIR _S_IFDIR | ||
| 134 | |||
| 135 | #define S_IREAD _S_IREAD | ||
| 136 | #define S_IWRITE _S_IWRITE | ||
| 137 | #define S_IEXEC _S_IEXEC | ||
| 138 | |||
| 139 | #endif | ||
| 140 | |||
| 141 | /* Ptys may start below ptyp0; call a routine to hunt for where. */ | ||
| 142 | |||
| 143 | #undef FIRST_PTY_LETTER | ||
| 144 | #define FIRST_PTY_LETTER first_pty_letter() | ||
| 145 | |||
| 146 | #if 0 | ||
| 147 | /* | ||
| 148 | * Force a K&R compilation and libraries with the Convex V 4.0 C compiler | ||
| 149 | */ | ||
| 150 | #define C_SWITCH_MACHINE -pcc | ||
| 151 | #define LIB_STANDARD -lc_old | ||
| 152 | #define LIBS_MACHINE -lC2_old | ||
| 153 | #define LD_SWITCH_MACHINE -X -NL -fn -Enoposix -A__iob=___ap\$$iob \ | ||
| 154 | -A_use_libc_sema=___ap\$$use_libc_sema -L /usr/lib | ||
| 155 | #endif | ||
| 156 | |||
| 157 | /* Avoid error in xrdb.c - d.m.cooke@larc.nasa.gov. */ | ||
| 158 | #define DECLARE_GETPWUID_WITH_UID_T | ||
| 159 | |||
| 160 | /* Call getpgrp properly. */ | ||
| 161 | #define GETPGRP_NO_ARG | ||
| 162 | |||
| 163 | /* Tested for both Convex C and GNUC by d.m.cooke@larc.nasa.gov. */ | ||
| 164 | #define LIBS_MACHINE -lC2 | ||
| 165 | |||
| 166 | /* Avoid error in getloadavg.c. */ | ||
| 167 | #define NLIST_NAME_UNION 1 | ||
| 168 | |||
| 169 | #if 0 /* This is supposed to be an improvement. | ||
| 170 | It would be good for people to try enabling this code | ||
| 171 | and report the results. */ | ||
| 172 | /* gcc -nostdlib prevents some math symbols from being included. | ||
| 173 | So we have to use -nostartfiles instead. */ | ||
| 174 | #define LINKER $(CC) -nostartfiles | ||
| 175 | |||
| 176 | #define ORDINARY_LINK | ||
| 177 | |||
| 178 | #undef LD_SWITCH_MACHINE | ||
| 179 | #define LD_SWITCH_MACHINE \ | ||
| 180 | -L /usr/lib \ | ||
| 181 | '-A__iob=___ap$$iob' '-A_use_libc_sema=___ap$$use_libc_sema' | ||
| 182 | #endif | ||
| 183 | |||
| 184 | /* There is some indication that the convex has sys/wait.h | ||
| 185 | but it does not work right. */ | ||
| 186 | #undef HAVE_SYS_WAIT_H | ||
| 187 | |||
| 188 | /* arch-tag: 127e5ae1-4f03-40c0-a87e-d2cb02c59de8 | ||
| 189 | (do not change this comment) */ | ||
diff --git a/src/m/cydra5.h b/src/m/cydra5.h deleted file mode 100644 index 4c95f226371..00000000000 --- a/src/m/cydra5.h +++ /dev/null | |||
| @@ -1,117 +0,0 @@ | |||
| 1 | /* machine description file for Cydrome's CYDRA 5 mini super computer | ||
| 2 | Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #undef NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 45 | orion, tahoe, APOLLO and many others */ | ||
| 46 | |||
| 47 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 48 | /* This is desirable for most machines. */ | ||
| 49 | |||
| 50 | #define NO_UNION_TYPE | ||
| 51 | |||
| 52 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 53 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 54 | are always unsigned. | ||
| 55 | |||
| 56 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 57 | |||
| 58 | #define EXPLICIT_SIGN_EXTEND | ||
| 59 | |||
| 60 | /* Data type of load average, as read out of kmem. */ | ||
| 61 | |||
| 62 | #define LOAD_AVE_TYPE long | ||
| 63 | |||
| 64 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 65 | |||
| 66 | #define LOAD_AVE_CVT(x) x | ||
| 67 | |||
| 68 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 69 | Then the function dump-emacs will not be defined | ||
| 70 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 71 | |||
| 72 | /*#define CANNOT_DUMP*/ | ||
| 73 | |||
| 74 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 75 | pure and impure space as loaded can vary, and even their | ||
| 76 | relative order cannot be relied on. | ||
| 77 | |||
| 78 | Otherwise Emacs assumes that data space precedes text space, | ||
| 79 | numerically. */ | ||
| 80 | |||
| 81 | #undef VIRT_ADDR_VARIES | ||
| 82 | |||
| 83 | /* The data segment in this machine always starts at address 0x10000000. | ||
| 84 | An address of data cannot be stored correctly in a Lisp object; | ||
| 85 | we always lose the high bits. We must tell XPNTR to add them back. */ | ||
| 86 | |||
| 87 | #define DATA_SEG_BITS 0x20000000 | ||
| 88 | #define DATA_START 0x20000000 | ||
| 89 | |||
| 90 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 91 | to change the boundary between the text section and data section | ||
| 92 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 93 | code will not be sharable; but that's better than failing completely. */ | ||
| 94 | |||
| 95 | #define NO_REMAP | ||
| 96 | #define BROKEN_FIONREAD /* We son't even have it */ | ||
| 97 | #define LIBS_MACHINE -lsocket -lnsl | ||
| 98 | |||
| 99 | /* The data section in a coff file must be aligned in the file. */ | ||
| 100 | #define DATA_SECTION_ALIGNMENT 0xFFF | ||
| 101 | |||
| 102 | /* Compiler won't allow switch (x) when x is an enum. */ | ||
| 103 | #define SWITCH_ENUM_BUG | ||
| 104 | |||
| 105 | |||
| 106 | /* Explain how pty filenames work. */ | ||
| 107 | |||
| 108 | #define PTY_ITERATION for (i = 47; i >= 0; i--) | ||
| 109 | #define PTY_NAME_SPRINTF sprintf (ptyname, "/dev/pty%03x", i); | ||
| 110 | #define PTY_TTY_NAME_SPRINTF sprintf (ptyname, "/dev/ptm%03x", i); | ||
| 111 | |||
| 112 | /* We can't do interrupt-driven input, so don't let user try. */ | ||
| 113 | |||
| 114 | #define BROKEN_SIGIO | ||
| 115 | |||
| 116 | /* arch-tag: ad70aae4-1f54-4e67-8677-6eeafb9bcbd9 | ||
| 117 | (do not change this comment) */ | ||
diff --git a/src/m/delta88k.h b/src/m/delta88k.h deleted file mode 100644 index b5d0c8f190b..00000000000 --- a/src/m/delta88k.h +++ /dev/null | |||
| @@ -1,163 +0,0 @@ | |||
| 1 | /* Machine description file for Motorola System V/88 machines | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #define NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | /* #define WORD_MACHINE */ | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 45 | orion, tahoe, APOLLO and many others */ | ||
| 46 | |||
| 47 | #ifndef m88000 /* Some 88k C compilers already define this */ | ||
| 48 | #define m88000 | ||
| 49 | #endif | ||
| 50 | |||
| 51 | /* Now define a symbol for the cpu type, if your compiler | ||
| 52 | does not define it automatically. */ | ||
| 53 | |||
| 54 | |||
| 55 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 56 | /* This is desirable for most machines. */ | ||
| 57 | |||
| 58 | #define NO_UNION_TYPE | ||
| 59 | |||
| 60 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 61 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 62 | are always unsigned. | ||
| 63 | |||
| 64 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 65 | |||
| 66 | /* #define EXPLICIT_SIGN_EXTEND */ | ||
| 67 | |||
| 68 | /* Data type of load average, as read out of kmem. */ | ||
| 69 | /* No load average on Motorola machines. */ | ||
| 70 | /* #define LOAD_AVE_TYPE double */ | ||
| 71 | |||
| 72 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 73 | /* #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) */ | ||
| 74 | |||
| 75 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 76 | Then the function dump-emacs will not be defined | ||
| 77 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 78 | |||
| 79 | /* #define CANNOT_DUMP */ | ||
| 80 | |||
| 81 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 82 | pure and impure space as loaded can vary, and even their | ||
| 83 | relative order cannot be relied on. | ||
| 84 | |||
| 85 | Otherwise Emacs assumes that text space precedes data space, | ||
| 86 | numerically. */ | ||
| 87 | |||
| 88 | /* #define VIRT_ADDR_VARIES */ | ||
| 89 | |||
| 90 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 91 | to change the boundary between the text section and data section | ||
| 92 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 93 | code will not be sharable; but that's better than failing completely. */ | ||
| 94 | |||
| 95 | #define NO_REMAP | ||
| 96 | |||
| 97 | /* Motorola SysV has PTYs. Not all usg3-5 systems do, so this is defined | ||
| 98 | here. */ | ||
| 99 | |||
| 100 | #define HAVE_PTYS | ||
| 101 | #define SYSV_PTYS | ||
| 102 | |||
| 103 | /* Ditto for IPC. */ | ||
| 104 | |||
| 105 | |||
| 106 | /* | ||
| 107 | * we now have job control in R32V1 | ||
| 108 | */ | ||
| 109 | #undef NOMULTIPLEJOBS | ||
| 110 | |||
| 111 | /* | ||
| 112 | * we have bcopy, bzero, bcmp in libc.a (what isn't in libc.a?) | ||
| 113 | */ | ||
| 114 | #define BSTRING | ||
| 115 | |||
| 116 | /* | ||
| 117 | * sockets are in R32V1 | ||
| 118 | */ | ||
| 119 | #define HAVE_SOCKETS | ||
| 120 | |||
| 121 | /* | ||
| 122 | * we have the wrong name for networking libs | ||
| 123 | */ | ||
| 124 | #ifdef USG5_4 | ||
| 125 | /* rms: not needed; LIB_X11_LIB deals with this. */ | ||
| 126 | /* #define LIBX11_SYSTEM -lX11 */ | ||
| 127 | #else | ||
| 128 | #undef LIB_X11_LIB /* We don't have the shared libs as assumed in usg5-3.h. */ | ||
| 129 | #undef LIBX11_SYSTEM | ||
| 130 | #define LIBX11_SYSTEM -lnsl -lbsd | ||
| 131 | #endif /* USG5_4 */ | ||
| 132 | |||
| 133 | #define BROKEN_FIONREAD | ||
| 134 | |||
| 135 | /* previously defined in usg5-4, if we choose to use that. */ | ||
| 136 | #ifndef LIBS_SYSTEM | ||
| 137 | #ifdef USG5_4 | ||
| 138 | #define LIBS_SYSTEM -lsocket -lnsl | ||
| 139 | #else | ||
| 140 | #define LIBS_SYSTEM -lbsd -lg | ||
| 141 | #endif /* USG5_4 */ | ||
| 142 | #endif | ||
| 143 | |||
| 144 | #define HAVE_TERMIOS | ||
| 145 | #undef HAVE_TERMIO | ||
| 146 | #define NO_TERMIO | ||
| 147 | #undef sigsetmask | ||
| 148 | |||
| 149 | #define NO_SIOCTL_H | ||
| 150 | |||
| 151 | #ifdef USG5_4 | ||
| 152 | #ifdef HAVE_X_WINDOWS | ||
| 153 | #else | ||
| 154 | #undef BSTRING | ||
| 155 | #endif /* HAVE_X_WINDOWS */ | ||
| 156 | #endif /* USG5_4 */ | ||
| 157 | |||
| 158 | #define NO_PTY_H | ||
| 159 | |||
| 160 | #define USE_GETOBAUD | ||
| 161 | |||
| 162 | /* arch-tag: c8ea1965-99d7-43df-ba32-29b66fc069be | ||
| 163 | (do not change this comment) */ | ||
diff --git a/src/m/dpx2.h b/src/m/dpx2.h deleted file mode 100644 index b39ef93ee34..00000000000 --- a/src/m/dpx2.h +++ /dev/null | |||
| @@ -1,222 +0,0 @@ | |||
| 1 | /* machine description for Bull DPX/2 range | ||
| 2 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* The following line tells the configuration script what sort of | ||
| 23 | operating system this machine is likely to run. | ||
| 24 | USUAL-OPSYS="usg5-3" */ | ||
| 25 | |||
| 26 | /* | ||
| 27 | * You need to either un-comment one of these lines, or copy one | ||
| 28 | * of them to config.h before you include this file. | ||
| 29 | * Note that some simply define a constant and others set a value. | ||
| 30 | */ | ||
| 31 | |||
| 32 | /* #define ncl_el /* DPX/2 210,220 etc */ | ||
| 33 | /* #define ncl_mr 1 /* DPX/2 320,340 (and 360,380 ?) */ | ||
| 34 | |||
| 35 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 36 | is the most significant byte. */ | ||
| 37 | |||
| 38 | #define WORDS_BIG_ENDIAN | ||
| 39 | |||
| 40 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 41 | * group of arguments and treat it as an array of the arguments. */ | ||
| 42 | |||
| 43 | #define NO_ARG_ARRAY | ||
| 44 | |||
| 45 | /* Define WORD_MACHINE if addresses and such have | ||
| 46 | * to be corrected before they can be used as byte counts. */ | ||
| 47 | |||
| 48 | /* #define WORD_MACHINE /**/ | ||
| 49 | |||
| 50 | /* Now define a symbol for the cpu type, if your compiler | ||
| 51 | does not define it automatically: | ||
| 52 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 53 | orion, tahoe, APOLLO and many others */ | ||
| 54 | |||
| 55 | /* /bin/cc on ncl_el and ncl_mr define m68k and mc68000 */ | ||
| 56 | |||
| 57 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 58 | /* This is desirable for most machines. */ | ||
| 59 | |||
| 60 | #define NO_UNION_TYPE | ||
| 61 | |||
| 62 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 63 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 64 | are always unsigned. | ||
| 65 | |||
| 66 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 67 | |||
| 68 | #define EXPLICIT_SIGN_EXTEND | ||
| 69 | |||
| 70 | /* Data type of load average, as read out of kmem. */ | ||
| 71 | |||
| 72 | #define LOAD_AVE_TYPE long | ||
| 73 | |||
| 74 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 75 | |||
| 76 | #define FSCALE 1000.0 | ||
| 77 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 78 | |||
| 79 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 80 | Then the function dump-emacs will not be defined | ||
| 81 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 82 | |||
| 83 | /*#define CANNOT_DUMP /**/ | ||
| 84 | |||
| 85 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 86 | pure and impure space as loaded can vary, and even their | ||
| 87 | relative order cannot be relied on. | ||
| 88 | |||
| 89 | Otherwise Emacs assumes that text space precedes data space, | ||
| 90 | numerically. */ | ||
| 91 | |||
| 92 | /* #define VIRT_ADDR_VARIES /**/ | ||
| 93 | |||
| 94 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 95 | to change the boundary between the text section and data section | ||
| 96 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 97 | code will not be sharable; but that's better than failing completely. */ | ||
| 98 | |||
| 99 | #define NO_REMAP | ||
| 100 | |||
| 101 | /* | ||
| 102 | * end of the standard macro's | ||
| 103 | */ | ||
| 104 | |||
| 105 | /* | ||
| 106 | * a neat identifier to handle source mods (if needed) | ||
| 107 | */ | ||
| 108 | #ifndef DPX2 | ||
| 109 | #define DPX2 | ||
| 110 | #endif | ||
| 111 | |||
| 112 | /* Disable support for shared libraries in unexec. */ | ||
| 113 | |||
| 114 | #undef USG_SHARED_LIBRARIES | ||
| 115 | |||
| 116 | /* | ||
| 117 | * if we use X11, libX11.a has these... | ||
| 118 | */ | ||
| 119 | # undef LIB_X11_LIB | ||
| 120 | # define LIB_X11_LIB -lX11 | ||
| 121 | # undef LIBX11_SYSTEM | ||
| 122 | # define LIBX11_SYSTEM -lmalloc -lnsl | ||
| 123 | # define BSTRING | ||
| 124 | |||
| 125 | /* | ||
| 126 | * we must have INET loaded so we have sockets | ||
| 127 | */ | ||
| 128 | # define HAVE_SOCKETS | ||
| 129 | |||
| 130 | /* | ||
| 131 | * useful if you have INET loaded | ||
| 132 | */ | ||
| 133 | # define LIBS_MACHINE -linet | ||
| 134 | |||
| 135 | |||
| 136 | #if (defined(ncl_mr) || defined(ncl_el)) && !defined (NBPC) | ||
| 137 | # define NBPC 4096 | ||
| 138 | #endif | ||
| 139 | |||
| 140 | /* | ||
| 141 | * if SIGIO is defined, much of the emacs | ||
| 142 | * code assumes we are BSD !! | ||
| 143 | */ | ||
| 144 | #define BROKEN_SIGIO | ||
| 145 | |||
| 146 | |||
| 147 | /* | ||
| 148 | * a good idea on multi-user systems :-) | ||
| 149 | */ | ||
| 150 | #define CLASH_DETECTION /* probably a good idea */ | ||
| 151 | |||
| 152 | |||
| 153 | /* | ||
| 154 | * sysdep.c(sys_suspend) works fine with emacs-18.58 | ||
| 155 | * and BOS 02.00.45, if you have an earler version | ||
| 156 | * of Emacs and/or BOS, or have problems, or just prefer | ||
| 157 | * to start a sub-shell rather than suspend-emacs, | ||
| 158 | * un-comment out the next line. | ||
| 159 | */ | ||
| 160 | /* # define BROKEN_SIGTSTP /* make suspend-emacs spawn a sub-shell */ | ||
| 161 | #ifdef NOMULTIPLEJOBS | ||
| 162 | # undef NOMULTIPLEJOBS | ||
| 163 | #endif | ||
| 164 | /* | ||
| 165 | * no we don't want this at all | ||
| 166 | */ | ||
| 167 | #ifdef USG_JOBCTRL | ||
| 168 | # undef USG_JOBCTRL | ||
| 169 | #endif | ||
| 170 | |||
| 171 | /* | ||
| 172 | * but we have that | ||
| 173 | */ | ||
| 174 | #define GETPGRP_NO_ARG | ||
| 175 | |||
| 176 | /* select also needs this header file--but not in ymakefile. */ | ||
| 177 | #ifndef NOT_C_CODE | ||
| 178 | #include <sys/types.h> | ||
| 179 | #include <sys/select.h> | ||
| 180 | #endif | ||
| 181 | |||
| 182 | #define TEXT_START 0 | ||
| 183 | |||
| 184 | /* we have termios */ | ||
| 185 | #undef HAVE_TERMIO | ||
| 186 | #define HAVE_TERMIOS | ||
| 187 | #define HAVE_TCATTR | ||
| 188 | |||
| 189 | /* we also have this */ | ||
| 190 | #define HAVE_PTYS | ||
| 191 | #define SYSV_PTYS | ||
| 192 | |||
| 193 | /* It doesn't seem we have sigpause */ | ||
| 194 | #undef HAVE_SYSV_SIGPAUSE | ||
| 195 | |||
| 196 | #define POSIX_SIGNALS | ||
| 197 | |||
| 198 | /* We don't need the definition from usg5-3.h with POSIX_SIGNALS. */ | ||
| 199 | #undef sigsetmask | ||
| 200 | |||
| 201 | |||
| 202 | /* on bos2.00.45 there is a bug that makes the F_SETOWN fcntl() call | ||
| 203 | enters in an infinite loop. Avoid calling it */ | ||
| 204 | #define F_SETOWN_BUG | ||
| 205 | |||
| 206 | /* system closedir sometimes complains about wrong descriptor | ||
| 207 | for no apparent reasons. Use the provided closedir in sysdep.c instead */ | ||
| 208 | #ifdef HAVE_CLOSEDIR | ||
| 209 | #undef HAVE_CLOSEDIR | ||
| 210 | #endif | ||
| 211 | |||
| 212 | /* Send signals to subprocesses by "typing" signal chars at them. */ | ||
| 213 | #define SIGNALS_VIA_CHARACTERS | ||
| 214 | |||
| 215 | /* This is to prevent memory clobbering on the DPX/2 200. */ | ||
| 216 | #define LD_SWITCH_MACHINE -N -T32 | ||
| 217 | |||
| 218 | /* end of dpx2.h */ | ||
| 219 | |||
| 220 | |||
| 221 | /* arch-tag: 8cfdf817-aec7-4d99-a00d-0e77615e8e1b | ||
| 222 | (do not change this comment) */ | ||
diff --git a/src/m/dual.h b/src/m/dual.h deleted file mode 100644 index d287f9502d2..00000000000 --- a/src/m/dual.h +++ /dev/null | |||
| @@ -1,73 +0,0 @@ | |||
| 1 | /* machine description file for Dual machines using unisoft port. | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* The following line tells the configuration script what sort of | ||
| 23 | operating system this machine is likely to run. | ||
| 24 | USUAL-OPSYS="note" | ||
| 25 | |||
| 26 | NOTE-START | ||
| 27 | Dual running System V (-machine=dual -opsystem=usg5-2) | ||
| 28 | |||
| 29 | As of 17.46, this works except for a few changes | ||
| 30 | needed in unexec.c. | ||
| 31 | |||
| 32 | Dual running Uniplus (-machine=dual -opsystem=unipl5-2) | ||
| 33 | |||
| 34 | Works, as of 17.51. | ||
| 35 | NOTE-END */ | ||
| 36 | |||
| 37 | |||
| 38 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 39 | is the most significant byte. */ | ||
| 40 | |||
| 41 | #define WORDS_BIG_ENDIAN | ||
| 42 | |||
| 43 | /* XINT must explicitly sign-extend */ | ||
| 44 | |||
| 45 | #define EXPLICIT_SIGN_EXTEND | ||
| 46 | |||
| 47 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 48 | |||
| 49 | #define NO_UNION_TYPE | ||
| 50 | |||
| 51 | /* Now define a symbol for the cpu type, if your compiler | ||
| 52 | does not define it automatically: | ||
| 53 | vax, m68000, ns16000 are the ones defined so far. */ | ||
| 54 | |||
| 55 | #ifndef m68000 | ||
| 56 | #define m68000 | ||
| 57 | #endif | ||
| 58 | |||
| 59 | /* Data type of load average, as read out of kmem. */ | ||
| 60 | /* These are commented out since it does not really work in uniplus */ | ||
| 61 | |||
| 62 | /* #define LOAD_AVE_TYPE long */ | ||
| 63 | |||
| 64 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 65 | |||
| 66 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) */ | ||
| 67 | |||
| 68 | /* Change some things to avoid bugs in compiler */ | ||
| 69 | |||
| 70 | #define SWITCH_ENUM_BUG 1 | ||
| 71 | |||
| 72 | /* arch-tag: 7208d63c-9a23-469e-a9b1-908ac912c743 | ||
| 73 | (do not change this comment) */ | ||
diff --git a/src/m/elxsi.h b/src/m/elxsi.h deleted file mode 100644 index 07a00bbf714..00000000000 --- a/src/m/elxsi.h +++ /dev/null | |||
| @@ -1,133 +0,0 @@ | |||
| 1 | /* machine description file for Elxsi machine (running enix). | ||
| 2 | Copyright (C) 1986, 1992, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | Adapted by John Salmon | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2" */ | ||
| 26 | |||
| 27 | /* This file was modified by Matt Crawford <matt@tank.uchicago.edu> | ||
| 28 | to work under Elxsi's 12.0 release of BSD unix. */ | ||
| 29 | |||
| 30 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 31 | is the most significant byte. */ | ||
| 32 | |||
| 33 | #undef WORDS_BIG_ENDIAN | ||
| 34 | |||
| 35 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 36 | * group of arguments and treat it as an array of the arguments. */ | ||
| 37 | |||
| 38 | /*#define NO_ARG_ARRAY */ | ||
| 39 | |||
| 40 | /* Define WORD_MACHINE if addresses and such have | ||
| 41 | * to be corrected before they can be used as byte counts. */ | ||
| 42 | |||
| 43 | /*#define WORD_MACHINE */ | ||
| 44 | |||
| 45 | /* Now define a symbol for the cpu type, if your compiler | ||
| 46 | does not define it automatically: | ||
| 47 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 48 | are the ones defined so far. */ | ||
| 49 | |||
| 50 | #ifndef elxsi | ||
| 51 | #define elxsi | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 55 | /* This is desirable for most machines. */ | ||
| 56 | |||
| 57 | #define NO_UNION_TYPE | ||
| 58 | |||
| 59 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 60 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 61 | are always unsigned. | ||
| 62 | |||
| 63 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 64 | |||
| 65 | #define EXPLICIT_SIGN_EXTEND | ||
| 66 | |||
| 67 | |||
| 68 | /* Name of kernel load average variable */ | ||
| 69 | |||
| 70 | #undef LDAV_SYMBOL | ||
| 71 | #define LDAV_SYMBOL "avenrun" | ||
| 72 | |||
| 73 | /* Data type of load average, as read out of kmem. */ | ||
| 74 | |||
| 75 | #define LOAD_AVE_TYPE double | ||
| 76 | |||
| 77 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 78 | |||
| 79 | #define LOAD_AVE_CVT(x) (int) ((x) * 100.0) | ||
| 80 | |||
| 81 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 82 | Then the function dump-emacs will not be defined | ||
| 83 | and temacs will do (load "loadup") automatically unless told otherwise. | ||
| 84 | |||
| 85 | Earlier versions couldn't dump. | ||
| 86 | Changes for 12.0 release are in 19.1. | ||
| 87 | Dumping should work now. */ | ||
| 88 | |||
| 89 | /* #define CANNOT_DUMP */ | ||
| 90 | |||
| 91 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 92 | pure and impure space as loaded can vary, and even their | ||
| 93 | relative order cannot be relied on. | ||
| 94 | |||
| 95 | Otherwise Emacs assumes that text space precedes data space, | ||
| 96 | numerically. */ | ||
| 97 | |||
| 98 | /* #define VIRT_ADDR_VARIES */ | ||
| 99 | |||
| 100 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 101 | to change the boundary between the text section and data section | ||
| 102 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 103 | code will not be sharable; but that's better than failing completely. */ | ||
| 104 | /*#define NO_REMAP*/ | ||
| 105 | |||
| 106 | /* This is a guess for an alternate solution to whatever | ||
| 107 | problem motivated defining _sobuf in sysdep,c with extern char *_sobuf. */ | ||
| 108 | #define _sobuf xsobuf | ||
| 109 | |||
| 110 | /* Address of start of text segment as loaded. */ | ||
| 111 | |||
| 112 | #define TEXT_START 0x800 | ||
| 113 | |||
| 114 | /* Tell crt0.c not to define environ. */ | ||
| 115 | |||
| 116 | #define DONT_NEED_ENVIRON | ||
| 117 | |||
| 118 | /* The elxsi has no debugger, so might as well optimize instead | ||
| 119 | of trying to make a symbol table. */ | ||
| 120 | |||
| 121 | #define C_DEBUG_SWITCH -O | ||
| 122 | |||
| 123 | /* Elxsi uses COFF under both Sys V and BSD environments */ | ||
| 124 | |||
| 125 | #define COFF | ||
| 126 | |||
| 127 | #define ADJUST_EXEC_HEADER {\ | ||
| 128 | extern int _init_brk;\ | ||
| 129 | _init_brk = bss_start;\ | ||
| 130 | } | ||
| 131 | |||
| 132 | /* arch-tag: 73bf1120-a994-4c29-8d60-af425d8bf10c | ||
| 133 | (do not change this comment) */ | ||
diff --git a/src/m/f301.h b/src/m/f301.h deleted file mode 100644 index c427c19e05d..00000000000 --- a/src/m/f301.h +++ /dev/null | |||
| @@ -1,10 +0,0 @@ | |||
| 1 | /* Machine description file for Fujitsu F301 machines. */ | ||
| 2 | |||
| 3 | /* The following line tells the configuration script what sort of | ||
| 4 | operating system this machine is likely to run. | ||
| 5 | USUAL-OPSYS="uxpv" */ | ||
| 6 | |||
| 7 | #include "delta88k.h" | ||
| 8 | |||
| 9 | /* arch-tag: a0ed4f18-ecf2-4d9a-853b-36e0f6b45945 | ||
| 10 | (do not change this comment) */ | ||
diff --git a/src/m/gould-np1.h b/src/m/gould-np1.h deleted file mode 100644 index cb3da1825cc..00000000000 --- a/src/m/gould-np1.h +++ /dev/null | |||
| @@ -1,108 +0,0 @@ | |||
| 1 | /* machine description file for Gould NP1 with UTX/32 3.0 (first release for NP1) | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* The following line tells the configuration script what sort of | ||
| 23 | operating system this machine is likely to run. | ||
| 24 | USUAL-OPSYS="bsd4-3" */ | ||
| 25 | |||
| 26 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 27 | preprocessor symbol "COFF". */ | ||
| 28 | /* UTX 3.0 uses a cross between COFF and a.out format, but closer to COFF. */ | ||
| 29 | /* at least currently, already defined by cpp, but make sure */ | ||
| 30 | #ifndef COFF | ||
| 31 | #define COFF | ||
| 32 | #endif COFF | ||
| 33 | |||
| 34 | #include "gould.h" | ||
| 35 | |||
| 36 | /* undefine what gould.h defined */ | ||
| 37 | #undef ADJUST_EXEC_HEADER | ||
| 38 | |||
| 39 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 40 | preprocessor symbol "COFF". */ | ||
| 41 | /* UTX 3.0 uses a cross between COFF and a.out format, but closer to COFF. */ | ||
| 42 | #ifndef COFF /* at least currently, already defined by cpp */ | ||
| 43 | #define COFF | ||
| 44 | #endif COFF | ||
| 45 | |||
| 46 | /* make Gould NP1 and PN COFF look like USG COFF */ | ||
| 47 | /* NP1 COFF */ | ||
| 48 | #undef aouthdr /* Since gould.h already defined these */ | ||
| 49 | #undef a_dtbase | ||
| 50 | |||
| 51 | #ifdef IN_UNEXEC | ||
| 52 | #define aouthdr exec | ||
| 53 | #define ADJUST_TEXT_SCNHDR_SIZE | ||
| 54 | |||
| 55 | /* Gould COFF - these are already defined in gould.h */ | ||
| 56 | /* | ||
| 57 | * #define COFF_WITH_BSD_SYMTAB | ||
| 58 | * #define HEADER_INCL_IN_TEXT | ||
| 59 | * #define magic a_magic | ||
| 60 | * #define tsize a_text | ||
| 61 | * #define dsize a_data | ||
| 62 | * #define bsize a_bss | ||
| 63 | * #define entry a_entry | ||
| 64 | * #define text_start a_txbase | ||
| 65 | * #define data_start a_dtbase | ||
| 66 | */ | ||
| 67 | /* End Gould COFF */ | ||
| 68 | #endif /* IN_UNEXEC */ | ||
| 69 | |||
| 70 | /* NP1 supports a slightly different set than PowerNode */ | ||
| 71 | #define BAUD_CONVERT { 0, 50, 75, 110, 134, 150, 300, 450, 600, 1200, \ | ||
| 72 | 1800, 2000, 2400, 3600, 4800, 7200, 9600, \ | ||
| 73 | 19200, 38400 } | ||
| 74 | |||
| 75 | #define LD_SWITCH_SYSTEM -BS -e start | ||
| 76 | |||
| 77 | /* Undef C_DEBUG_SWITCH because it may have been set in gould.h */ | ||
| 78 | /* It will compile and load and works with dbx. Runs under an incomplete | ||
| 79 | port of gdb, but gdb doesn't always find things correctly. */ | ||
| 80 | #undef C_DEBUG_SWITCH | ||
| 81 | #define C_DEBUG_SWITCH -g | ||
| 82 | #define LIBS_DEBUG -lg | ||
| 83 | |||
| 84 | |||
| 85 | /* The data segment in this machine always starts at address 0x1000000 = 16M. | ||
| 86 | An address of data cannot be stored correctly in a Lisp object; | ||
| 87 | we always lose the high bits. We must tell XPNTR to add them back. */ | ||
| 88 | |||
| 89 | #define DATA_SEG_BITS 0x1000000 | ||
| 90 | #define DATA_START 0x1000000 | ||
| 91 | |||
| 92 | /* The text segment always starts at 0. | ||
| 93 | This way we don't need to have a label _start defined. */ | ||
| 94 | #define TEXT_START 0 | ||
| 95 | |||
| 96 | /* Data isn't right next to text on an NP1 */ | ||
| 97 | #define NO_REMAP | ||
| 98 | |||
| 99 | /* The bcopy bug has reappeared */ | ||
| 100 | #undef BSTRING | ||
| 101 | |||
| 102 | #ifndef GOULD_NP1 | ||
| 103 | #define GOULD_NP1 | ||
| 104 | #endif | ||
| 105 | |||
| 106 | |||
| 107 | /* arch-tag: cdfd3dbf-a5e4-464d-8cef-985fb7872873 | ||
| 108 | (do not change this comment) */ | ||
diff --git a/src/m/gould.h b/src/m/gould.h deleted file mode 100644 index cd16e09b785..00000000000 --- a/src/m/gould.h +++ /dev/null | |||
| @@ -1,189 +0,0 @@ | |||
| 1 | /* machine description file for Gould PowerNodes with UTX/32 2.0 and 2.1. | ||
| 2 | (See MACHINES for older versions.) | ||
| 3 | |||
| 4 | * NOTE: If you are running a pre-release of UTX/32 2.1 you should #define | ||
| 5 | * RELEASE2_1 in config.h. This may also be necessary with un-updated | ||
| 6 | * official releases of 2.1 | ||
| 7 | |||
| 8 | Copyright (C) 1986, 2002, 2003, 2004, 2005, | ||
| 9 | 2006, 2007 Free Software Foundation, Inc. | ||
| 10 | |||
| 11 | This file is part of GNU Emacs. | ||
| 12 | |||
| 13 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 14 | it under the terms of the GNU General Public License as published by | ||
| 15 | the Free Software Foundation; either version 3, or (at your option) | ||
| 16 | any later version. | ||
| 17 | |||
| 18 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 19 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 20 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 21 | GNU General Public License for more details. | ||
| 22 | |||
| 23 | You should have received a copy of the GNU General Public License | ||
| 24 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 25 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 26 | Boston, MA 02110-1301, USA. */ | ||
| 27 | |||
| 28 | |||
| 29 | /* The following line tells the configuration script what sort of | ||
| 30 | operating system this machine is likely to run. | ||
| 31 | USUAL-OPSYS="note" | ||
| 32 | |||
| 33 | NOTE-START | ||
| 34 | Gould Power Node (-machine=gould -opsystem=bsd4-2 or bsd4-3) | ||
| 35 | (gould.h; s-bsd4-2.h or s-bsd4-3.h) | ||
| 36 | |||
| 37 | 18.36 worked on versions 1.2 and 2.0 of the operating system. | ||
| 38 | |||
| 39 | On UTX/32 2.0, use -opsystem=bsd4-3 | ||
| 40 | |||
| 41 | On UTX/32 1.2 and UTX/32S 1.0, use -opsystem=bsd4-2 and note that compiling | ||
| 42 | lib-src/sorted-doc tickles a compiler bug: remove the -g flag to cc in the | ||
| 43 | makefile. | ||
| 44 | |||
| 45 | UTX/32 1.3 has a bug in the bcopy library routine. Fix it by | ||
| 46 | #undef BSTRING in gould.h. | ||
| 47 | |||
| 48 | Version 19 incorporates support for releases 2.1 and later of UTX/32. | ||
| 49 | A site running a pre-release of 2.1 should #define RELEASE2_1 in config.h. | ||
| 50 | NOTE-END */ | ||
| 51 | |||
| 52 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 53 | is the most significant byte. */ | ||
| 54 | |||
| 55 | #define WORDS_BIG_ENDIAN | ||
| 56 | |||
| 57 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 58 | * group of arguments and treat it as an array of the arguments. */ | ||
| 59 | |||
| 60 | #define NO_ARG_ARRAY | ||
| 61 | |||
| 62 | /* Define WORD_MACHINE if addresses and such have | ||
| 63 | * to be corrected before they can be used as byte counts. */ | ||
| 64 | |||
| 65 | /* #define WORD_MACHINE */ | ||
| 66 | |||
| 67 | /* Now define a symbol for the cpu type, if your compiler | ||
| 68 | does not define it automatically */ | ||
| 69 | |||
| 70 | #ifndef GOULD | ||
| 71 | #define GOULD | ||
| 72 | #endif | ||
| 73 | |||
| 74 | /* sel is an old preprocessor name on gould machines | ||
| 75 | - it is no longer needed and interferes with a variable in xmenu.c */ | ||
| 76 | #undef sel | ||
| 77 | |||
| 78 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 79 | /* This is desirable for most machines. */ | ||
| 80 | |||
| 81 | #define NO_UNION_TYPE | ||
| 82 | |||
| 83 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 84 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 85 | are always unsigned. | ||
| 86 | |||
| 87 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 88 | |||
| 89 | #define EXPLICIT_SIGN_EXTEND | ||
| 90 | |||
| 91 | /* Data type of load average, as read out of kmem. */ | ||
| 92 | |||
| 93 | #define LOAD_AVE_TYPE double | ||
| 94 | |||
| 95 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 96 | |||
| 97 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) | ||
| 98 | |||
| 99 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 100 | Then the function dump-emacs will not be defined | ||
| 101 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 102 | |||
| 103 | /* #define CANNOT_DUMP */ | ||
| 104 | |||
| 105 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 106 | pure and impure space as loaded can vary, and even their | ||
| 107 | relative order cannot be relied on. | ||
| 108 | |||
| 109 | Otherwise Emacs assumes that text space precedes data space, | ||
| 110 | numerically. */ | ||
| 111 | |||
| 112 | #define VIRT_ADDR_VARIES | ||
| 113 | |||
| 114 | /* No need to extend the user stack. */ | ||
| 115 | |||
| 116 | /* If this is a 2.1 system, COFF will be predefined by cpp. If it's */ | ||
| 117 | /* pre-2.1 COFF won't be defined, which is as it should be. */ | ||
| 118 | |||
| 119 | #ifdef COFF | ||
| 120 | |||
| 121 | #define HEADER_INCL_IN_TEXT | ||
| 122 | #define COFF_BSD_SYMBOLS | ||
| 123 | |||
| 124 | /* Seems to be necessary with coff */ | ||
| 125 | #define NO_REMAP | ||
| 126 | |||
| 127 | #ifndef GOULD_NP1 | ||
| 128 | /* gould-np1.h includes this file */ | ||
| 129 | /* keep the old value - don't skip over the headers */ | ||
| 130 | #define KEEP_OLD_TEXT_SCNPTR | ||
| 131 | #define KEEP_OLD_PADDR | ||
| 132 | #ifndef RELEASE2_1 | ||
| 133 | #define ADJUST_TEXTBASE | ||
| 134 | #endif /*RELEASE2_1*/ | ||
| 135 | #endif /* GOULD_NP1 */ | ||
| 136 | |||
| 137 | #ifdef IN_UNEXEC | ||
| 138 | /* make Gould NP and PN COFF look like USG COFF */ | ||
| 139 | /* PN COFF */ | ||
| 140 | #define aouthdr old_exec | ||
| 141 | /* PN COFF doesn't have a data_start or a_dtbase field in its */ | ||
| 142 | /* optional header, so substitute a junk field */ | ||
| 143 | #define a_dtbase a_ccvers | ||
| 144 | /* Gould COFF */ | ||
| 145 | #define magic a_magic | ||
| 146 | #define tsize a_text | ||
| 147 | #define dsize a_data | ||
| 148 | #define bsize a_bss | ||
| 149 | #define entry a_entry | ||
| 150 | #define text_start a_txbase | ||
| 151 | #define data_start a_dtbase | ||
| 152 | #endif /* IN_UNEXEC */ | ||
| 153 | |||
| 154 | /* Define how to search all pty names. | ||
| 155 | * This is for UTX 2.1 and greater on PN and all NP versions. It is only | ||
| 156 | * accident that this happens to correspond to the same versions of UTX | ||
| 157 | * as COFF does, but we'll take advantage of that here. | ||
| 158 | */ | ||
| 159 | |||
| 160 | /*#define USE_PTY_PAIR*/ | ||
| 161 | |||
| 162 | #endif /* COFF */ | ||
| 163 | |||
| 164 | /* -g is sometimes broken on the Gould. */ | ||
| 165 | |||
| 166 | #define C_DEBUG_SWITCH | ||
| 167 | |||
| 168 | /* Comparing pointers as unsigned ints tickles a bug in older compilers. */ | ||
| 169 | |||
| 170 | #define PNTR_COMPARISON_TYPE int | ||
| 171 | |||
| 172 | /* The GOULD machine counts the a.out file header as part of the text. */ | ||
| 173 | |||
| 174 | #define A_TEXT_OFFSET(HDR) sizeof (HDR) | ||
| 175 | |||
| 176 | /* Machine-dependent action when about to dump an executable file. */ | ||
| 177 | |||
| 178 | #ifndef COFF | ||
| 179 | #define ADJUST_EXEC_HEADER \ | ||
| 180 | unexec_text_start = hdr.a_txbase + sizeof (hdr); | ||
| 181 | #endif | ||
| 182 | |||
| 183 | /* We use the system's crt0.o. Somehow it avoids losing | ||
| 184 | with `environ' the way most standard crt0.o's do. */ | ||
| 185 | |||
| 186 | #define START_FILES pre-crt0.o /lib/crt0.o | ||
| 187 | |||
| 188 | /* arch-tag: 930cb9ef-f56f-4c06-aea0-5e81103bbf58 | ||
| 189 | (do not change this comment) */ | ||
diff --git a/src/m/i860.h b/src/m/i860.h deleted file mode 100644 index 6d79c5c8d38..00000000000 --- a/src/m/i860.h +++ /dev/null | |||
| @@ -1,101 +0,0 @@ | |||
| 1 | /* machine description file for i860. | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #undef WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #define NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | /* #define WORD_MACHINE */ | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 45 | orion, tahoe, APOLLO and many others */ | ||
| 46 | |||
| 47 | #define INTEL860 | ||
| 48 | |||
| 49 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 50 | /* This is desirable for most machines. */ | ||
| 51 | |||
| 52 | #define NO_UNION_TYPE | ||
| 53 | |||
| 54 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 55 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 56 | are always unsigned. | ||
| 57 | |||
| 58 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 59 | |||
| 60 | #define EXPLICIT_SIGN_EXTEND | ||
| 61 | |||
| 62 | /* Data type of load average, as read out of kmem. */ | ||
| 63 | |||
| 64 | #define LOAD_AVE_TYPE long | ||
| 65 | |||
| 66 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 67 | |||
| 68 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 69 | |||
| 70 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 71 | Then the function dump-emacs will not be defined | ||
| 72 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 73 | |||
| 74 | /* #define CANNOT_DUMP */ | ||
| 75 | |||
| 76 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 77 | pure and impure space as loaded can vary, and even their | ||
| 78 | relative order cannot be relied on. | ||
| 79 | |||
| 80 | Otherwise Emacs assumes that text space precedes data space, | ||
| 81 | numerically. */ | ||
| 82 | |||
| 83 | /* #define VIRT_ADDR_VARIES */ | ||
| 84 | |||
| 85 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 86 | to change the boundary between the text section and data section | ||
| 87 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 88 | code will not be sharable; but that's better than failing completely. */ | ||
| 89 | |||
| 90 | #define NO_REMAP | ||
| 91 | |||
| 92 | /* The X11 include files for i860-sysv4 need the macro SVR4 defined. | ||
| 93 | --Kaveh Ghazi (ghazi@noc.rutgers.edu) 8/9/94. */ | ||
| 94 | #ifdef USG5_4 | ||
| 95 | #ifndef SVR4 | ||
| 96 | #define SVR4 | ||
| 97 | #endif | ||
| 98 | #endif | ||
| 99 | |||
| 100 | /* arch-tag: 99f3a078-95e1-49d6-8666-04726eb25647 | ||
| 101 | (do not change this comment) */ | ||
diff --git a/src/m/ibmps2-aix.h b/src/m/ibmps2-aix.h deleted file mode 100644 index 045bcf2c294..00000000000 --- a/src/m/ibmps2-aix.h +++ /dev/null | |||
| @@ -1,235 +0,0 @@ | |||
| 1 | /* machine description file for ibm ps/2 aix386. | ||
| 2 | Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="note" | ||
| 26 | |||
| 27 | NOTE-START | ||
| 28 | Use -opsystem=usg5-3 on AIX 1.2. | ||
| 29 | -opsystem=usg5-2-2 should work on either AIX 1.1 or 1.2, but may not | ||
| 30 | work with certain new X window managers, and may be suboptimal. | ||
| 31 | NOTE-END */ | ||
| 32 | |||
| 33 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 34 | is the most significant byte. */ | ||
| 35 | |||
| 36 | #undef WORDS_BIG_ENDIAN | ||
| 37 | |||
| 38 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 39 | * group of arguments and treat it as an array of the arguments. */ | ||
| 40 | |||
| 41 | /* #define NO_ARG_ARRAY */ | ||
| 42 | |||
| 43 | /* Define WORD_MACHINE if addresses and such have | ||
| 44 | * to be corrected before they can be used as byte counts. */ | ||
| 45 | |||
| 46 | /* #define WORD_MACHINE */ | ||
| 47 | |||
| 48 | /* Now define a symbol for the cpu type, if your compiler | ||
| 49 | does not define it automatically: | ||
| 50 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 51 | orion, tahoe, APOLLO and many others */ | ||
| 52 | |||
| 53 | #define INTEL386 | ||
| 54 | #define aix386 | ||
| 55 | |||
| 56 | #define IBMAIX | ||
| 57 | |||
| 58 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 59 | |||
| 60 | #define NO_UNION_TYPE | ||
| 61 | |||
| 62 | /* crt0.c, if it is used, should use the i386-bsd style of entry. | ||
| 63 | with no extra dummy args. On USG and XENIX, | ||
| 64 | NO_REMAP says this isn't used. */ | ||
| 65 | |||
| 66 | #define CRT0_DUMMIES bogus_fp, | ||
| 67 | |||
| 68 | /* crt0.c should define a symbol `start' and do .globl with a dot. */ | ||
| 69 | |||
| 70 | #define DOT_GLOBAL_START | ||
| 71 | |||
| 72 | /* USG systems do not actually support the load average, | ||
| 73 | so disable it for them. */ | ||
| 74 | |||
| 75 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 76 | Then the function dump-emacs will not be defined | ||
| 77 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 78 | |||
| 79 | /* #define CANNOT_DUMP */ | ||
| 80 | |||
| 81 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 82 | pure and impure space as loaded can vary, and even their | ||
| 83 | relative order cannot be relied on. | ||
| 84 | |||
| 85 | Otherwise Emacs assumes that text space precedes data space, | ||
| 86 | numerically. */ | ||
| 87 | |||
| 88 | /* #define VIRT_ADDR_VARIES */ | ||
| 89 | |||
| 90 | /* Define addresses, macros, change some setup for dump */ | ||
| 91 | |||
| 92 | #define NO_REMAP | ||
| 93 | #undef static | ||
| 94 | /* Since NO_REMAP, problem with statics doesn't exist */ | ||
| 95 | |||
| 96 | #ifdef USG5_3 | ||
| 97 | #define TEXT_START 0x00000000 | ||
| 98 | #else | ||
| 99 | #define TEXT_START 0x00400000 | ||
| 100 | #define TEXT_END 0 | ||
| 101 | #define DATA_START 0x00800000 | ||
| 102 | #define DATA_END 0 | ||
| 103 | |||
| 104 | /* The data segment in this machine always starts at address 0x00800000. | ||
| 105 | An address of data cannot be stored correctly in a Lisp object; | ||
| 106 | we always lose the high bits. We must tell XPNTR to add them back. */ | ||
| 107 | |||
| 108 | #define DATA_SEG_BITS 0x00800000 | ||
| 109 | #endif | ||
| 110 | |||
| 111 | #if 0 /* I refuse to promulgate a recommendation that would make | ||
| 112 | users unable to debug - RMS. */ | ||
| 113 | /* delete the following line to foil optimization, enable debugging */ | ||
| 114 | #define C_DEBUG_SWITCH -O | ||
| 115 | #endif | ||
| 116 | |||
| 117 | #define BSTRING | ||
| 118 | #undef HAVE_TERMIO | ||
| 119 | #define HAVE_TERMIOS | ||
| 120 | |||
| 121 | /* Send signals to subprocesses by "typing" special chars at them. */ | ||
| 122 | |||
| 123 | #define SIGNALS_VIA_CHARACTERS | ||
| 124 | |||
| 125 | /* | ||
| 126 | * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir | ||
| 127 | * library functions. Almost, but not quite the same as | ||
| 128 | * the 4.2 functions | ||
| 129 | */ | ||
| 130 | #define SYSV_SYSTEM_DIR | ||
| 131 | |||
| 132 | /* | ||
| 133 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 134 | * The 4.2 opendir, etc., library functions. | ||
| 135 | */ | ||
| 136 | #undef NONSYSTEM_DIR_LIBRARY | ||
| 137 | |||
| 138 | /* AIX utimes allegedly causes SIGSEGV. */ | ||
| 139 | #undef HAVE_UTIMES /* override configuration decision */ | ||
| 140 | |||
| 141 | /* AIX defines FIONREAD, but it does not work. */ | ||
| 142 | #define BROKEN_FIONREAD | ||
| 143 | |||
| 144 | /* Data type of load average, as read out of kmem. */ | ||
| 145 | |||
| 146 | #define LOAD_AVE_TYPE long /* For AIX (sysV) */ | ||
| 147 | |||
| 148 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 149 | |||
| 150 | #define LOAD_AVE_CVT(x) (int) (((double) (x)/65535.0) * 100.0) | ||
| 151 | |||
| 152 | /* This page was added in June 1990. It may be incorrect for some versions | ||
| 153 | of aix, so delete it if it causes trouble. */ | ||
| 154 | |||
| 155 | /* AIX has sigsetmask() */ | ||
| 156 | #undef sigsetmask | ||
| 157 | |||
| 158 | /* AIX386 has BSD4.3 PTYs */ | ||
| 159 | |||
| 160 | #define HAVE_PTYS | ||
| 161 | |||
| 162 | /* AIX has IPC. It also has sockets, and either can be used for client/server. | ||
| 163 | I would suggest the client/server code be changed to use HAVE_SOCKETS rather | ||
| 164 | than BSD as the conditional if sockets provide any advantages. */ | ||
| 165 | |||
| 166 | #define HAVE_SYSVIPC | ||
| 167 | |||
| 168 | /* AIX has sockets */ | ||
| 169 | |||
| 170 | #define HAVE_SOCKETS | ||
| 171 | /* #define SKTPAIR */ /* SKTPAIR works, but what is advantage over pipes? */ | ||
| 172 | |||
| 173 | /* Specify the font for X to use. */ | ||
| 174 | |||
| 175 | #define X_DEFAULT_FONT "8x13" | ||
| 176 | |||
| 177 | /* AIX has a wait.h. */ | ||
| 178 | |||
| 179 | #define HAVE_WAIT_HEADER | ||
| 180 | |||
| 181 | /* sioctl.h should not be included, says bytheway@cs.utah.edu. */ | ||
| 182 | #undef NEED_SIOCTL | ||
| 183 | /* I'm guessing that that means it doesn't want ptem.h either. */ | ||
| 184 | #undef NEED_PTEM_H | ||
| 185 | |||
| 186 | /* aix has `union wait' */ | ||
| 187 | #define HAVE_UNION_WAIT | ||
| 188 | |||
| 189 | /* Here override various assumptions in ymakefile */ | ||
| 190 | |||
| 191 | #ifdef __GNUC__ | ||
| 192 | #define alloca(n) __builtin_alloca(n) | ||
| 193 | #if __GNUC__ < 2 | ||
| 194 | #define LIB_STANDARD /usr/local/lib/gcc-gnulib -lbsd -lrts -lc | ||
| 195 | #endif | ||
| 196 | /* -g fails to work, so it is omitted. */ | ||
| 197 | /* tranle says that -fstrength-reduce does not help. */ | ||
| 198 | #define C_DEBUG_SWITCH | ||
| 199 | #else | ||
| 200 | #define LIBS_MACHINE -lbsd -lrts | ||
| 201 | #endif | ||
| 202 | |||
| 203 | #define OBJECTS_MACHINE hftctl.o | ||
| 204 | #define LD_SWITCH_MACHINE -T0x00400000 -K -e start | ||
| 205 | #define LIBS_DEBUG /* no -lg on aix ps/2 */ | ||
| 206 | |||
| 207 | #ifdef USG5_3 | ||
| 208 | #define XICCC | ||
| 209 | #undef LD_SWITCH_MACHINE | ||
| 210 | #define LD_SWITCH_MACHINE -T0x0 -K -e start | ||
| 211 | |||
| 212 | /* Things defined in s-usg5-3.h that need to be overridden. */ | ||
| 213 | #undef NOMULTIPLEJOBS | ||
| 214 | #undef BROKEN_TIOCGETC | ||
| 215 | #undef BROKEN_TIOCGWINSZ | ||
| 216 | #undef LIBX11_SYSTEM | ||
| 217 | #undef LIB_X11_LIB | ||
| 218 | #endif | ||
| 219 | |||
| 220 | /* Shared libraries are supported in a patch release of ps/2 1.2.1. | ||
| 221 | If the system has them, the user can turn them on, and this code | ||
| 222 | will make them work. */ | ||
| 223 | #define USG_SHARED_LIBRARIES /* Assume that by 19's release everyone has this. */ | ||
| 224 | |||
| 225 | #ifdef USG_SHARED_LIBRARIES | ||
| 226 | #define ORDINARY_LINK | ||
| 227 | #undef LIB_STANDARD | ||
| 228 | #undef LD_SWITCH_MACHINE | ||
| 229 | #if __GNUC__ > 1 | ||
| 230 | #define LD_SWITCH_MACHINE -shlib | ||
| 231 | #endif | ||
| 232 | #endif | ||
| 233 | |||
| 234 | /* arch-tag: 2e7f44df-6a61-4a47-aa53-f7961bfeff11 | ||
| 235 | (do not change this comment) */ | ||
diff --git a/src/m/ibmrt-aix.h b/src/m/ibmrt-aix.h deleted file mode 100644 index 57a9dbc4df1..00000000000 --- a/src/m/ibmrt-aix.h +++ /dev/null | |||
| @@ -1,165 +0,0 @@ | |||
| 1 | /* RTPC AIX machine/system dependent defines | ||
| 2 | Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #define NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Now define a symbol for the cpu type, if your compiler | ||
| 38 | does not define it automatically. */ | ||
| 39 | |||
| 40 | #ifndef IBMAIX | ||
| 41 | #define IBMAIX | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 45 | /* This is desirable for most machines. */ | ||
| 46 | |||
| 47 | #define NO_UNION_TYPE | ||
| 48 | |||
| 49 | /* No load average information appears in the AIX kernel. VRM has this | ||
| 50 | info, and if anyone desires they should fix fns.c to get it out of VRM */ | ||
| 51 | |||
| 52 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 53 | Then the function dump-emacs will not be defined | ||
| 54 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 55 | |||
| 56 | /* #define CANNOT_DUMP */ | ||
| 57 | |||
| 58 | /* Define addresses, macros, change some setup for dump */ | ||
| 59 | |||
| 60 | #undef COFF | ||
| 61 | #define NO_REMAP | ||
| 62 | #undef static | ||
| 63 | /* Since NO_REMAP, problem with statics doesn't exist */ | ||
| 64 | |||
| 65 | #define TEXT_START 0x10000000 | ||
| 66 | #define TEXT_END 0 | ||
| 67 | #define DATA_START 0x20000000 | ||
| 68 | #define DATA_END 0 | ||
| 69 | |||
| 70 | /* The data segment in this machine always starts at address 0x20000000. | ||
| 71 | An address of data cannot be stored correctly in a Lisp object; | ||
| 72 | we always lose the high bits. We must tell XPNTR to add them back. */ | ||
| 73 | |||
| 74 | #define DATA_SEG_BITS 0x20000000 | ||
| 75 | |||
| 76 | #define N_BADMAG(x) BADMAG(x) | ||
| 77 | #define N_TXTOFF(x) A_TEXTPOS(x) | ||
| 78 | #define N_SYMOFF(x) A_SYMPOS(x) | ||
| 79 | #define A_TEXT_OFFSET(HDR) sizeof(HDR) | ||
| 80 | #define ADJUST_EXEC_HEADER \ | ||
| 81 | unexec_text_start += sizeof(hdr); \ | ||
| 82 | unexec_data_start = ohdr.a_dbase | ||
| 83 | #undef ADDR_CORRECT | ||
| 84 | #define ADDR_CORRECT(x) ((int)(x)) | ||
| 85 | |||
| 86 | /* This is the offset of the executable's text, from the start of the file. */ | ||
| 87 | |||
| 88 | #define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr)) | ||
| 89 | |||
| 90 | /* AIX has PTYs, so define here, along with macros needed to make them work. */ | ||
| 91 | |||
| 92 | #define HAVE_PTYS | ||
| 93 | #define PTY_ITERATION for (i=0; i<256; i++) | ||
| 94 | #define PTY_NAME_SPRINTF sprintf (ptyname, "/dev/ptc%d", i); | ||
| 95 | |||
| 96 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 97 | { /* Check that server side not already open */ \ | ||
| 98 | if ((ioctl (*ptyv, PTYSTATUS, 0) & 0xFFFF) != 0) \ | ||
| 99 | { \ | ||
| 100 | emacs_close (*ptyv); \ | ||
| 101 | continue; \ | ||
| 102 | } \ | ||
| 103 | /* And finally to be sure we can open it later */ \ | ||
| 104 | sprintf (ptyname, "/dev/pts%d", i); \ | ||
| 105 | signal (SIGHUP,SIG_IGN); \ | ||
| 106 | } /* ignore hangup at process end */ | ||
| 107 | |||
| 108 | /* TIOCNOTTY doesn't occur on AIX, but the rest | ||
| 109 | of the conditionalized code in process.c does | ||
| 110 | the right thing if we fake this out. */ | ||
| 111 | #define TIOCNOTTY IOCTYPE | ||
| 112 | |||
| 113 | /* AIX has IPC. It also has sockets, and either can be used for client/server. | ||
| 114 | I would suggest the client/server code be changed to use HAVE_SOCKETS rather | ||
| 115 | than BSD_SYSTEM as the conditional if sockets provide any advantages. */ | ||
| 116 | |||
| 117 | #define HAVE_SYSVIPC | ||
| 118 | |||
| 119 | /* AIX has sockets */ | ||
| 120 | |||
| 121 | #define HAVE_SOCKETS | ||
| 122 | /* #define SKTPAIR */ /* SKTPAIR works, but what is advantage over pipes? */ | ||
| 123 | |||
| 124 | /* Specify the font for X to use. */ | ||
| 125 | |||
| 126 | #define X_DEFAULT_FONT "Rom14.500" | ||
| 127 | |||
| 128 | /* Here override various assumptions in ymakefile */ | ||
| 129 | |||
| 130 | /* On AIX 2.2.1, use these definitions instead | ||
| 131 | #define C_SWITCH_MACHINE -I/usr/include -Nn2000 | ||
| 132 | #define LIBS_MACHINE -lX -lrts | ||
| 133 | */ | ||
| 134 | |||
| 135 | #define C_SWITCH_MACHINE -I/usr/include -I/usr/include/bsd -Nn2000 | ||
| 136 | #define LIBS_MACHINE -lXMenu -lX -lsock -lbsd -lrts | ||
| 137 | |||
| 138 | #define OBJECTS_MACHINE hftctl.o | ||
| 139 | #define START_FILES /lib/crt0.o | ||
| 140 | /* -lXMenu, -lX must precede -lsock, -lbsd */ | ||
| 141 | #define LD_SWITCH_MACHINE -n -T0x10000000 -K -e start | ||
| 142 | |||
| 143 | #if 0 /* I refuse to promulgate a recommendation that would make | ||
| 144 | users unable to debug - RMS. */ | ||
| 145 | /* delete the following line to foil optimization, enable debugging */ | ||
| 146 | #define C_DEBUG_SWITCH -O | ||
| 147 | #endif | ||
| 148 | |||
| 149 | |||
| 150 | /* Setup to do some things BSD way - these won't work previous to AIX 2.1.2 */ | ||
| 151 | |||
| 152 | #include </usr/include/bsd/BSDtoAIX.h> | ||
| 153 | #define BSTRING | ||
| 154 | |||
| 155 | /* AIX utimes allegedly causes SIGSEGV. */ | ||
| 156 | #undef HAVE_UTIMES /* override configuration decision */ | ||
| 157 | |||
| 158 | /* AIX defines FIONREAD, but it does not work. */ | ||
| 159 | #define BROKEN_FIONREAD | ||
| 160 | |||
| 161 | /* rocky@watson.ibm.com says this is needed. */ | ||
| 162 | #define HAVE_FTIME | ||
| 163 | |||
| 164 | /* arch-tag: eea85307-0ca9-4a9c-a4f6-89fad7591d28 | ||
| 165 | (do not change this comment) */ | ||
diff --git a/src/m/ibmrt.h b/src/m/ibmrt.h deleted file mode 100644 index ca32db94518..00000000000 --- a/src/m/ibmrt.h +++ /dev/null | |||
| @@ -1,123 +0,0 @@ | |||
| 1 | /* RTPC machine dependent defines | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #define NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #define WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically. */ | ||
| 44 | |||
| 45 | #define ibmrt | ||
| 46 | #define romp /* unfortunately old include files are hanging around. */ | ||
| 47 | |||
| 48 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 49 | /* This is desirable for most machines. */ | ||
| 50 | |||
| 51 | #define NO_UNION_TYPE | ||
| 52 | |||
| 53 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 54 | the bit field into an int. In other words, if bit fields | ||
| 55 | are always unsigned. | ||
| 56 | |||
| 57 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 58 | |||
| 59 | #define EXPLICIT_SIGN_EXTEND | ||
| 60 | |||
| 61 | /* Data type of load average, as read out of kmem. */ | ||
| 62 | |||
| 63 | #define LOAD_AVE_TYPE double /* For AIS (sysV) */ | ||
| 64 | |||
| 65 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 66 | |||
| 67 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) | ||
| 68 | |||
| 69 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 70 | Then the function dump-emacs will not be defined | ||
| 71 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 72 | |||
| 73 | /* #define CANNOT_DUMP */ | ||
| 74 | |||
| 75 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 76 | pure and impure space as loaded can vary, and even their | ||
| 77 | relative order cannot be relied on. | ||
| 78 | |||
| 79 | Otherwise Emacs assumes that text space precedes data space, | ||
| 80 | numerically. */ | ||
| 81 | |||
| 82 | #undef VIRT_ADDR_VARIES | ||
| 83 | |||
| 84 | /* The data segment in this machine starts at a fixed address. | ||
| 85 | An address of data cannot be stored correctly in a Lisp object; | ||
| 86 | we always lose the high bits. We must tell XPNTR to add them back. */ | ||
| 87 | |||
| 88 | #define DATA_SEG_BITS 0x10000000 | ||
| 89 | #define DATA_START 0x10000000 | ||
| 90 | |||
| 91 | /* The text segment always starts at a fixed address. | ||
| 92 | This way we don't need to have a label _start defined. */ | ||
| 93 | #define TEXT_START 0 | ||
| 94 | |||
| 95 | /* Taking a pointer to a char casting it as int pointer */ | ||
| 96 | /* and then taking the int which the int pointer points to */ | ||
| 97 | /* is practically guaranteed to give erroneous results */ | ||
| 98 | |||
| 99 | #define NEED_ERRNO | ||
| 100 | |||
| 101 | #define SKTPAIR | ||
| 102 | |||
| 103 | /* BSD has BSTRING. */ | ||
| 104 | |||
| 105 | #define BSTRING | ||
| 106 | |||
| 107 | /* Special switches to give the C compiler. */ | ||
| 108 | |||
| 109 | #ifndef __GNUC__ | ||
| 110 | #define C_SWITCH_MACHINE -Dalloca=_Alloca | ||
| 111 | #endif | ||
| 112 | |||
| 113 | /* Don't attempt to relabel some of the data as text when dumping. | ||
| 114 | It does not work because their virtual addresses are not consecutive. | ||
| 115 | This enables us to use the standard crt0.o. */ | ||
| 116 | |||
| 117 | #define NO_REMAP | ||
| 118 | |||
| 119 | /* Use the bitmap files that come with Emacs. */ | ||
| 120 | #define EMACS_BITMAP_FILES | ||
| 121 | |||
| 122 | /* arch-tag: 89aa7e7d-593e-432c-966a-3db6aa2ad665 | ||
| 123 | (do not change this comment) */ | ||
diff --git a/src/m/intel386.h b/src/m/intel386.h index 22205ed762c..4ca09296f0f 100644 --- a/src/m/intel386.h +++ b/src/m/intel386.h | |||
| @@ -25,15 +25,14 @@ Boston, MA 02110-1301, USA. */ | |||
| 25 | USUAL-OPSYS="note" | 25 | USUAL-OPSYS="note" |
| 26 | 26 | ||
| 27 | NOTE-START | 27 | NOTE-START |
| 28 | Intel 386 (-machine=intel386 or -machine=is386.h) | 28 | Intel 386 (-machine=intel386) |
| 29 | 29 | ||
| 30 | The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3, | 30 | The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3, |
| 31 | isc2-2, 386-ix, esix, linux, sco3.2v4, and xenix. | 31 | isc2-2, 386-ix, and linux. |
| 32 | 32 | ||
| 33 | 18.58 should support a wide variety of operating systems. | 33 | 18.58 should support a wide variety of operating systems. |
| 34 | Use isc2-2 for Interactive 386/ix version 2.2. | 34 | Use isc2-2 for Interactive 386/ix version 2.2. |
| 35 | Use 386ix for prior versions. | 35 | Use 386ix for prior versions. |
| 36 | Use esix for Esix. | ||
| 37 | Use linux for Linux. | 36 | Use linux for Linux. |
| 38 | It isn't clear what to do on an SCO system. | 37 | It isn't clear what to do on an SCO system. |
| 39 | 38 | ||
diff --git a/src/m/irist.h b/src/m/irist.h deleted file mode 100644 index c0d55f96d0f..00000000000 --- a/src/m/irist.h +++ /dev/null | |||
| @@ -1,136 +0,0 @@ | |||
| 1 | /* machine description file for Silicon Graphics Iris 2500 Turbos; | ||
| 2 | also possibly for non-turbo Irises with system release 2.5. | ||
| 3 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 4 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | /* The following line tells the configuration script what sort of | ||
| 25 | operating system this machine is likely to run. | ||
| 26 | USUAL-OPSYS="note" | ||
| 27 | NOTE-START | ||
| 28 | Version 18 said to work; use -opsystem=irist3-5 for system version 2.5 | ||
| 29 | and -opsystem=iris3-6 for system versions 3.6 and up. | ||
| 30 | NOTE-END */ | ||
| 31 | |||
| 32 | #if 0 | ||
| 33 | Message-Id: <8705050653.AA20004@orville.arpa> | ||
| 34 | Subject: gnu emacs 18.41 on iris [23].5 machines | ||
| 35 | Date: 04 May 87 23:53:11 PDT (Mon) | ||
| 36 | From: raible@orville.arpa | ||
| 37 | |||
| 38 | Aside from the SIGIOT, I know of only one bug, a real strange one: | ||
| 39 | I wrote a utimes interface, which copies elements from timevals | ||
| 40 | to utimbufs. This code is known good. The problem is that in | ||
| 41 | emacs, the utime doesn't seem to take effect (i.e. doesn't change the | ||
| 42 | dates at all) unless I call report_file_error *after* the utime returns! | ||
| 43 | |||
| 44 | if (utime (name, &utb) < 0) | ||
| 45 | return; | ||
| 46 | else | ||
| 47 | /* XXX XXX XXX */ | ||
| 48 | /* For some reason, if this is taken out, then the utime above breaks! */ | ||
| 49 | /* (i.e. it doesn't set the time. This just makes no sense... */ | ||
| 50 | /* Eric - May 4, 1987 */ | ||
| 51 | report_file_error ("Worked just find\n", Qnil); | ||
| 52 | |||
| 53 | Without any sort of debugger that works on emacs (I know... but I dont have | ||
| 54 | *time* right now to start with gdb), it was quite time consuming to track | ||
| 55 | it down to this. | ||
| 56 | |||
| 57 | But since this code is only used for an optional 4th argument to one command | ||
| 58 | (copy-file), it would say that it is non-critical... | ||
| 59 | #endif /* 0 */ | ||
| 60 | |||
| 61 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 62 | is the most significant byte. */ | ||
| 63 | |||
| 64 | #define WORDS_BIG_ENDIAN | ||
| 65 | |||
| 66 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 67 | * group of arguments and treat it as an array of the arguments. */ | ||
| 68 | |||
| 69 | /* #define NO_ARG_ARRAY */ | ||
| 70 | |||
| 71 | /* Define WORD_MACHINE if addresses and such have | ||
| 72 | * to be corrected before they can be used as byte counts. */ | ||
| 73 | |||
| 74 | /* #define WORD_MACHINE */ | ||
| 75 | |||
| 76 | /* Now define a symbol for the cpu type, if your compiler | ||
| 77 | does not define it automatically: | ||
| 78 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 79 | orion, tahoe, APOLLO and many others */ | ||
| 80 | |||
| 81 | #ifndef m68000 | ||
| 82 | #define m68000 | ||
| 83 | #endif | ||
| 84 | |||
| 85 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 86 | /* This is desirable for most machines. */ | ||
| 87 | |||
| 88 | #define NO_UNION_TYPE | ||
| 89 | |||
| 90 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 91 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 92 | are always unsigned. | ||
| 93 | |||
| 94 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 95 | |||
| 96 | #define EXPLICIT_SIGN_EXTEND | ||
| 97 | |||
| 98 | /* Data type of load average, as read out of kmem. */ | ||
| 99 | |||
| 100 | #define LOAD_AVE_TYPE long | ||
| 101 | |||
| 102 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 103 | |||
| 104 | #define FSCALE 1.0 | ||
| 105 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 106 | |||
| 107 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 108 | Then the function dump-emacs will not be defined | ||
| 109 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 110 | |||
| 111 | /* #define CANNOT_DUMP */ | ||
| 112 | |||
| 113 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 114 | pure and impure space as loaded can vary, and even their | ||
| 115 | relative order cannot be relied on. | ||
| 116 | |||
| 117 | Otherwise Emacs assumes that text space precedes data space, | ||
| 118 | numerically. */ | ||
| 119 | |||
| 120 | /* #define VIRT_ADDR_VARIES */ | ||
| 121 | |||
| 122 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 123 | to change the boundary between the text section and data section | ||
| 124 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 125 | code will not be sharable; but that's better than failing completely. */ | ||
| 126 | |||
| 127 | /* #define NO_REMAP */ | ||
| 128 | |||
| 129 | /* There is an inconsistency between the sgi assembler, linker which barfs | ||
| 130 | on these. */ | ||
| 131 | |||
| 132 | #define internal_with_output_to_temp_buffer stupid_long_name1 | ||
| 133 | #define Finsert_abbrev_table_description stupid_long_name2 | ||
| 134 | |||
| 135 | /* arch-tag: 4076b26c-1fe6-4c28-94f3-3c863f074767 | ||
| 136 | (do not change this comment) */ | ||
diff --git a/src/m/is386.h b/src/m/is386.h deleted file mode 100644 index 5041db9a6c8..00000000000 --- a/src/m/is386.h +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | /* machine description file for Integrated Solutions 386 machine. */ | ||
| 2 | |||
| 3 | #include "intel386.h" | ||
| 4 | |||
| 5 | /* The following line tells the configuration script what sort of | ||
| 6 | operating system this machine is likely to run. | ||
| 7 | USUAL-OPSYS="note" | ||
| 8 | |||
| 9 | NOTE-START | ||
| 10 | Intel 386 (-machine=intel386 or -machine=is386.h) | ||
| 11 | |||
| 12 | The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3, | ||
| 13 | isc2-2, 386-ix, esix, or xenix. | ||
| 14 | |||
| 15 | 18.58 should support a wide variety of operating systems. | ||
| 16 | Use isc2-2 for Interactive 386/ix version 2.2. | ||
| 17 | Use 386ix for prior versions. | ||
| 18 | Use esix for Esix. It isn't clear what to do on an SCO system. | ||
| 19 | |||
| 20 | -machine=is386 is used for an Integrated Solutions 386 machine. | ||
| 21 | It may also be correct for Microport systems. | ||
| 22 | NOTE-END */ | ||
| 23 | |||
| 24 | #define LIBX11_MACHINE -lnsl_s | ||
| 25 | |||
| 26 | #define LIBS_DEBUG -lg | ||
| 27 | |||
| 28 | /* arch-tag: b6b7e6ec-8b6c-440b-b9c8-961e4bebf0cf | ||
| 29 | (do not change this comment) */ | ||
diff --git a/src/m/isi-ov.h b/src/m/isi-ov.h deleted file mode 100644 index 6706ee9981b..00000000000 --- a/src/m/isi-ov.h +++ /dev/null | |||
| @@ -1,96 +0,0 @@ | |||
| 1 | /* machine description file for ISI 68000's | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="note" | ||
| 26 | |||
| 27 | NOTE-START | ||
| 28 | Use `-opsystem=bsd4-2' or `-opsystem=bsd4-3'. | ||
| 29 | NOTE-END */ | ||
| 30 | |||
| 31 | #define ISI68K | ||
| 32 | |||
| 33 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 34 | is the most significant byte. */ | ||
| 35 | |||
| 36 | #define WORDS_BIG_ENDIAN | ||
| 37 | |||
| 38 | /* Say this machine is a 68000 */ | ||
| 39 | |||
| 40 | #define m68000 | ||
| 41 | |||
| 42 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 43 | |||
| 44 | #define NO_UNION_TYPE | ||
| 45 | |||
| 46 | /* XINT must explicitly sign-extend */ | ||
| 47 | |||
| 48 | #define EXPLICIT_SIGN_EXTEND | ||
| 49 | |||
| 50 | /* Data type of load average, as read out of kmem. */ | ||
| 51 | |||
| 52 | #ifdef BSD4_3 | ||
| 53 | #define LOAD_AVE_TYPE long | ||
| 54 | #else | ||
| 55 | #define LOAD_AVE_TYPE double | ||
| 56 | #endif BSD4_3 | ||
| 57 | |||
| 58 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 59 | |||
| 60 | #ifdef BSD4_3 | ||
| 61 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 62 | #else | ||
| 63 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 64 | #endif | ||
| 65 | |||
| 66 | /* Mask for address bits within a memory segment */ | ||
| 67 | |||
| 68 | #define SEGMENT_MASK 0x1ffff | ||
| 69 | |||
| 70 | /* use the -20 switch to get the 68020 code */ | ||
| 71 | /* #define C_SWITCH_MACHINE -20 */ | ||
| 72 | |||
| 73 | /* Use the version of the library for the 68020 | ||
| 74 | because the standard library requires some special hacks in crt0 | ||
| 75 | which the GNU crt0 does not have. */ | ||
| 76 | |||
| 77 | #define LIB_STANDARD -lmc | ||
| 78 | |||
| 79 | /* macros to make unexec work right */ | ||
| 80 | |||
| 81 | #define A_TEXT_OFFSET(HDR) sizeof(HDR) | ||
| 82 | #define A_TEXT_SEEK(HDR) sizeof(HDR) | ||
| 83 | |||
| 84 | /* A few changes for the newer systems. */ | ||
| 85 | |||
| 86 | #ifdef BSD4_3 | ||
| 87 | /* The following line affects crt0.c. */ | ||
| 88 | #undef m68k | ||
| 89 | |||
| 90 | #undef LIB_STANDARD | ||
| 91 | #define LIB_STANDARD -lmc -lc | ||
| 92 | #define C_DEBUG_SWITCH -20 -O -X23 | ||
| 93 | #endif | ||
| 94 | |||
| 95 | /* arch-tag: 3bfb5a11-d94e-4372-923b-9f47d0851f42 | ||
| 96 | (do not change this comment) */ | ||
diff --git a/src/m/mega68.h b/src/m/mega68.h deleted file mode 100644 index 0d22b572fc5..00000000000 --- a/src/m/mega68.h +++ /dev/null | |||
| @@ -1,53 +0,0 @@ | |||
| 1 | /* machine description file for Megatest 68000's. | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* XINT must explicitly sign-extend */ | ||
| 33 | |||
| 34 | #define EXPLICIT_SIGN_EXTEND | ||
| 35 | |||
| 36 | /* Say this machine is a 68000 */ | ||
| 37 | |||
| 38 | #define m68000 | ||
| 39 | |||
| 40 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 41 | |||
| 42 | #define NO_UNION_TYPE | ||
| 43 | |||
| 44 | /* Data type of load average, as read out of kmem. */ | ||
| 45 | |||
| 46 | #define LOAD_AVE_TYPE double | ||
| 47 | |||
| 48 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 49 | |||
| 50 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 51 | |||
| 52 | /* arch-tag: 61e6deb4-a93e-444b-bbd5-9887a83f1bbc | ||
| 53 | (do not change this comment) */ | ||
diff --git a/src/m/mg1.h b/src/m/mg1.h deleted file mode 100644 index 515e9e23a96..00000000000 --- a/src/m/mg1.h +++ /dev/null | |||
| @@ -1,107 +0,0 @@ | |||
| 1 | /* machine description file for Whitechapel Computer Works MG1 (ns16000 based). | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | MG-1 version by L.M.McLoughlin | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | /* The following line tells the configuration script what sort of | ||
| 25 | operating system this machine is likely to run. | ||
| 26 | USUAL-OPSYS="note" | ||
| 27 | |||
| 28 | NOTE-START | ||
| 29 | We are in the dark about what operating system runs on the Whitechapel | ||
| 30 | systems. Consult share-lib/MACHINES for information on which | ||
| 31 | operating systems Emacs has already been ported to; one of them might | ||
| 32 | work. If you find an existing system name that works or write your | ||
| 33 | own configuration files, please let the Free Software Foundation in on | ||
| 34 | your work; we'd like to distribute this information. | ||
| 35 | NOTE-END */ | ||
| 36 | |||
| 37 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 38 | is the most significant byte. */ | ||
| 39 | |||
| 40 | #undef WORDS_BIG_ENDIAN | ||
| 41 | |||
| 42 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 43 | * group of arguments and treat it as an array of the arguments. */ | ||
| 44 | /* ns16000 call sequence used on mg1 means that &arg = the args as an array */ | ||
| 45 | #undef NO_ARG_ARRAY | ||
| 46 | |||
| 47 | /* Define WORD_MACHINE if addresses and such have | ||
| 48 | * to be corrected before they can be used as byte counts. */ | ||
| 49 | /* ns16000 addresses are byte addresses */ | ||
| 50 | #undef WORD_MACHINE | ||
| 51 | |||
| 52 | /* Now define a symbol for the cpu type, if your compiler | ||
| 53 | does not define it automatically: | ||
| 54 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 55 | are the ones defined so far. */ | ||
| 56 | /* Say this machine is a 16000 and an mg1, cpp says its a 32000 */ | ||
| 57 | #define ns16000 | ||
| 58 | #define mg1 | ||
| 59 | |||
| 60 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 61 | /* This is desirable for most machines. */ | ||
| 62 | /* Not sure on mg-1 but this shouldn't hurt! */ | ||
| 63 | #define NO_UNION_TYPE | ||
| 64 | |||
| 65 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 66 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 67 | are always unsigned. | ||
| 68 | |||
| 69 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 70 | |||
| 71 | #define EXPLICIT_SIGN_EXTEND | ||
| 72 | |||
| 73 | /* Data type of load average, as read out of kmem. */ | ||
| 74 | /* mg1 its an unsigned long */ | ||
| 75 | #define LOAD_AVE_TYPE unsigned long | ||
| 76 | |||
| 77 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 78 | #define FSCALE 1000.0 | ||
| 79 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 80 | |||
| 81 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 82 | Then the function dump-emacs will not be defined | ||
| 83 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 84 | /* ns16000's have an unexec, so should the mg-1 */ | ||
| 85 | #undef CANNOT_DUMP | ||
| 86 | |||
| 87 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 88 | pure and impure space as loaded can vary, and even their | ||
| 89 | relative order cannot be relied on. | ||
| 90 | |||
| 91 | Otherwise Emacs assumes that text space precedes data space, | ||
| 92 | numerically. */ | ||
| 93 | /* hmmmm... not sure. copied sequent.h */ | ||
| 94 | #undef VIRT_ADDR_VARIES | ||
| 95 | |||
| 96 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 97 | to change the boundary between the text section and data section | ||
| 98 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 99 | code will not be sharable; but that's better than failing completely. */ | ||
| 100 | /* mapping seems screwy */ | ||
| 101 | #define NO_REMAP | ||
| 102 | |||
| 103 | /* Avoids a compiler bug */ | ||
| 104 | /* borrowed from sequent.h */ | ||
| 105 | |||
| 106 | /* arch-tag: e15d9072-9e1a-44bf-8add-966be535967b | ||
| 107 | (do not change this comment) */ | ||
diff --git a/src/m/news-r6.h b/src/m/news-r6.h deleted file mode 100644 index cf6e019fd05..00000000000 --- a/src/m/news-r6.h +++ /dev/null | |||
| @@ -1,53 +0,0 @@ | |||
| 1 | /* news-risc6.h is for the "RISC News", OS version 6. */ | ||
| 2 | /* This is in the public domain. */ | ||
| 3 | |||
| 4 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 5 | * group of arguments and treat it as an array of the arguments. */ | ||
| 6 | |||
| 7 | #define NO_ARG_ARRAY | ||
| 8 | |||
| 9 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 10 | /* This is desirable for most machines. */ | ||
| 11 | |||
| 12 | #define NO_UNION_TYPE | ||
| 13 | |||
| 14 | /* Data type of load average, as read out of kmem. */ | ||
| 15 | |||
| 16 | #define LOAD_AVE_TYPE long | ||
| 17 | |||
| 18 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 19 | |||
| 20 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / 256.0) | ||
| 21 | |||
| 22 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 23 | to change the boundary between the text section and data section | ||
| 24 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 25 | code will not be sharable; but that's better than failing completely. */ | ||
| 26 | |||
| 27 | #define NO_REMAP | ||
| 28 | |||
| 29 | /* Alter some of the options used when linking. */ | ||
| 30 | |||
| 31 | /*#define C_DEBUG_SWITCH -g*/ | ||
| 32 | #define C_DEBUG_SWITCH -O -Olimit 2000 | ||
| 33 | #ifdef __GNUC__ | ||
| 34 | #define LD_SWITCH_MACHINE -g -Xlinker -D -Xlinker 800000 | ||
| 35 | #else /* !__GNUC__ */ | ||
| 36 | /*#define LD_SWITCH_MACHINE -D 800000 -g*/ | ||
| 37 | #define LD_SWITCH_MACHINE -D 800000 | ||
| 38 | #endif /* !__GNUC__ */ | ||
| 39 | #define LIBS_MACHINE -lmld | ||
| 40 | #define LIBS_TERMCAP -lcurses | ||
| 41 | |||
| 42 | /* The standard definitions of these macros would work ok, | ||
| 43 | but these are faster because the constants are short. */ | ||
| 44 | |||
| 45 | #define XUINT(a) (((unsigned)(a) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS)) | ||
| 46 | |||
| 47 | #define XSET(var, type, ptr) \ | ||
| 48 | ((var) = \ | ||
| 49 | ((int)(type) << VALBITS) \ | ||
| 50 | + (((unsigned) (ptr) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS))) | ||
| 51 | |||
| 52 | /* arch-tag: b9fd7b75-ba3c-46d4-8966-24381b13001b | ||
| 53 | (do not change this comment) */ | ||
diff --git a/src/m/news-risc.h b/src/m/news-risc.h deleted file mode 100644 index b7ea3dbceff..00000000000 --- a/src/m/news-risc.h +++ /dev/null | |||
| @@ -1,83 +0,0 @@ | |||
| 1 | /* news-risc.h is for the "RISC News". | ||
| 2 | |||
| 3 | Copyright (C) 1992, 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 4 | 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | #include "mips.h" | ||
| 25 | |||
| 26 | #ifdef NEWSOS5 | ||
| 27 | |||
| 28 | /* NEWS-OS 5.0.2 */ | ||
| 29 | |||
| 30 | #define LIBS_MACHINE -lmld | ||
| 31 | |||
| 32 | #ifdef __GNUC__ | ||
| 33 | #define LD_SWITCH_MACHINE -g -Xlinker -D -Xlinker 800000 | ||
| 34 | #else | ||
| 35 | #define C_DEBUG_SWITCH -g3 | ||
| 36 | #define C_OPTIMIZE_SWITCH -g3 | ||
| 37 | #define LD_SWITCH_MACHINE -g3 -D 800000 -non_shared | ||
| 38 | #endif | ||
| 39 | |||
| 40 | #else /* not NEWSOS5 */ | ||
| 41 | |||
| 42 | /* The following line tells the configuration script what sort of | ||
| 43 | operating system this machine is likely to run. | ||
| 44 | USUAL-OPSYS="bsd4-3" */ | ||
| 45 | |||
| 46 | #define COFF | ||
| 47 | #undef LD_SWITCH_MACHINE | ||
| 48 | #ifdef __GNUC__ | ||
| 49 | #define LD_SWITCH_MACHINE -Xlinker -x -Xlinker -D -Xlinker 800000 | ||
| 50 | #else | ||
| 51 | #define LD_SWITCH_MACHINE -x -D 800000 | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* #define C_OPTIMIZE_SWITCH -O2 */ | ||
| 55 | #define C_OPTIMIZE_SWITCH -O | ||
| 56 | |||
| 57 | #ifndef __GNUC__ | ||
| 58 | #define C_DEBUG_SWITCH -g3 | ||
| 59 | #endif | ||
| 60 | |||
| 61 | #undef TERMINFO | ||
| 62 | |||
| 63 | /* We have no mode_t. */ | ||
| 64 | #define NO_MODE_T | ||
| 65 | |||
| 66 | /* Don't use the definitions in m/mips.h. */ | ||
| 67 | #undef LINKER | ||
| 68 | #define LINKER $(CC) -nostdlib | ||
| 69 | #undef LIBS_MACHINE | ||
| 70 | #define LIBS_MACHINE -lmld | ||
| 71 | |||
| 72 | #undef KERNEL_FILE | ||
| 73 | #define KERNEL_FILE "/vmunix" | ||
| 74 | |||
| 75 | /* System's malloc, realloc, calloc and so on have bad prototypes, | ||
| 76 | using char * instead of void *, so tell gmalloc not to use the | ||
| 77 | prototypes. */ | ||
| 78 | #define BROKEN_PROTOTYPES | ||
| 79 | |||
| 80 | #endif /* not NEWSOS5 */ | ||
| 81 | |||
| 82 | /* arch-tag: cf17300c-dd34-4b9d-a657-2de718469662 | ||
| 83 | (do not change this comment) */ | ||
diff --git a/src/m/news.h b/src/m/news.h deleted file mode 100644 index 084c5abb92c..00000000000 --- a/src/m/news.h +++ /dev/null | |||
| @@ -1,65 +0,0 @@ | |||
| 1 | /* machine description file for Sony's NEWS workstations, NEWS-OS 3.0. | ||
| 2 | Copyright (C) 1985, 1986, 1989, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="note" | ||
| 26 | |||
| 27 | NOTE-START | ||
| 28 | Use -opsystem=bsd4-2, or -opsystem=bsd4-3 for system release 3. | ||
| 29 | NOTE-END */ | ||
| 30 | |||
| 31 | /* Say this machine is a 68000 */ | ||
| 32 | |||
| 33 | #ifndef m68000 | ||
| 34 | #define m68000 | ||
| 35 | #endif | ||
| 36 | |||
| 37 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 38 | is the most significant byte. */ | ||
| 39 | |||
| 40 | #define WORDS_BIG_ENDIAN | ||
| 41 | |||
| 42 | /* One CRT0 Dummy variable */ | ||
| 43 | |||
| 44 | #if 0 /* larry@mitra.com says Sony's as doesn't like this. */ | ||
| 45 | #define CRT0_DUMMIES one_dummy, | ||
| 46 | #endif | ||
| 47 | |||
| 48 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 49 | |||
| 50 | #define NO_UNION_TYPE | ||
| 51 | |||
| 52 | /* Data type of load average, as read out of kmem. */ | ||
| 53 | |||
| 54 | #define LOAD_AVE_TYPE double | ||
| 55 | |||
| 56 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 57 | |||
| 58 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 59 | |||
| 60 | /* Must use the system's termcap. It does special things. */ | ||
| 61 | |||
| 62 | #define LIBS_TERMCAP -ltermcap | ||
| 63 | |||
| 64 | /* arch-tag: 79bfd831-874a-4339-85fa-b8cbdc29bdab | ||
| 65 | (do not change this comment) */ | ||
diff --git a/src/m/nh3000.h b/src/m/nh3000.h deleted file mode 100644 index e4a9817d57c..00000000000 --- a/src/m/nh3000.h +++ /dev/null | |||
| @@ -1,109 +0,0 @@ | |||
| 1 | /* machine description for Harris Night Hawk Series 1200 and Series 3000 | ||
| 2 | MC68030-based systems (FPP on these is custom). These systems are | ||
| 3 | also known as "ecx" and "gcx". | ||
| 4 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, | ||
| 5 | 2006, 2007 Free Software Foundation, Inc. | ||
| 6 | |||
| 7 | This file is part of GNU Emacs. | ||
| 8 | |||
| 9 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 10 | it under the terms of the GNU General Public License as published by | ||
| 11 | the Free Software Foundation; either version 3, or (at your option) | ||
| 12 | any later version. | ||
| 13 | |||
| 14 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | GNU General Public License for more details. | ||
| 18 | |||
| 19 | You should have received a copy of the GNU General Public License | ||
| 20 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 21 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 22 | Boston, MA 02110-1301, USA. */ | ||
| 23 | |||
| 24 | /* This file manually constructed for Harris Night Hawk 4000 (and 5000) | ||
| 25 | * series Motorola 88100 and 88110 based machines. | ||
| 26 | */ | ||
| 27 | |||
| 28 | /* The following line tells the configuration script what sort of | ||
| 29 | operating system this machine is likely to run. | ||
| 30 | USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #define NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | /* #define WORD_MACHINE */ | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 45 | orion, tahoe, APOLLO and many others */ | ||
| 46 | |||
| 47 | #ifndef gcx | ||
| 48 | #define gcx | ||
| 49 | #endif | ||
| 50 | |||
| 51 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 52 | /* This is desirable for most machines. */ | ||
| 53 | |||
| 54 | #define NO_UNION_TYPE | ||
| 55 | |||
| 56 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 57 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 58 | are always unsigned. | ||
| 59 | |||
| 60 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 61 | |||
| 62 | /* #define EXPLICIT_SIGN_EXTEND */ | ||
| 63 | |||
| 64 | /* Data type of load average, as read out of kmem. */ | ||
| 65 | |||
| 66 | #define LOAD_AVE_TYPE long | ||
| 67 | |||
| 68 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 69 | |||
| 70 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 71 | |||
| 72 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 73 | Then the function dump-emacs will not be defined | ||
| 74 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 75 | |||
| 76 | /* #define CANNOT_DUMP */ | ||
| 77 | |||
| 78 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 79 | pure and impure space as loaded can vary, and even their | ||
| 80 | relative order cannot be relied on. | ||
| 81 | |||
| 82 | Otherwise Emacs assumes that text space precedes data space, | ||
| 83 | numerically. */ | ||
| 84 | |||
| 85 | /* #define VIRT_ADDR_VARIES */ | ||
| 86 | |||
| 87 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 88 | to change the boundary between the text section and data section | ||
| 89 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 90 | code will not be sharable; but that's better than failing completely. */ | ||
| 91 | |||
| 92 | #define NO_REMAP | ||
| 93 | |||
| 94 | /* Some really obscure 4.2-based systems (like Sequent DYNIX) | ||
| 95 | * do not support asynchronous I/O (using SIGIO) on sockets, | ||
| 96 | * even though it works fine on tty's. If you have one of | ||
| 97 | * these systems, define the following, and then use it in | ||
| 98 | * config.h (or elsewhere) to decide when (not) to use SIGIO. | ||
| 99 | * | ||
| 100 | * You'd think this would go in an operating-system description file, | ||
| 101 | * but since it only occurs on some, but not all, BSD systems, the | ||
| 102 | * reasonable place to select for it is in the machine description | ||
| 103 | * file. | ||
| 104 | */ | ||
| 105 | |||
| 106 | /* #define NO_SOCK_SIGIO */ | ||
| 107 | |||
| 108 | /* arch-tag: 1529f2bc-50d9-42e7-ae72-6f40afadf09e | ||
| 109 | (do not change this comment) */ | ||
diff --git a/src/m/nh4000.h b/src/m/nh4000.h deleted file mode 100644 index 20fadb71e43..00000000000 --- a/src/m/nh4000.h +++ /dev/null | |||
| @@ -1,108 +0,0 @@ | |||
| 1 | /* machine description for Harris NightHawk 88k based machines | ||
| 2 | (includes nh4000 and nh5000 machines). | ||
| 3 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, | ||
| 4 | 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | /* This file manually constructed for Harris Night Hawk 4000 (and 5000) | ||
| 24 | * series Motorola 88100 and 88110 based machines. | ||
| 25 | */ | ||
| 26 | |||
| 27 | /* The following line tells the configuration script what sort of | ||
| 28 | operating system this machine is likely to run. | ||
| 29 | USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ | ||
| 30 | |||
| 31 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 32 | * group of arguments and treat it as an array of the arguments. */ | ||
| 33 | |||
| 34 | #define NO_ARG_ARRAY | ||
| 35 | |||
| 36 | /* Define WORD_MACHINE if addresses and such have | ||
| 37 | * to be corrected before they can be used as byte counts. */ | ||
| 38 | |||
| 39 | /* #define WORD_MACHINE */ | ||
| 40 | |||
| 41 | /* Now define a symbol for the cpu type, if your compiler | ||
| 42 | does not define it automatically: | ||
| 43 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 44 | orion, tahoe, APOLLO and many others */ | ||
| 45 | |||
| 46 | #ifndef m88000 | ||
| 47 | #define m88000 | ||
| 48 | #endif | ||
| 49 | |||
| 50 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 51 | /* This is desirable for most machines. */ | ||
| 52 | |||
| 53 | #define NO_UNION_TYPE | ||
| 54 | |||
| 55 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 56 | the bit field into an int. In other words, if bit fields | ||
| 57 | are always unsigned. | ||
| 58 | |||
| 59 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 60 | |||
| 61 | /* #define EXPLICIT_SIGN_EXTEND */ | ||
| 62 | |||
| 63 | /* Data type of load average, as read out of kmem. */ | ||
| 64 | |||
| 65 | #define LOAD_AVE_TYPE long | ||
| 66 | |||
| 67 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 68 | |||
| 69 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 70 | |||
| 71 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 72 | Then the function dump-emacs will not be defined | ||
| 73 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 74 | |||
| 75 | /* #define CANNOT_DUMP */ | ||
| 76 | |||
| 77 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 78 | pure and impure space as loaded can vary, and even their | ||
| 79 | relative order cannot be relied on. | ||
| 80 | |||
| 81 | Otherwise Emacs assumes that text space precedes data space, | ||
| 82 | numerically. */ | ||
| 83 | |||
| 84 | /* #define VIRT_ADDR_VARIES */ | ||
| 85 | |||
| 86 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 87 | to change the boundary between the text section and data section | ||
| 88 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 89 | code will not be sharable; but that's better than failing completely. */ | ||
| 90 | |||
| 91 | #define NO_REMAP | ||
| 92 | |||
| 93 | /* Some really obscure 4.2-based systems (like Sequent DYNIX) | ||
| 94 | * do not support asynchronous I/O (using SIGIO) on sockets, | ||
| 95 | * even though it works fine on tty's. If you have one of | ||
| 96 | * these systems, define the following, and then use it in | ||
| 97 | * config.h (or elsewhere) to decide when (not) to use SIGIO. | ||
| 98 | * | ||
| 99 | * You'd think this would go in an operating-system description file, | ||
| 100 | * but since it only occurs on some, but not all, BSD systems, the | ||
| 101 | * reasonable place to select for it is in the machine description | ||
| 102 | * file. | ||
| 103 | */ | ||
| 104 | |||
| 105 | /* #define NO_SOCK_SIGIO */ | ||
| 106 | |||
| 107 | /* arch-tag: d9e12769-ae79-4c25-953f-70db5b7ef5dd | ||
| 108 | (do not change this comment) */ | ||
diff --git a/src/m/ns16000.h b/src/m/ns16000.h deleted file mode 100644 index 6feddd97610..00000000000 --- a/src/m/ns16000.h +++ /dev/null | |||
| @@ -1,95 +0,0 @@ | |||
| 1 | /* machine description file for ns16000. | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="note" | ||
| 26 | |||
| 27 | NOTE-START | ||
| 28 | For the Encore, use `-opsystem=umax'. | ||
| 29 | For a Tektronix 16000 box (a 6130, perhaps?), use `-opsystem=bsd4-2'. | ||
| 30 | Use `-machine=ns16000' for both. | ||
| 31 | NOTE-END */ | ||
| 32 | |||
| 33 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 34 | is the most significant byte. */ | ||
| 35 | |||
| 36 | #undef WORDS_BIG_ENDIAN | ||
| 37 | |||
| 38 | /* Say this machine is a 16000 */ | ||
| 39 | |||
| 40 | #define ns16000 1 | ||
| 41 | |||
| 42 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 43 | |||
| 44 | #define NO_UNION_TYPE | ||
| 45 | |||
| 46 | /* Data type of load average, as read out of kmem. */ | ||
| 47 | |||
| 48 | #ifndef USG | ||
| 49 | #define LOAD_AVE_TYPE double | ||
| 50 | #endif | ||
| 51 | |||
| 52 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 53 | |||
| 54 | #ifndef USG | ||
| 55 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 56 | #endif | ||
| 57 | |||
| 58 | #ifdef USG | ||
| 59 | |||
| 60 | /* Control assembler syntax used in alloca.s. */ | ||
| 61 | #define NS5 | ||
| 62 | |||
| 63 | /* On early NS systems ulimit was buggy. If set emacs uses this value | ||
| 64 | * for the maximum sbrk value instead of getting it from ulimit. | ||
| 65 | */ | ||
| 66 | #define ULIMIT_BREAK_VALUE 0x7E0000 | ||
| 67 | |||
| 68 | /* Early NS compilers have this bug. I believe it has been fixed in later | ||
| 69 | * releases. | ||
| 70 | */ | ||
| 71 | #define SHORT_CAST_BUG | ||
| 72 | |||
| 73 | #define SEGMENT_MASK (NBPS - 1) | ||
| 74 | |||
| 75 | /* Variables to get crt0.c to come out correctly */ | ||
| 76 | #define CRT0_DUMMIES bogus_fp, | ||
| 77 | #define DOT_GLOBAL_START | ||
| 78 | |||
| 79 | /* Control how emacsclient communicates. */ | ||
| 80 | #define HAVE_SYSVIPC | ||
| 81 | |||
| 82 | /* Set this to /bin/mail unless you have a better mail posting program */ | ||
| 83 | #define MAIL_PROGRAM_NAME "/usr/local/bin/remail" | ||
| 84 | |||
| 85 | /* Tell sysdep.c not to define bzero, etc. */ | ||
| 86 | #undef BSTRING | ||
| 87 | #define BSTRING | ||
| 88 | |||
| 89 | /* This avoids problems with uninitialized static variables going in .data. */ | ||
| 90 | #define static | ||
| 91 | |||
| 92 | #endif /* USG */ | ||
| 93 | |||
| 94 | /* arch-tag: 4210db3c-e35c-4b96-9399-1dbde3e00a57 | ||
| 95 | (do not change this comment) */ | ||
diff --git a/src/m/ns32000.h b/src/m/ns32000.h deleted file mode 100644 index b6484b4b219..00000000000 --- a/src/m/ns32000.h +++ /dev/null | |||
| @@ -1,102 +0,0 @@ | |||
| 1 | /* machine description file for National Semiconductor 32000, running Genix. | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | |||
| 24 | /* The following line tells the configuration script what sort of | ||
| 25 | operating system this machine is likely to run. | ||
| 26 | USUAL-OPSYS="usg5-2" */ | ||
| 27 | |||
| 28 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 29 | is the most significant byte. */ | ||
| 30 | |||
| 31 | #undef WORDS_BIG_ENDIAN | ||
| 32 | |||
| 33 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 34 | * group of arguments and treat it as an array of the arguments. */ | ||
| 35 | |||
| 36 | /* #define NO_ARG_ARRAY */ | ||
| 37 | |||
| 38 | /* Define WORD_MACHINE if addresses and such have | ||
| 39 | * to be corrected before they can be used as byte counts. */ | ||
| 40 | |||
| 41 | /* #define WORD_MACHINE */ | ||
| 42 | |||
| 43 | /* Now define a symbol for the cpu type, if your compiler | ||
| 44 | does not define it automatically: | ||
| 45 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 46 | orion, tahoe, APOLLO and many others */ | ||
| 47 | |||
| 48 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 49 | /* This is desirable for most machines. */ | ||
| 50 | |||
| 51 | #define NO_UNION_TYPE | ||
| 52 | |||
| 53 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 54 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 55 | are always unsigned. | ||
| 56 | |||
| 57 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 58 | |||
| 59 | #define EXPLICIT_SIGN_EXTEND | ||
| 60 | |||
| 61 | /* Data type of load average, as read out of kmem. */ | ||
| 62 | |||
| 63 | /* #define LOAD_AVE_TYPE long */ | ||
| 64 | |||
| 65 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 66 | |||
| 67 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */ | ||
| 68 | |||
| 69 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 70 | Then the function dump-emacs will not be defined | ||
| 71 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 72 | |||
| 73 | /* #define CANNOT_DUMP */ | ||
| 74 | |||
| 75 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 76 | pure and impure space as loaded can vary, and even their | ||
| 77 | relative order cannot be relied on. | ||
| 78 | |||
| 79 | Otherwise Emacs assumes that text space precedes data space, | ||
| 80 | numerically. */ | ||
| 81 | |||
| 82 | /* #define VIRT_ADDR_VARIES */ | ||
| 83 | |||
| 84 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 85 | to change the boundary between the text section and data section | ||
| 86 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 87 | code will not be sharable; but that's better than failing completely. */ | ||
| 88 | |||
| 89 | /* #define NO_REMAP */ | ||
| 90 | |||
| 91 | #define TEXT_START 0 | ||
| 92 | |||
| 93 | #if !defined (__NetBSD__) && !defined (__OpenBSD__) | ||
| 94 | #define EXEC_MAGIC 0410 | ||
| 95 | |||
| 96 | #define PURESIZE 140000 | ||
| 97 | |||
| 98 | #define START_FILES pre-crt0.o /lib/crt0.o | ||
| 99 | #endif | ||
| 100 | |||
| 101 | /* arch-tag: 13dde0e0-8ed5-4bc3-a0dc-5456c9db5f94 | ||
| 102 | (do not change this comment) */ | ||
diff --git a/src/m/nu.h b/src/m/nu.h deleted file mode 100644 index 279d14ff915..00000000000 --- a/src/m/nu.h +++ /dev/null | |||
| @@ -1,75 +0,0 @@ | |||
| 1 | /* machine description file for TI Nu machines using system V. | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* XINT must explicitly sign-extend */ | ||
| 33 | |||
| 34 | #define EXPLICIT_SIGN_EXTEND | ||
| 35 | |||
| 36 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 37 | |||
| 38 | #define NO_UNION_TYPE | ||
| 39 | |||
| 40 | /* Now define a symbol for the cpu type, if your compiler | ||
| 41 | does not define it automatically: | ||
| 42 | vax, m68000, ns16000 are the ones defined so far. */ | ||
| 43 | |||
| 44 | #ifndef m68000 | ||
| 45 | #define m68000 | ||
| 46 | #endif | ||
| 47 | |||
| 48 | #ifndef NU | ||
| 49 | #define NU | ||
| 50 | #endif | ||
| 51 | |||
| 52 | /* Data type of load average, as read out of kmem. */ | ||
| 53 | /* These are commented out since it does not really work in uniplus */ | ||
| 54 | |||
| 55 | /* #define LOAD_AVE_TYPE long */ | ||
| 56 | |||
| 57 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 58 | |||
| 59 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) */ | ||
| 60 | |||
| 61 | /* Change some things to avoid bugs in compiler */ | ||
| 62 | |||
| 63 | #define SWITCH_ENUM_BUG 1 | ||
| 64 | |||
| 65 | /* The NU machine has a compiler that can handle long names. */ | ||
| 66 | |||
| 67 | #undef SHORTNAMES | ||
| 68 | |||
| 69 | /* Specify alignment requirement for start of text and data sections | ||
| 70 | in the executable file. */ | ||
| 71 | |||
| 72 | #define SECTION_ALIGNMENT pagemask | ||
| 73 | |||
| 74 | /* arch-tag: 7d2d9b6d-75d4-4c0d-96a9-a41f06212f35 | ||
| 75 | (do not change this comment) */ | ||
diff --git a/src/m/orion.h b/src/m/orion.h deleted file mode 100644 index cc3a7e395fc..00000000000 --- a/src/m/orion.h +++ /dev/null | |||
| @@ -1,70 +0,0 @@ | |||
| 1 | /* machine description file for HLH Orion. | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #undef WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Now define a symbol for the cpu type, if your compiler | ||
| 33 | does not define it automatically. */ | ||
| 34 | |||
| 35 | #ifndef orion | ||
| 36 | #define orion | ||
| 37 | #endif | ||
| 38 | |||
| 39 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 40 | * group of arguments and treat it as an array of the arguments. */ | ||
| 41 | |||
| 42 | #define NO_ARG_ARRAY | ||
| 43 | |||
| 44 | /* Define WORD_MACHINE if addresses and such have | ||
| 45 | * to be corrected before they can be used as byte counts. */ | ||
| 46 | |||
| 47 | #define WORD_MACHINE | ||
| 48 | |||
| 49 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 50 | /* This is desirable for most machines. */ | ||
| 51 | |||
| 52 | #define NO_UNION_TYPE | ||
| 53 | |||
| 54 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend */ | ||
| 55 | |||
| 56 | #define EXPLICIT_SIGN_EXTEND | ||
| 57 | |||
| 58 | /* Data type of load average, as read out of kmem. */ | ||
| 59 | |||
| 60 | #define LOAD_AVE_TYPE double | ||
| 61 | |||
| 62 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 63 | |||
| 64 | #ifndef FSCALE | ||
| 65 | #define FSCALE 1.0 | ||
| 66 | #endif | ||
| 67 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 68 | |||
| 69 | /* arch-tag: 4fcf38ad-d6b0-434b-bc10-16647d5a7fb6 | ||
| 70 | (do not change this comment) */ | ||
diff --git a/src/m/orion105.h b/src/m/orion105.h deleted file mode 100644 index fabcf67e2a9..00000000000 --- a/src/m/orion105.h +++ /dev/null | |||
| @@ -1,72 +0,0 @@ | |||
| 1 | /* machine description file for HLH Orion 1/05 (Clipper). | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | Lee McLoughlin <lmjm%doc.imperial.ac.uk@nss.cs.ucl.ac.uk> | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | /* The following line tells the configuration script what sort of | ||
| 25 | operating system this machine is likely to run. | ||
| 26 | USUAL-OPSYS="bsd4-2" */ | ||
| 27 | |||
| 28 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 29 | is the most significant byte. */ | ||
| 30 | |||
| 31 | #undef WORDS_BIG_ENDIAN | ||
| 32 | |||
| 33 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 34 | * group of arguments and treat it as an array of the arguments. */ | ||
| 35 | |||
| 36 | #define NO_ARG_ARRAY | ||
| 37 | |||
| 38 | /* Define WORD_MACHINE if addresses and such have | ||
| 39 | * to be corrected before they can be used as byte counts. */ | ||
| 40 | |||
| 41 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 42 | /* This is desirable for most machines. */ | ||
| 43 | |||
| 44 | #define NO_UNION_TYPE | ||
| 45 | |||
| 46 | /* Data type of load average, as read out of kmem. */ | ||
| 47 | /* This used to be `double'. */ | ||
| 48 | |||
| 49 | #define LOAD_AVE_TYPE long | ||
| 50 | |||
| 51 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 52 | |||
| 53 | /* This used to be 1.0. */ | ||
| 54 | #ifndef FSCALE | ||
| 55 | #define FSCALE 256 | ||
| 56 | #endif | ||
| 57 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 58 | |||
| 59 | /* HLH have a SIGWINCH defined (but unimplemented) so we need a sigmask */ | ||
| 60 | #ifndef sigmask | ||
| 61 | #define sigmask(m) (1 << ((m) - 1)) | ||
| 62 | #endif | ||
| 63 | |||
| 64 | /* Here is where programs actually start running */ | ||
| 65 | #define TEXT_START 0x8000 | ||
| 66 | #define LD_TEXT_START_ADDR 8000 | ||
| 67 | |||
| 68 | /* Arguments to ignore before argc in crt0.c. */ | ||
| 69 | #define DUMMIES dummy1, dummy2, | ||
| 70 | |||
| 71 | /* arch-tag: 32fed6e3-8cae-4882-b327-a68c2af6db7a | ||
| 72 | (do not change this comment) */ | ||
diff --git a/src/m/paragon.h b/src/m/paragon.h deleted file mode 100644 index 11b98dea7ee..00000000000 --- a/src/m/paragon.h +++ /dev/null | |||
| @@ -1,13 +0,0 @@ | |||
| 1 | /* m/ file for Paragon i860 machine. */ | ||
| 2 | |||
| 3 | #include "i860.h" | ||
| 4 | #define COFF | ||
| 5 | #define SYSTEM_MALLOC | ||
| 6 | #define TEXT_START 0x10000 | ||
| 7 | #define LIB_STANDARD -lc -lic -lmach | ||
| 8 | #define KEEP_OLD_TEXT_SCNPTR | ||
| 9 | #define KEEP_OLD_PADDR | ||
| 10 | #define drem fmod | ||
| 11 | |||
| 12 | /* arch-tag: c1bc280c-25e5-4993-9b91-333c52ab3674 | ||
| 13 | (do not change this comment) */ | ||
diff --git a/src/m/pfa50.h b/src/m/pfa50.h deleted file mode 100644 index 5f98dc993c7..00000000000 --- a/src/m/pfa50.h +++ /dev/null | |||
| @@ -1,93 +0,0 @@ | |||
| 1 | /* Machine description file for PFU A-series. | ||
| 2 | Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 24 | is the most significant byte. */ | ||
| 25 | |||
| 26 | #define WORDS_BIG_ENDIAN | ||
| 27 | |||
| 28 | /* Say this machine is a 68000 */ | ||
| 29 | |||
| 30 | #define m68000 | ||
| 31 | #define mc68000 1 | ||
| 32 | |||
| 33 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 34 | |||
| 35 | #define NO_UNION_TYPE | ||
| 36 | |||
| 37 | /* XINT must explicitly sign-extend */ | ||
| 38 | |||
| 39 | #define EXPLICIT_SIGN_EXTEND | ||
| 40 | |||
| 41 | /* The symbol FIONREAD is defined, but the feature does not work. */ | ||
| 42 | |||
| 43 | #define BROKEN_FIONREAD | ||
| 44 | |||
| 45 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 46 | to change the boundary between the text section and data section | ||
| 47 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 48 | code will not be sharable; but that's better than failing completely. */ | ||
| 49 | |||
| 50 | #define NO_REMAP | ||
| 51 | |||
| 52 | /* Define TEXT_START_ADDR if your linker don't set execute point to _start. | ||
| 53 | If it needed, temacs always CORE-DUMP. */ | ||
| 54 | |||
| 55 | #define TEXT_START_ADDR __start | ||
| 56 | |||
| 57 | /* Define START_FILES if your machine used _start. | ||
| 58 | */ | ||
| 59 | |||
| 60 | #define START_FILES crt0.o | ||
| 61 | |||
| 62 | /* Define LD_SWITCH_MACHINE if your linker needs it. | ||
| 63 | */ | ||
| 64 | |||
| 65 | #define LD_SWITCH_MACHINE -e __start | ||
| 66 | |||
| 67 | #if pfa50 || pfa70 | ||
| 68 | /* On A-50/60/70/80, data space has high order byte use. */ | ||
| 69 | #define DATA_SEG_BITS 0x60000000 | ||
| 70 | #endif /* pfa50, pfa70 */ | ||
| 71 | |||
| 72 | /* SX/A has alloca in the PW library. */ | ||
| 73 | |||
| 74 | #define LIB_STANDARD -lPW -lc | ||
| 75 | |||
| 76 | /* SX/A uses terminfo and lib/curses */ | ||
| 77 | |||
| 78 | #define TERMINFO | ||
| 79 | |||
| 80 | #define HAVE_PTYS | ||
| 81 | #define HAVE_SOCKETS | ||
| 82 | |||
| 83 | /* SX/A use SystemV style getdents/readdir. */ | ||
| 84 | |||
| 85 | /* SX/A does not have sigblock(2) */ | ||
| 86 | #define sigblock(mask) (0) | ||
| 87 | |||
| 88 | #define NO_SIOCTL_H | ||
| 89 | |||
| 90 | #define BROKEN_SIGIO | ||
| 91 | |||
| 92 | /* arch-tag: f3a127d5-790b-4c78-b6be-837139fb12c4 | ||
| 93 | (do not change this comment) */ | ||
diff --git a/src/m/plexus.h b/src/m/plexus.h deleted file mode 100644 index 51961977904..00000000000 --- a/src/m/plexus.h +++ /dev/null | |||
| @@ -1,109 +0,0 @@ | |||
| 1 | /* machine description file for the Plexus running System V.2. | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #undef NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 45 | are the ones defined so far. */ | ||
| 46 | /* Plexus predefines m68 instead of m68000. */ | ||
| 47 | #define m68000 m68 | ||
| 48 | |||
| 49 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 50 | /* This is desirable for most machines. */ | ||
| 51 | |||
| 52 | #define NO_UNION_TYPE | ||
| 53 | |||
| 54 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 55 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 56 | are always unsigned. | ||
| 57 | |||
| 58 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 59 | |||
| 60 | #undef EXPLICIT_SIGN_EXTEND | ||
| 61 | |||
| 62 | /* Data type of load average, as read out of kmem. */ | ||
| 63 | |||
| 64 | #undef LOAD_AVE_TYPE | ||
| 65 | |||
| 66 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 67 | |||
| 68 | #undef LOAD_AVE_CVT | ||
| 69 | |||
| 70 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 71 | Then the function dump-emacs will not be defined | ||
| 72 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 73 | |||
| 74 | #undef CANNOT_DUMP | ||
| 75 | |||
| 76 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 77 | pure and impure space as loaded can vary, and even their | ||
| 78 | relative order cannot be relied on. | ||
| 79 | |||
| 80 | Otherwise Emacs assumes that text space precedes data space, | ||
| 81 | numerically. */ | ||
| 82 | |||
| 83 | #undef VIRT_ADDR_VARIES | ||
| 84 | |||
| 85 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 86 | to change the boundary between the text section and data section | ||
| 87 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 88 | code will not be sharable; but that's better than failing completely. */ | ||
| 89 | |||
| 90 | #undef NO_REMAP | ||
| 91 | |||
| 92 | /* Use the following on ld so we can use the gnu crt0 | ||
| 93 | The plexus ld looks for start */ | ||
| 94 | #define LD_SWITCH_MACHINE -e __start | ||
| 95 | |||
| 96 | /* Use the PW library, which contains alloca. */ | ||
| 97 | |||
| 98 | #define LIB_STANDARD -lPW -lc | ||
| 99 | |||
| 100 | /* crt0.c should use the vax-bsd style of entry, with no dummy args. */ | ||
| 101 | |||
| 102 | #define CRT0_DUMMIES zero1, zero2, | ||
| 103 | |||
| 104 | /* This triggers some stuff to avoid a compiler bug */ | ||
| 105 | |||
| 106 | #define TAHOE_REGISTER_BUG | ||
| 107 | |||
| 108 | /* arch-tag: 78c607eb-b4f8-4750-b575-39670d979448 | ||
| 109 | (do not change this comment) */ | ||
diff --git a/src/m/pyramid.h b/src/m/pyramid.h deleted file mode 100644 index 1b834c60ba0..00000000000 --- a/src/m/pyramid.h +++ /dev/null | |||
| @@ -1,67 +0,0 @@ | |||
| 1 | /* machine description file for pyramid. | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #ifdef __GNUC__ | ||
| 36 | #define NO_ARG_ARRAY | ||
| 37 | #endif | ||
| 38 | |||
| 39 | /* XINT must explicitly sign extend */ | ||
| 40 | |||
| 41 | #define EXPLICIT_SIGN_EXTEND | ||
| 42 | |||
| 43 | /* pyramid preprocessor defines "pyr", however the following is clearer */ | ||
| 44 | #define pyramid | ||
| 45 | |||
| 46 | /* Don't use the union types any more. They were used until Emacs 17.45. */ | ||
| 47 | |||
| 48 | #define NO_UNION_TYPE | ||
| 49 | |||
| 50 | /* Data type of load average, as read out of kmem. */ | ||
| 51 | |||
| 52 | #define LOAD_AVE_TYPE double | ||
| 53 | |||
| 54 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 55 | |||
| 56 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 57 | |||
| 58 | /* Don't use the ordinary -g for debugging in cc */ | ||
| 59 | |||
| 60 | #define C_DEBUG_SWITCH -gx | ||
| 61 | |||
| 62 | /* Reenable this #define for old versions of the Pyramid system. */ | ||
| 63 | |||
| 64 | /* #define PYRAMID_OLD */ | ||
| 65 | |||
| 66 | /* arch-tag: b9097bc9-92be-46d4-acb1-13c2b966d581 | ||
| 67 | (do not change this comment) */ | ||
diff --git a/src/m/pyrmips.h b/src/m/pyrmips.h deleted file mode 100644 index 67705fb6619..00000000000 --- a/src/m/pyrmips.h +++ /dev/null | |||
| @@ -1,10 +0,0 @@ | |||
| 1 | /* Configuration file for the Pyramid machine that uses the MIPS cpu. */ | ||
| 2 | /* This does not fully work. */ | ||
| 3 | |||
| 4 | #include "m-pyramid.h" | ||
| 5 | |||
| 6 | #define SYSTEM_MALLOC | ||
| 7 | #define CANNOT_DUMP | ||
| 8 | |||
| 9 | /* arch-tag: 82559148-25a8-466d-bbb3-f903f7666b7a | ||
| 10 | (do not change this comment) */ | ||
diff --git a/src/m/sh3el.h b/src/m/sh3el.h deleted file mode 100644 index 77f6dc12c23..00000000000 --- a/src/m/sh3el.h +++ /dev/null | |||
| @@ -1,106 +0,0 @@ | |||
| 1 | /* machine description file for sh3el | ||
| 2 | Copyright (C) 1985, 1986, 2006, 2007 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of GNU Emacs. | ||
| 5 | |||
| 6 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 7 | it under the terms of the GNU General Public License as published by | ||
| 8 | the Free Software Foundation; either version 3, or (at your option) | ||
| 9 | any later version. | ||
| 10 | |||
| 11 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 14 | GNU General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU General Public License | ||
| 17 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 18 | the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | ||
| 19 | Boston, MA 02111-1307, USA. */ | ||
| 20 | |||
| 21 | |||
| 22 | /* The following line tells the configuration script what sort of | ||
| 23 | operating system this machine is likely to run. | ||
| 24 | USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */ | ||
| 25 | |||
| 26 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 27 | is the most significant byte. */ | ||
| 28 | |||
| 29 | #undef WORDS_BIG_ENDIAN | ||
| 30 | |||
| 31 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 32 | * group of arguments and treat it as an array of the arguments. */ | ||
| 33 | |||
| 34 | #define NO_ARG_ARRAY | ||
| 35 | |||
| 36 | /* Define WORD_MACHINE if addresses and such have | ||
| 37 | * to be corrected before they can be used as byte counts. */ | ||
| 38 | |||
| 39 | #undef WORD_MACHINE | ||
| 40 | |||
| 41 | /* Now define a symbol for the cpu type, if your compiler | ||
| 42 | does not define it automatically: | ||
| 43 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 44 | orion, tahoe, APOLLO and many others */ | ||
| 45 | |||
| 46 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 47 | /* This is desirable for most machines. */ | ||
| 48 | |||
| 49 | #define NO_UNION_TYPE | ||
| 50 | |||
| 51 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 52 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 53 | are always unsigned. | ||
| 54 | |||
| 55 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 56 | |||
| 57 | #define EXPLICIT_SIGN_EXTEND | ||
| 58 | |||
| 59 | /* Data type of load average, as read out of kmem. */ | ||
| 60 | |||
| 61 | #define LOAD_AVE_TYPE long | ||
| 62 | |||
| 63 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 64 | |||
| 65 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 66 | |||
| 67 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 68 | Then the function dump-emacs will not be defined | ||
| 69 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 70 | |||
| 71 | #undef CANNOT_DUMP | ||
| 72 | |||
| 73 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 74 | pure and impure space as loaded can vary, and even their | ||
| 75 | relative order cannot be relied on. | ||
| 76 | |||
| 77 | Otherwise Emacs assumes that text space precedes data space, | ||
| 78 | numerically. */ | ||
| 79 | |||
| 80 | #define VIRT_ADDR_VARIES | ||
| 81 | |||
| 82 | /* Define HAVE_ALLOCA to say that the system provides a properly | ||
| 83 | working alloca function and it should be used. | ||
| 84 | Undefine it if an assembler-language alloca | ||
| 85 | in the file alloca.s should be used. */ | ||
| 86 | |||
| 87 | #define HAVE_ALLOCA | ||
| 88 | |||
| 89 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 90 | to change the boundary between the text section and data section | ||
| 91 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 92 | code will not be sharable; but that's better than failing completely. */ | ||
| 93 | |||
| 94 | #define NO_REMAP | ||
| 95 | |||
| 96 | /* After adding support for a new system, modify the large case | ||
| 97 | statement in the `configure' script to recognize reasonable | ||
| 98 | configuration names, and add a description of the system to | ||
| 99 | `etc/MACHINES'. | ||
| 100 | |||
| 101 | If you've just fixed a problem in an existing configuration file, | ||
| 102 | you should also check `etc/MACHINES' to make sure its descriptions | ||
| 103 | of known problems in that configuration should be updated. */ | ||
| 104 | |||
| 105 | /* arch-tag: ee325990-6f40-47a2-b9df-60ecf3599899 | ||
| 106 | (do not change this comment) */ | ||
diff --git a/src/m/sps7.h b/src/m/sps7.h deleted file mode 100644 index 67fc60c1b6a..00000000000 --- a/src/m/sps7.h +++ /dev/null | |||
| @@ -1,118 +0,0 @@ | |||
| 1 | /* machine description file for Bull SPS-7. | ||
| 2 | Copyright (C) 1986, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Say this machine is a 68000 */ | ||
| 33 | |||
| 34 | #ifndef m68000 | ||
| 35 | #define m68000 | ||
| 36 | #endif | ||
| 37 | |||
| 38 | #define sps7 | ||
| 39 | |||
| 40 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 41 | |||
| 42 | #define NO_UNION_TYPE | ||
| 43 | |||
| 44 | /* XINT must explicitly sign-extend */ | ||
| 45 | |||
| 46 | #define EXPLICIT_SIGN_EXTEND | ||
| 47 | |||
| 48 | /* Data type of load average, as read out of kmem. */ | ||
| 49 | /* Suspect there is something weird about this machine, so turn it off. */ | ||
| 50 | |||
| 51 | /* #define LOAD_AVE_TYPE long */ | ||
| 52 | |||
| 53 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 54 | |||
| 55 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) */ | ||
| 56 | |||
| 57 | #define SMX | ||
| 58 | #define V3x | ||
| 59 | |||
| 60 | /* | ||
| 61 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 62 | */ | ||
| 63 | |||
| 64 | #define HAVE_PTYS | ||
| 65 | |||
| 66 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 67 | |||
| 68 | #define HAVE_SOCKETS | ||
| 69 | |||
| 70 | /* Have the socketpair call | ||
| 71 | */ | ||
| 72 | |||
| 73 | #define SKTPAIR | ||
| 74 | |||
| 75 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 76 | so that Emacs can tell instantly when you try to modify | ||
| 77 | a file that someone else has modified in his Emacs. */ | ||
| 78 | |||
| 79 | #define CLASH_DETECTION | ||
| 80 | |||
| 81 | /* Use Berkeley style interface to nlist */ | ||
| 82 | |||
| 83 | #define NLIST_STRUCT | ||
| 84 | |||
| 85 | /* Define this to cause -N to be passed to ld. This is needed | ||
| 86 | * in uniplus because of its funny memory space layout. | ||
| 87 | * SMX--If you are using 32 bit (COFF) use "-N", else don't use anything. | ||
| 88 | */ | ||
| 89 | |||
| 90 | #define LD_SWITCH_MACHINE -N -T32 -e __start | ||
| 91 | |||
| 92 | /* If you are compiling for a 68020, then use -lc32 else use -lc */ | ||
| 93 | |||
| 94 | #define LIB_STANDARD -lc32 | ||
| 95 | |||
| 96 | /* Fore 16 bit, -linet, for 32 bit -linet32 (be sure you have it!). */ | ||
| 97 | |||
| 98 | #define LIBS_MACHINE -linet32 | ||
| 99 | |||
| 100 | /* Use -T32 for 68020, -T16 otherwise */ | ||
| 101 | |||
| 102 | #define C_SWITCH_MACHINE -T32 | ||
| 103 | |||
| 104 | #define BROKEN_SIGIO | ||
| 105 | |||
| 106 | /* Other than 68020 use ld16, as32, or undefine (defaults ld and as). */ | ||
| 107 | |||
| 108 | #define ASS as32 | ||
| 109 | |||
| 110 | #ifdef V3x | ||
| 111 | #define EXEC_MAGIC 0x10b | ||
| 112 | #define SEGMENT_MASK (NBPS-1) | ||
| 113 | #define ADJUST_EXEC_HEADER f_hdr.f_magic = SMROMAGIC;\ | ||
| 114 | f_ohdr.stsize = 0; | ||
| 115 | #endif | ||
| 116 | |||
| 117 | /* arch-tag: 2240f71c-6f3b-4a82-80fc-4d56c682d7ad | ||
| 118 | (do not change this comment) */ | ||
diff --git a/src/m/sr2k.h b/src/m/sr2k.h deleted file mode 100644 index 6c17795e058..00000000000 --- a/src/m/sr2k.h +++ /dev/null | |||
| @@ -1,160 +0,0 @@ | |||
| 1 | /* machine description file for Hitachi SR2001/SR2201 machines. | ||
| 2 | Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="hpux" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #define NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 45 | orion, tahoe, APOLLO and many others */ | ||
| 46 | #ifndef hp9000s800 | ||
| 47 | # define hp9000s800 | ||
| 48 | #endif | ||
| 49 | |||
| 50 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 51 | /* This is desirable for most machines. */ | ||
| 52 | |||
| 53 | #define NO_UNION_TYPE | ||
| 54 | |||
| 55 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 56 | the bit field into an int. In other words, if bit fields | ||
| 57 | are always unsigned. | ||
| 58 | |||
| 59 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 60 | |||
| 61 | #define EXPLICIT_SIGN_EXTEND | ||
| 62 | |||
| 63 | /* The standard definitions of these macros would work ok, | ||
| 64 | but these are faster because the constants are short. */ | ||
| 65 | |||
| 66 | |||
| 67 | #define XUINT(a) (((unsigned)(a) << BITS_PER_INT-VALBITS) >> BITS_PER_INT-VALBITS) | ||
| 68 | |||
| 69 | #define XSET(var, type, ptr) \ | ||
| 70 | ((var) = ((int)(type) << VALBITS) + (((unsigned) (ptr) << BITS_PER_INT-VALBITS) >> BITS_PER_INT-VALBITS)) | ||
| 71 | |||
| 72 | /* #ifdef __hpux */ | ||
| 73 | /* Now define a symbol for the cpu type, if your compiler | ||
| 74 | does not define it automatically: | ||
| 75 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 76 | orion, tahoe, APOLLO and many others */ | ||
| 77 | |||
| 78 | #ifndef hp9000s800 | ||
| 79 | # define hp9000s800 | ||
| 80 | #endif | ||
| 81 | |||
| 82 | |||
| 83 | /* Data type of load average, as read out of kmem. */ | ||
| 84 | |||
| 85 | #define LOAD_AVE_TYPE double | ||
| 86 | |||
| 87 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 88 | |||
| 89 | #define LOAD_AVE_CVT(x) ((int) (x * 100.0)) | ||
| 90 | |||
| 91 | |||
| 92 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 93 | Then the function dump-emacs will not be defined | ||
| 94 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 95 | |||
| 96 | #undef CANNOT_DUMP | ||
| 97 | |||
| 98 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 99 | pure and impure space as loaded can vary, and even their | ||
| 100 | relative order cannot be relied on. | ||
| 101 | |||
| 102 | Otherwise Emacs assumes that text space precedes data space, | ||
| 103 | numerically. */ | ||
| 104 | |||
| 105 | #define VIRT_ADDR_VARIES | ||
| 106 | |||
| 107 | /* the data segment on this machine always starts at address 0x40000000. */ | ||
| 108 | |||
| 109 | #define DATA_SEG_BITS 0x40000000 | ||
| 110 | |||
| 111 | #define DATA_START 0x40000000 | ||
| 112 | #define TEXT_START 0x00000000 | ||
| 113 | |||
| 114 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 115 | to change the boundary between the text section and data section | ||
| 116 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 117 | code will not be sharable; but that's better than failing completely. */ | ||
| 118 | |||
| 119 | #define NO_REMAP | ||
| 120 | |||
| 121 | /* This machine requires completely different unexec code | ||
| 122 | which lives in a separate file. Specify the file name. */ | ||
| 123 | |||
| 124 | #define UNEXEC unexhp9k800.o | ||
| 125 | |||
| 126 | #define LIBS_MACHINE | ||
| 127 | #define LIBS_DEBUG | ||
| 128 | |||
| 129 | /* Include the file bsdtty.h, since this machine has job control. */ | ||
| 130 | /* #define NEED_BSDTTY */ | ||
| 131 | |||
| 132 | /* The symbol in the kernel where the load average is found | ||
| 133 | is named _avenrun. At this time there are two major flavors | ||
| 134 | of hp-ux (there is the s800 and s300 (s200) flavors). The | ||
| 135 | differences are thusly moved to the corresponding machine description file. | ||
| 136 | */ | ||
| 137 | |||
| 138 | /* no underscore please */ | ||
| 139 | #define LDAV_SYMBOL "avenrun" | ||
| 140 | |||
| 141 | #if 0 /* Supposedly no longer true. */ | ||
| 142 | /* In hpux, for unknown reasons, S_IFLNK is defined even though | ||
| 143 | symbolic links do not exist. | ||
| 144 | Make sure our conditionals based on S_IFLNK are not confused. | ||
| 145 | |||
| 146 | Here we assume that stat.h is included before config.h | ||
| 147 | so that we can override it here. */ | ||
| 148 | |||
| 149 | #undef S_IFLNK | ||
| 150 | #endif | ||
| 151 | |||
| 152 | /* On USG systems these have different names. */ | ||
| 153 | |||
| 154 | #define index strchr | ||
| 155 | #define rindex strrchr | ||
| 156 | |||
| 157 | /* #endif */ | ||
| 158 | |||
| 159 | /* arch-tag: 4ced5b51-ffe6-4be1-9954-eb40657023a5 | ||
| 160 | (do not change this comment) */ | ||
diff --git a/src/m/stride.h b/src/m/stride.h deleted file mode 100644 index d846a6c9843..00000000000 --- a/src/m/stride.h +++ /dev/null | |||
| @@ -1,121 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Stride Micro System-V.2.2 | ||
| 2 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #undef NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | vax, m68000, ns16000, pyramid, orion, tahoe, APOLLO and STRIDE | ||
| 45 | are the ones defined so far. */ | ||
| 46 | |||
| 47 | #define m68000 /* because the SGS compiler defines "m68k" */ | ||
| 48 | #ifndef STRIDE | ||
| 49 | #define STRIDE | ||
| 50 | #endif | ||
| 51 | |||
| 52 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 53 | /* This is desirable for most machines. */ | ||
| 54 | |||
| 55 | #define NO_UNION_TYPE | ||
| 56 | |||
| 57 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 58 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 59 | are always unsigned. | ||
| 60 | |||
| 61 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 62 | |||
| 63 | #define EXPLICIT_SIGN_EXTEND | ||
| 64 | |||
| 65 | /* Data type of load average, as read out of kmem. */ | ||
| 66 | |||
| 67 | #define LOAD_AVE_TYPE double | ||
| 68 | |||
| 69 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 70 | |||
| 71 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 72 | |||
| 73 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 74 | Then the function dump-emacs will not be defined | ||
| 75 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 76 | |||
| 77 | #undef CANNOT_DUMP | ||
| 78 | |||
| 79 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 80 | pure and impure space as loaded can vary, and even their | ||
| 81 | relative order cannot be relied on. | ||
| 82 | |||
| 83 | Otherwise Emacs assumes that text space precedes data space, | ||
| 84 | numerically. */ | ||
| 85 | |||
| 86 | #undef VIRT_ADDR_VARIES | ||
| 87 | |||
| 88 | /* The STRIDE system is more powerful than standard USG5. */ | ||
| 89 | |||
| 90 | #define HAVE_PTYS | ||
| 91 | #define BSTRING | ||
| 92 | #define SKTPAIR | ||
| 93 | #define HAVE_SOCKETS | ||
| 94 | |||
| 95 | #define MAIL_USE_FLOCK | ||
| 96 | #undef TERMINFO | ||
| 97 | #define EXEC_MAGIC 0413 | ||
| 98 | |||
| 99 | /* USG wins again: Foo! I can't get SIGIO to work properly on the Stride, because I'm | ||
| 100 | running a System V variant, and don't have a reliable way to block SIGIO | ||
| 101 | signals without losing them. So, I've gone back to non-SIGIO mode, so | ||
| 102 | please append this line to the file "stride.h": | ||
| 103 | */ | ||
| 104 | #define BROKEN_SIGIO | ||
| 105 | |||
| 106 | /* Specify alignment requirement for start of text and data sections | ||
| 107 | in the executable file. */ | ||
| 108 | |||
| 109 | #define SECTION_ALIGNMENT (getpagesize() - 1) | ||
| 110 | |||
| 111 | /* | ||
| 112 | * UniStride has this in /lib/libc.a. | ||
| 113 | */ | ||
| 114 | #undef NONSYSTEM_DIR_LIBRARY | ||
| 115 | |||
| 116 | /* Define this macro if system defines a type `union wait'. */ | ||
| 117 | |||
| 118 | #define HAVE_UNION_WAIT | ||
| 119 | |||
| 120 | /* arch-tag: 65c635ed-5bc7-4ace-ab20-f3442429c8ba | ||
| 121 | (do not change this comment) */ | ||
diff --git a/src/m/sun1.h b/src/m/sun1.h deleted file mode 100644 index 03cb4e803ff..00000000000 --- a/src/m/sun1.h +++ /dev/null | |||
| @@ -1,80 +0,0 @@ | |||
| 1 | /* machine description file for Sun 68000's | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="note" | ||
| 26 | |||
| 27 | NOTE-START | ||
| 28 | Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3; | ||
| 29 | -opsystem=bsd4-2 or -opsystem=sunos4) | ||
| 30 | |||
| 31 | Whether you should use sun1, sun2 or sun3 depends on the | ||
| 32 | VERSION OF THE OPERATING SYSTEM | ||
| 33 | you have. There are three machine types for different versions of | ||
| 34 | SunOS. All are derived from Berkeley 4.2, meaning that you should | ||
| 35 | use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will | ||
| 36 | need to use sun3 on Sun 2's running SunOS release 3. | ||
| 37 | |||
| 38 | For SunOS release 4 on a Sun 3, use -machine=sun3 and | ||
| 39 | -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve | ||
| 40 | problems caused by bugs in the "export" version of SunOS 4. | ||
| 41 | NOTE-END */ | ||
| 42 | |||
| 43 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 44 | is the most significant byte. */ | ||
| 45 | |||
| 46 | #define WORDS_BIG_ENDIAN | ||
| 47 | |||
| 48 | /* Say this machine is a 68000 */ | ||
| 49 | |||
| 50 | #define m68000 | ||
| 51 | |||
| 52 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 53 | |||
| 54 | #define NO_UNION_TYPE | ||
| 55 | |||
| 56 | /* Sun can't write competent compilers */ | ||
| 57 | #define COMPILER_REGISTER_BUG | ||
| 58 | |||
| 59 | /* XINT must explicitly sign-extend */ | ||
| 60 | |||
| 61 | #define EXPLICIT_SIGN_EXTEND | ||
| 62 | |||
| 63 | /* Data type of load average, as read out of kmem. */ | ||
| 64 | |||
| 65 | #define LOAD_AVE_TYPE long | ||
| 66 | |||
| 67 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 68 | |||
| 69 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 70 | |||
| 71 | /* Must use the system's termcap. It does special things. */ | ||
| 72 | |||
| 73 | #define LIBS_TERMCAP -ltermcap | ||
| 74 | |||
| 75 | /* Mask for address bits within a memory segment */ | ||
| 76 | |||
| 77 | #define SEGMENT_MASK (SEGSIZ - 1) | ||
| 78 | |||
| 79 | /* arch-tag: 58ec9c79-48bd-4d1b-aad1-65a09a6b0d10 | ||
| 80 | (do not change this comment) */ | ||
diff --git a/src/m/sun2.h b/src/m/sun2.h deleted file mode 100644 index a872bf6f3bb..00000000000 --- a/src/m/sun2.h +++ /dev/null | |||
| @@ -1,89 +0,0 @@ | |||
| 1 | /* machine description file for Sun 68000's OPERATING SYSTEM version 2. | ||
| 2 | Note that "sun2.h" refers to the operating system version, not the | ||
| 3 | CPU model number. See the MACHINES file for details. | ||
| 4 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 5 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 6 | |||
| 7 | This file is part of GNU Emacs. | ||
| 8 | |||
| 9 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 10 | it under the terms of the GNU General Public License as published by | ||
| 11 | the Free Software Foundation; either version 3, or (at your option) | ||
| 12 | any later version. | ||
| 13 | |||
| 14 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | GNU General Public License for more details. | ||
| 18 | |||
| 19 | You should have received a copy of the GNU General Public License | ||
| 20 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 21 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 22 | Boston, MA 02110-1301, USA. */ | ||
| 23 | |||
| 24 | |||
| 25 | /* The following line tells the configuration script what sort of | ||
| 26 | operating system this machine is likely to run. | ||
| 27 | USUAL-OPSYS="note" | ||
| 28 | |||
| 29 | NOTE-START | ||
| 30 | Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3; | ||
| 31 | -opsystem=bsd4-2 or -opsystem=sunos4) | ||
| 32 | |||
| 33 | Whether you should use sun1, sun2 or sun3 depends on the | ||
| 34 | VERSION OF THE OPERATING SYSTEM | ||
| 35 | you have. There are three machine types for different versions of | ||
| 36 | SunOS. All are derived from Berkeley 4.2, meaning that you should | ||
| 37 | use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will | ||
| 38 | need to use sun3 on Sun 2's running SunOS release 3. | ||
| 39 | |||
| 40 | For SunOS release 4 on a Sun 3, use -machine=sun3 and | ||
| 41 | -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve | ||
| 42 | problems caused by bugs in the "export" version of SunOS 4. | ||
| 43 | NOTE-END */ | ||
| 44 | |||
| 45 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 46 | is the most significant byte. */ | ||
| 47 | |||
| 48 | #define WORDS_BIG_ENDIAN | ||
| 49 | |||
| 50 | /* Say this machine is a 68000 */ | ||
| 51 | |||
| 52 | #ifndef m68000 | ||
| 53 | #define m68000 | ||
| 54 | #endif | ||
| 55 | |||
| 56 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 57 | |||
| 58 | #define NO_UNION_TYPE | ||
| 59 | |||
| 60 | /* Sun can't write competent compilers */ | ||
| 61 | #define COMPILER_REGISTER_BUG | ||
| 62 | |||
| 63 | /* XINT must explicitly sign-extend */ | ||
| 64 | |||
| 65 | #define EXPLICIT_SIGN_EXTEND | ||
| 66 | |||
| 67 | /* Data type of load average, as read out of kmem. */ | ||
| 68 | |||
| 69 | #define LOAD_AVE_TYPE long | ||
| 70 | |||
| 71 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 72 | |||
| 73 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 74 | |||
| 75 | /* Say that this is a Sun 2; must check for and maybe reinitialize | ||
| 76 | the "sky" board. */ | ||
| 77 | |||
| 78 | #define sun2 | ||
| 79 | |||
| 80 | /* Must use the system's termcap. It does special things. */ | ||
| 81 | |||
| 82 | #define LIBS_TERMCAP -ltermcap | ||
| 83 | |||
| 84 | /* Mask for address bits within a memory segment */ | ||
| 85 | |||
| 86 | #define SEGMENT_MASK (SEGSIZ - 1) | ||
| 87 | |||
| 88 | /* arch-tag: 543c3570-74ca-4099-aa47-db7c7b691c8e | ||
| 89 | (do not change this comment) */ | ||
diff --git a/src/m/sun3-68881.h b/src/m/sun3-68881.h deleted file mode 100644 index 33b9c2bd527..00000000000 --- a/src/m/sun3-68881.h +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | /* sun3-68881.h, for a Sun 3, using the 68881. */ | ||
| 2 | |||
| 3 | #include "sun3.h" | ||
| 4 | |||
| 5 | /* The following line tells the configuration script what sort of | ||
| 6 | operating system this machine is likely to run. | ||
| 7 | USUAL-OPSYS="note" | ||
| 8 | |||
| 9 | NOTE-START | ||
| 10 | Sun with 68881 co-processor (-machine=sun3-68881; | ||
| 11 | -opsystem=bsd4-2 or -opsystem=sunos4) | ||
| 12 | |||
| 13 | Versions 1, 2, and 3 of the operating system are derived from | ||
| 14 | Berkeley 4.2, meaning that you should use -opsystem=bsd4-2. | ||
| 15 | |||
| 16 | For SunOS release 4 on a Sun 3 with a 68881, use -machine=sun3-68881 | ||
| 17 | and -opsystem=sunos4. See the file share-lib/SUNBUG for how to | ||
| 18 | solve problems caused by bugs in the "export" version of SunOS 4. | ||
| 19 | NOTE-END */ | ||
| 20 | |||
| 21 | /* In case we are using floating point, work together with crt0.c. */ | ||
| 22 | |||
| 23 | #ifndef __GNUC__ | ||
| 24 | #define C_SWITCH_MACHINE -f68881 | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #define sun_68881 | ||
| 28 | #define START_FILES crt0.o /usr/lib/Mcrt1.o | ||
| 29 | |||
| 30 | /* arch-tag: f8659e89-5f5e-4921-940c-814a5786b901 | ||
| 31 | (do not change this comment) */ | ||
diff --git a/src/m/sun3-fpa.h b/src/m/sun3-fpa.h deleted file mode 100644 index b78adaf7378..00000000000 --- a/src/m/sun3-fpa.h +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | /* sun3-fpa.h, for a Sun 3, using the Sun fpa. */ | ||
| 2 | |||
| 3 | #include "sun3.h" | ||
| 4 | |||
| 5 | /* The following line tells the configuration script what sort of | ||
| 6 | operating system this machine is likely to run. | ||
| 7 | USUAL-OPSYS="note" | ||
| 8 | |||
| 9 | NOTE-START | ||
| 10 | Sun with FPA co-processor (-machine=sun3-fpa; | ||
| 11 | -opsystem=bsd4-2 or -opsystem=sunos4) | ||
| 12 | |||
| 13 | Versions 1, 2, and 3 of the operating system are derived from | ||
| 14 | Berkeley 4.2, meaning that you should use -opsystem=bsd4-2. | ||
| 15 | |||
| 16 | For SunOS release 4 on a Sun 3 with an FPA, use -machine=sun3-fpa | ||
| 17 | and -opsystem=sunos4. See the file share-lib/SUNBUG for how to | ||
| 18 | solve problems caused by bugs in the "export" version of SunOS 4. | ||
| 19 | NOTE-END */ | ||
| 20 | |||
| 21 | /* In case we are using floating point, work together with crt0.c. */ | ||
| 22 | |||
| 23 | #ifndef __GNUC__ | ||
| 24 | #define C_SWITCH_MACHINE -ffpa | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #define sun_fpa | ||
| 28 | #define START_FILES crt0.o /usr/lib/Wcrt1.o | ||
| 29 | |||
| 30 | /* arch-tag: db287fbb-966f-4a70-a3f4-a6768c09326b | ||
| 31 | (do not change this comment) */ | ||
diff --git a/src/m/sun3-soft.h b/src/m/sun3-soft.h deleted file mode 100644 index 32b2558c01b..00000000000 --- a/src/m/sun3-soft.h +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | /* sun3-soft.h, for a Sun 3, using the Sun with software floating point. */ | ||
| 2 | |||
| 3 | #include "sun3.h" | ||
| 4 | |||
| 5 | /* The following line tells the configuration script what sort of | ||
| 6 | operating system this machine is likely to run. | ||
| 7 | USUAL-OPSYS="note" | ||
| 8 | |||
| 9 | NOTE-START | ||
| 10 | Sun with software floating point (-machine=sun3-soft; | ||
| 11 | -opsystem=bsd4-2 or -opsystem=sunos4) | ||
| 12 | |||
| 13 | Versions 1, 2, and 3 of the operating system are derived from | ||
| 14 | Berkeley 4.2, meaning that you should use -opsystem=bsd4-2. | ||
| 15 | |||
| 16 | If you want to use software floating point on SunOS release 4 on a | ||
| 17 | Sun 3, use -machine=sun3-68881 and -opsystem=sunos4. See the file | ||
| 18 | share-lib/SUNBUG for how to solve problems caused by bugs in the | ||
| 19 | "export" version of SunOS 4. | ||
| 20 | NOTE-END */ | ||
| 21 | |||
| 22 | /* In case we are using floating point, work together with crt0.c. */ | ||
| 23 | |||
| 24 | #ifndef __GNUC__ | ||
| 25 | #define C_SWITCH_MACHINE -fsoft | ||
| 26 | #endif | ||
| 27 | |||
| 28 | #define sun_soft | ||
| 29 | #define START_FILES crt0.o /usr/lib/Fcrt1.o | ||
| 30 | |||
| 31 | /* arch-tag: 76e9d7e6-66a8-4c4f-b0a5-335d082e5720 | ||
| 32 | (do not change this comment) */ | ||
diff --git a/src/m/sun3.h b/src/m/sun3.h deleted file mode 100644 index b2713703416..00000000000 --- a/src/m/sun3.h +++ /dev/null | |||
| @@ -1,53 +0,0 @@ | |||
| 1 | /* machine description file for Sun 68000's OPERATING SYSTEM version 3 | ||
| 2 | (for either 68000 or 68020 systems). */ | ||
| 3 | |||
| 4 | #include "sun2.h" | ||
| 5 | #undef sun2 | ||
| 6 | #ifndef sun3 | ||
| 7 | #define sun3 | ||
| 8 | #endif | ||
| 9 | |||
| 10 | /* The following line tells the configuration script what sort of | ||
| 11 | operating system this machine is likely to run. | ||
| 12 | USUAL-OPSYS="note" | ||
| 13 | |||
| 14 | NOTE-START | ||
| 15 | Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3; | ||
| 16 | -opsystem=bsd4-2 or -opsystem=sunos4) | ||
| 17 | |||
| 18 | Whether you should use sun1, sun2 or sun3 depends on the | ||
| 19 | VERSION OF THE OPERATING SYSTEM | ||
| 20 | you have. There are three machine types for different versions of | ||
| 21 | SunOS. All are derived from Berkeley 4.2, meaning that you should | ||
| 22 | use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will | ||
| 23 | need to use sun3 on Sun 2's running SunOS release 3. | ||
| 24 | |||
| 25 | For SunOS release 4 on a Sun 3, use -machine=sun3 and | ||
| 26 | -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve | ||
| 27 | problems caused by bugs in the "export" version of SunOS 4. | ||
| 28 | NOTE-END */ | ||
| 29 | |||
| 30 | /* Say that the text segment of a.out includes the header; | ||
| 31 | the header actually occupies the first few bytes of the text segment | ||
| 32 | and is counted in hdr.a_text. */ | ||
| 33 | |||
| 34 | #define A_TEXT_OFFSET(HDR) sizeof (HDR) | ||
| 35 | |||
| 36 | /* This is the offset of the executable's text, from the start of the file. */ | ||
| 37 | |||
| 38 | #define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr)) | ||
| 39 | |||
| 40 | /* In case we are using floating point, work together with crt0.c. */ | ||
| 41 | |||
| 42 | #ifndef __GNUC__ | ||
| 43 | #define C_SWITCH_MACHINE -fsoft | ||
| 44 | #endif | ||
| 45 | |||
| 46 | /* This line is needed if you are linking with X windows | ||
| 47 | and the library xlib was compiled to use the 68881. | ||
| 48 | For maximum cleanliness, don't edit this file; | ||
| 49 | instead, insert this line in config.h. */ | ||
| 50 | /* #define START_FILES crt0.o /usr/lib/Mcrt1.o */ | ||
| 51 | |||
| 52 | /* arch-tag: d0559a79-2285-4a78-ad68-9694264d0d8a | ||
| 53 | (do not change this comment) */ | ||
diff --git a/src/m/sun386.h b/src/m/sun386.h deleted file mode 100644 index ed98960c809..00000000000 --- a/src/m/sun386.h +++ /dev/null | |||
| @@ -1,74 +0,0 @@ | |||
| 1 | /* machine description file for Sun's 386-based RoadRunner. This file borrows heavily from | ||
| 2 | "sun2.h", but since that file is heavily cpu-specific, it was easier | ||
| 3 | not to include it. | ||
| 4 | |||
| 5 | Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, | ||
| 6 | 2006, 2007 Free Software Foundation, Inc. | ||
| 7 | |||
| 8 | This file is part of GNU Emacs. | ||
| 9 | |||
| 10 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 11 | it under the terms of the GNU General Public License as published by | ||
| 12 | the Free Software Foundation; either version 3, or (at your option) | ||
| 13 | any later version. | ||
| 14 | |||
| 15 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 16 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 17 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 18 | GNU General Public License for more details. | ||
| 19 | |||
| 20 | You should have received a copy of the GNU General Public License | ||
| 21 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 22 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 23 | Boston, MA 02110-1301, USA. */ | ||
| 24 | |||
| 25 | /* The following line tells the configuration script what sort of | ||
| 26 | operating system this machine is likely to run. | ||
| 27 | USUAL-OPSYS="note" | ||
| 28 | |||
| 29 | NOTE-START | ||
| 30 | Use s-sunos4-0.h for operating system version 4.0, and s-sunos4-1.h | ||
| 31 | for later versions. See the file share-lib/SUNBUG for how to solve | ||
| 32 | problems caused by bugs in the "export" version of SunOS 4. | ||
| 33 | NOTE-END */ | ||
| 34 | |||
| 35 | /* Say this machine is a bird */ | ||
| 36 | #ifndef roadrunner | ||
| 37 | #define roadrunner | ||
| 38 | #endif | ||
| 39 | |||
| 40 | /* Actual cpu-specific defs */ | ||
| 41 | #include "intel386.h" | ||
| 42 | |||
| 43 | /* Data type of load average, as read out of kmem. */ | ||
| 44 | |||
| 45 | #define LOAD_AVE_TYPE long | ||
| 46 | |||
| 47 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 48 | |||
| 49 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 50 | |||
| 51 | /* Underscores are not prepended to C symbols on this machine. */ | ||
| 52 | #undef LDAV_SYMBOL | ||
| 53 | #define LDAV_SYMBOL "avenrun" | ||
| 54 | |||
| 55 | /* Must use the system's termcap. It does special things. */ | ||
| 56 | |||
| 57 | #define LIBS_TERMCAP -ltermcap | ||
| 58 | |||
| 59 | /* Roadrunner uses 'COFF' format */ | ||
| 60 | #define COFF | ||
| 61 | |||
| 62 | #define C_SWITCH_MACHINE -Bstatic /* avoid dynamic linking */ | ||
| 63 | #define LD_SWITCH_MACHINE -n -Bstatic | ||
| 64 | /* Get rid of the -e __start that s-sunos4.h does. */ | ||
| 65 | #undef LD_SWITCH_SYSTEM | ||
| 66 | |||
| 67 | #ifdef USG | ||
| 68 | /* USG detects Solaris. j.w.hawtin@lut.ac.uk says Solaris 2.1 | ||
| 69 | on the 386 needs this. */ | ||
| 70 | #define LIBS_MACHINE -lkvm | ||
| 71 | #endif | ||
| 72 | |||
| 73 | /* arch-tag: 861af4b4-ce5f-475e-876e-ebff6436a1fe | ||
| 74 | (do not change this comment) */ | ||
diff --git a/src/m/symmetry.h b/src/m/symmetry.h deleted file mode 100644 index ea3d9493504..00000000000 --- a/src/m/symmetry.h +++ /dev/null | |||
| @@ -1,95 +0,0 @@ | |||
| 1 | /* machine description file for SEQUENT SYMMETRY machines | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* CHANGE: [Eric H. Herrin II; eric@ms.uky.edu - 15 Sept 1988] | ||
| 23 | * Modified the sequent.h file for the Sequent Symmetry machine. | ||
| 24 | * Biggest change was to align the sections in the a.out to 4K | ||
| 25 | * boundaries (this is the page size). | ||
| 26 | */ | ||
| 27 | |||
| 28 | |||
| 29 | /* NOTICE: this file works for DYNIX release 3.0.12 on Sequent Symmetry | ||
| 30 | * (Intel 80386) machines. Hasn't been tested on anything else. | ||
| 31 | */ | ||
| 32 | |||
| 33 | /* The following line tells the configuration script what sort of | ||
| 34 | operating system this machine is likely to run. | ||
| 35 | USUAL-OPSYS="bsd4-3" */ | ||
| 36 | |||
| 37 | #include "intel386.h" | ||
| 38 | |||
| 39 | /* Data type of load average, as read out of kmem. */ | ||
| 40 | |||
| 41 | #define LOAD_AVE_TYPE unsigned long | ||
| 42 | |||
| 43 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 44 | |||
| 45 | #define FSCALE 1000.0 | ||
| 46 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) | ||
| 47 | |||
| 48 | /* Name of file the to look in | ||
| 49 | for the kernel symbol table (for load average) */ | ||
| 50 | |||
| 51 | #undef KERNEL_FILE | ||
| 52 | #define KERNEL_FILE "/dynix" | ||
| 53 | |||
| 54 | /* Avoids a compiler bug */ | ||
| 55 | |||
| 56 | #define TAHOE_REGISTER_BUG | ||
| 57 | |||
| 58 | /* Say that the text segment of a.out includes the header; | ||
| 59 | the header actually occupies the first few bytes of the text segment | ||
| 60 | and is counted in hdr.a_text. Furthermore, the value written | ||
| 61 | in the a_text in the file must have N_ADDRADJ added to it. */ | ||
| 62 | |||
| 63 | #define A_TEXT_OFFSET(HDR) (sizeof (HDR) + N_ADDRADJ (HDR)) | ||
| 64 | |||
| 65 | /* This is the offset of the executable's text, from the start of the file. */ | ||
| 66 | |||
| 67 | #define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr)) | ||
| 68 | |||
| 69 | /* The file sections in the Symmetry a.out must be on 4K boundaries. | ||
| 70 | */ | ||
| 71 | #define SEGSIZ 4096 | ||
| 72 | #define SECTION_ALIGNMENT (SEGSIZ-1) | ||
| 73 | |||
| 74 | /* (short) negative-int doesn't sign-extend correctly */ | ||
| 75 | #define SHORT_CAST_BUG | ||
| 76 | |||
| 77 | /* Cause compilations to be done in parallel in ymakefile. */ | ||
| 78 | #define MAKE_PARALLEL & | ||
| 79 | |||
| 80 | /* Define how to search all pty names. | ||
| 81 | This is for Dynix 3.0; delete next 5 definitions for older systems. */ | ||
| 82 | |||
| 83 | #define PTY_MAJOR "pqrstuvwPQRSTUVW" | ||
| 84 | #define PTY_MINOR "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" | ||
| 85 | #define PTY_ITERATION \ | ||
| 86 | register int ma, mi; \ | ||
| 87 | for (ma = 0; ma < sizeof(PTY_MAJOR) - 1; ma++) \ | ||
| 88 | for (mi = 0; mi < sizeof(PTY_MINOR) - 1; mi++) | ||
| 89 | #define PTY_NAME_SPRINTF \ | ||
| 90 | sprintf (pty_name, "/dev/pty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]); | ||
| 91 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 92 | sprintf (pty_name, "/dev/tty%c%c", PTY_MAJOR[ma], PTY_MINOR[mi]); | ||
| 93 | |||
| 94 | /* arch-tag: 4169a89e-3764-4147-98df-1ba3bdd45a5b | ||
| 95 | (do not change this comment) */ | ||
diff --git a/src/m/tad68k.h b/src/m/tad68k.h deleted file mode 100644 index c8be8763fb5..00000000000 --- a/src/m/tad68k.h +++ /dev/null | |||
| @@ -1,115 +0,0 @@ | |||
| 1 | /* Machine-dependent configuration for GNU Emacs for Tadpole 68k machines | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | /* #define NO_ARG_ARRAY */ | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | /* #define WORD_MACHINE */ | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically */ | ||
| 44 | |||
| 45 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 46 | /* This is desirable for most machines. */ | ||
| 47 | |||
| 48 | #define NO_UNION_TYPE | ||
| 49 | |||
| 50 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 51 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 52 | are always unsigned. | ||
| 53 | |||
| 54 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 55 | |||
| 56 | /* #define EXPLICIT_SIGN_EXTEND */ | ||
| 57 | |||
| 58 | /* Data type of load average, as read out of kmem. */ | ||
| 59 | /* #define LOAD_AVE_TYPE long */ | ||
| 60 | |||
| 61 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 62 | |||
| 63 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */ | ||
| 64 | |||
| 65 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 66 | Then the function dump-emacs will not be defined | ||
| 67 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 68 | /* #define CANNOT_DUMP */ | ||
| 69 | |||
| 70 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 71 | pure and impure space as loaded can vary, and even their | ||
| 72 | relative order cannot be relied on. | ||
| 73 | |||
| 74 | Otherwise Emacs assumes that text space precedes data space, | ||
| 75 | numerically. */ | ||
| 76 | |||
| 77 | /* #define VIRT_ADDR_VARIES */ /* Karl Kleinpaste says this isn't needed. */ | ||
| 78 | |||
| 79 | /* SysV has alloca in the PW library */ | ||
| 80 | |||
| 81 | #define LIB_STANDARD -lPW -lc | ||
| 82 | |||
| 83 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 84 | to change the boundary between the text section and data section | ||
| 85 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 86 | code will not be sharable; but that's better than failing completely. */ | ||
| 87 | |||
| 88 | /* #define NO_REMAP */ | ||
| 89 | |||
| 90 | /* Use Terminfo, not Termcap. */ | ||
| 91 | |||
| 92 | #define TERMINFO | ||
| 93 | |||
| 94 | /* TPIX extras */ | ||
| 95 | |||
| 96 | #define TPIX /* used in various source files */ | ||
| 97 | #define BSTRING /* we do have the BSTRING functions */ | ||
| 98 | #define CLASH_DETECTION /* we want to know about clashes */ | ||
| 99 | #undef ADDR_CORRECT /* don't need this bug fix */ | ||
| 100 | #define fchmod /* we don't have fchmod() */ | ||
| 101 | #define SECTION_ALIGNMENT (2048-1) /* 2k boundaries required in unexec */ | ||
| 102 | #define SEGMENT_MASK (128*1024-1) /* 128k offsets required in unexec */ | ||
| 103 | #define C_DEBUG_SWITCH -O /* build with -O (TPIX has GCC 1.34) */ | ||
| 104 | |||
| 105 | #define BROKEN_TIOCGWINSZ /* Don't try to use TIOCGWINSZ. */ | ||
| 106 | |||
| 107 | /* omit next four lines if no TCP installed */ | ||
| 108 | |||
| 109 | #define select gnu_select /* avoid select() name clash */ | ||
| 110 | #define HAVE_PTYS /* we do have PTYs if we have TCP */ | ||
| 111 | #define HAVE_SOCKETS /* we do have sockets if we have TCP */ | ||
| 112 | #define LIBS_SYSTEM -lsocket /* get TCP networking functions */ | ||
| 113 | |||
| 114 | /* arch-tag: e0c09754-b0f2-48da-a8a5-aee3c94838f4 | ||
| 115 | (do not change this comment) */ | ||
diff --git a/src/m/tahoe.h b/src/m/tahoe.h deleted file mode 100644 index 9b9271577fc..00000000000 --- a/src/m/tahoe.h +++ /dev/null | |||
| @@ -1,72 +0,0 @@ | |||
| 1 | /* machine description file for tahoe. | ||
| 2 | Copyright (C) 1985, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="note" | ||
| 26 | |||
| 27 | NOTE-START | ||
| 28 | Use -opsystem=bsd4-2 or -opsystem=bsd4-3, depending on the version of | ||
| 29 | Berkeley you are running. | ||
| 30 | NOTE-END */ | ||
| 31 | |||
| 32 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 33 | is the most significant byte. */ | ||
| 34 | |||
| 35 | #define WORDS_BIG_ENDIAN | ||
| 36 | |||
| 37 | /* XINT must explicitly sign-extend */ | ||
| 38 | |||
| 39 | #define EXPLICIT_SIGN_EXTEND | ||
| 40 | |||
| 41 | /* Say this machine is a tahoe */ | ||
| 42 | |||
| 43 | #ifndef tahoe | ||
| 44 | #define tahoe | ||
| 45 | #endif /* not tahoe */ | ||
| 46 | |||
| 47 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 48 | |||
| 49 | #define NO_UNION_TYPE | ||
| 50 | |||
| 51 | /* crt0.c should use the vax-bsd style of entry, with no dummy args. */ | ||
| 52 | |||
| 53 | #define CRT0_DUMMIES | ||
| 54 | |||
| 55 | /* crt0.c should define a symbol `start' and do .globl with a dot. */ | ||
| 56 | |||
| 57 | #define DOT_GLOBAL_START | ||
| 58 | |||
| 59 | /* Data type of load average, as read out of kmem. */ | ||
| 60 | |||
| 61 | #define LOAD_AVE_TYPE double | ||
| 62 | |||
| 63 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 64 | |||
| 65 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 66 | |||
| 67 | /* This triggers some stuff to avoid a compiler bug */ | ||
| 68 | |||
| 69 | #define TAHOE_REGISTER_BUG | ||
| 70 | |||
| 71 | /* arch-tag: dd452693-80e1-413f-a164-0141eb68d831 | ||
| 72 | (do not change this comment) */ | ||
diff --git a/src/m/targon31.h b/src/m/targon31.h deleted file mode 100644 index 39e995b076d..00000000000 --- a/src/m/targon31.h +++ /dev/null | |||
| @@ -1,98 +0,0 @@ | |||
| 1 | /* targon31 machine description file | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | /* #define NO_ARG_ARRAY */ | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #define WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 45 | are the ones defined so far. */ | ||
| 46 | |||
| 47 | /* #define m68k is defined by the Compiler */ | ||
| 48 | /* #define m68000 */ | ||
| 49 | |||
| 50 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 51 | /* This is desirable for most machines. */ | ||
| 52 | |||
| 53 | #define NO_UNION_TYPE | ||
| 54 | |||
| 55 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 56 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 57 | are always unsigned. | ||
| 58 | |||
| 59 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 60 | |||
| 61 | #define EXPLICIT_SIGN_EXTEND | ||
| 62 | |||
| 63 | /* Data type of load average, as read out of kmem. */ | ||
| 64 | |||
| 65 | /* #define LOAD_AVE_TYPE double */ | ||
| 66 | |||
| 67 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 68 | |||
| 69 | #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0) | ||
| 70 | |||
| 71 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 72 | Then the function dump-emacs will not be defined | ||
| 73 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 74 | |||
| 75 | /* #define CANNOT_DUMP */ | ||
| 76 | |||
| 77 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 78 | pure and impure space as loaded can vary, and even their | ||
| 79 | relative order cannot be relied on. | ||
| 80 | |||
| 81 | Otherwise Emacs assumes that text space precedes data space, | ||
| 82 | numerically. */ | ||
| 83 | |||
| 84 | /* #define VIRT_ADDR_VARIES */ | ||
| 85 | |||
| 86 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 87 | to change the boundary between the text section and data section | ||
| 88 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 89 | code will not be sharable; but that's better than failing completely. */ | ||
| 90 | |||
| 91 | /* #define NO_REMAP */ | ||
| 92 | /* Supposedly NO_REMAP is not needed with the following change. */ | ||
| 93 | #define SEGMENT_MASK 0xffff | ||
| 94 | |||
| 95 | #define SWITCH_ENUM_BUG 1 | ||
| 96 | |||
| 97 | /* arch-tag: f2438018-7d4e-4be5-b368-4bf342b7785b | ||
| 98 | (do not change this comment) */ | ||
diff --git a/src/m/tek4300.h b/src/m/tek4300.h deleted file mode 100644 index 6498238461d..00000000000 --- a/src/m/tek4300.h +++ /dev/null | |||
| @@ -1,105 +0,0 @@ | |||
| 1 | /* machine description file for tek4300. | ||
| 2 | Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="bsd4-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #undef NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically. */ | ||
| 44 | |||
| 45 | #ifndef tek4300 | ||
| 46 | #define tek4300 | ||
| 47 | #endif | ||
| 48 | |||
| 49 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 50 | |||
| 51 | #define NO_UNION_TYPE | ||
| 52 | |||
| 53 | /* Data type of load average, as read out of kmem. */ | ||
| 54 | |||
| 55 | #define LOAD_AVE_TYPE long | ||
| 56 | |||
| 57 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 58 | |||
| 59 | #define LOAD_AVE_CVT(x) (x) | ||
| 60 | |||
| 61 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 62 | to change the boundary between the text section and data section | ||
| 63 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 64 | code will not be sharable; but that's better than failing completely. */ | ||
| 65 | |||
| 66 | #define NO_REMAP | ||
| 67 | |||
| 68 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, */ | ||
| 69 | |||
| 70 | #define _longjmp longjmp | ||
| 71 | #define _setjmp setjmp | ||
| 72 | |||
| 73 | /* The text segment always starts at a fixed address. | ||
| 74 | This way we don't need to have a label _start defined. */ | ||
| 75 | |||
| 76 | #define TEXT_START 0 | ||
| 77 | |||
| 78 | /* The Tektronix exec struct for ZMAGIC files is struct zexec */ | ||
| 79 | |||
| 80 | #define EXEC_HDR_TYPE struct zexec | ||
| 81 | |||
| 82 | /* The entry-point label (start of text segment) is `start', not `__start'. */ | ||
| 83 | |||
| 84 | #define DEFAULT_ENTRY_ADDRESS start | ||
| 85 | |||
| 86 | /* Use the system's malloc calls, gmalloc.c won't work for us. */ | ||
| 87 | |||
| 88 | #define SYSTEM_MALLOC | ||
| 89 | |||
| 90 | /* In building xmakefile, "cc -E -g" forcibly reads from stdin. Since we | ||
| 91 | can't remove the CFLAGS from that "cc -E" invocation, make sure we | ||
| 92 | never pass -g. If you want to debug, remove the following, and fix | ||
| 93 | src/Makefile.in so it doesn't pass ${CFLAGS} when creating xmakefile. */ | ||
| 94 | |||
| 95 | #define C_DEBUG_SWITCH | ||
| 96 | |||
| 97 | /* eirik@elf.ithaca.ny.us said this was needed in 19.22. */ | ||
| 98 | #define NO_MODE_T | ||
| 99 | |||
| 100 | /* Process groups work in the traditional BSD manner. */ | ||
| 101 | |||
| 102 | #define BSD_PGRPS | ||
| 103 | |||
| 104 | /* arch-tag: afa06e53-094c-4a19-9219-155f8ba4bbcc | ||
| 105 | (do not change this comment) */ | ||
diff --git a/src/m/tekxd88.h b/src/m/tekxd88.h deleted file mode 100644 index f351229292f..00000000000 --- a/src/m/tekxd88.h +++ /dev/null | |||
| @@ -1,117 +0,0 @@ | |||
| 1 | /* Configuration file for the Tektronix XD88 running UTekV 3.2e, | ||
| 2 | contributed by Kaveh Ghazi (ghazi@caip.rutgers.edu) 1/15/93. | ||
| 3 | You probably need to use gnu make (version 3.63 or higher.) | ||
| 4 | Copyright (C) 1993, 2001, 2002, 2003, 2004, 2005, | ||
| 5 | 2006, 2007 Free Software Foundation, Inc. | ||
| 6 | |||
| 7 | This file is part of GNU Emacs. | ||
| 8 | |||
| 9 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 10 | it under the terms of the GNU General Public License as published by | ||
| 11 | the Free Software Foundation; either version 3, or (at your option) | ||
| 12 | any later version. | ||
| 13 | |||
| 14 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | GNU General Public License for more details. | ||
| 18 | |||
| 19 | You should have received a copy of the GNU General Public License | ||
| 20 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 21 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 22 | Boston, MA 02110-1301, USA. */ | ||
| 23 | |||
| 24 | |||
| 25 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 26 | is the most significant byte. */ | ||
| 27 | |||
| 28 | #define WORDS_BIG_ENDIAN | ||
| 29 | |||
| 30 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 31 | * group of arguments and treat it as an array of the arguments. */ | ||
| 32 | #define NO_ARG_ARRAY | ||
| 33 | |||
| 34 | /* Define WORD_MACHINE if addresses and such have | ||
| 35 | * to be corrected before they can be used as byte counts. */ | ||
| 36 | /* #define WORD_MACHINE */ | ||
| 37 | |||
| 38 | /* Now define a symbol for the cpu type, if your compiler | ||
| 39 | does not define it automatically: | ||
| 40 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 41 | orion, tahoe, APOLLO and many others */ | ||
| 42 | #ifndef m88000 /* Some 88k C compilers already define this */ | ||
| 43 | #define m88000 | ||
| 44 | #endif | ||
| 45 | |||
| 46 | /* Define how to take a char and sign-extend into an int. | ||
| 47 | On machines where char is signed, this is a no-op. */ | ||
| 48 | #define SIGN_EXTEND_CHAR(c) (c) | ||
| 49 | |||
| 50 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 51 | /* This is desirable for most machines. */ | ||
| 52 | #define NO_UNION_TYPE | ||
| 53 | |||
| 54 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 55 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 56 | are always unsigned. | ||
| 57 | |||
| 58 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 59 | /* #define EXPLICIT_SIGN_EXTEND */ | ||
| 60 | |||
| 61 | /* Data type of load average, as read out of kmem. */ | ||
| 62 | /* #define LOAD_AVE_TYPE double */ /* No load average on XD88. */ | ||
| 63 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 64 | /* #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) */ | ||
| 65 | |||
| 66 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 67 | Then the function dump-emacs will not be defined | ||
| 68 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 69 | /*#define CANNOT_DUMP*/ | ||
| 70 | |||
| 71 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 72 | pure and impure space as loaded can vary, and even their | ||
| 73 | relative order cannot be relied on. | ||
| 74 | |||
| 75 | Otherwise Emacs assumes that text space precedes data space, | ||
| 76 | numerically. */ | ||
| 77 | /* #define VIRT_ADDR_VARIES */ | ||
| 78 | |||
| 79 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 80 | to change the boundary between the text section and data section | ||
| 81 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 82 | code will not be sharable; but that's better than failing completely. */ | ||
| 83 | #define NO_REMAP | ||
| 84 | |||
| 85 | #ifndef __GNUC__ | ||
| 86 | # define C_OPTIMIZE_SWITCH -O | ||
| 87 | #endif /* __GNUC__ */ | ||
| 88 | |||
| 89 | #undef NOMULTIPLEJOBS /* we have job control */ | ||
| 90 | #define HAVE_SOCKETS /* sockets are available */ | ||
| 91 | #define BROKEN_FIONREAD /* is this needed ? */ | ||
| 92 | #define BSTRING /* its in libc but not declared in any header file. */ | ||
| 93 | #undef sigsetmask /* XD88 has sigsetmask() */ | ||
| 94 | |||
| 95 | #undef LIB_X11_LIB /* Don't use shared libraries defined in usg5-3.h */ | ||
| 96 | #undef LIBX11_SYSTEM | ||
| 97 | |||
| 98 | #define HAVE_TERMIOS /* We have termios. */ | ||
| 99 | #undef HAVE_TERMIO /* Make sure termios ifdef code is used, not termio. */ | ||
| 100 | #define NO_TERMIO /* Don't include both termios.h and termio.h */ | ||
| 101 | #define HAVE_PTYS /* XD88 SysV has PTYs. */ | ||
| 102 | #define SYSV_PTYS /* Requires <termios.h> */ | ||
| 103 | |||
| 104 | #ifdef ghs /* Stands for "Green Hills Software", defined only in /bin/cc */ | ||
| 105 | /* -X18 means do not allocate programmer-defined local variables to a | ||
| 106 | register unless they are declared register. (Copied from perl-4.036 | ||
| 107 | Green Hills C hints file. Might be needed for setjmp, I don't know.) */ | ||
| 108 | # define C_SWITCH_MACHINE -X18 | ||
| 109 | /* We need /lib/default.ld so that /bin/ld can read its link directives. */ | ||
| 110 | # define LD_SWITCH_SYSTEM /lib/default.ld | ||
| 111 | #endif /* ghs */ | ||
| 112 | |||
| 113 | /* We need this to get dumping to work */ | ||
| 114 | #define KEEP_OLD_TEXT_SCNPTR | ||
| 115 | |||
| 116 | /* arch-tag: fd3cebc3-2aed-4f8c-be9b-f37331c6e0ff | ||
| 117 | (do not change this comment) */ | ||
diff --git a/src/m/tower32.h b/src/m/tower32.h deleted file mode 100644 index 01daada2423..00000000000 --- a/src/m/tower32.h +++ /dev/null | |||
| @@ -1,115 +0,0 @@ | |||
| 1 | /* machine description file for the NCR Tower 32 running System V.2. | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | /* #define NO_ARG_ARRAY */ | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | /* #define WORD_MACHINE */ | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 45 | are the ones defined so far. */ | ||
| 46 | #define m68000 | ||
| 47 | |||
| 48 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 49 | /* This is desirable for most machines. */ | ||
| 50 | |||
| 51 | #define NO_UNION_TYPE | ||
| 52 | |||
| 53 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 54 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 55 | are always unsigned. | ||
| 56 | |||
| 57 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 58 | |||
| 59 | #define EXPLICIT_SIGN_EXTEND | ||
| 60 | |||
| 61 | /* Data type of load average, as read out of kmem. */ | ||
| 62 | |||
| 63 | /* #define LOAD_AVE_TYPE long */ | ||
| 64 | |||
| 65 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 66 | |||
| 67 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */ | ||
| 68 | |||
| 69 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 70 | Then the function dump-emacs will not be defined | ||
| 71 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 72 | |||
| 73 | /* #define CANNOT_DUMP */ | ||
| 74 | |||
| 75 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 76 | pure and impure space as loaded can vary, and even their | ||
| 77 | relative order cannot be relied on. | ||
| 78 | |||
| 79 | Otherwise Emacs assumes that text space precedes data space, | ||
| 80 | numerically. */ | ||
| 81 | |||
| 82 | /* #define VIRT_ADDR_VARIES */ | ||
| 83 | |||
| 84 | /* Change some things to avoid bugs in compiler */ | ||
| 85 | |||
| 86 | #define SWITCH_ENUM_BUG 1 | ||
| 87 | |||
| 88 | /* The standard C library is -lcieee, not -lc. | ||
| 89 | Also use the PW library, which contains alloca. */ | ||
| 90 | |||
| 91 | #define LIB_STANDARD -lPW -lcieee | ||
| 92 | |||
| 93 | /* crt0.c should use the vax-bsd style of entry. Beware that if you have | ||
| 94 | OS release 2.00.00 or later, *and* change src/ymakefile so that CFLAGS | ||
| 95 | includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, you need to | ||
| 96 | uncomment CRT0_DUMMIES and C_OPTIMIZE_SWITCH below. */ | ||
| 97 | |||
| 98 | /* With the optimizer OFF */ | ||
| 99 | |||
| 100 | #define CRT0_DUMMIES zero, bogus_fp, | ||
| 101 | |||
| 102 | /* With the optimizer ON */ | ||
| 103 | |||
| 104 | /* #define CRT0_DUMMIES */ | ||
| 105 | /* #define C_OPTIMIZE_SWITCH -O2 */ | ||
| 106 | |||
| 107 | /* emacs's magic number isn't temacs's; | ||
| 108 | temacs is writable text (the default!). */ | ||
| 109 | |||
| 110 | #include <asld.h> | ||
| 111 | #define EXEC_MAGIC AOUT1MAGIC | ||
| 112 | #define EXEC_PAGESIZE DATACLICK | ||
| 113 | |||
| 114 | /* arch-tag: a08e7dea-d48e-44cc-b60d-c7f2e5187ff5 | ||
| 115 | (do not change this comment) */ | ||
diff --git a/src/m/tower32v3.h b/src/m/tower32v3.h deleted file mode 100644 index ff209edab41..00000000000 --- a/src/m/tower32v3.h +++ /dev/null | |||
| @@ -1,113 +0,0 @@ | |||
| 1 | /* machine description file for the NCR Tower 32 running System V.3. | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | |||
| 24 | /* The following line tells the configuration script what sort of | ||
| 25 | operating system this machine is likely to run. | ||
| 26 | USUAL-OPSYS="usg5-3" */ | ||
| 27 | |||
| 28 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 29 | is the most significant byte. */ | ||
| 30 | |||
| 31 | #define WORDS_BIG_ENDIAN | ||
| 32 | |||
| 33 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 34 | * group of arguments and treat it as an array of the arguments. */ | ||
| 35 | |||
| 36 | /* #define NO_ARG_ARRAY */ | ||
| 37 | |||
| 38 | /* Define WORD_MACHINE if addresses and such have | ||
| 39 | * to be corrected before they can be used as byte counts. */ | ||
| 40 | |||
| 41 | /* #define WORD_MACHINE */ | ||
| 42 | |||
| 43 | /* Now define a symbol for the cpu type, if your compiler | ||
| 44 | does not define it automatically: | ||
| 45 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 46 | are the ones defined so far. */ | ||
| 47 | #define m68000 | ||
| 48 | |||
| 49 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 50 | /* This is desirable for most machines. */ | ||
| 51 | |||
| 52 | #define NO_UNION_TYPE | ||
| 53 | |||
| 54 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 55 | the bit field into an int. In other words, if bit fields | ||
| 56 | are always unsigned. | ||
| 57 | |||
| 58 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 59 | |||
| 60 | #define EXPLICIT_SIGN_EXTEND | ||
| 61 | |||
| 62 | /* Data type of load average, as read out of kmem. */ | ||
| 63 | |||
| 64 | /* #define LOAD_AVE_TYPE long */ | ||
| 65 | |||
| 66 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 67 | |||
| 68 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */ | ||
| 69 | |||
| 70 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 71 | Then the function dump-emacs will not be defined | ||
| 72 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 73 | |||
| 74 | /* #define CANNOT_DUMP */ | ||
| 75 | |||
| 76 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 77 | pure and impure space as loaded can vary, and even their | ||
| 78 | relative order cannot be relied on. | ||
| 79 | |||
| 80 | Otherwise Emacs assumes that text space precedes data space, | ||
| 81 | numerically. */ | ||
| 82 | |||
| 83 | /* #define VIRT_ADDR_VARIES */ | ||
| 84 | |||
| 85 | #ifdef __GNUC__ | ||
| 86 | #define C_OPTIMIZE_SWITCH -O -fstrength-reduce -fomit-frame-pointer | ||
| 87 | #define LIB_STANDARD -lc /lib/crtn.o | ||
| 88 | #else | ||
| 89 | /* This section is correct if you do *not* change src/ymakefile so that | ||
| 90 | CFLAGS includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH. */ | ||
| 91 | #define C_DEBUG_SWITCH -g -O0 | ||
| 92 | #define LIB_STANDARD -lc -lPW /lib/crtn.o | ||
| 93 | /* This section is correct if you do enable C_OPTIMIZE_SWITCH. */ | ||
| 94 | /* #define C_OPTIMIZE_SWITCH -O2 */ | ||
| 95 | /* #define LIB_STANDARD -lc /lib/crtn.o */ | ||
| 96 | #endif | ||
| 97 | |||
| 98 | /* The OS maps the data section far away from the text section. */ | ||
| 99 | #define NO_REMAP | ||
| 100 | #define TEXT_START 0 | ||
| 101 | #undef static | ||
| 102 | #define START_FILES pre-crt0.o /lib/crt1.o | ||
| 103 | |||
| 104 | /* The OS has an implementation of symlinks that is semantically different | ||
| 105 | from BSD, but for some silly reason it partly has the same syntax. */ | ||
| 106 | #undef S_IFLNK | ||
| 107 | |||
| 108 | /* The OS needs stream.h+ptem.h included in sysdep.c. */ | ||
| 109 | #define NO_SIOCTL_H | ||
| 110 | #define NEED_PTEM_H | ||
| 111 | |||
| 112 | /* arch-tag: 3dff1355-7cb6-49e3-8834-85a369e4ea8f | ||
| 113 | (do not change this comment) */ | ||
diff --git a/src/m/ustation.h b/src/m/ustation.h deleted file mode 100644 index 0ac833c28da..00000000000 --- a/src/m/ustation.h +++ /dev/null | |||
| @@ -1,132 +0,0 @@ | |||
| 1 | /* machine description file for U-station (Nihon Unisys, SS5E; Sumitomo Denkoh, U-Station E30). | ||
| 2 | Copyright (C) 1986, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-3" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #undef NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | vax, m68000, ns16000, pyramid, orion, tahoe and APOLLO | ||
| 45 | are the ones defined so far. */ | ||
| 46 | /* Masscomp predefines mc68000. */ | ||
| 47 | |||
| 48 | #define m68000 mc68000 | ||
| 49 | |||
| 50 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 51 | /* This is desirable for most machines. */ | ||
| 52 | |||
| 53 | #define NO_UNION_TYPE | ||
| 54 | |||
| 55 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 56 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 57 | are always unsigned. | ||
| 58 | |||
| 59 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 60 | |||
| 61 | #undef EXPLICIT_SIGN_EXTEND | ||
| 62 | |||
| 63 | /* Data type of load average, as read out of kmem. */ | ||
| 64 | |||
| 65 | #define LOAD_AVE_TYPE double | ||
| 66 | |||
| 67 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 68 | |||
| 69 | #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) | ||
| 70 | |||
| 71 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 72 | Then the function dump-emacs will not be defined | ||
| 73 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 74 | |||
| 75 | #undef CANNOT_DUMP | ||
| 76 | |||
| 77 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 78 | pure and impure space as loaded can vary, and even their | ||
| 79 | relative order cannot be relied on. | ||
| 80 | |||
| 81 | Otherwise Emacs assumes that data space precedes text space, | ||
| 82 | numerically. */ | ||
| 83 | |||
| 84 | #undef VIRT_ADDR_VARIES | ||
| 85 | |||
| 86 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 87 | to change the boundary between the text section and data section | ||
| 88 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 89 | code will not be sharable; but that's better than failing completely. */ | ||
| 90 | |||
| 91 | #undef NO_REMAP | ||
| 92 | |||
| 93 | /* Name of file the to look in | ||
| 94 | for the kernel symbol table (for load average) */ | ||
| 95 | |||
| 96 | #define KERNEL_FILE "/unix" | ||
| 97 | |||
| 98 | /* This triggers some stuff to avoid a compiler bug */ | ||
| 99 | |||
| 100 | #define MASSC_REGISTER_BUG | ||
| 101 | |||
| 102 | /* Prevent -lg from being used for debugging. Not implemented? */ | ||
| 103 | |||
| 104 | #define LIBS_DEBUG | ||
| 105 | |||
| 106 | /* | ||
| 107 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 108 | * for terminal control. | ||
| 109 | */ | ||
| 110 | |||
| 111 | #define HAVE_TERMIO | ||
| 112 | |||
| 113 | /* -lnet is not standard library */ | ||
| 114 | |||
| 115 | #undef LIBS_SYSTEM | ||
| 116 | |||
| 117 | /* Compiler's bug */ | ||
| 118 | |||
| 119 | #define SWITCH_ENUM_BUG | ||
| 120 | |||
| 121 | /* Termcap is available */ | ||
| 122 | |||
| 123 | #define LIBS_TERMCAP -ltermcap | ||
| 124 | |||
| 125 | #define EXEC_PAGESIZE 1024 | ||
| 126 | #define PURESIZE 130000 | ||
| 127 | |||
| 128 | #define BROKEN_SIGIO | ||
| 129 | #define BROKEN_SIGTSTP | ||
| 130 | |||
| 131 | /* arch-tag: 797f1d3e-3077-4eee-a81b-03fcf3a988fe | ||
| 132 | (do not change this comment) */ | ||
diff --git a/src/m/wicat.h b/src/m/wicat.h deleted file mode 100644 index 3ac7b530739..00000000000 --- a/src/m/wicat.h +++ /dev/null | |||
| @@ -1,137 +0,0 @@ | |||
| 1 | /* machine description file for WICAT machines. | ||
| 2 | Copyright (C) 1986, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* The following line tells the configuration script what sort of | ||
| 24 | operating system this machine is likely to run. | ||
| 25 | USUAL-OPSYS="usg5-2" */ | ||
| 26 | |||
| 27 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 28 | is the most significant byte. */ | ||
| 29 | |||
| 30 | #define WORDS_BIG_ENDIAN | ||
| 31 | |||
| 32 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 33 | * group of arguments and treat it as an array of the arguments. */ | ||
| 34 | |||
| 35 | #undef NO_ARG_ARRAY | ||
| 36 | |||
| 37 | /* Define WORD_MACHINE if addresses and such have | ||
| 38 | * to be corrected before they can be used as byte counts. */ | ||
| 39 | |||
| 40 | #undef WORD_MACHINE | ||
| 41 | |||
| 42 | /* Now define a symbol for the cpu type, if your compiler | ||
| 43 | does not define it automatically: | ||
| 44 | vax, m68000, ns16000 are the ones defined so far. */ | ||
| 45 | |||
| 46 | #ifndef m68000 | ||
| 47 | #define m68000 | ||
| 48 | #endif | ||
| 49 | |||
| 50 | /* This flag is used only in alloca.s. */ | ||
| 51 | #define WICAT | ||
| 52 | |||
| 53 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 54 | |||
| 55 | #define NO_UNION_TYPE | ||
| 56 | |||
| 57 | /* XINT must explicitly sign-extend */ | ||
| 58 | |||
| 59 | #define EXPLICIT_SIGN_EXTEND | ||
| 60 | |||
| 61 | /* Data type of load average, as read out of kmem. */ | ||
| 62 | |||
| 63 | #undef LOAD_AVE_TYPE | ||
| 64 | |||
| 65 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 66 | |||
| 67 | #undef LOAD_AVE_CVT | ||
| 68 | |||
| 69 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 70 | Then the function dump-emacs will not be defined | ||
| 71 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 72 | |||
| 73 | #undef CANNOT_DUMP | ||
| 74 | |||
| 75 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 76 | pure and impure space as loaded can vary, and even their | ||
| 77 | relative order cannot be relied on. | ||
| 78 | |||
| 79 | Otherwise Emacs assumes that text space precedes data space, | ||
| 80 | numerically. */ | ||
| 81 | |||
| 82 | #undef VIRT_ADDR_VARIES | ||
| 83 | |||
| 84 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 85 | to change the boundary between the text section and data section | ||
| 86 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 87 | code will not be sharable; but that's better than failing completely. */ | ||
| 88 | |||
| 89 | #undef NO_REMAP | ||
| 90 | |||
| 91 | /* For WICAT, define TAHOE_REGISTER_BUG if you have a pre-4.2 C compiler */ | ||
| 92 | |||
| 93 | #define TAHOE_REGISTER_BUG | ||
| 94 | |||
| 95 | /* pagesize definition */ | ||
| 96 | |||
| 97 | #define EXEC_PAGESIZE 0x1000 | ||
| 98 | |||
| 99 | /* Delete this for WICAT sys V releases before 2.0. */ | ||
| 100 | |||
| 101 | #define LIB_STANDARD -lc-nofp | ||
| 102 | |||
| 103 | /* Special magic number */ | ||
| 104 | |||
| 105 | #define EXEC_MAGIC MC68ROMAGIC | ||
| 106 | |||
| 107 | /* Special switches to give to ld. */ | ||
| 108 | |||
| 109 | #define LD_SWITCH_MACHINE -e __start -N | ||
| 110 | |||
| 111 | /* Sigh...cannot define this for WICAT cuz 0 length memcpy blows chunks */ | ||
| 112 | |||
| 113 | #undef BSTRING | ||
| 114 | |||
| 115 | /* | ||
| 116 | * Define optimflags if you want to optimize. | ||
| 117 | * - Set to null string for pre-4.2 C compiler | ||
| 118 | * - Set to "-O -Wopt,-O-f" for 4.2 | ||
| 119 | */ | ||
| 120 | |||
| 121 | #define C_OPTIMIZE_SWITCH /* -O -Wopt,-O-f */ | ||
| 122 | |||
| 123 | /* For WICAT version supporting PTYs and select (currently internal only) */ | ||
| 124 | |||
| 125 | #ifdef HAVE_PTYS | ||
| 126 | #undef FIRST_PTY_LETTER | ||
| 127 | #define FIRST_PTY_LETTER 'q' | ||
| 128 | #endif | ||
| 129 | |||
| 130 | /* there is a select() in libcurses.a that causes a conflict so use termlib */ | ||
| 131 | #ifdef HAVE_SELECT | ||
| 132 | #undef TERMINFO | ||
| 133 | #define LIBS_TERMCAP select.o -ltermlib | ||
| 134 | #endif | ||
| 135 | |||
| 136 | /* arch-tag: b181c512-0275-4d25-9bbc-be0c8ca7bcad | ||
| 137 | (do not change this comment) */ | ||
diff --git a/src/m/xps100.h b/src/m/xps100.h deleted file mode 100644 index 3b378319ceb..00000000000 --- a/src/m/xps100.h +++ /dev/null | |||
| @@ -1,98 +0,0 @@ | |||
| 1 | /* xps100.h for the Honeywell XPS100 running UNIX System V.2 | ||
| 2 | Mark J. Hewitt (mjh@uk.co.kernel) | ||
| 3 | |||
| 4 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 5 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 6 | |||
| 7 | This file is part of GNU Emacs. | ||
| 8 | |||
| 9 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 10 | it under the terms of the GNU General Public License as published by | ||
| 11 | the Free Software Foundation; either version 3, or (at your option) | ||
| 12 | any later version. | ||
| 13 | |||
| 14 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 15 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 17 | GNU General Public License for more details. | ||
| 18 | |||
| 19 | You should have received a copy of the GNU General Public License | ||
| 20 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 21 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 22 | Boston, MA 02110-1301, USA. */ | ||
| 23 | |||
| 24 | |||
| 25 | /* The following line tells the configuration script what sort of | ||
| 26 | operating system this machine is likely to run. | ||
| 27 | USUAL-OPSYS="usg5-2" */ | ||
| 28 | |||
| 29 | /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word | ||
| 30 | is the most significant byte. */ | ||
| 31 | |||
| 32 | #define WORDS_BIG_ENDIAN | ||
| 33 | |||
| 34 | /* Define NO_ARG_ARRAY if you cannot take the address of the first of a | ||
| 35 | * group of arguments and treat it as an array of the arguments. */ | ||
| 36 | |||
| 37 | /* #define NO_ARG_ARRAY */ | ||
| 38 | |||
| 39 | /* Define WORD_MACHINE if addresses and such have | ||
| 40 | * to be corrected before they can be used as byte counts. */ | ||
| 41 | |||
| 42 | /* #define WORD_MACHINE */ | ||
| 43 | |||
| 44 | /* Now define a symbol for the cpu type, if your compiler | ||
| 45 | does not define it automatically: | ||
| 46 | Ones defined so far include vax, m68000, ns16000, pyramid, | ||
| 47 | orion, tahoe, APOLLO and many others */ | ||
| 48 | |||
| 49 | /* Use type int rather than a union, to represent Lisp_Object */ | ||
| 50 | /* This is desirable for most machines. */ | ||
| 51 | |||
| 52 | #define NO_UNION_TYPE | ||
| 53 | |||
| 54 | /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend | ||
| 55 | the 24-bit bit field into an int. In other words, if bit fields | ||
| 56 | are always unsigned. | ||
| 57 | |||
| 58 | If you use NO_UNION_TYPE, this flag does not matter. */ | ||
| 59 | |||
| 60 | #define EXPLICIT_SIGN_EXTEND | ||
| 61 | |||
| 62 | /* Data type of load average, as read out of kmem. */ | ||
| 63 | |||
| 64 | /* #define LOAD_AVE_TYPE long */ | ||
| 65 | |||
| 66 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 67 | |||
| 68 | /* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */ | ||
| 69 | |||
| 70 | /* Define CANNOT_DUMP on machines where unexec does not work. | ||
| 71 | Then the function dump-emacs will not be defined | ||
| 72 | and temacs will do (load "loadup") automatically unless told otherwise. */ | ||
| 73 | |||
| 74 | /* #define CANNOT_DUMP */ | ||
| 75 | |||
| 76 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 77 | pure and impure space as loaded can vary, and even their | ||
| 78 | relative order cannot be relied on. | ||
| 79 | |||
| 80 | Otherwise Emacs assumes that text space precedes data space, | ||
| 81 | numerically. */ | ||
| 82 | |||
| 83 | /* #define VIRT_ADDR_VARIES */ | ||
| 84 | |||
| 85 | /* Define NO_REMAP if memory segmentation makes it not work well | ||
| 86 | to change the boundary between the text section and data section | ||
| 87 | when Emacs is dumped. If you define this, the preloaded Lisp | ||
| 88 | code will not be sharable; but that's better than failing completely. */ | ||
| 89 | |||
| 90 | #define NO_REMAP | ||
| 91 | #define TERMINFO | ||
| 92 | #define SWITCH_ENUM_BUG | ||
| 93 | #define LIB_STANDARD -lc | ||
| 94 | #define LD_SWITCH_MACHINE -X | ||
| 95 | #define SECTION_ALIGNMENT (0x3ff) | ||
| 96 | |||
| 97 | /* arch-tag: 42316eb5-74b2-4762-970a-e372c6a2783d | ||
| 98 | (do not change this comment) */ | ||
diff --git a/src/s/cxux.h b/src/s/cxux.h deleted file mode 100644 index d5abebf1ae1..00000000000 --- a/src/s/cxux.h +++ /dev/null | |||
| @@ -1,236 +0,0 @@ | |||
| 1 | /* Header file for Harris CXUX. | ||
| 2 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* | ||
| 24 | * Define symbols to identify the version of Unix this is. | ||
| 25 | * Define all the symbols that apply correctly. | ||
| 26 | */ | ||
| 27 | |||
| 28 | /* #define UNIPLUS */ | ||
| 29 | #define USG5 | ||
| 30 | #define USG | ||
| 31 | /* #define HPUX */ | ||
| 32 | /* #define UMAX */ | ||
| 33 | /* #define BSD4_1 */ | ||
| 34 | /* #define BSD4_2 */ | ||
| 35 | /* #define BSD4_3 */ | ||
| 36 | /* #define BSD_SYSTEM */ | ||
| 37 | /* #define VMS */ | ||
| 38 | |||
| 39 | #ifndef _CX_UX | ||
| 40 | #define _CX_UX 1 | ||
| 41 | #endif | ||
| 42 | |||
| 43 | /* Define this symbol if you are running CX/UX 7.0 or later (7.0 introduced | ||
| 44 | * support for ELF files, and while we still build emacs in COFF format, the | ||
| 45 | * way it is linked is different for 7.0). | ||
| 46 | */ | ||
| 47 | /* #define USING_CX_UX_7 */ | ||
| 48 | |||
| 49 | #ifdef USING_CX_UX_7 | ||
| 50 | #define LINKER /usr/sde/coff/usr/bin/ld | ||
| 51 | #define LD_SWITCH_SYSTEM -L/usr/sde/coff/usr/lib -zzero_word | ||
| 52 | #define START_FILES pre-crt0.o /usr/sde/coff/usr/lib/crt0.o /usr/sde/coff/usr/lib/m88100.o | ||
| 53 | #else /* !USING_CX_UX_7 */ | ||
| 54 | #ifdef _M88K | ||
| 55 | #define START_FILES pre-crt0.o /lib/crt0.o | ||
| 56 | #else | ||
| 57 | #define START_FILES cxux-crt0.o /lib/crt0.o | ||
| 58 | #endif | ||
| 59 | #endif /* USING_CX_UX_7 */ | ||
| 60 | |||
| 61 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 62 | It sets the Lisp variable system-type. */ | ||
| 63 | |||
| 64 | #define SYSTEM_TYPE "usg-unix-v" | ||
| 65 | |||
| 66 | #define C_SWITCH_SYSTEM -Xa | ||
| 67 | |||
| 68 | #define POSIX_SIGNALS | ||
| 69 | |||
| 70 | /* With POSIX signals, also need to use sigaction rather than signal to | ||
| 71 | * setup signal handlers | ||
| 72 | */ | ||
| 73 | #define signal sys_signal | ||
| 74 | |||
| 75 | /* NOMULTIPLEJOBS should be defined if your system's shell | ||
| 76 | does not have "job control" (the ability to stop a program, | ||
| 77 | run some other program, then continue the first one). */ | ||
| 78 | |||
| 79 | /* #define NOMULTIPLEJOBS */ | ||
| 80 | |||
| 81 | /* Emacs can read input using SIGIO and buffering characters itself, | ||
| 82 | or using CBREAK mode and making C-g cause SIGINT. | ||
| 83 | The choice is controlled by the variable interrupt_input. | ||
| 84 | |||
| 85 | Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) | ||
| 86 | |||
| 87 | Emacs uses the presence or absence of the SIGIO macro to indicate | ||
| 88 | whether or not signal-driven I/O is possible. It uses | ||
| 89 | INTERRUPT_INPUT to decide whether to use it by default. | ||
| 90 | |||
| 91 | SIGIO can be used only on systems that implement it (4.2 and 4.3). | ||
| 92 | CBREAK mode has two disadvantages | ||
| 93 | 1) At least in 4.2, it is impossible to handle the Meta key properly. | ||
| 94 | I hear that in system V this problem does not exist. | ||
| 95 | 2) Control-G causes output to be discarded. | ||
| 96 | I do not know whether this can be fixed in system V. | ||
| 97 | |||
| 98 | Another method of doing input is planned but not implemented. | ||
| 99 | It would have Emacs fork off a separate process | ||
| 100 | to read the input and send it to the true Emacs process | ||
| 101 | through a pipe. */ | ||
| 102 | |||
| 103 | #define INTERRUPT_INPUT | ||
| 104 | /* #define BROKEN_FIONREAD */ | ||
| 105 | |||
| 106 | /* Letter to use in finding device name of first pty, | ||
| 107 | if system supports pty's. 'a' means it is /dev/ptya0 */ | ||
| 108 | |||
| 109 | #define FIRST_PTY_LETTER 'A' | ||
| 110 | #define PTY_ITERATION for (c = 'A'; c <= 'P'; c++) for (i = 0; i < 16; i++) | ||
| 111 | |||
| 112 | /* | ||
| 113 | * Define HAVE_TERMIOS if the system provides POSIX-style | ||
| 114 | * functions and macros for terminal control. | ||
| 115 | * | ||
| 116 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 117 | * for terminal control. | ||
| 118 | * | ||
| 119 | * Do not define both. HAVE_TERMIOS is preferred, if it is | ||
| 120 | * supported on your system. | ||
| 121 | */ | ||
| 122 | |||
| 123 | #define HAVE_TERMIOS | ||
| 124 | /* #define HAVE_TERMIO */ | ||
| 125 | #define NO_TERMIO | ||
| 126 | |||
| 127 | /* | ||
| 128 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 129 | */ | ||
| 130 | |||
| 131 | #define HAVE_PTYS | ||
| 132 | |||
| 133 | /* | ||
| 134 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 135 | * The 4.2 opendir, etc., library functions. | ||
| 136 | */ | ||
| 137 | |||
| 138 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 139 | |||
| 140 | #define SYSV_SYSTEM_DIR | ||
| 141 | |||
| 142 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 143 | |||
| 144 | #define BSTRING | ||
| 145 | |||
| 146 | /* subprocesses should be defined if you want to | ||
| 147 | have code for asynchronous subprocesses | ||
| 148 | (as used in M-x compile and M-x shell). | ||
| 149 | This is generally OS dependent, and not supported | ||
| 150 | under most USG systems. */ | ||
| 151 | |||
| 152 | #define subprocesses | ||
| 153 | |||
| 154 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 155 | preprocessor symbol "COFF". */ | ||
| 156 | |||
| 157 | #define COFF | ||
| 158 | |||
| 159 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 160 | to interlock access to /usr/spool/mail/$USER. | ||
| 161 | The alternative is that a lock file named | ||
| 162 | /usr/spool/mail/$USER.lock. */ | ||
| 163 | |||
| 164 | #define MAIL_USE_FLOCK | ||
| 165 | |||
| 166 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 167 | so that Emacs can tell instantly when you try to modify | ||
| 168 | a file that someone else has modified in his Emacs. */ | ||
| 169 | |||
| 170 | #define CLASH_DETECTION | ||
| 171 | |||
| 172 | /* Define this if your operating system declares signal handlers to | ||
| 173 | have a type other than the usual. `The usual' is `void' for ANSI C | ||
| 174 | systems (i.e. when the __STDC__ macro is defined), and `int' for | ||
| 175 | pre-ANSI systems. If you're using GCC on an older system, __STDC__ | ||
| 176 | will be defined, but the system's include files will still say that | ||
| 177 | signal returns int or whatever; in situations like that, define | ||
| 178 | this to be what the system's include files want. */ | ||
| 179 | /* #define SIGTYPE int */ | ||
| 180 | #define SIGTYPE void | ||
| 181 | |||
| 182 | /* If the character used to separate elements of the executable path | ||
| 183 | is not ':', #define this to be the appropriate character constant. */ | ||
| 184 | /* #define SEPCHAR ':' */ | ||
| 185 | |||
| 186 | /* Here, on a separate page, add any special hacks needed | ||
| 187 | to make Emacs work on this system. For example, | ||
| 188 | you might define certain system call names that don't | ||
| 189 | exist on your system, or that do different things on | ||
| 190 | your system and must be used only through an encapsulation | ||
| 191 | (Which you should place, by convention, in sysdep.c). */ | ||
| 192 | |||
| 193 | /* Yes! The Night Hawk has sockets! */ | ||
| 194 | |||
| 195 | #define HAVE_SOCKETS | ||
| 196 | |||
| 197 | /* The symbol in the kernel where the load average is found | ||
| 198 | is named _avenrun. */ | ||
| 199 | |||
| 200 | #define LDAV_SYMBOL "_avenrun" | ||
| 201 | |||
| 202 | #define KERNEL_FILE "/unix" | ||
| 203 | |||
| 204 | /* There are too many kludges required to redefine malloc - use the system | ||
| 205 | one */ | ||
| 206 | #define SYSTEM_MALLOC | ||
| 207 | |||
| 208 | #define _setjmp setjmp | ||
| 209 | #define _longjmp longjmp | ||
| 210 | |||
| 211 | /* const really does work, but I can't get configure to run the C compiler | ||
| 212 | * with the right options so it figures that out. | ||
| 213 | */ | ||
| 214 | #undef const | ||
| 215 | |||
| 216 | #ifdef sigmask | ||
| 217 | #undef sigmask | ||
| 218 | #endif | ||
| 219 | |||
| 220 | /* | ||
| 221 | * <pwd.h> already declares getpwuid, and with a uid_t argument in ANSI C | ||
| 222 | * mode. Define this so xrdb.c will compile | ||
| 223 | */ | ||
| 224 | #ifdef __STDC__ | ||
| 225 | #define DECLARE_GETPWUID_WITH_UID_T | ||
| 226 | #endif | ||
| 227 | |||
| 228 | /* Some compilers tend to put everything declared static | ||
| 229 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 230 | On these systems, you must #define static as nothing to foil this. | ||
| 231 | Note that emacs carefully avoids static vars inside functions. */ | ||
| 232 | |||
| 233 | /* #define static */ | ||
| 234 | |||
| 235 | /* arch-tag: 5febe5fe-f0b0-49cb-9280-9d5a9fa43710 | ||
| 236 | (do not change this comment) */ | ||
diff --git a/src/s/cxux7.h b/src/s/cxux7.h deleted file mode 100644 index b9ecf45f6bb..00000000000 --- a/src/s/cxux7.h +++ /dev/null | |||
| @@ -1,10 +0,0 @@ | |||
| 1 | /* Define this symbol if you are running CX/UX 7.0 or later (7.0 introduced | ||
| 2 | * support for ELF files, and while we still build emacs in COFF format, the | ||
| 3 | * way it is linked is different for 7.0). | ||
| 4 | */ | ||
| 5 | #define USING_CX_UX_7 | ||
| 6 | |||
| 7 | #include "cxux.h" | ||
| 8 | |||
| 9 | /* arch-tag: 520cfbad-fd5c-4b3b-ace4-66e9bcd31a60 | ||
| 10 | (do not change this comment) */ | ||
diff --git a/src/s/dgux.h b/src/s/dgux.h deleted file mode 100644 index f7ce0a6fd38..00000000000 --- a/src/s/dgux.h +++ /dev/null | |||
| @@ -1,355 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Data General's DG/UX | ||
| 2 | version 4.32 upto and including 5.4.1. | ||
| 3 | Copyright (C) 1994, 1999, 2001, 2002, 2003, 2004, | ||
| 4 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | /* | ||
| 24 | * Define symbols to identify the version of Unix this is. | ||
| 25 | * Define all the symbols that apply correctly. | ||
| 26 | */ | ||
| 27 | |||
| 28 | /* #define UNIPLUS */ | ||
| 29 | /* #define USG5 */ | ||
| 30 | /* #define USG */ | ||
| 31 | /* #define HPUX */ | ||
| 32 | /* #define UMAX */ | ||
| 33 | /* #define BSD4_1 */ | ||
| 34 | #define BSD4_2 | ||
| 35 | #define BSD4_3 | ||
| 36 | #define BSD4_4 | ||
| 37 | #define BSD_SYSTEM | ||
| 38 | |||
| 39 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 40 | It sets the Lisp variable system-type. */ | ||
| 41 | |||
| 42 | #define SYSTEM_TYPE "dgux" | ||
| 43 | |||
| 44 | /* NOMULTIPLEJOBS should be defined if your system's shell | ||
| 45 | does not have "job control" (the ability to stop a program, | ||
| 46 | run some other program, then continue the first one). */ | ||
| 47 | |||
| 48 | /* #define NOMULTIPLEJOBS */ | ||
| 49 | |||
| 50 | /* Emacs can read input using SIGIO and buffering characters itself, | ||
| 51 | or using CBREAK mode and making C-g cause SIGINT. | ||
| 52 | The choice is controlled by the variable interrupt_input. | ||
| 53 | Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) | ||
| 54 | |||
| 55 | SIGIO can be used only on systems that implement it (4.2 and 4.3). | ||
| 56 | CBREAK mode has two disadvantages | ||
| 57 | 1) At least in 4.2, it is impossible to handle the Meta key properly. | ||
| 58 | I hear that in system V this problem does not exist. | ||
| 59 | 2) Control-G causes output to be discarded. | ||
| 60 | I do not know whether this can be fixed in system V. | ||
| 61 | |||
| 62 | Another method of doing input is planned but not implemented. | ||
| 63 | It would have Emacs fork off a separate process | ||
| 64 | to read the input and send it to the true Emacs process | ||
| 65 | through a pipe. | ||
| 66 | |||
| 67 | */ | ||
| 68 | |||
| 69 | #define INTERRUPT_INPUT | ||
| 70 | |||
| 71 | /* | ||
| 72 | * Define HAVE_SOCKETS if the system supports sockets. | ||
| 73 | */ | ||
| 74 | |||
| 75 | #define HAVE_SOCKETS | ||
| 76 | |||
| 77 | /* | ||
| 78 | * Define HAVE_UNIX_DOMAIN if the system supports Unix | ||
| 79 | * domain sockets. | ||
| 80 | */ | ||
| 81 | |||
| 82 | #define HAVE_UNIX_DOMAIN | ||
| 83 | |||
| 84 | /* | ||
| 85 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 86 | */ | ||
| 87 | |||
| 88 | #define HAVE_PTYS | ||
| 89 | |||
| 90 | /* | ||
| 91 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 92 | * The 4.2 opendir, etc., library functions. | ||
| 93 | */ | ||
| 94 | |||
| 95 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 96 | |||
| 97 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 98 | |||
| 99 | #define BSTRING | ||
| 100 | |||
| 101 | /* subprocesses should be defined if you want to | ||
| 102 | have code for asynchronous subprocesses | ||
| 103 | (as used in M-x compile and M-x shell). | ||
| 104 | This is generally OS dependent, and not supported | ||
| 105 | under most USG systems. */ | ||
| 106 | |||
| 107 | #define subprocesses | ||
| 108 | |||
| 109 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 110 | preprocessor symbol "COFF". | ||
| 111 | |||
| 112 | DGUX can use either COFF or ELF; the default is ELF. | ||
| 113 | To compile for COFF (or BCS) use the TARGET_BINARY_INTERFACE | ||
| 114 | environment variable. */ | ||
| 115 | |||
| 116 | #if defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) | ||
| 117 | #undef ELF | ||
| 118 | #ifndef COFF | ||
| 119 | #define COFF | ||
| 120 | #endif /* COFF */ | ||
| 121 | #else /* defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) */ | ||
| 122 | #undef COFF | ||
| 123 | #ifndef ELF | ||
| 124 | #define ELF | ||
| 125 | #endif /* ELF */ | ||
| 126 | #endif /* defined(_DGUXCOFF_TARGET) || defined(_DGUXBCS_TARGET) */ | ||
| 127 | |||
| 128 | #ifndef COFF /* People will probably find this apparently unreliable | ||
| 129 | till the NFS dumping bug is fixed. */ | ||
| 130 | |||
| 131 | /* It is possible to undump to ELF with DG/UX 5.4, but for revisions below | ||
| 132 | 5.4.1 the undump MUST be done on a local file system, or the kernel will | ||
| 133 | panic. ELF executables have the advantage of using shared libraries, | ||
| 134 | while COFF executables will still work on 4.2x systems. */ | ||
| 135 | |||
| 136 | #define UNEXEC unexelf.o | ||
| 137 | |||
| 138 | /* This makes sure that all segments in the executable are undumped, | ||
| 139 | not just text, data, and bss. In the case of Mxdb and shared | ||
| 140 | libraries, additional information is stored in other sections. | ||
| 141 | It does not hurt to have this defined if you don't use Mxdb or | ||
| 142 | shared libraries. In fact, it makes no difference. */ | ||
| 143 | |||
| 144 | /* Necessary for shared libraries and Mxdb debugging information. */ | ||
| 145 | #define USG_SHARED_LIBRARIES | ||
| 146 | #endif | ||
| 147 | |||
| 148 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 149 | to interlock access to /usr/spool/mail/$USER. | ||
| 150 | The alternative is that a lock file named | ||
| 151 | /usr/spool/mail/$USER.lock. */ | ||
| 152 | |||
| 153 | /* #define MAIL_USE_FLOCK */ | ||
| 154 | |||
| 155 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 156 | so that Emacs can tell instantly when you try to modify | ||
| 157 | a file that someone else has modified in his Emacs. */ | ||
| 158 | |||
| 159 | /* #define CLASH_DETECTION */ | ||
| 160 | |||
| 161 | /* Define a replacement for the baud rate switch, since DG/UX uses a different | ||
| 162 | from BSD. */ | ||
| 163 | |||
| 164 | #define BAUD_CONVERT { 0, 110, 134, 150, 300, 600, 1200, 1800, 2400, \ | ||
| 165 | 4800, 9600, 19200, 38400 } | ||
| 166 | |||
| 167 | /* | ||
| 168 | * Make WM Interface Compliant. | ||
| 169 | */ | ||
| 170 | |||
| 171 | #define XICCC | ||
| 172 | |||
| 173 | /* Here, on a separate page, add any special hacks needed | ||
| 174 | to make Emacs work on this system. For example, | ||
| 175 | you might define certain system call names that don't | ||
| 176 | exist on your system, or that do different things on | ||
| 177 | your system and must be used only through an encapsulation | ||
| 178 | (Which you should place, by convention, in sysdep.c). */ | ||
| 179 | |||
| 180 | /* Some compilers tend to put everything declared static | ||
| 181 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 182 | On these systems, you must #define static as nothing to foil this. | ||
| 183 | Note that emacs carefully avoids static vars inside functions. */ | ||
| 184 | |||
| 185 | /* #define static */ | ||
| 186 | |||
| 187 | /* DG/UX SPECIFIC ADDITIONS TO TEMPLATE FOLLOW: */ | ||
| 188 | |||
| 189 | /* Use the Berkeley flavors of the library routines, instead of System V. */ | ||
| 190 | |||
| 191 | #define setpgrp(pid,pgrp) setpgrp2(pid,pgrp) | ||
| 192 | #define getpgrp(pid) getpgrp2(pid) | ||
| 193 | |||
| 194 | /* Act like Berkeley. */ | ||
| 195 | |||
| 196 | #define _setjmp(env) sigsetjmp(env,0) | ||
| 197 | #define _longjmp(env,val) longjmp(env,val) | ||
| 198 | |||
| 199 | /* Use TERMINFO instead of termcap */ | ||
| 200 | |||
| 201 | #define TERMINFO | ||
| 202 | |||
| 203 | /* | ||
| 204 | * Send signals to subprocesses using characters. | ||
| 205 | * | ||
| 206 | */ | ||
| 207 | |||
| 208 | #define SIGNALS_VIA_CHARACTERS | ||
| 209 | |||
| 210 | /* | ||
| 211 | * Define HAVE_TERMIOS since this is POSIX, | ||
| 212 | * for terminal control. Prevent redundant inclusion of termio.h. | ||
| 213 | */ | ||
| 214 | |||
| 215 | #define HAVE_TERMIOS | ||
| 216 | #define NO_TERMIO | ||
| 217 | |||
| 218 | /* | ||
| 219 | * Use a Berkeley style sys/wait.h. | ||
| 220 | * This makes WIF* macros operate on structures instead of ints. | ||
| 221 | */ | ||
| 222 | |||
| 223 | #define _BSD_WAIT_FLAVOR | ||
| 224 | |||
| 225 | /* | ||
| 226 | * Use BSD and POSIX-style signals. This is crucial! | ||
| 227 | */ | ||
| 228 | |||
| 229 | /* #define SYSTEM_MALLOC */ | ||
| 230 | |||
| 231 | /* MAKING_MAKEFILE must be defined in "ymakefile" before including config.h */ | ||
| 232 | #ifndef NOT_C_CODE | ||
| 233 | |||
| 234 | /* Make sure signal.h is included so macros below don't mess with it. */ | ||
| 235 | /* DG/UX include files prevent multiple inclusion. */ | ||
| 236 | |||
| 237 | #include <signal.h> | ||
| 238 | |||
| 239 | /* but undefine the sigmask and sigpause macros since they will get | ||
| 240 | #define'd later. */ | ||
| 241 | #undef sigmask | ||
| 242 | #undef sigpause | ||
| 243 | |||
| 244 | #define POSIX_SIGNALS | ||
| 245 | |||
| 246 | #ifndef NO_DGUX_SIGNAL_REDEF | ||
| 247 | /* Can't use sys_signal because then etc/server.c would need sysdep.o. */ | ||
| 248 | extern struct sigaction act, oact; | ||
| 249 | #define signal(SIG,FUNC) berk_signal(SIG,FUNC) | ||
| 250 | #endif | ||
| 251 | |||
| 252 | #endif /* not NOT_C_CODE */ | ||
| 253 | |||
| 254 | #ifndef __GNUC__ | ||
| 255 | #error You must use GCC to compiler Emascs on DGUX | ||
| 256 | #endif | ||
| 257 | |||
| 258 | #define ORDINARY_LINK | ||
| 259 | #define START_FILES pre-crt0.o | ||
| 260 | #define LIB_GCC /usr/lib/gcc/libgcc.a | ||
| 261 | |||
| 262 | #ifdef _M88KBCS_TARGET | ||
| 263 | /* Karl Berry says: the environment | ||
| 264 | recommended by gcc (88/open, a.k.a. m88kbcs) doesn't support some system | ||
| 265 | functions, and gcc doesn't make it easy to switch environments. */ | ||
| 266 | #define NO_GET_LOAD_AVG | ||
| 267 | #endif | ||
| 268 | |||
| 269 | /* definitions for xmakefile production */ | ||
| 270 | #ifdef COFF | ||
| 271 | |||
| 272 | /* Define the following to use all of the available pty's. */ | ||
| 273 | |||
| 274 | #define PTY_ITERATION \ | ||
| 275 | for (c = 'p'; c < 't'; c++) \ | ||
| 276 | for (i = 0; (((c == 'p') && (i < 64)) || ((c != 'p') && (i < 16))); i++) | ||
| 277 | |||
| 278 | #define PTY_NAME_SPRINTF \ | ||
| 279 | if (c == 'p') \ | ||
| 280 | sprintf (pty_name, "/dev/pty%c%d", c, i); \ | ||
| 281 | else \ | ||
| 282 | sprintf (pty_name, "/dev/pty%c%x", c, i); | ||
| 283 | |||
| 284 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 285 | if (c == 'p') \ | ||
| 286 | sprintf (pty_name, "/dev/tty%c%d", c, i); \ | ||
| 287 | else \ | ||
| 288 | sprintf (pty_name, "/dev/tty%c%x", c, i); | ||
| 289 | |||
| 290 | #define C_DEBUG_SWITCH -g | ||
| 291 | |||
| 292 | #else /* not COFF */ | ||
| 293 | |||
| 294 | /* We are generating ELF object format. This makes the system more | ||
| 295 | SVR4 like. */ | ||
| 296 | |||
| 297 | #define SVR4 | ||
| 298 | |||
| 299 | /* Pseudo-terminal support under SVR4 only loops to deal with errors. */ | ||
| 300 | |||
| 301 | #define PTY_ITERATION for (i = 0; i < 1; i++) | ||
| 302 | |||
| 303 | /* This sets the name of the master side of the PTY. */ | ||
| 304 | |||
| 305 | #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptmx"); | ||
| 306 | |||
| 307 | /* This sets the name of the slave side of the PTY. On SysVr4, | ||
| 308 | grantpt(3) forks a subprocess, so keep sigchld_handler() from | ||
| 309 | intercepting that death. If any child but grantpt's should die | ||
| 310 | within, it should be caught after sigrelse(2). */ | ||
| 311 | |||
| 312 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 313 | { \ | ||
| 314 | char *ptsname(), *ptyname; \ | ||
| 315 | \ | ||
| 316 | sigblock(sigmask(SIGCLD)); \ | ||
| 317 | if (grantpt(fd) == -1) \ | ||
| 318 | fatal("could not grant slave pty"); \ | ||
| 319 | sigunblock(sigmask(SIGCLD)); \ | ||
| 320 | if (unlockpt(fd) == -1) \ | ||
| 321 | fatal("could not unlock slave pty"); \ | ||
| 322 | if (!(ptyname = ptsname(fd))) \ | ||
| 323 | fatal ("could not enable slave pty"); \ | ||
| 324 | strncpy(pty_name, ptyname, sizeof(pty_name)); \ | ||
| 325 | pty_name[sizeof(pty_name) - 1] = 0; \ | ||
| 326 | } | ||
| 327 | |||
| 328 | /* Push various streams modules onto a PTY channel. */ | ||
| 329 | |||
| 330 | #define SETUP_SLAVE_PTY \ | ||
| 331 | if (ioctl (xforkin, I_PUSH, "ptem") == -1) \ | ||
| 332 | fatal ("ioctl I_PUSH ptem", errno); \ | ||
| 333 | if (ioctl (xforkin, I_PUSH, "ldterm") == -1) \ | ||
| 334 | fatal ("ioctl I_PUSH ldterm", errno); \ | ||
| 335 | if (ioctl (xforkin, I_PUSH, "ttcompat") == -1) \ | ||
| 336 | fatal ("ioctl I_PUSH ttcompat", errno); | ||
| 337 | |||
| 338 | #ifdef __GNUC__ | ||
| 339 | #define C_DEBUG_SWITCH -g -V2 -mversion-03.00 -mstandard | ||
| 340 | #endif | ||
| 341 | |||
| 342 | #endif /* ELF */ | ||
| 343 | |||
| 344 | /* Extra stuff which probably should be someplace else but is here out | ||
| 345 | of expediency. */ | ||
| 346 | |||
| 347 | #define LIB_X11_LIB -lX11 | ||
| 348 | #define LIB_MOTIF -lXm -lgen | ||
| 349 | |||
| 350 | /* Process groups work in the traditional BSD manner. */ | ||
| 351 | |||
| 352 | #define BSD_PGRPS | ||
| 353 | |||
| 354 | /* arch-tag: 1b6d117d-82d2-4480-a6d0-3f7a8360f658 | ||
| 355 | (do not change this comment) */ | ||
diff --git a/src/s/dgux4.h b/src/s/dgux4.h deleted file mode 100644 index bf5a1b0e597..00000000000 --- a/src/s/dgux4.h +++ /dev/null | |||
| @@ -1,144 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Data General's DG/UX | ||
| 2 | Release 4.10 and above. | ||
| 3 | Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, | ||
| 4 | 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | /* This file was written by Roderick Schertler <roderick@ibcinc.com>, | ||
| 24 | contact me if you have problems with or comments about running Emacs | ||
| 25 | on dgux. | ||
| 26 | |||
| 27 | A number of things in the older dgux*.h files don't make sense to me, | ||
| 28 | but since I'm relying on memory and I don't have any older dgux | ||
| 29 | systems installed on which to test changes I'm undoing or fixing them | ||
| 30 | here rather than fixing them at the source. */ | ||
| 31 | |||
| 32 | /* In dgux.h it says "Can't use sys_signal because then etc/server.c | ||
| 33 | would need sysdep.o." and then it #defines signal() to be | ||
| 34 | berk_signal(), but emacsserver.c does `#undef signal' anyway, so that | ||
| 35 | doesn't make sense. | ||
| 36 | |||
| 37 | Further, sys_signal() in sysdep.c already had a special case for | ||
| 38 | #ifdef DGUX, it called berk_signal() explicitly. I've removed that | ||
| 39 | special case because it also didn't make sense: All versions of dgux | ||
| 40 | which the dgux*.h headers take into account have POSIX signals | ||
| 41 | (POSIX_SIGNALS is #defined in dgux.h). The comments in sys_signal() | ||
| 42 | even acknowledged this (saying that the special berk_signal() case | ||
| 43 | wasn't really necessary), they said that sys_signal() was using | ||
| 44 | berk_signal() instead of sigaction() for efficiency. Since both give | ||
| 45 | reliable signals neither has to be invoked within the handler. If | ||
| 46 | the efficiency that the comments were talking about is the overhead | ||
| 47 | of setting up the sigaction struct rather than just passing the | ||
| 48 | function pointer in (which is the only efficiency I can think of) | ||
| 49 | then that's a needless optimization, the Emacs sources do better | ||
| 50 | without the special case. | ||
| 51 | |||
| 52 | The following definition will prevent dgux.h from re-defining | ||
| 53 | signal(). I can't just say `#undef signal' after including dgux.h | ||
| 54 | because signal() is already a macro, defined in <sys/signal.h>, and | ||
| 55 | the original definition would be lost. */ | ||
| 56 | #define NO_DGUX_SIGNAL_REDEF | ||
| 57 | |||
| 58 | #include "dgux5-4-3.h" | ||
| 59 | |||
| 60 | #define LIBS_DEBUG /* nothing, -lg doesn't exist */ | ||
| 61 | #define LIBS_SYSTEM -lsocket -lnsl | ||
| 62 | |||
| 63 | #ifndef NOT_C_CODE | ||
| 64 | |||
| 65 | /* dgux.h defines _setjmp() to be sigsetjmp(), but it defines _longjmp | ||
| 66 | to be longjmp() rather than siglongjmp(). Further, it doesn't define | ||
| 67 | jmp_buf, so sigsetjmp() is being called with a jmp_buf rather than a | ||
| 68 | sigjmp_buf, and the buffer is then passed to vanilla longjmp(). This | ||
| 69 | provides a more complete emulation of the Berkeley semantics. */ | ||
| 70 | |||
| 71 | #include <setjmp.h> | ||
| 72 | #undef jmp_buf | ||
| 73 | #undef _setjmp | ||
| 74 | #undef setjmp | ||
| 75 | #undef _longjmp | ||
| 76 | #undef longjmp | ||
| 77 | #define jmp_buf sigjmp_buf | ||
| 78 | #define _setjmp(env) sigsetjmp(env, 0) | ||
| 79 | #define setjmp(env) sigsetjmp(env, 1) | ||
| 80 | #define _longjmp siglongjmp | ||
| 81 | #define longjmp siglongjmp | ||
| 82 | |||
| 83 | /* The BAUD_CONVERT definition in dgux.h is wrong with this version | ||
| 84 | of dgux, but I'm not sure when it changed. | ||
| 85 | |||
| 86 | With the current system Emacs' standard handling of ospeed and | ||
| 87 | baud_rate don't work. The baud values (B9600 and so on) returned by | ||
| 88 | cfgetospeed() aren't compatible with those used by ospeed. speed_t, | ||
| 89 | the type returned by cfgetospeed(), is unsigned long and speed_t | ||
| 90 | values are large. Further, it isn't possible to get at both the | ||
| 91 | SysV3 (ospeed) and POSIX (cfgetospeed()) values through symbolic | ||
| 92 | constants simultaneously because they both use the same names | ||
| 93 | (B9600). To get both baud_rate and ospeed right at the same time | ||
| 94 | it's necessary to hardcode the values for one set of values, here I'm | ||
| 95 | hardcoding ospeed. */ | ||
| 96 | #undef BAUD_CONVERT | ||
| 97 | #define INIT_BAUD_RATE() \ | ||
| 98 | struct termios sg; \ | ||
| 99 | \ | ||
| 100 | tcgetattr (input_fd, &sg); \ | ||
| 101 | switch (cfgetospeed (&sg)) { \ | ||
| 102 | case B50: baud_rate = 50; ospeed = 0x1; break; \ | ||
| 103 | case B75: baud_rate = 75; ospeed = 0x2; break; \ | ||
| 104 | case B110: baud_rate = 110; ospeed = 0x3; break; \ | ||
| 105 | case B134: baud_rate = 134; ospeed = 0x4; break; \ | ||
| 106 | case B150: baud_rate = 150; ospeed = 0x5; break; \ | ||
| 107 | case B200: baud_rate = 200; ospeed = 0x6; break; \ | ||
| 108 | case B300: baud_rate = 300; ospeed = 0x7; break; \ | ||
| 109 | case B600: baud_rate = 600; ospeed = 0x8; break; \ | ||
| 110 | default: \ | ||
| 111 | case B1200: baud_rate = 1200; ospeed = 0x9; break; \ | ||
| 112 | case B1800: baud_rate = 1800; ospeed = 0xa; break; \ | ||
| 113 | case B2400: baud_rate = 2400; ospeed = 0xb; break; \ | ||
| 114 | case B4800: baud_rate = 4800; ospeed = 0xc; break; \ | ||
| 115 | case B9600: baud_rate = 9600; ospeed = 0xd; break; \ | ||
| 116 | case B19200: baud_rate = 19200; ospeed = 0xe; break; \ | ||
| 117 | case B38400: baud_rate = 38400; ospeed = 0xf; break; \ | ||
| 118 | } \ | ||
| 119 | return; | ||
| 120 | |||
| 121 | |||
| 122 | #if 0 /* Ehud Karni <ehud@unix.simonwiesel.co.il> says that the problem | ||
| 123 | still exists on m88k-dg-dguxR4.11MU04 and i586-dg-dguxR4.11MU04. */ | ||
| 124 | /* The `stop on tty output' problem which occurs when using | ||
| 125 | INTERRUPT_INPUT and when Emacs is invoked under X11 using a job | ||
| 126 | control shell (csh, ksh, etc.) in the background doesn't look to be | ||
| 127 | present in R4.11. (At least, I can't reproduce it using jsh, csh, | ||
| 128 | ksh or zsh.) */ | ||
| 129 | #undef BROKEN_FIONREAD | ||
| 130 | #define INTERRUPT_INPUT | ||
| 131 | #endif /* 0 - never */ | ||
| 132 | |||
| 133 | /* In R4.11 (or maybe R4.10, I don't have a system with that version | ||
| 134 | loaded) some of the internal stdio semantics were changed. One I | ||
| 135 | found while working on MH is that _cnt has to be 0 before _filbuf() | ||
| 136 | is called. Another is that (_ptr - _base) doesn't indicate how many | ||
| 137 | characters are waiting to be sent. I can't spot a good way to get | ||
| 138 | that info from the FILE internals. */ | ||
| 139 | #define PENDING_OUTPUT_COUNT(FILE) (1) | ||
| 140 | |||
| 141 | #endif /* NOT_C_CODE */ | ||
| 142 | |||
| 143 | /* arch-tag: c7013e7b-6e2e-44f2-ba61-90b6d5e2ea45 | ||
| 144 | (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 d959b8c6f1b..00000000000 --- a/src/s/dgux5-4-3.h +++ /dev/null | |||
| @@ -1,68 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Data General's DG/UX | ||
| 2 | version 5.4 Release 3.00 and above. | ||
| 3 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, | ||
| 4 | 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | /* NOTE: DGUX5.4R3.00 will not build with the delivered gcc-2.4.5 | ||
| 24 | compiler. You must upgraded to at least gcc-2.5.8. If you are | ||
| 25 | running DGUX 5.4R3.00 check on the system dg-rtp.dg.com:/pub/gnu | ||
| 26 | for gcc-2.5.8 or later compiler. | ||
| 27 | -pmr@pajato.com */ | ||
| 28 | |||
| 29 | #include "dgux5-4r2.h" | ||
| 30 | |||
| 31 | /* DGUX 5.4R3.00 brought the definition of `struct inet_addr' into | ||
| 32 | compliance with the majority of Unix systems. The workaround | ||
| 33 | introduced in 5.4R2 is no longer necessary. */ | ||
| 34 | |||
| 35 | #ifdef HAVE_BROKEN_INET_ADDR | ||
| 36 | #undef HAVE_BROKEN_INET_ADDR | ||
| 37 | #endif | ||
| 38 | |||
| 39 | /* The `stop on tty output' problem which occurs when using | ||
| 40 | INTERRUPT_INPUT and when Emacs is invoked under X11 using a job | ||
| 41 | control shell (csh, ksh, etc.) in the background has not been fixed in | ||
| 42 | DGUX 5.4R3.00. | ||
| 43 | -pmr@pajato.com */ | ||
| 44 | |||
| 45 | #if 0 | ||
| 46 | #ifdef BROKEN_FIONREAD | ||
| 47 | #undef BROKEN_FIONREAD | ||
| 48 | #endif | ||
| 49 | #ifndef INTERRUPT_INPUT | ||
| 50 | #define INTERRUPT_INPUT | ||
| 51 | #endif | ||
| 52 | #endif | ||
| 53 | |||
| 54 | /* Under DGUX 5.4R3.00, getting a debuggable executable has been | ||
| 55 | greatly simplified and applies to either COFF or ELF | ||
| 56 | environments. */ | ||
| 57 | |||
| 58 | #ifdef C_DEBUG_SWITCH | ||
| 59 | #undef C_DEBUG_SWITCH | ||
| 60 | #define C_DEBUG_SWITCH -g | ||
| 61 | #endif | ||
| 62 | |||
| 63 | /* This is needed according to Ehud Karni <ehud@unix.simonwiesel.co.il> | ||
| 64 | for m88k-dg-dgux5.4R3.10. */ | ||
| 65 | #undef BSD_PGRPS | ||
| 66 | |||
| 67 | /* arch-tag: c11938c9-0cb0-4652-88aa-7eb80bf1cda9 | ||
| 68 | (do not change this comment) */ | ||
diff --git a/src/s/dgux5-4r2.h b/src/s/dgux5-4r2.h deleted file mode 100644 index 570e90e9ac1..00000000000 --- a/src/s/dgux5-4r2.h +++ /dev/null | |||
| @@ -1,51 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Data General's DG/UX | ||
| 2 | 5.4 Release 2.xx systems. | ||
| 3 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, | ||
| 4 | 2006, 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | #include "dgux.h" | ||
| 24 | |||
| 25 | /* There is a known kernel bug in DGUX 5.4R2.xx when using | ||
| 26 | INTERRUPT_INPUT and invoking Emacs with a job control shell (csh, | ||
| 27 | ksh, etc.) in the background. This bug manifests itself by | ||
| 28 | outputting `stop on tty output' and hanging. The workaround is to | ||
| 29 | set BROKEN_FIONREAD. | ||
| 30 | -pmr@pajato.com */ | ||
| 31 | |||
| 32 | #ifndef BROKEN_FIONREAD | ||
| 33 | #define BROKEN_FIONREAD | ||
| 34 | #endif | ||
| 35 | #ifdef INTERRUPT_INPUT | ||
| 36 | #undef INTERRUPT_INPUT | ||
| 37 | #endif | ||
| 38 | |||
| 39 | /* In DGUX 5.4R2.xx the function inet_addr() returns a `struct | ||
| 40 | in_addr' instead of the more common `unsigned long'. | ||
| 41 | -pmr@pajato.com */ | ||
| 42 | |||
| 43 | #define HAVE_BROKEN_INET_ADDR | ||
| 44 | |||
| 45 | #if 0 /* Shawn M. Carey <smcarey@mailbox.syr.edu> found this | ||
| 46 | caused trouble on DGUX 5.4.2. */ | ||
| 47 | #define LIBS_SYSTEM -ldgc | ||
| 48 | #endif | ||
| 49 | |||
| 50 | /* arch-tag: a14f4043-6caa-4f01-a9b9-ae0fb0d2c96e | ||
| 51 | (do not change this comment) */ | ||
diff --git a/src/s/esix.h b/src/s/esix.h deleted file mode 100644 index 357e7736476..00000000000 --- a/src/s/esix.h +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | /* Definitions for ESIX, a variant of v.5.3 for the 386. */ | ||
| 2 | /* These are based on reports for ESIX 5.3.2 D. */ | ||
| 3 | |||
| 4 | #include "usg5-3.h" | ||
| 5 | |||
| 6 | /* Some versions of V.3 have this, but not all. ESIX does. */ | ||
| 7 | #define HAVE_PTYS | ||
| 8 | #define SYSV_PTYS | ||
| 9 | |||
| 10 | /* Have -lg be used for debugging. */ | ||
| 11 | #undef LIBS_DEBUG | ||
| 12 | #define LIBS_DEBUG -lg | ||
| 13 | |||
| 14 | /* If using Roell's X server, define X11R4 */ | ||
| 15 | #ifdef X11R4 /* Roell's X server */ | ||
| 16 | #define select sys_select /* Emacs select() not good enough? */ | ||
| 17 | #undef LIBX11_SYSTEM | ||
| 18 | #define LIBX11_SYSTEM -lpt | ||
| 19 | #endif /* X11R4 */ | ||
| 20 | |||
| 21 | /* ESIX does not need <sys/sioctl.h>, but needs <sys/ptem.h> */ | ||
| 22 | #define NO_SIOCTL_H | ||
| 23 | #define NEED_PTEM_H | ||
| 24 | #define BROKEN_FIONREAD | ||
| 25 | |||
| 26 | /* arch-tag: d66e6a70-0812-437d-aa35-9b01bd474941 | ||
| 27 | (do not change this comment) */ | ||
diff --git a/src/s/esix5r4.h b/src/s/esix5r4.h deleted file mode 100644 index 4240f3d7f4a..00000000000 --- a/src/s/esix5r4.h +++ /dev/null | |||
| @@ -1,27 +0,0 @@ | |||
| 1 | /* Definitions for ESIX System V 4.0.4, a variant of V.4 for the 386. */ | ||
| 2 | /* Redone by zircon!joe@uunet.uu.net (Joe Kelsey). */ | ||
| 3 | |||
| 4 | #include "usg5-4.h" | ||
| 5 | |||
| 6 | #define SYSTEM_MALLOC 1 | ||
| 7 | #if defined (HAVE_XFREE386) | ||
| 8 | # undef LIB_STANDARD | ||
| 9 | # define LIB_STANDARD -lc | ||
| 10 | #else | ||
| 11 | # define LIB_X11_LIB -lsocket -lc -lX11 | ||
| 12 | # undef LIB_STANDARD | ||
| 13 | # ifdef ORDINARY_LINK | ||
| 14 | # define LIB_STANDARD -lnsl -lns -lelf /usr/ucblib/libucb.a | ||
| 15 | # else | ||
| 16 | # define LIB_STANDARD -lnsl -lns -lelf /usr/ucblib/libucb.a /usr/ccs/lib/crtn.o | ||
| 17 | # endif | ||
| 18 | |||
| 19 | /* Resolve BSD string functions in X Window library from libucb.a. */ | ||
| 20 | # define BSTRING | ||
| 21 | |||
| 22 | /* zircon!joe says this makes X windows work. */ | ||
| 23 | # define BROKEN_FIONREAD | ||
| 24 | #endif | ||
| 25 | |||
| 26 | /* arch-tag: 2d314ae9-0357-4ddf-96e5-cf821071ba4b | ||
| 27 | (do not change this comment) */ | ||
diff --git a/src/s/hiuxmpp.h b/src/s/hiuxmpp.h deleted file mode 100644 index 7538adb1634..00000000000 --- a/src/s/hiuxmpp.h +++ /dev/null | |||
| @@ -1,67 +0,0 @@ | |||
| 1 | /* System description file for HI-UX. | ||
| 2 | |||
| 3 | Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 | ||
| 4 | Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | #define BSD 198911 /* system version (year & month) */ | ||
| 25 | #define DBL_DIG 15 /* same as the definition of <float.h> */ | ||
| 26 | #include "bsd4-3.h" | ||
| 27 | |||
| 28 | /* Identify OSF1 for the m- files. */ | ||
| 29 | |||
| 30 | #define OSF1 | ||
| 31 | |||
| 32 | /* To avoid to include the non-existant header file <sys/vlimit.h>, | ||
| 33 | we define BSD4_2. | ||
| 34 | This definition does not mean that the OS is based on BSD 4.2. */ | ||
| 35 | #define BSD4_2 | ||
| 36 | |||
| 37 | /* Define _BSD to tell the include files we're running under | ||
| 38 | the BSD universe and not the SYSV universe. | ||
| 39 | Define HITACHI and OSF for Xt's Boolean type as int intead of char. | ||
| 40 | (But for these defines, /usr/include/X11/Intrinsic.h defines | ||
| 41 | Boolean as char, but libXt.a on HI-UX/MPP requires it as int.) */ | ||
| 42 | |||
| 43 | #define C_SWITCH_SYSTEM -D_BSD -DHITACHI -DOSF | ||
| 44 | #define LIBS_SYSTEM -lbsd | ||
| 45 | |||
| 46 | #define GETPGRP_NO_ARG | ||
| 47 | |||
| 48 | #define SYSV_SYSTEM_DIR | ||
| 49 | |||
| 50 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 51 | preprocessor symbol "COFF". */ | ||
| 52 | |||
| 53 | /* #define COFF */ | ||
| 54 | |||
| 55 | /* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option | ||
| 56 | says where to find X windows at run time. We convert it to a -rpath option | ||
| 57 | which is what OSF1 uses. */ | ||
| 58 | #define LD_SWITCH_SYSTEM | ||
| 59 | |||
| 60 | #undef KERNEL_FILE | ||
| 61 | #define KERNEL_FILE "/mach_kernel" | ||
| 62 | |||
| 63 | #undef LDAV_SYMBOL | ||
| 64 | #define LDAV_SYMBOL "avenrun" | ||
| 65 | |||
| 66 | /* arch-tag: c5422584-cd86-4e10-8089-9f604523dab7 | ||
| 67 | (do not change this comment) */ | ||
diff --git a/src/s/hiuxwe2.h b/src/s/hiuxwe2.h deleted file mode 100644 index 418ea14cc99..00000000000 --- a/src/s/hiuxwe2.h +++ /dev/null | |||
| @@ -1,67 +0,0 @@ | |||
| 1 | /* System description file for HI-UX. | ||
| 2 | |||
| 3 | Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 4 | 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | #define BSD 198911 /* system version (year & month) */ | ||
| 25 | #define DBL_DIG 15 /* same as the definition of <float.h> */ | ||
| 26 | #include "bsd4-3.h" | ||
| 27 | |||
| 28 | /* Identify OSF1 for the m- files. */ | ||
| 29 | |||
| 30 | #define OSF1 | ||
| 31 | |||
| 32 | /* To avoid to include the non-existant header file <sys/vlimit.h>, | ||
| 33 | we define BSD4_2. | ||
| 34 | This definition does not mean that the OS is based on BSD 4.2. */ | ||
| 35 | #define BSD4_2 | ||
| 36 | |||
| 37 | /* Define _BSD to tell the include files we're running under | ||
| 38 | the BSD universe and not the SYSV universe. | ||
| 39 | Define HITACHI and OSF for Xt's Boolean type as int intead of char. | ||
| 40 | (But for these defines, /usr/include/X11/Intrinsic.h defines | ||
| 41 | Boolean as char, but libXt.a on HI-UX/MPP requires it as int.) */ | ||
| 42 | |||
| 43 | #define C_SWITCH_SYSTEM -D_BSD -DHITACHI -DOSF | ||
| 44 | #define LIBS_SYSTEM -lbsd | ||
| 45 | |||
| 46 | #define GETPGRP_NO_ARG | ||
| 47 | |||
| 48 | #define SYSV_SYSTEM_DIR | ||
| 49 | |||
| 50 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 51 | preprocessor symbol "COFF". */ | ||
| 52 | |||
| 53 | /* #define COFF */ | ||
| 54 | |||
| 55 | /* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option | ||
| 56 | says where to find X windows at run time. We convert it to a -rpath option | ||
| 57 | which is what OSF1 uses. */ | ||
| 58 | #define LD_SWITCH_SYSTEM | ||
| 59 | |||
| 60 | #undef KERNEL_FILE | ||
| 61 | #define KERNEL_FILE "/mach_kernel" | ||
| 62 | |||
| 63 | #undef LDAV_SYMBOL | ||
| 64 | #define LDAV_SYMBOL "avenrun" | ||
| 65 | |||
| 66 | /* arch-tag: c56449e1-6d1b-4537-a596-0b08b8e4ec73 | ||
| 67 | (do not change this comment) */ | ||
diff --git a/src/s/iris3-5.h b/src/s/iris3-5.h deleted file mode 100644 index c3d16cbf611..00000000000 --- a/src/s/iris3-5.h +++ /dev/null | |||
| @@ -1,166 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Silicon Graphics 3.5 | ||
| 2 | Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* | ||
| 24 | * Define symbols to identify the version of Unix this is. | ||
| 25 | * Define all the symbols that apply correctly. | ||
| 26 | */ | ||
| 27 | |||
| 28 | #define USG | ||
| 29 | #define USG5 | ||
| 30 | #define IRIS | ||
| 31 | |||
| 32 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 33 | It sets the Lisp variable system-type. */ | ||
| 34 | |||
| 35 | #define SYSTEM_TYPE "irix" | ||
| 36 | |||
| 37 | /* nomultiplejobs should be defined if your system's shell | ||
| 38 | does not have "job control" (the ability to stop a program, | ||
| 39 | run some other program, then continue the first one). */ | ||
| 40 | |||
| 41 | #define NOMULTIPLEJOBS | ||
| 42 | |||
| 43 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 44 | |||
| 45 | /* #define INTERRUPT_INPUT */ | ||
| 46 | |||
| 47 | /* Letter to use in finding device name of first pty, | ||
| 48 | if system supports pty's. 'a' means it is /dev/ptya0 */ | ||
| 49 | |||
| 50 | #define FIRST_PTY_LETTER 'a' | ||
| 51 | |||
| 52 | /* | ||
| 53 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 54 | * for terminal control. | ||
| 55 | */ | ||
| 56 | |||
| 57 | #define HAVE_TERMIO | ||
| 58 | |||
| 59 | /* | ||
| 60 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 61 | */ | ||
| 62 | |||
| 63 | #define HAVE_PTYS | ||
| 64 | |||
| 65 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 66 | |||
| 67 | #define HAVE_SOCKETS | ||
| 68 | |||
| 69 | /* | ||
| 70 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 71 | * The 4.2 opendir, etc., library functions. | ||
| 72 | */ | ||
| 73 | |||
| 74 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 75 | |||
| 76 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 77 | |||
| 78 | #define BSTRING | ||
| 79 | |||
| 80 | /* subprocesses should be defined if you want to | ||
| 81 | have code for asynchronous subprocesses | ||
| 82 | (as used in M-x compile and M-x shell). | ||
| 83 | This is generally OS dependent, and not supported | ||
| 84 | under most USG systems. */ | ||
| 85 | |||
| 86 | #define subprocesses | ||
| 87 | |||
| 88 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 89 | preprocessor symbol "COFF". */ | ||
| 90 | |||
| 91 | /* #define COFF */ | ||
| 92 | |||
| 93 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 94 | to interlock access to /usr/spool/mail/$USER. | ||
| 95 | The alternative is that a lock file named | ||
| 96 | /usr/spool/mail/$USER.lock. */ | ||
| 97 | |||
| 98 | #define MAIL_USE_FLOCK | ||
| 99 | |||
| 100 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 101 | so that Emacs can tell instantly when you try to modify | ||
| 102 | a file that someone else has modified in his Emacs. */ | ||
| 103 | |||
| 104 | /* #define CLASH_DETECTION */ | ||
| 105 | |||
| 106 | /* The file containing the kernel's symbol table is called /vmunix. */ | ||
| 107 | |||
| 108 | #define KERNEL_FILE "/vmunix" | ||
| 109 | |||
| 110 | /* The symbol in the kernel where the load average is found | ||
| 111 | is named _avenrun. */ | ||
| 112 | |||
| 113 | #define LDAV_SYMBOL "_avenrun" | ||
| 114 | |||
| 115 | |||
| 116 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 117 | |||
| 118 | /* | ||
| 119 | * Make the sigsetmask function go away. Don't know what the | ||
| 120 | * ramifications of this are, but doesn't seem possible to | ||
| 121 | * emulate it properly anyway at this point. | ||
| 122 | */ | ||
| 123 | |||
| 124 | #define sigsetmask(mask) /* Null expansion */ | ||
| 125 | |||
| 126 | /* The IRIS defines SIGIO in signal.h, but doesn't implement it. */ | ||
| 127 | #define BROKEN_SIGIO | ||
| 128 | |||
| 129 | #define LIBS_MACHINE -lbsd -ldbm -lPW | ||
| 130 | #define C_SWITCH_MACHINE -I/usr/include/bsd | ||
| 131 | |||
| 132 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 133 | but they will run slower. */ | ||
| 134 | |||
| 135 | #define _setjmp setjmp | ||
| 136 | #define _longjmp longjmp | ||
| 137 | |||
| 138 | /* On USG systems these have different names */ | ||
| 139 | |||
| 140 | #define index strchr | ||
| 141 | #define rindex strrchr | ||
| 142 | |||
| 143 | /* USG systems tend to put everything declared static | ||
| 144 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 145 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 146 | |||
| 147 | /* #define static */ | ||
| 148 | |||
| 149 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 150 | |||
| 151 | #define ADDR_CORRECT(x) (int)((char *)(x) - (char*)0) | ||
| 152 | |||
| 153 | /* some errno.h's don't actually allocate the variable itself */ | ||
| 154 | |||
| 155 | #define NEED_ERRNO | ||
| 156 | |||
| 157 | /* The symbol FIONREAD is defined, but the feature does not work. */ | ||
| 158 | |||
| 159 | #define BROKEN_FIONREAD | ||
| 160 | |||
| 161 | /* This is how to get the device name of the tty end of a pty. */ | ||
| 162 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 163 | sprintf (ptyname, "/dev/ttyq%d", minor (stb.st_rdev)); | ||
| 164 | |||
| 165 | /* arch-tag: 41161051-477f-44be-bb2a-0eead3142157 | ||
| 166 | (do not change this comment) */ | ||
diff --git a/src/s/iris3-6.h b/src/s/iris3-6.h deleted file mode 100644 index 85a13167ed0..00000000000 --- a/src/s/iris3-6.h +++ /dev/null | |||
| @@ -1,163 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Silicon Graphics system 3.6. | ||
| 2 | Copyright (C) 1987, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* | ||
| 24 | * Define symbols to identify the version of Unix this is. | ||
| 25 | * Define all the symbols that apply correctly. | ||
| 26 | */ | ||
| 27 | |||
| 28 | #define USG | ||
| 29 | #define USG5 | ||
| 30 | #define IRIS | ||
| 31 | |||
| 32 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 33 | It sets the Lisp variable system-type. */ | ||
| 34 | |||
| 35 | #define SYSTEM_TYPE "irix" | ||
| 36 | |||
| 37 | /* nomultiplejobs should be defined if your system's shell | ||
| 38 | does not have "job control" (the ability to stop a program, | ||
| 39 | run some other program, then continue the first one). */ | ||
| 40 | |||
| 41 | #define NOMULTIPLEJOBS | ||
| 42 | |||
| 43 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 44 | |||
| 45 | /* #define INTERRUPT_INPUT */ | ||
| 46 | |||
| 47 | /* Letter to use in finding device name of first pty, | ||
| 48 | if system supports pty's. 'a' means it is /dev/ptya0 */ | ||
| 49 | |||
| 50 | #define FIRST_PTY_LETTER 'a' | ||
| 51 | |||
| 52 | /* | ||
| 53 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 54 | * for terminal control. | ||
| 55 | */ | ||
| 56 | |||
| 57 | #define HAVE_TERMIO | ||
| 58 | |||
| 59 | /* | ||
| 60 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 61 | */ | ||
| 62 | |||
| 63 | #define HAVE_PTYS | ||
| 64 | |||
| 65 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 66 | |||
| 67 | #define HAVE_SOCKETS | ||
| 68 | |||
| 69 | /* | ||
| 70 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 71 | * The 4.2 opendir, etc., library functions. | ||
| 72 | */ | ||
| 73 | |||
| 74 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 75 | |||
| 76 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 77 | |||
| 78 | #define BSTRING | ||
| 79 | |||
| 80 | /* subprocesses should be defined if you want to | ||
| 81 | have code for asynchronous subprocesses | ||
| 82 | (as used in M-x compile and M-x shell). | ||
| 83 | This is generally OS dependent, and not supported | ||
| 84 | under most USG systems. */ | ||
| 85 | |||
| 86 | #define subprocesses | ||
| 87 | |||
| 88 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 89 | preprocessor symbol "COFF". */ | ||
| 90 | |||
| 91 | /* #define COFF */ | ||
| 92 | |||
| 93 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 94 | to interlock access to /usr/spool/mail/$USER. | ||
| 95 | The alternative is that a lock file named | ||
| 96 | /usr/spool/mail/$USER.lock. */ | ||
| 97 | |||
| 98 | #define MAIL_USE_FLOCK | ||
| 99 | |||
| 100 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 101 | so that Emacs can tell instantly when you try to modify | ||
| 102 | a file that someone else has modified in his Emacs. */ | ||
| 103 | |||
| 104 | /* #define CLASH_DETECTION */ | ||
| 105 | |||
| 106 | /* The file containing the kernel's symbol table is called /vmunix. */ | ||
| 107 | |||
| 108 | #define KERNEL_FILE "/vmunix" | ||
| 109 | |||
| 110 | /* The symbol in the kernel where the load average is found | ||
| 111 | is named _avenrun. */ | ||
| 112 | |||
| 113 | #define LDAV_SYMBOL "_avenrun" | ||
| 114 | |||
| 115 | |||
| 116 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 117 | |||
| 118 | /* | ||
| 119 | * Make the sigsetmask function go away. Don't know what the | ||
| 120 | * ramifications of this are, but doesn't seem possible to | ||
| 121 | * emulate it properly anyway at this point. | ||
| 122 | */ | ||
| 123 | |||
| 124 | #define sigsetmask(mask) /* Null expansion */ | ||
| 125 | #define sigblock(x) x | ||
| 126 | |||
| 127 | /* The IRIS defines SIGIO in signal.h, but doesn't implement it. */ | ||
| 128 | #define BROKEN_SIGIO | ||
| 129 | |||
| 130 | #define LIBS_MACHINE -lbsd -ldbm -lPW | ||
| 131 | #define C_SWITCH_MACHINE -I/usr/include/bsd | ||
| 132 | |||
| 133 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 134 | but they will run slower. */ | ||
| 135 | |||
| 136 | #define _setjmp setjmp | ||
| 137 | #define _longjmp longjmp | ||
| 138 | |||
| 139 | /* On USG systems these have different names */ | ||
| 140 | |||
| 141 | #define index strchr | ||
| 142 | #define rindex strrchr | ||
| 143 | |||
| 144 | /* USG systems tend to put everything declared static | ||
| 145 | into the initialized data area, which becomes pure after dumping Emacs. | ||
| 146 | Foil this. Emacs carefully avoids static vars inside functions. */ | ||
| 147 | |||
| 148 | /* #define static */ | ||
| 149 | |||
| 150 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 151 | |||
| 152 | #define ADDR_CORRECT(x) (int)((char *)(x) - (char*)0) | ||
| 153 | |||
| 154 | /* some errno.h's don't actually allocate the variable itself */ | ||
| 155 | |||
| 156 | #define NEED_ERRNO | ||
| 157 | |||
| 158 | /* This is how to get the device name of the tty end of a pty. */ | ||
| 159 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 160 | sprintf (ptyname, "/dev/ttyq%d", minor (stb.st_rdev)); | ||
| 161 | |||
| 162 | /* arch-tag: cdf2033e-a2d5-43e1-a1a2-a7243cf41a11 | ||
| 163 | (do not change this comment) */ | ||
diff --git a/src/s/isc2-2.h b/src/s/isc2-2.h deleted file mode 100644 index 34c79f17ea1..00000000000 --- a/src/s/isc2-2.h +++ /dev/null | |||
| @@ -1,100 +0,0 @@ | |||
| 1 | /* system description file for Interactive (ISC) Unix version 2.2 on the 386. | ||
| 2 | |||
| 3 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 4 | 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | #include "usg5-3.h" | ||
| 25 | |||
| 26 | /* select (in -linet) works okay on X ptys, but not on the serial port. | ||
| 27 | karl@cs.umb.edu says that with that select call, subprocesses made by | ||
| 28 | (e.g.) M-x grep don't exit cleanly, they just hang. Similar problems | ||
| 29 | have been observed in ISC 3.0. */ | ||
| 30 | #define BROKEN_SELECT_NON_X | ||
| 31 | |||
| 32 | /* karl@cs.umb.edu says that ISC's socket support (in -linet) isn't | ||
| 33 | what Emacs needs; it makes interrupt-shell-subjob and the like do | ||
| 34 | nothing. But that appears to have been another manifestation of | ||
| 35 | the broken select, so it should now be safe to define this again. */ | ||
| 36 | #define HAVE_SOCKETS | ||
| 37 | |||
| 38 | #define NO_SOCKETS_IN_FILE_SYSTEM | ||
| 39 | #define NEED_NET_ERRNO_H | ||
| 40 | |||
| 41 | /* This keeps the .cdbx section that gcc puts out when generating | ||
| 42 | stabs-in-coff output, so Emacs can be debugged. --karl@cs.umb.edu. */ | ||
| 43 | #define USG_SHARED_LIBRARIES | ||
| 44 | |||
| 45 | /* We can support lock files. */ | ||
| 46 | #define CLASH_DETECTION | ||
| 47 | #define NO_FCHMOD | ||
| 48 | |||
| 49 | #define HAVE_PTYS | ||
| 50 | #define MAXNAMLEN 512 | ||
| 51 | #define O_NDELAY O_NONBLOCK | ||
| 52 | #define MEMORY_IN_STRING_H | ||
| 53 | |||
| 54 | /* Tell gmalloc.c that we don't have memmove (system include files to the | ||
| 55 | contrary!). */ | ||
| 56 | #define MEMMOVE_MISSING | ||
| 57 | |||
| 58 | /* Send a signal to a subprocess by "typing" a signal character. */ | ||
| 59 | #define SIGNALS_VIA_CHARACTERS | ||
| 60 | |||
| 61 | /* -lPW is only needed if not using Gcc. We used to include -lcposix here | ||
| 62 | for the rename function, but some people say ISC's rename doesn't | ||
| 63 | work correctly with Emacs so we use Emacs' emulation instead. */ | ||
| 64 | #if defined (__GNUC__) | ||
| 65 | # define LIB_STANDARD_1 -lcposix | ||
| 66 | #else /* !__GNUC__ */ | ||
| 67 | # define LIB_STANDARD_1 -lPW | ||
| 68 | #endif /* !__GNUC__ */ | ||
| 69 | |||
| 70 | /* LIB_STANDARD_1 is used both here and in LIBS_SYSTEM | ||
| 71 | (the latter for the sake of configure). */ | ||
| 72 | #define LIB_STANDARD LIB_STANDARD_1 -lc | ||
| 73 | |||
| 74 | #define NO_X_DESTROY_DATABASE | ||
| 75 | |||
| 76 | /* -linet may be needed to avoid undefined symbols such as gethostname, | ||
| 77 | inet_addr, gethostbyname, socket, connect, ... */ | ||
| 78 | #define LIBS_SYSTEM -linet LIB_STANDARD_1 | ||
| 79 | |||
| 80 | /* This system has job control. */ | ||
| 81 | #undef NOMULTIPLEJOBS | ||
| 82 | |||
| 83 | /* Inhibit asm code in netinet/in.h. Strictly speaking, only necessary | ||
| 84 | when -traditional is being used, but it doesn't hurt to | ||
| 85 | unconditionally define this. */ | ||
| 86 | #define NO_ASM | ||
| 87 | |||
| 88 | /* -traditional is not necessary if the system header files are fixed to | ||
| 89 | define getc and putc in the absence of _POSIX_SOURCE. GCC's from 2.4.4 | ||
| 90 | on do this. */ | ||
| 91 | #if !defined (__GNUC__) || __GNUC__ < 2 | ||
| 92 | # define C_SWITCH_SYSTEM -traditional | ||
| 93 | #endif | ||
| 94 | |||
| 95 | /* Some versions of ISC are said to define S_IFLNK even tho | ||
| 96 | they don't really support symlinks. */ | ||
| 97 | #undef S_IFLNK | ||
| 98 | |||
| 99 | /* arch-tag: 4de02713-eac5-4360-9d36-fd82c7a3ae44 | ||
| 100 | (do not change this comment) */ | ||
diff --git a/src/s/isc3-0.h b/src/s/isc3-0.h deleted file mode 100644 index 3df55031778..00000000000 --- a/src/s/isc3-0.h +++ /dev/null | |||
| @@ -1,70 +0,0 @@ | |||
| 1 | /* s- file for Interactive (ISC) Unix version 3.0 on the 386. | ||
| 2 | |||
| 3 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 4 | 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | #include "isc2-2.h" | ||
| 25 | |||
| 26 | /* This has been moved into isc2-2.h. */ | ||
| 27 | /* #define HAVE_SOCKETS */ | ||
| 28 | |||
| 29 | /* This appears on 3.0, presumably as part of what SunSoft call X2. */ | ||
| 30 | #undef NO_X_DESTROY_DATABASE | ||
| 31 | |||
| 32 | #ifdef __GNUC__ /* Currently we use -lcposix only with gcc */ | ||
| 33 | #define POSIX_SIGNALS | ||
| 34 | |||
| 35 | /* We don't need the definition from usg5-3.h with POSIX_SIGNALS. */ | ||
| 36 | #undef sigsetmask | ||
| 37 | #undef HAVE_SYSV_SIGPAUSE | ||
| 38 | #endif | ||
| 39 | |||
| 40 | /* People say that using -traditional causes lossage with `const', | ||
| 41 | so we might as well try getting rid of -traditional. */ | ||
| 42 | #undef C_SWITCH_SYSTEM | ||
| 43 | |||
| 44 | /* We indirectly #include s/usg5-3.h, which says to use libX11_s and | ||
| 45 | libc_s. Martin Tomes <mt00@controls.eurotherm.co.uk> says that ISC | ||
| 46 | has no libX11_s, and that linking with libc_s causes sbrk not to work. */ | ||
| 47 | #undef LIB_X11_LIB | ||
| 48 | #undef LIBX11_SYSTEM | ||
| 49 | #define LIBX11_SYSTEM -lpt -lnls -lnsl_s | ||
| 50 | |||
| 51 | /* TIOCGWINSZ isn't broken; you just have to know where to find it. */ | ||
| 52 | #undef BROKEN_TIOCGWINSZ | ||
| 53 | #define NEED_SIOCTL | ||
| 54 | |||
| 55 | /* We need either _XOPEN_SOURCE or _POSIX_SOURCE to import the posix | ||
| 56 | signal symbols; might as well use _XOPEN_SOURCE. Defining _SYSV3 | ||
| 57 | ensures that we don't lose the traditional symbols as a side effect | ||
| 58 | from this or __STDC__ being defined. It can't hurt to Define | ||
| 59 | _XOPEN_SOURCE=500, the latest and greatest value as of this writing. */ | ||
| 60 | #define C_SWITCH_SYSTEM -D_XOPEN_SOURCE=500 -D_SYSV3 | ||
| 61 | |||
| 62 | #ifdef __GNUC__ /* Currently we use -lcposix only with gcc */ | ||
| 63 | /* This works around a bug in ISC 4.0 and 3.0; it fails | ||
| 64 | to clear the "POSIX process" flag on an exec. | ||
| 65 | It won't be needed for 4.1. */ | ||
| 66 | #define EXTRA_INITIALIZE __setostype (0) | ||
| 67 | #endif | ||
| 68 | |||
| 69 | /* arch-tag: c1aca3f2-813d-4c1c-ad64-ca6c20ec9bfb | ||
| 70 | (do not change this comment) */ | ||
diff --git a/src/s/isc4-0.h b/src/s/isc4-0.h deleted file mode 100644 index d180b5d182c..00000000000 --- a/src/s/isc4-0.h +++ /dev/null | |||
| @@ -1,33 +0,0 @@ | |||
| 1 | #include "isc3-0.h" | ||
| 2 | |||
| 3 | #undef LIBS_SYSTEM | ||
| 4 | #define LIBS_SYSTEM -linet -lcposix | ||
| 5 | |||
| 6 | #define ISC4_0 | ||
| 7 | |||
| 8 | /* fmcphers@csugrad.cs.vt.edu reported this was necessary. | ||
| 9 | He used GCC. I don't know what is needed with other compilers. */ | ||
| 10 | #ifdef __GNUC__ | ||
| 11 | #undef LIBX11_SYSTEM | ||
| 12 | #define LIBX11_SYSTEM -lpt -lnls -lnsl_s -lcposix -lc | ||
| 13 | #endif | ||
| 14 | |||
| 15 | /* Tobias Herbert <herbert@clipper.ikp.physik.th-darmstadt.de> | ||
| 16 | says this is needed. */ | ||
| 17 | |||
| 18 | #ifndef POSIX_SIGNALS | ||
| 19 | #ifndef sigblock | ||
| 20 | #ifndef SIG_BLOCK | ||
| 21 | #define SIG_BLOCK 0 | ||
| 22 | #endif | ||
| 23 | #define sigblock(sig) \ | ||
| 24 | (sigprocmask_set = SIGEMPTYMASK | (sig), \ | ||
| 25 | sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL)) | ||
| 26 | #define sigunblock(sig) \ | ||
| 27 | (sigprocmask_set = SIGFULLMASK & ~(sig), \ | ||
| 28 | sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL)) | ||
| 29 | #endif | ||
| 30 | #endif /* not POSIX_SIGNALS */ | ||
| 31 | |||
| 32 | /* arch-tag: 1278f86f-17f2-462d-88c9-85e4b5faa5c3 | ||
| 33 | (do not change this comment) */ | ||
diff --git a/src/s/isc4-1.h b/src/s/isc4-1.h deleted file mode 100644 index c37537e629c..00000000000 --- a/src/s/isc4-1.h +++ /dev/null | |||
| @@ -1,35 +0,0 @@ | |||
| 1 | #include "isc3-0.h" | ||
| 2 | |||
| 3 | /* ISC 4.1 has renamed __setostype, but also has fixed the bug | ||
| 4 | for which we needed to call it; so just do nothing. uddeborg@carmen.se. */ | ||
| 5 | #undef EXTRA_INITIALIZE | ||
| 6 | |||
| 7 | #define ISC4_1 | ||
| 8 | |||
| 9 | #undef LIBS_SYSTEM | ||
| 10 | #define LIBS_SYSTEM -linet | ||
| 11 | |||
| 12 | /* uddeborg@carmen.se recommends the rest of this file. */ | ||
| 13 | |||
| 14 | /* A special startup file is used when compiling with Posix. */ | ||
| 15 | #define START_FILES pre-crt0.o /lib/crtp1.o | ||
| 16 | |||
| 17 | /* -lPW is only needed if not using Gcc. */ | ||
| 18 | #undef LIB_STANDARD | ||
| 19 | #if defined (__GNUC__) | ||
| 20 | # define LIB_STANDARD -lcposix -lc /lib/crtn.o | ||
| 21 | #else /* !__GNUC__ */ | ||
| 22 | # define LIB_STANDARD -lPW -lcposix -lc /lib/crtn.o | ||
| 23 | #endif /* !__GNUC__ */ | ||
| 24 | |||
| 25 | /* We have Posix termios. */ | ||
| 26 | #define HAVE_TERMIOS | ||
| 27 | /* According to template.h HAVE_TERMIO and HAVE_TERMIOS shouldn't be */ | ||
| 28 | /* defined at the same time. */ | ||
| 29 | #undef HAVE_TERMIO | ||
| 30 | |||
| 31 | /* ISC 4.1 has sys/wait.h but it does not work right. */ | ||
| 32 | #undef HAVE_SYS_WAIT_H | ||
| 33 | |||
| 34 | /* arch-tag: ec5c77d9-a330-4d93-8117-d2b374531c67 | ||
| 35 | (do not change this comment) */ | ||
diff --git a/src/s/newsos5.h b/src/s/newsos5.h deleted file mode 100644 index 9e149bc5ed0..00000000000 --- a/src/s/newsos5.h +++ /dev/null | |||
| @@ -1,53 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Sony's NEWS-OS 5.0.2 | ||
| 2 | Copyright (C) 1992, 1994, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* Use the SysVr4 file for at least base configuration. */ | ||
| 23 | |||
| 24 | #include "usg5-4.h" | ||
| 25 | |||
| 26 | #define NEWSOS5 | ||
| 27 | |||
| 28 | /* These will be defined by "m-mips.h". */ | ||
| 29 | #undef START_FILES | ||
| 30 | #undef LIB_STANDARD | ||
| 31 | |||
| 32 | #undef LIBS_SYSTEM | ||
| 33 | #define LIBS_SYSTEM -lsocket -lnsl -lgen | ||
| 34 | |||
| 35 | /* Disable use of "unexelf.c" and shared libraries, because | ||
| 36 | "unexelf.c" doesn't work correctly on NEWS-OS. "unexmips.c" does | ||
| 37 | work correctly if the program is linked statically without ELF. */ | ||
| 38 | #undef UNEXEC | ||
| 39 | #undef USG_SHARED_LIBRARIES | ||
| 40 | |||
| 41 | /* Use `ld' directly rather than ordinary link, because ordinary link | ||
| 42 | can't produce a non-ELF executable. */ | ||
| 43 | #undef ORDINARY_LINK | ||
| 44 | #define LINKER /usr/lib/cmplrs/cc/ld | ||
| 45 | #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o | ||
| 46 | #define LIB_STANDARD -lc /usr/ccs/lib/crtn.o /usr/ccs/lib/values-Xt.o | ||
| 47 | |||
| 48 | #ifndef HAVE_SOCKETS | ||
| 49 | #define HAVE_SOCKETS | ||
| 50 | #endif | ||
| 51 | |||
| 52 | /* arch-tag: 2bb78fcd-fbc4-46dd-a14b-e4a9be957fe0 | ||
| 53 | (do not change this comment) */ | ||
diff --git a/src/s/newsos6.h b/src/s/newsos6.h deleted file mode 100644 index ca3dbe706d0..00000000000 --- a/src/s/newsos6.h +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on Sony's NEWS-OS 6.x */ | ||
| 2 | |||
| 3 | #include "usg5-4-2.h" | ||
| 4 | |||
| 5 | #define NEWSOS6 | ||
| 6 | #define HAVE_TEXT_START | ||
| 7 | |||
| 8 | /* arch-tag: a0db9cb0-43bb-4f9e-85fa-384e30f02d74 | ||
| 9 | (do not change this comment) */ | ||
diff --git a/src/s/osf1.h b/src/s/osf1.h deleted file mode 100644 index 7e55ce4fb6d..00000000000 --- a/src/s/osf1.h +++ /dev/null | |||
| @@ -1,99 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on osf1. | ||
| 2 | Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | #include "bsd4-3.h" | ||
| 24 | |||
| 25 | /* Identify OSF1 for the m- files. */ | ||
| 26 | |||
| 27 | #define OSF1 | ||
| 28 | |||
| 29 | #define C_SWITCH_SYSTEM -D_BSD | ||
| 30 | #define LIBS_SYSTEM -lbsd | ||
| 31 | |||
| 32 | #define GETPGRP_NO_ARG | ||
| 33 | |||
| 34 | #define SYSV_SYSTEM_DIR | ||
| 35 | |||
| 36 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 37 | preprocessor symbol "COFF". */ | ||
| 38 | |||
| 39 | #define COFF | ||
| 40 | |||
| 41 | /* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option | ||
| 42 | says where to find X windows at run time. We convert it to a -rpath option | ||
| 43 | which is what OSF1 uses. */ | ||
| 44 | #define LD_SWITCH_SYSTEM `echo LD_SWITCH_X_SITE_AUX | sed -e 's/-R/-Wl,-rpath,/'` | ||
| 45 | |||
| 46 | #define HAVE_TERMIOS | ||
| 47 | |||
| 48 | #ifndef __GNUC__ | ||
| 49 | /* Optimize, inaccurate debugging. */ | ||
| 50 | #define C_DEBUG_SWITCH -g3 | ||
| 51 | #endif | ||
| 52 | |||
| 53 | #ifndef NOT_C_CODE | ||
| 54 | #ifndef OSF5 /* fixed in 5.0 */ | ||
| 55 | /* Hack alert! For reasons unknown to mankind the string.h file insists | ||
| 56 | on defining bcopy etc. as taking char pointers as arguments. With | ||
| 57 | Emacs this produces an endless amount of warning which are harmless, | ||
| 58 | but tends to flood the real errors. This hack works around this problem | ||
| 59 | by not prototyping. */ | ||
| 60 | #define bcopy string_h_bcopy | ||
| 61 | #define bzero string_h_bzero | ||
| 62 | #define bcmp string_h_bcmp | ||
| 63 | #include <string.h> | ||
| 64 | #undef bcopy | ||
| 65 | #undef bzero | ||
| 66 | #undef bcmp | ||
| 67 | #endif | ||
| 68 | #endif | ||
| 69 | |||
| 70 | #define ORDINARY_LINK | ||
| 71 | |||
| 72 | /* Some systems seem to have this, others don't. */ | ||
| 73 | #ifdef HAVE_LIBDNET | ||
| 74 | #define LIBS_MACHINE -ldnet | ||
| 75 | #else | ||
| 76 | #define LIBS_MACHINE -ldnet_stub | ||
| 77 | #endif | ||
| 78 | |||
| 79 | #define LIBS_DEBUG | ||
| 80 | #define START_FILES pre-crt0.o | ||
| 81 | |||
| 82 | #define PTY_ITERATION for (i = 0; i < 1; i++) /* ick */ | ||
| 83 | #define PTY_NAME_SPRINTF /* none */ | ||
| 84 | #define PTY_TTY_NAME_SPRINTF /* none */ | ||
| 85 | #define PTY_OPEN \ | ||
| 86 | do \ | ||
| 87 | { \ | ||
| 88 | int dummy; \ | ||
| 89 | SIGMASKTYPE mask; \ | ||
| 90 | mask = sigblock (sigmask (SIGCHLD)); \ | ||
| 91 | if (-1 == openpty (&fd, &dummy, pty_name, 0, 0)) \ | ||
| 92 | fd = -1; \ | ||
| 93 | sigsetmask (mask); \ | ||
| 94 | emacs_close (dummy); \ | ||
| 95 | } \ | ||
| 96 | while (0) | ||
| 97 | |||
| 98 | /* arch-tag: 65eaea67-fcc3-4de7-8574-d46beb82d4ed | ||
| 99 | (do not change this comment) */ | ||
diff --git a/src/s/osf5-0.h b/src/s/osf5-0.h deleted file mode 100644 index 4f22f6d641b..00000000000 --- a/src/s/osf5-0.h +++ /dev/null | |||
| @@ -1,25 +0,0 @@ | |||
| 1 | #define OSF5 | ||
| 2 | #include "osf1.h" | ||
| 3 | |||
| 4 | /* It's enough to define _OSF_SOURCE instead of _BSD. */ | ||
| 5 | |||
| 6 | #undef C_SWITCH_SYSTEM | ||
| 7 | #define C_SWITCH_SYSTEM -D_OSF_SOURCE | ||
| 8 | |||
| 9 | #ifndef NSIG /* _OSF_SOURCE seems to get us this */ | ||
| 10 | #define NSIG __sys_nsig | ||
| 11 | #endif | ||
| 12 | |||
| 13 | /* We have missing/inconsistent prototypes on 5.0, at least. */ | ||
| 14 | #define INHIBIT_X11R6_XIM | ||
| 15 | |||
| 16 | #define USE_MMAP_FOR_BUFFERS 1 | ||
| 17 | |||
| 18 | #define TERMINFO | ||
| 19 | #define LIBS_TERMCAP -lcurses | ||
| 20 | |||
| 21 | #define GC_SETJMP_WORKS 1 | ||
| 22 | #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS | ||
| 23 | |||
| 24 | /* arch-tag: 89580064-dd8c-4533-a47c-0f92d8090945 | ||
| 25 | (do not change this comment) */ | ||
diff --git a/src/s/riscix1-1.h b/src/s/riscix1-1.h deleted file mode 100644 index cccbbd3b2c8..00000000000 --- a/src/s/riscix1-1.h +++ /dev/null | |||
| @@ -1,9 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on RISCiX 1.1 (bsd 4.3) */ | ||
| 2 | |||
| 3 | #define RISCiX_1_1 1 | ||
| 4 | #define RISCiX 11 | ||
| 5 | #define CRT0_O /lib/crt0.o | ||
| 6 | #include "bsd4-3.h" | ||
| 7 | |||
| 8 | /* arch-tag: 382df034-9843-4a82-8a3a-2e50a4dd532c | ||
| 9 | (do not change this comment) */ | ||
diff --git a/src/s/riscix12.h b/src/s/riscix12.h deleted file mode 100644 index cc81c7da1c7..00000000000 --- a/src/s/riscix12.h +++ /dev/null | |||
| @@ -1,29 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on RISCiX 1.2 (bsd 4.3) | ||
| 2 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, | ||
| 3 | 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | #define RISCiX_1_2 1 | ||
| 24 | #define RISCiX 12 | ||
| 25 | #define CRT0_O /usr/lib/crt0.o | ||
| 26 | #include "bsd4-3.h" | ||
| 27 | |||
| 28 | /* arch-tag: f6b21e0a-f676-418a-9c8a-10fa8cd9dba7 | ||
| 29 | (do not change this comment) */ | ||
diff --git a/src/s/sco4.h b/src/s/sco4.h deleted file mode 100644 index d16bcbead49..00000000000 --- a/src/s/sco4.h +++ /dev/null | |||
| @@ -1,145 +0,0 @@ | |||
| 1 | /* System description file for SCO 3.2v4. | ||
| 2 | Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* Contributed by Ian Lance Taylor, ian@cygnus.com. */ | ||
| 23 | |||
| 24 | /* SCO is sort of like SVR3. */ | ||
| 25 | #include "usg5-3.h" | ||
| 26 | #define SCO_R4 | ||
| 27 | |||
| 28 | #if 0 /* Turned off rather than make the Lisp code check for this. -- rms. | ||
| 29 | I am assuming that (at least most of) the tests for usg-unix-v | ||
| 30 | do the right thing for sco3.2v4 also. Things that *might* be wrong | ||
| 31 | as a result of turning off these lines include the values of | ||
| 32 | ange-ftp-remote-shell-file-name (now remsh) | ||
| 33 | dired-chown-program (now just chown) | ||
| 34 | lpr-command (now lp) | ||
| 35 | nntp-buggy-select (now t) | ||
| 36 | rmail-spool-directory (now /usr/mail?) | ||
| 37 | and the actions of the function print-region-1. */ | ||
| 38 | |||
| 39 | /* SYSTEM_TYPE should indicate the kind of system you are using. */ | ||
| 40 | #undef SYSTEM_TYPE | ||
| 41 | #define SYSTEM_TYPE "SCO 3.2v4" | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* SCO supports job control. */ | ||
| 45 | #undef NOMULTIPLEJOBS | ||
| 46 | |||
| 47 | /* SCO has termios. */ | ||
| 48 | #define HAVE_TERMIOS | ||
| 49 | |||
| 50 | /* SCO has ptys with unusual names. */ | ||
| 51 | #define HAVE_PTYS | ||
| 52 | |||
| 53 | #define PTY_ITERATION \ | ||
| 54 | for (i = 0; ; i++) | ||
| 55 | #define PTY_NAME_SPRINTF \ | ||
| 56 | sprintf (pty_name, "/dev/ptyp%d", i); | ||
| 57 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 58 | sprintf (pty_name, "/dev/ttyp%d", i); | ||
| 59 | |||
| 60 | /* Sockets are an option on SCO. If you have X, you have them. | ||
| 61 | They also exist if you have TCP, but we don't know how to test | ||
| 62 | for that. */ | ||
| 63 | #ifdef HAVE_X_WINDOWS | ||
| 64 | #define HAVE_SOCKETS | ||
| 65 | #endif | ||
| 66 | |||
| 67 | /* Must use 'cc' to link when build with motif toolkit. */ | ||
| 68 | #ifndef __GNUC__ | ||
| 69 | #define LINKER cc | ||
| 70 | #endif | ||
| 71 | |||
| 72 | /* This is safe since we already assumed HAVE_SOCKET | ||
| 73 | if using X windows. */ | ||
| 74 | #undef LIBX11_SYSTEM | ||
| 75 | #define LIBX11_SYSTEM -lpt -lnls -lnsl_s -lc_s -lsocket | ||
| 76 | |||
| 77 | /* Motif needs -lintl on some (maybe all) ofthese systems. */ | ||
| 78 | #ifdef HAVE_LIBINTL | ||
| 79 | #define LIB_MOTIF -lXm -lintl | ||
| 80 | #endif | ||
| 81 | |||
| 82 | #ifdef HAVE_INET_SOCKETS /* This comes from autoconf. */ | ||
| 83 | #define HAVE_SOCKETS | ||
| 84 | #endif | ||
| 85 | |||
| 86 | #ifdef HAVE_SOCKETS | ||
| 87 | #define LIBS_SYSTEM -lsocket -lPW | ||
| 88 | |||
| 89 | /* SCO has gettimeofday in socket library */ | ||
| 90 | /* Autoconf should determine this, but for now, | ||
| 91 | play safe to avoid error rather than deleting this | ||
| 92 | and risking the wrong result. */ | ||
| 93 | #ifndef HAVE_GETTIMEOFDAY | ||
| 94 | #define HAVE_GETTIMEOFDAY | ||
| 95 | #endif | ||
| 96 | #endif | ||
| 97 | |||
| 98 | /* This enables configure to tell that we have alloca. */ | ||
| 99 | #ifndef LIBS_SYSTEM | ||
| 100 | #define LIBS_SYSTEM -lPW | ||
| 101 | #endif | ||
| 102 | |||
| 103 | /* configure can't get this right linking fails unless -lsocket is used. */ | ||
| 104 | #undef HAVE_XSCREENNUMBEROFSCREEN | ||
| 105 | #define HAVE_XSCREENNUMBEROFSCREEN | ||
| 106 | |||
| 107 | /* We don't have -loldX, and we don't need it. */ | ||
| 108 | #define LIB_XMENU_LIB | ||
| 109 | |||
| 110 | /* SCO does have TIOCGWINSZ. */ | ||
| 111 | #undef BROKEN_TIOCGWINSZ | ||
| 112 | #define NEED_PTEM_H | ||
| 113 | |||
| 114 | /* We need to link with crt1.o and crtn.o. */ | ||
| 115 | #define START_FILES pre-crt0.o /lib/crt1.o | ||
| 116 | #define LIB_STANDARD -lc /lib/crtn.o | ||
| 117 | |||
| 118 | /* Send signals to subprocesses by "typing" signal chars at them. */ | ||
| 119 | #define SIGNALS_VIA_CHARACTERS | ||
| 120 | |||
| 121 | /* Specify program for etc/fakemail to run. Define SMAIL if you are | ||
| 122 | using smail, don't for MMDF. */ | ||
| 123 | |||
| 124 | #ifdef SMAIL | ||
| 125 | #define MAIL_PROGRAM_NAME "/bin/smail -q0" | ||
| 126 | #else | ||
| 127 | #define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail" | ||
| 128 | #endif | ||
| 129 | |||
| 130 | /* Tell process_send_signal to use VSUSP instead of VSWTCH. */ | ||
| 131 | #define PREFER_VSUSP | ||
| 132 | |||
| 133 | /* wjs@wang.com (William Smith) says this is needed on 3.2.4.2. */ | ||
| 134 | #define POSIX_SIGNALS | ||
| 135 | |||
| 136 | /* wjs@wiis.wang.com says SCO 3.2 v4.2 "has sockets", | ||
| 137 | but only for network connections. | ||
| 138 | It doesn't have the kind of sockets that emacsclient.c | ||
| 139 | and emacsserver.c would use. */ | ||
| 140 | #define NO_SOCKETS_IN_FILE_SYSTEM | ||
| 141 | |||
| 142 | #define NARROWPROTO 1 | ||
| 143 | |||
| 144 | /* arch-tag: 4dd6fe94-bcb7-4be0-942a-ff4bc3cd914e | ||
| 145 | (do not change this comment) */ | ||
diff --git a/src/s/sco5.h b/src/s/sco5.h deleted file mode 100644 index 1f56a998014..00000000000 --- a/src/s/sco5.h +++ /dev/null | |||
| @@ -1,175 +0,0 @@ | |||
| 1 | /* System description file for SCO 3.2v5. | ||
| 2 | Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to the | ||
| 19 | Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* Contributed by Mark Diekhans <markd@grizzly.com>. */ | ||
| 23 | |||
| 24 | /* SCO is sort of like SVR3. */ | ||
| 25 | #include "usg5-3.h" | ||
| 26 | #define SCO_R5 | ||
| 27 | |||
| 28 | #if 0 /* Turned off rather than make the Lisp code check for this. -- rms. | ||
| 29 | I am assuming that (at least most of) the tests for usg-unix-v | ||
| 30 | do the right thing for sco3.2v4 also. Things that *might* be wrong | ||
| 31 | as a result of turning off these lines include the values of | ||
| 32 | ange-ftp-remote-shell-file-name (now remsh) | ||
| 33 | dired-chown-program (now just chown) | ||
| 34 | lpr-command (now lp) | ||
| 35 | nntp-buggy-select (now t) | ||
| 36 | rmail-spool-directory (now /usr/mail?) | ||
| 37 | and the actions of the function print-region-1. */ | ||
| 38 | |||
| 39 | /* SYSTEM_TYPE should indicate the kind of system you are using. */ | ||
| 40 | #undef SYSTEM_TYPE | ||
| 41 | #define SYSTEM_TYPE "SCO 3.2v4" | ||
| 42 | #endif | ||
| 43 | |||
| 44 | /* SCO supports job control. */ | ||
| 45 | #undef NOMULTIPLEJOBS | ||
| 46 | |||
| 47 | /* SCO has termios. */ | ||
| 48 | #define HAVE_TERMIOS | ||
| 49 | |||
| 50 | /* SCO has ptys with unusual names. */ | ||
| 51 | #define HAVE_PTYS | ||
| 52 | |||
| 53 | #define PTY_ITERATION \ | ||
| 54 | for (i = 0; ; i++) | ||
| 55 | #define PTY_NAME_SPRINTF \ | ||
| 56 | sprintf (pty_name, "/dev/ptyp%d", i); | ||
| 57 | #define PTY_TTY_NAME_SPRINTF \ | ||
| 58 | sprintf (pty_name, "/dev/ttyp%d", i); | ||
| 59 | |||
| 60 | /* Sockets are an option on SCO. If you have X, you have them. | ||
| 61 | They also exist if you have TCP, but we don't know how to test | ||
| 62 | for that. */ | ||
| 63 | #ifdef HAVE_X_WINDOWS | ||
| 64 | #define HAVE_SOCKETS | ||
| 65 | #endif | ||
| 66 | |||
| 67 | #ifndef __GNUC__ | ||
| 68 | #define LINKER ld | ||
| 69 | #endif | ||
| 70 | |||
| 71 | /* This is safe since we already assumed HAVE_SOCKET | ||
| 72 | if using X windows. */ | ||
| 73 | #undef LIBX11_SYSTEM | ||
| 74 | #define LIBX11_SYSTEM_COMMON -lpt -lnls -lnsl -lc -lsocket | ||
| 75 | #ifdef MOTIF | ||
| 76 | # define LIBX11_SYSTEM -lgen LIBX11_SYSTEM_COMMON | ||
| 77 | #else /* ndef MOTIF */ | ||
| 78 | # define LIBX11_SYSTEM LIBX11_SYSTEM_COMMON | ||
| 79 | #endif /* ndef MOTIF */ | ||
| 80 | |||
| 81 | #undef LIB_X11_LIB | ||
| 82 | #define LIB_X11_LIB -lX11 | ||
| 83 | |||
| 84 | #ifdef HAVE_INET_SOCKETS /* This comes from autoconf. */ | ||
| 85 | #define HAVE_SOCKETS | ||
| 86 | #endif | ||
| 87 | |||
| 88 | #ifdef HAVE_SOCKETS | ||
| 89 | #define LIBS_SYSTEM -lsocket -lPW | ||
| 90 | #endif | ||
| 91 | |||
| 92 | #ifndef HAVE_GETTIMEOFDAY | ||
| 93 | #define HAVE_GETTIMEOFDAY | ||
| 94 | #endif | ||
| 95 | |||
| 96 | /* This enables configure to tell that we have alloca. */ | ||
| 97 | #ifndef LIBS_SYSTEM | ||
| 98 | #define LIBS_SYSTEM -lPW | ||
| 99 | #endif | ||
| 100 | |||
| 101 | /* configure can't get this right linking fails unless -lsocket is used. */ | ||
| 102 | #undef HAVE_XSCREENNUMBEROFSCREEN | ||
| 103 | #define HAVE_XSCREENNUMBEROFSCREEN | ||
| 104 | |||
| 105 | /* We don't have -loldX, and we don't need it. */ | ||
| 106 | #define LIB_XMENU_LIB | ||
| 107 | |||
| 108 | /* SCO does have TIOCGWINSZ. */ | ||
| 109 | #undef BROKEN_TIOCGWINSZ | ||
| 110 | #define NEED_PTEM_H | ||
| 111 | |||
| 112 | /* We need to link with crt1.o and crtn.o. */ | ||
| 113 | #define START_FILES pre-crt0.o /lib/crt1.o | ||
| 114 | #define LIB_STANDARD -lc /lib/crtn.o | ||
| 115 | |||
| 116 | /* Send signals to subprocesses by "typing" signal chars at them. */ | ||
| 117 | #define SIGNALS_VIA_CHARACTERS | ||
| 118 | |||
| 119 | /* Specify program for etc/fakemail to run. Define SMAIL if you are | ||
| 120 | using smail, don't for MMDF. */ | ||
| 121 | |||
| 122 | #ifdef SMAIL | ||
| 123 | #define MAIL_PROGRAM_NAME "/bin/smail -q0" | ||
| 124 | #else | ||
| 125 | #define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail" | ||
| 126 | #endif | ||
| 127 | |||
| 128 | /* Tell process_send_signal to use VSUSP instead of VSWTCH. */ | ||
| 129 | #define PREFER_VSUSP | ||
| 130 | |||
| 131 | /* SCO Unix has Posix signals, but in 3.2.5 something broken that causes | ||
| 132 | * all keyboard-quit signals to be lost after the first one. */ | ||
| 133 | #undef POSIX_SIGNALS | ||
| 134 | |||
| 135 | #define SIGMASKTYPE long | ||
| 136 | |||
| 137 | #ifndef NOT_C_CODE | ||
| 138 | extern SIGMASKTYPE sigprocmask_set; | ||
| 139 | #endif /* not NOT_C_CODE */ | ||
| 140 | |||
| 141 | #define sigblock(sig) \ | ||
| 142 | (sigprocmask_set = SIGEMPTYMASK | (sig), \ | ||
| 143 | sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL)) | ||
| 144 | #define sigunblock(sig) \ | ||
| 145 | (sigprocmask_set = SIGFULLMASK & ~(sig), \ | ||
| 146 | sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL)) | ||
| 147 | |||
| 148 | #ifndef PENDING_OUTPUT_COUNT | ||
| 149 | #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base) | ||
| 150 | #endif | ||
| 151 | |||
| 152 | /* Use ELF and get real shared libraries */ | ||
| 153 | |||
| 154 | #undef COFF | ||
| 155 | #define ELF | ||
| 156 | |||
| 157 | #define UNEXEC unexelf.o | ||
| 158 | |||
| 159 | #ifndef __GNUC__ | ||
| 160 | #define C_SWITCH_SYSTEM -belf | ||
| 161 | #define LD_SWITCH_SYSTEM -belf | ||
| 162 | #endif | ||
| 163 | |||
| 164 | /* Don't disable static function, as SCO's header files have some.*/ | ||
| 165 | #undef static | ||
| 166 | |||
| 167 | #undef START_FILES | ||
| 168 | #define START_FILES pre-crt0.o /usr/ccs/lib/crt1.o /usr/ccs/lib/values-Xt.o | ||
| 169 | #undef LIB_STANDARD | ||
| 170 | #define LIB_STANDARD -lc /usr/ccs/lib/crtn.o | ||
| 171 | |||
| 172 | #define NARROWPROTO 1 | ||
| 173 | |||
| 174 | /* arch-tag: 930541b5-52d9-4cbe-b73c-f4c72091f5df | ||
| 175 | (do not change this comment) */ | ||
diff --git a/src/s/sunos4-0.h b/src/s/sunos4-0.h deleted file mode 100644 index bf77812f32c..00000000000 --- a/src/s/sunos4-0.h +++ /dev/null | |||
| @@ -1,75 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on sunos 4.0. | ||
| 2 | |||
| 3 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 4 | 2007 Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. */ | ||
| 22 | |||
| 23 | |||
| 24 | #include "bsd4-2.h" | ||
| 25 | |||
| 26 | #ifndef SUNOS4 | ||
| 27 | #define SUNOS4 | ||
| 28 | #endif | ||
| 29 | |||
| 30 | #if 0 /* This may have been needed for an earlier version of Sun OS 4. | ||
| 31 | It seems to cause warnings in 4.0.3 and 4.1. */ | ||
| 32 | #define O_NDELAY FNDELAY /* Non-blocking I/O (4.2 style) */ | ||
| 33 | #endif | ||
| 34 | |||
| 35 | /* We use the Sun syntax -Bstatic unconditionally, because even when we | ||
| 36 | use GCC, these are passed through to the linker, not handled by GCC | ||
| 37 | directly. */ | ||
| 38 | #define LD_SWITCH_SYSTEM -Bstatic | ||
| 39 | |||
| 40 | /* We use this for linking temacs, but not for other programs | ||
| 41 | or for tests in configure. */ | ||
| 42 | #define LD_SWITCH_SYSTEM_TEMACS -e __start | ||
| 43 | |||
| 44 | /* In SunOS 4.1, a static function called by tzsetwall reportedly | ||
| 45 | clears the byte just past an eight byte region it mallocs, corrupting | ||
| 46 | GNU malloc's memory pool. But Sun's malloc doesn't seem to mind. */ | ||
| 47 | |||
| 48 | #define SYSTEM_MALLOC | ||
| 49 | |||
| 50 | /* SunOS 4.x cc <stdlib.h> declares abort and free to return int. */ | ||
| 51 | |||
| 52 | #ifndef __STDC__ | ||
| 53 | #define ABORT_RETURN_TYPE int | ||
| 54 | #define FREE_RETURN_TYPE int | ||
| 55 | #endif | ||
| 56 | |||
| 57 | #ifdef __GNUC__ | ||
| 58 | /* We must define mkdir with this arg prototype | ||
| 59 | to match GCC's fixed stat.h. */ | ||
| 60 | #define MKDIR_PROTOTYPE \ | ||
| 61 | int mkdir (const char *dpath, unsigned short dmode) | ||
| 62 | #endif /* __GNUC__ */ | ||
| 63 | |||
| 64 | /* Must use the system's termcap, if we use any termcap. | ||
| 65 | It does special things. */ | ||
| 66 | |||
| 67 | #ifndef TERMINFO | ||
| 68 | #define LIBS_TERMCAP -ltermcap | ||
| 69 | #endif | ||
| 70 | |||
| 71 | #define GC_SETJMP_WORKS 1 | ||
| 72 | #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS | ||
| 73 | |||
| 74 | /* arch-tag: 362f3bfc-810d-4f6e-9b83-5a32f8f1a926 | ||
| 75 | (do not change this comment) */ | ||
diff --git a/src/s/sunos4-1.h b/src/s/sunos4-1.h deleted file mode 100644 index 2e41c55bbfe..00000000000 --- a/src/s/sunos4-1.h +++ /dev/null | |||
| @@ -1,36 +0,0 @@ | |||
| 1 | #include "sunos4-0.h" | ||
| 2 | |||
| 3 | /* Cause the compilation of oldxmenu to use the right -I option. */ | ||
| 4 | #define OLDXMENU_OPTIONS CFLAGS=C_SWITCH_SYSTEM | ||
| 5 | |||
| 6 | #if 0 /* This isn't right. Apparently some sites do have -lresolv | ||
| 7 | but don't use that. On those systems, the code below loses. | ||
| 8 | There's no way to win automatically unless someone | ||
| 9 | figures out a way of determining automatically which way is right | ||
| 10 | on any given system. */ | ||
| 11 | /* Some systems do not run the Network Information Service, but have | ||
| 12 | modified the shared C library to include resolver support without | ||
| 13 | also changing the C archive library (/usr/lib/libc.a). If we | ||
| 14 | detect the presence of libresolv.a, use -lresolv to supplement libc.a. | ||
| 15 | |||
| 16 | We used to have #ifdef HAVE_GETHOSTNAME is to prevent configure from | ||
| 17 | setting libsrc_libs to -lresolv in lib-src/Makefile. But nowadays | ||
| 18 | configure is smarter about computing libsrc_libs, and would not | ||
| 19 | be fooled. Anyway, why not use -lresolv in lib-src? */ | ||
| 20 | /* #ifdef HAVE_GETHOSTNAME */ | ||
| 21 | #ifdef HAVE_LIBRESOLV | ||
| 22 | #define LIBS_SYSTEM -lresolv | ||
| 23 | #endif | ||
| 24 | /* #endif */ | ||
| 25 | #endif | ||
| 26 | |||
| 27 | #if 0 /* Not necessary, since SYSTEM_MALLOC is defined in sunos4-0.h. */ | ||
| 28 | /* Tell GNU malloc to compensate for a bug in localtime. */ | ||
| 29 | #define SUNOS_LOCALTIME_BUG | ||
| 30 | #endif | ||
| 31 | |||
| 32 | /* Define dlopen, dlclose, dlsym. */ | ||
| 33 | #define USE_DL_STUBS | ||
| 34 | |||
| 35 | /* arch-tag: 154e2eb2-2180-4d66-90b9-7e56a22004f2 | ||
| 36 | (do not change this comment) */ | ||
diff --git a/src/s/sunos413.h b/src/s/sunos413.h deleted file mode 100644 index 9f40f2fa3af..00000000000 --- a/src/s/sunos413.h +++ /dev/null | |||
| @@ -1,16 +0,0 @@ | |||
| 1 | #include "sunos4-1.h" | ||
| 2 | |||
| 3 | /* jik@gza.com says this works now. */ | ||
| 4 | /* The bug that corrupts GNU malloc's memory pool is fixed in SunOS 4.1.3. */ | ||
| 5 | |||
| 6 | #undef SYSTEM_MALLOC | ||
| 7 | |||
| 8 | /* barrie@calvin.demon.co.uk says memmove is missing. */ | ||
| 9 | #ifndef SYSTEM_MALLOC | ||
| 10 | #define MEMMOVE_MISSING | ||
| 11 | #endif | ||
| 12 | |||
| 13 | #define USE_MMAP_FOR_BUFFERS 1 | ||
| 14 | |||
| 15 | /* arch-tag: ebd184b0-9084-4306-8e71-c0437330e1e1 | ||
| 16 | (do not change this comment) */ | ||
diff --git a/src/s/sunos4shr.h b/src/s/sunos4shr.h deleted file mode 100644 index 5ebbae3a0a2..00000000000 --- a/src/s/sunos4shr.h +++ /dev/null | |||
| @@ -1,84 +0,0 @@ | |||
| 1 | /* | ||
| 2 | Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, 2006, | ||
| 3 | 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* This file permits building Emacs with a shared libc on Sunos 4. | ||
| 24 | To make this work, you must completely replace your C shared library | ||
| 25 | using one of the SunOS 4.1.x jumbo replacement patches from Sun. | ||
| 26 | Here are the patch numbers for Sunos 4.1.3: | ||
| 27 | 100890-10 SunOS 4.1.3: domestic libc jumbo patch | ||
| 28 | 100891-10 SunOS 4.1.3: international libc jumbo patch */ | ||
| 29 | |||
| 30 | |||
| 31 | #include "sunos4-1.h" | ||
| 32 | |||
| 33 | /* Say that the text segment of a.out includes the header; | ||
| 34 | the header actually occupies the first few bytes of the text segment | ||
| 35 | and is counted in hdr.a_text. */ | ||
| 36 | |||
| 37 | /* Misleading! Actually gets loaded after crt0.o */ | ||
| 38 | #define START_FILES pre-crt0.o | ||
| 39 | |||
| 40 | /* | ||
| 41 | * Kludge! can't get at symbol "start" in std crt0.o | ||
| 42 | * Who the #$%&* decided to remove the __ characters! | ||
| 43 | * Someone needs to fix this in sysdep.c with an #ifdef BROKEN_START in | ||
| 44 | * sysdep.c. We do not use this address so any value should do really. Still | ||
| 45 | * may need it in the future? | ||
| 46 | */ | ||
| 47 | #define BROKEN_START | ||
| 48 | #define TEXT_START 0x2020 | ||
| 49 | |||
| 50 | #define UNEXEC unexsunos4.o | ||
| 51 | #define RUN_TIME_REMAP | ||
| 52 | #define ORDINARY_LINK | ||
| 53 | #define SUNOS4_SHARED_LIBRARIES | ||
| 54 | |||
| 55 | #undef LD_SWITCH_SYSTEM | ||
| 56 | #undef LD_SWITCH_SYSTEM_TEMACS | ||
| 57 | |||
| 58 | #undef SYSTEM_MALLOC | ||
| 59 | #ifndef GNU_MALLOC | ||
| 60 | #define GNU_MALLOC | ||
| 61 | #endif | ||
| 62 | #ifndef REL_ALLOC | ||
| 63 | #define REL_ALLOC | ||
| 64 | #endif | ||
| 65 | |||
| 66 | /* khera@cs.duke.edu says this is needed. */ | ||
| 67 | #define memmove(to, from, size) bcopy (from, to, size) | ||
| 68 | |||
| 69 | #undef USE_DL_STUBS | ||
| 70 | |||
| 71 | #ifndef HAVE_X11R6 | ||
| 72 | /* With X11R5 it was reported that linking -lXmu dynamically | ||
| 73 | did not work. With X11R6, it does work; and since normally | ||
| 74 | only the dynamic libraries are available, we should use them. */ | ||
| 75 | #ifdef __GNUC__ | ||
| 76 | #define LIBXMU -Xlinker -Bstatic -lXmu -Xlinker -Bdynamic | ||
| 77 | #else | ||
| 78 | #define LIBXMU -Bstatic -lXmu -Bdynamic | ||
| 79 | #endif | ||
| 80 | |||
| 81 | #endif /* not HAVE_X11R6 */ | ||
| 82 | |||
| 83 | /* arch-tag: cb54321a-ed45-4c17-a23e-1c157758da78 | ||
| 84 | (do not change this comment) */ | ||
diff --git a/src/s/umax.h b/src/s/umax.h deleted file mode 100644 index aa73faa4917..00000000000 --- a/src/s/umax.h +++ /dev/null | |||
| @@ -1,170 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on UMAX 4.2 | ||
| 2 | Copyright (C) 1985, 1986, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* | ||
| 24 | * Define symbols to identify the version of Unix this is. | ||
| 25 | * Define all the symbols that apply correctly. | ||
| 26 | */ | ||
| 27 | |||
| 28 | /* #define UNIPLUS */ | ||
| 29 | /* #define USG5 */ | ||
| 30 | /* #define USG */ | ||
| 31 | /* #define BSD4_1 */ | ||
| 32 | #define BSD4_2 | ||
| 33 | /* #define BSD4_3 */ | ||
| 34 | #define BSD_SYSTEM | ||
| 35 | #define UMAX4_2 | ||
| 36 | #define UMAX | ||
| 37 | /* #define VMS */ | ||
| 38 | |||
| 39 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 40 | It sets the Lisp variable system-type. */ | ||
| 41 | |||
| 42 | #define SYSTEM_TYPE "berkeley-unix" | ||
| 43 | |||
| 44 | /* NOMULTIPLEJOBS should be defined if your system's shell | ||
| 45 | does not have "job control" (the ability to stop a program, | ||
| 46 | run some other program, then continue the first one). */ | ||
| 47 | |||
| 48 | /* #define NOMULTIPLEJOBS */ | ||
| 49 | |||
| 50 | /* Emacs can read input using SIGIO and buffering characters itself, | ||
| 51 | or using CBREAK mode and making C-g cause SIGINT. | ||
| 52 | The choice is controlled by the variable interrupt_input. | ||
| 53 | Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) | ||
| 54 | |||
| 55 | SIGIO can be used only on systems that implement it (4.2 and 4.3). | ||
| 56 | CBREAK mode has two disadvantages | ||
| 57 | 1) At least in 4.2, it is impossible to handle the Meta key properly. | ||
| 58 | I hear that in system V this problem does not exist. | ||
| 59 | 2) Control-G causes output to be discarded. | ||
| 60 | I do not know whether this can be fixed in system V. | ||
| 61 | |||
| 62 | Another method of doing input is planned but not implemented. | ||
| 63 | It would have Emacs fork off a separate process | ||
| 64 | to read the input and send it to the true Emacs process | ||
| 65 | through a pipe. | ||
| 66 | */ | ||
| 67 | |||
| 68 | #define INTERRUPT_INPUT | ||
| 69 | |||
| 70 | /* Letter to use in finding device name of first pty, | ||
| 71 | if system supports pty's. 'a' means it is /dev/ptya0 */ | ||
| 72 | |||
| 73 | #define FIRST_PTY_LETTER 'p' | ||
| 74 | |||
| 75 | /* | ||
| 76 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 77 | */ | ||
| 78 | |||
| 79 | #define HAVE_PTYS | ||
| 80 | |||
| 81 | /* Define this macro if system defines a type `union wait'. */ | ||
| 82 | |||
| 83 | #define HAVE_UNION_WAIT | ||
| 84 | |||
| 85 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 86 | |||
| 87 | #define HAVE_SOCKETS | ||
| 88 | |||
| 89 | /* | ||
| 90 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 91 | * The 4.2 opendir, etc., library functions. | ||
| 92 | */ | ||
| 93 | |||
| 94 | /* #define NONSYSTEM_DIR_LIBRARY */ | ||
| 95 | |||
| 96 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 97 | |||
| 98 | #define BSTRING | ||
| 99 | |||
| 100 | /* subprocesses should be defined if you want to | ||
| 101 | have code for asynchronous subprocesses | ||
| 102 | (as used in M-x compile and M-x shell). | ||
| 103 | This is generally OS dependent, and not supported | ||
| 104 | under most USG systems. */ | ||
| 105 | |||
| 106 | #define subprocesses | ||
| 107 | |||
| 108 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 109 | preprocessor symbol "COFF". */ | ||
| 110 | |||
| 111 | #define COFF | ||
| 112 | |||
| 113 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 114 | to interlock access to /usr/spool/mail/$USER. | ||
| 115 | The alternative is that a lock file named | ||
| 116 | /usr/spool/mail/$USER.lock. */ | ||
| 117 | |||
| 118 | #define MAIL_USE_FLOCK | ||
| 119 | |||
| 120 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 121 | so that Emacs can tell instantly when you try to modify | ||
| 122 | a file that someone else has modified in his Emacs. */ | ||
| 123 | |||
| 124 | #define CLASH_DETECTION | ||
| 125 | |||
| 126 | /* The file containing the kernel's symbol table is called /vmunix. */ | ||
| 127 | |||
| 128 | #define KERNEL_FILE "/vmunix" | ||
| 129 | |||
| 130 | /* The symbol in the kernel where the load average is found | ||
| 131 | is named _avenrun. */ | ||
| 132 | |||
| 133 | #define LDAV_SYMBOL "_avenrun" | ||
| 134 | |||
| 135 | /* Here, on a separate page, add any special hacks needed | ||
| 136 | to make Emacs work on this system. For example, | ||
| 137 | you might define certain system call names that don't | ||
| 138 | exist on your system, or that do different things on | ||
| 139 | your system and must be used only through an encapsulation | ||
| 140 | (Which you should place, by convention, in sysdep.c). */ | ||
| 141 | |||
| 142 | /* Specify alignment requirement for start of text and data sections | ||
| 143 | in the executable file. */ | ||
| 144 | |||
| 145 | #define SECTION_ALIGNMENT pagemask | ||
| 146 | |||
| 147 | |||
| 148 | #define SEGMENT_MASK (64 * 1024 - 1) | ||
| 149 | |||
| 150 | |||
| 151 | /* crt0.c needs this for compilation because it uses asm. */ | ||
| 152 | |||
| 153 | #define C_SWITCH_ASM -q nodirect_code | ||
| 154 | |||
| 155 | /* Encore machines with APC processor boards align sections on 4M | ||
| 156 | boundaries, so it is not easy to remap the start of the text segment | ||
| 157 | in the unexec() routine. For them you need the following two lines. | ||
| 158 | For DPC processors you can enable these or not, as you wish, but | ||
| 159 | you will get better performance without them. */ | ||
| 160 | |||
| 161 | /* #define NO_REMAP | ||
| 162 | #define TEXT_START 0 | ||
| 163 | */ | ||
| 164 | |||
| 165 | /* Process groups work in the traditional BSD manner. */ | ||
| 166 | |||
| 167 | #define BSD_PGRPS | ||
| 168 | |||
| 169 | /* arch-tag: 2860edda-ce9e-4cfa-943d-3a06c7045854 | ||
| 170 | (do not change this comment) */ | ||
diff --git a/src/s/unipl5-2.h b/src/s/unipl5-2.h deleted file mode 100644 index 5730fa65284..00000000000 --- a/src/s/unipl5-2.h +++ /dev/null | |||
| @@ -1,160 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running on UniSoft's UniPlus 5.2 | ||
| 2 | Copyright (C) 1985, 1986, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | |||
| 23 | /* | ||
| 24 | * Define symbols to identify the version of Unix this is. | ||
| 25 | * Define all the symbols that apply correctly. | ||
| 26 | */ | ||
| 27 | |||
| 28 | #define USG /* System III, System V, etc */ | ||
| 29 | |||
| 30 | #define USG5 | ||
| 31 | |||
| 32 | #define UNIPLUS | ||
| 33 | |||
| 34 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 35 | It sets the Lisp variable system-type. */ | ||
| 36 | |||
| 37 | #define SYSTEM_TYPE "unisoft-unix" | ||
| 38 | |||
| 39 | /* nomultiplejobs should be defined if your system's shell | ||
| 40 | does not have "job control" (the ability to stop a program, | ||
| 41 | run some other program, then continue the first one). */ | ||
| 42 | |||
| 43 | /* #define NOMULTIPLEJOBS */ | ||
| 44 | |||
| 45 | /* Default is to set interrupt_input to 0: don't do input buffering within Emacs */ | ||
| 46 | |||
| 47 | /* #define INTERRUPT_INPUT */ | ||
| 48 | |||
| 49 | /* Letter to use in finding device name of first pty, | ||
| 50 | if system supports pty's. 'p' means it is /dev/ptyp0 */ | ||
| 51 | |||
| 52 | #define FIRST_PTY_LETTER 'p' | ||
| 53 | |||
| 54 | /* | ||
| 55 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 56 | * for terminal control. | ||
| 57 | */ | ||
| 58 | |||
| 59 | #define HAVE_TERMIO | ||
| 60 | |||
| 61 | /* | ||
| 62 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 63 | */ | ||
| 64 | |||
| 65 | #define HAVE_PTYS | ||
| 66 | |||
| 67 | /* Define this macro if system defines a type `union wait'. */ | ||
| 68 | |||
| 69 | #define HAVE_UNION_WAIT | ||
| 70 | |||
| 71 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 72 | |||
| 73 | /* #define HAVE_SOCKETS */ | ||
| 74 | |||
| 75 | /* | ||
| 76 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 77 | * The 4.2 opendir, etc., library functions. | ||
| 78 | */ | ||
| 79 | |||
| 80 | #define NONSYSTEM_DIR_LIBRARY | ||
| 81 | |||
| 82 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 83 | |||
| 84 | /* #define BSTRING */ | ||
| 85 | |||
| 86 | /* subprocesses should be defined if you want to | ||
| 87 | have code for asynchronous subprocesses | ||
| 88 | (as used in M-x compile and M-x shell). | ||
| 89 | This is generally OS dependent, and not supported | ||
| 90 | under most USG systems. It is supported under UniPlus | ||
| 91 | System V Release 2. */ | ||
| 92 | |||
| 93 | #define subprocesses | ||
| 94 | |||
| 95 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 96 | preprocessor symbol "COFF". */ | ||
| 97 | |||
| 98 | #define COFF | ||
| 99 | |||
| 100 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 101 | to interlock access to /usr/spool/mail/$USER. | ||
| 102 | The alternative is that a lock file named | ||
| 103 | /usr/spool/mail/$USER.lock. */ | ||
| 104 | |||
| 105 | /* #define MAIL_USE_FLOCK */ | ||
| 106 | |||
| 107 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 108 | so that Emacs can tell instantly when you try to modify | ||
| 109 | a file that someone else has modified in his Emacs. */ | ||
| 110 | |||
| 111 | /* #define CLASH_DETECTION */ | ||
| 112 | |||
| 113 | /* Uniplus 5.2 supports long names in C */ | ||
| 114 | |||
| 115 | /* #define SHORTNAMES */ | ||
| 116 | |||
| 117 | /* The file containing the kernel's symbol table is called /unix. */ | ||
| 118 | |||
| 119 | #define KERNEL_FILE "/unix" | ||
| 120 | |||
| 121 | /* The symbol in the kernel where the load average is found | ||
| 122 | is named avenrun. */ | ||
| 123 | |||
| 124 | #define LDAV_SYMBOL "avenrun" | ||
| 125 | |||
| 126 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 127 | |||
| 128 | /* | ||
| 129 | * Make the sigsetmask function go away. Don't know what the | ||
| 130 | * ramifications of this are, but doesn't seem possible to | ||
| 131 | * emulate it properly anyway at this point. | ||
| 132 | */ | ||
| 133 | |||
| 134 | #define sigsetmask(mask) /* Null expansion */ | ||
| 135 | |||
| 136 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 137 | but they will run slower. */ | ||
| 138 | |||
| 139 | #define _setjmp setjmp | ||
| 140 | #define _longjmp longjmp | ||
| 141 | |||
| 142 | /* On USG systems these have different names */ | ||
| 143 | |||
| 144 | #define index strchr | ||
| 145 | #define rindex strrchr | ||
| 146 | |||
| 147 | /* Compiler bug bites when default ADDR_CORRECT is used. */ | ||
| 148 | |||
| 149 | #define ADDR_CORRECT(x) (x) | ||
| 150 | |||
| 151 | /* Special library needed for linking for Uniplus */ | ||
| 152 | |||
| 153 | #define LIBS_SYSTEM -lnet | ||
| 154 | |||
| 155 | /* A system-specific loader switch is needed. */ | ||
| 156 | |||
| 157 | #define LD_SWITCH_SYSTEM -N -L/lib/libg /usr/lib/unshared.ld | ||
| 158 | |||
| 159 | /* arch-tag: d3f952a9-fef5-45d5-9c1e-c1c32bfef86c | ||
| 160 | (do not change this comment) */ | ||
diff --git a/src/s/xenix.h b/src/s/xenix.h deleted file mode 100644 index c5b3cf225e0..00000000000 --- a/src/s/xenix.h +++ /dev/null | |||
| @@ -1,212 +0,0 @@ | |||
| 1 | /* Definitions file for GNU Emacs running SCO Xenix 386 Release 2.2 | ||
| 2 | Copyright (C) 1988, 1999, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* | ||
| 23 | * Define symbols to identify the version of Unix this is. | ||
| 24 | * Define all the symbols that apply correctly. | ||
| 25 | */ | ||
| 26 | |||
| 27 | /* #define UNIPLUS */ | ||
| 28 | #define XENIX | ||
| 29 | #define USG5 | ||
| 30 | #define USG | ||
| 31 | /* #define HPUX */ | ||
| 32 | /* #define UMAX */ | ||
| 33 | /* #define BSD4_1 */ | ||
| 34 | /* #define BSD4_2 */ | ||
| 35 | /* #define BSD4_3 */ | ||
| 36 | /* #define BSD_SYSTEM */ | ||
| 37 | /* #define VMS */ | ||
| 38 | |||
| 39 | /* SYSTEM_TYPE should indicate the kind of system you are using. | ||
| 40 | It sets the Lisp variable system-type. */ | ||
| 41 | |||
| 42 | #define SYSTEM_TYPE "xenix" | ||
| 43 | |||
| 44 | /* NOMULTIPLEJOBS should be defined if your system's shell | ||
| 45 | does not have "job control" (the ability to stop a program, | ||
| 46 | run some other program, then continue the first one). */ | ||
| 47 | |||
| 48 | #define NOMULTIPLEJOBS | ||
| 49 | |||
| 50 | /* Emacs can read input using SIGIO and buffering characters itself, | ||
| 51 | or using CBREAK mode and making C-g cause SIGINT. | ||
| 52 | The choice is controlled by the variable interrupt_input. | ||
| 53 | Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO) | ||
| 54 | |||
| 55 | SIGIO can be used only on systems that implement it (4.2 and 4.3). | ||
| 56 | CBREAK mode has two disadvantages: | ||
| 57 | 1) At least in 4.2, it is impossible to handle the Meta key properly. | ||
| 58 | I hear that in system V this problem does not exist. | ||
| 59 | 2) Control-G causes output to be discarded. | ||
| 60 | I do not know whether this can be fixed in system V. | ||
| 61 | |||
| 62 | Another method of doing input is planned but not implemented. | ||
| 63 | It would have Emacs fork off a separate process | ||
| 64 | to read the input and send it to the true Emacs process | ||
| 65 | through a pipe. | ||
| 66 | */ | ||
| 67 | |||
| 68 | /* #define INTERRUPT_INPUT */ | ||
| 69 | |||
| 70 | /* Letter to use in finding device name of first pty, | ||
| 71 | if system supports pty's. 'p' means it is /dev/ptyp0 */ | ||
| 72 | |||
| 73 | /* #define FIRST_PTY_LETTER 'p' */ | ||
| 74 | |||
| 75 | /* | ||
| 76 | * Define HAVE_TERMIO if the system provides sysV-style ioctls | ||
| 77 | * for terminal control. | ||
| 78 | */ | ||
| 79 | |||
| 80 | #define HAVE_TERMIO | ||
| 81 | |||
| 82 | /* | ||
| 83 | * Define HAVE_PTYS if the system supports pty devices. | ||
| 84 | */ | ||
| 85 | |||
| 86 | /* #define HAVE_PTYS */ | ||
| 87 | |||
| 88 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | ||
| 89 | |||
| 90 | /* #define HAVE_SOCKETS */ | ||
| 91 | |||
| 92 | /* | ||
| 93 | * Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate | ||
| 94 | * The 4.2 opendir, etc., library functions. | ||
| 95 | */ | ||
| 96 | |||
| 97 | #define NONSYSTEM_DIR_LIBRARY | ||
| 98 | |||
| 99 | /* Define this symbol if your system has the functions bcopy, etc. */ | ||
| 100 | |||
| 101 | /* #define BSTRING */ | ||
| 102 | |||
| 103 | /* subprocesses should be defined if you want to | ||
| 104 | have code for asynchronous subprocesses | ||
| 105 | (as used in M-x compile and M-x shell). | ||
| 106 | This is supposed to work now on system V release 2. */ | ||
| 107 | |||
| 108 | #define subprocesses | ||
| 109 | |||
| 110 | /* If your system uses COFF (Common Object File Format) then define the | ||
| 111 | preprocessor symbol "COFF". */ | ||
| 112 | |||
| 113 | /* #define COFF */ | ||
| 114 | |||
| 115 | /* Xenix requires completely different unexec code | ||
| 116 | which lives in a separate file. Specify the file name. */ | ||
| 117 | |||
| 118 | #define UNEXEC unexenix.o | ||
| 119 | |||
| 120 | /* define MAIL_USE_FLOCK if the mailer uses flock | ||
| 121 | to interlock access to /usr/spool/mail/$USER. | ||
| 122 | The alternative is that a lock file named | ||
| 123 | /usr/spool/mail/$USER.lock. */ | ||
| 124 | |||
| 125 | #define MAIL_USE_FLOCK | ||
| 126 | |||
| 127 | /* Define CLASH_DETECTION if you want lock files to be written | ||
| 128 | so that Emacs can tell instantly when you try to modify | ||
| 129 | a file that someone else has modified in his Emacs. */ | ||
| 130 | |||
| 131 | /* The way this is implemented requires long filenames... */ | ||
| 132 | /* #define CLASH_DETECTION */ | ||
| 133 | |||
| 134 | /* Define SHORTNAMES if the C compiler can distinguish only | ||
| 135 | short names. It means that the stuff in ../shortnames | ||
| 136 | must be run to convert the long names to short ones. */ | ||
| 137 | |||
| 138 | /* #define SHORTNAMES */ | ||
| 139 | |||
| 140 | /* Compensate for one incompatibility between Xenix and V.0. */ | ||
| 141 | #define n_zeroes n_name[0] | ||
| 142 | |||
| 143 | /* The file containing the kernel's symbol table is called /xenix. */ | ||
| 144 | |||
| 145 | #define KERNEL_FILE "/xenix" | ||
| 146 | |||
| 147 | /* The symbol in the kernel where the load average is found | ||
| 148 | is named avenrun. */ | ||
| 149 | |||
| 150 | #define LDAV_SYMBOL "_avenrun" | ||
| 151 | |||
| 152 | /* Special hacks needed to make Emacs run on this system. */ | ||
| 153 | |||
| 154 | /* | ||
| 155 | * Make the sigsetmask function go away. Don't know what the | ||
| 156 | * ramifications of this are, but doesn't seem possible to | ||
| 157 | * emulate it properly anyway at this point. | ||
| 158 | */ | ||
| 159 | |||
| 160 | #define sigsetmask(mask) /* Null expansion */ | ||
| 161 | |||
| 162 | /* setjmp and longjmp can safely replace _setjmp and _longjmp, | ||
| 163 | but they will run slower. */ | ||
| 164 | |||
| 165 | #define _setjmp setjmp | ||
| 166 | #define _longjmp longjmp | ||
| 167 | |||
| 168 | /* On USG systems these have different names */ | ||
| 169 | |||
| 170 | #define index strchr | ||
| 171 | #define rindex strrchr | ||
| 172 | |||
| 173 | /* Compiler bug bites on many systems when default ADDR_CORRECT is used. */ | ||
| 174 | |||
| 175 | #define ADDR_CORRECT(x) (x) | ||
| 176 | |||
| 177 | /* Prevent -lg from being used for debugging. Not implemented? */ | ||
| 178 | |||
| 179 | #define LIBS_DEBUG | ||
| 180 | |||
| 181 | /* Switches for linking temacs. */ | ||
| 182 | |||
| 183 | #define LD_SWITCH_SYSTEM -i | ||
| 184 | |||
| 185 | /* Xenix implements sysV style IPC. */ | ||
| 186 | |||
| 187 | #define HAVE_SYSVIPC | ||
| 188 | |||
| 189 | /* Use terminfo instead of termcap. */ | ||
| 190 | |||
| 191 | /* Tell Emacs to use Terminfo. */ | ||
| 192 | |||
| 193 | #define TERMINFO | ||
| 194 | |||
| 195 | /* Tell Xenix curses to BE Terminfo. */ | ||
| 196 | #define M_TERMINFO | ||
| 197 | |||
| 198 | /* Control program name for etc/fakemail to run. */ | ||
| 199 | |||
| 200 | #ifdef SMAIL | ||
| 201 | #define MAIL_PROGRAM_NAME "/usr/bin/smail -q0" | ||
| 202 | #else | ||
| 203 | #define MAIL_PROGRAM_NAME "/usr/lib/mail/execmail" | ||
| 204 | #endif | ||
| 205 | |||
| 206 | /* Some variants have TIOCGETC, but the structures to go with it | ||
| 207 | are not declared. */ | ||
| 208 | |||
| 209 | #define BROKEN_TIOCGETC | ||
| 210 | |||
| 211 | /* arch-tag: 71d3985d-4e53-4572-8276-5dce26bbd076 | ||
| 212 | (do not change this comment) */ | ||
diff --git a/src/sysdep.c b/src/sysdep.c index d1f378a3f87..d421c55f2c2 100644 --- a/src/sysdep.c +++ b/src/sysdep.c | |||
| @@ -33,12 +33,6 @@ Boston, MA 02110-1301, USA. */ | |||
| 33 | /* Including stdlib.h isn't necessarily enough to get srandom | 33 | /* Including stdlib.h isn't necessarily enough to get srandom |
| 34 | declared, e.g. without __USE_XOPEN_EXTENDED with glibc 2. */ | 34 | declared, e.g. without __USE_XOPEN_EXTENDED with glibc 2. */ |
| 35 | #ifdef HAVE_RANDOM | 35 | #ifdef HAVE_RANDOM |
| 36 | #if 0 /* It turns out that defining _OSF_SOURCE in osf5-0.h gets | ||
| 37 | random prototyped as returning `int'. It looks to me as | ||
| 38 | though the best way to DTRT is to prefer the rand48 functions | ||
| 39 | (per libc.info). -- fx */ | ||
| 40 | extern long int random P_ ((void)); | ||
| 41 | #endif | ||
| 42 | #if 0 /* Don't prototype srandom; it takes an unsigned argument on | 36 | #if 0 /* Don't prototype srandom; it takes an unsigned argument on |
| 43 | some systems, and an unsigned long on others, like FreeBSD | 37 | some systems, and an unsigned long on others, like FreeBSD |
| 44 | 4.1. */ | 38 | 4.1. */ |
diff --git a/src/unexapollo.c b/src/unexapollo.c deleted file mode 100644 index 4facf823e19..00000000000 --- a/src/unexapollo.c +++ /dev/null | |||
| @@ -1,301 +0,0 @@ | |||
| 1 | /* unexapollo.c -- COFF File UNEXEC for GNU Emacs on Apollo SR10.x | ||
| 2 | Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004, | ||
| 3 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 4 | |||
| 5 | This file is part of GNU Emacs. | ||
| 6 | |||
| 7 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 8 | it under the terms of the GNU General Public License as published by | ||
| 9 | the Free Software Foundation; either version 3, or (at your option) | ||
| 10 | any later version. | ||
| 11 | |||
| 12 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 15 | GNU General Public License for more details. | ||
| 16 | |||
| 17 | You should have received a copy of the GNU General Public License | ||
| 18 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 20 | Boston, MA 02110-1301, USA. */ | ||
| 21 | |||
| 22 | /* Written by Leonard N. Zubkoff. */ | ||
| 23 | |||
| 24 | #ifdef HAVE_CONFIG_H | ||
| 25 | #include <config.h> | ||
| 26 | #endif | ||
| 27 | |||
| 28 | #include <fcntl.h> | ||
| 29 | |||
| 30 | |||
| 31 | #include <a.out.h> | ||
| 32 | #include <sys/file.h> | ||
| 33 | #include <apollo/base.h> | ||
| 34 | #include <apollo/ios.h> | ||
| 35 | #include <apollo/type_uids.h> | ||
| 36 | #include <apollo/dst.h> | ||
| 37 | |||
| 38 | |||
| 39 | #define DST_RECORD_HDR_SIZE 2 | ||
| 40 | #define LONG_ALIGN(X) (((X)+3)&(~3)) | ||
| 41 | |||
| 42 | |||
| 43 | void | ||
| 44 | unexec (target_file_name, source_file_name) | ||
| 45 | char *target_file_name, *source_file_name; | ||
| 46 | { | ||
| 47 | struct filehdr file_header; | ||
| 48 | struct aouthdr domain_header; | ||
| 49 | struct scnhdr *section, *sections, *sections_limit; | ||
| 50 | struct scnhdr *first_data_section, *last_data_section; | ||
| 51 | struct scnhdr *rwdi_section, *blocks_section; | ||
| 52 | struct reloc reloc_entry; | ||
| 53 | unsigned long data_size, old_data_section_size, source_file_offset_past_rwdi; | ||
| 54 | unsigned char buffer[4096]; | ||
| 55 | long delta_before_rwdi, delta_after_rwdi, byte_count; | ||
| 56 | long first_changed_vaddr, old_rwdi_vaddr, i; | ||
| 57 | ios_$id_t target_file, source_file; | ||
| 58 | status_$t status; | ||
| 59 | /* Open the Source File. */ | ||
| 60 | if ((source_file = open (source_file_name, O_RDONLY)) < 0) | ||
| 61 | error ("cannot open source file for input"); | ||
| 62 | /* Read the File Header. */ | ||
| 63 | if (read (source_file, &file_header, sizeof (file_header)) != sizeof (file_header)) | ||
| 64 | error ("cannot read file header"); | ||
| 65 | |||
| 66 | /* Read the Domain Header. */ | ||
| 67 | if (read (source_file, &domain_header, sizeof (domain_header)) | ||
| 68 | != sizeof (domain_header)) | ||
| 69 | error ("cannot read domain header"); | ||
| 70 | /* Read the Section Headers. */ | ||
| 71 | sections = | ||
| 72 | (struct scnhdr *) malloc (file_header.f_nscns*sizeof (struct scnhdr)); | ||
| 73 | if (sections == (struct scnhdr *) 0) | ||
| 74 | error ("cannot allocate section header storage"); | ||
| 75 | sections_limit = sections + file_header.f_nscns; | ||
| 76 | if (read (source_file, sections, file_header.f_nscns*sizeof (struct scnhdr)) | ||
| 77 | != file_header.f_nscns*sizeof (struct scnhdr)) | ||
| 78 | error ("cannot read section headers"); | ||
| 79 | /* Compute the new Size of the Data Section. */ | ||
| 80 | data_size = sbrk (0) - domain_header.data_start; | ||
| 81 | delta_before_rwdi = delta_after_rwdi = data_size - domain_header.dsize; | ||
| 82 | old_rwdi_vaddr = 0; | ||
| 83 | /* Find and Deallocate the .rwdi Section Information. */ | ||
| 84 | for (rwdi_section = sections; rwdi_section != sections_limit; rwdi_section++) | ||
| 85 | if (strcmp (rwdi_section->s_name, ".rwdi") == 0) | ||
| 86 | { | ||
| 87 | /* If there are relocation entries, we cannot "unrelocate" them. */ | ||
| 88 | if (rwdi_section->s_nreloc > 0) | ||
| 89 | error (".rwdi section needs relocation - cannot dump Emacs"); | ||
| 90 | delta_after_rwdi = delta_before_rwdi - rwdi_section->s_size; | ||
| 91 | old_rwdi_vaddr = rwdi_section->s_vaddr; | ||
| 92 | rwdi_section->s_paddr = 0; | ||
| 93 | rwdi_section->s_vaddr = 0; | ||
| 94 | rwdi_section->s_scnptr = 0; | ||
| 95 | rwdi_section->s_size = 0; | ||
| 96 | source_file_offset_past_rwdi = (rwdi_section+1)->s_scnptr; | ||
| 97 | break; | ||
| 98 | } | ||
| 99 | /* Skip over the Text Section Headers. */ | ||
| 100 | for (section = sections; (section->s_flags & STYP_TEXT) != 0; section++) ; | ||
| 101 | /* | ||
| 102 | Find the First and Last Data Sections and Fixup | ||
| 103 | Section Header Relocation Pointers. | ||
| 104 | */ | ||
| 105 | first_data_section = last_data_section = (struct scnhdr *) 0; | ||
| 106 | for (; section != sections_limit; section++) | ||
| 107 | { | ||
| 108 | if ((section->s_flags & STYP_DATA) != 0) | ||
| 109 | { | ||
| 110 | if (first_data_section == (struct scnhdr *) 0) | ||
| 111 | first_data_section = section; | ||
| 112 | last_data_section = section; | ||
| 113 | } | ||
| 114 | if (section->s_relptr != 0) | ||
| 115 | section->s_relptr += delta_after_rwdi; | ||
| 116 | } | ||
| 117 | /* Increment the Size of the Last Data Section. */ | ||
| 118 | old_data_section_size = last_data_section->s_size; | ||
| 119 | last_data_section->s_size += delta_before_rwdi; | ||
| 120 | |||
| 121 | /* Update the File Header and Domain Header. */ | ||
| 122 | file_header.f_symptr += delta_after_rwdi; | ||
| 123 | domain_header.dsize = data_size; | ||
| 124 | domain_header.bsize = 0; | ||
| 125 | /* Skip over subsequent Bss Section Headers. */ | ||
| 126 | for (section = last_data_section+1; | ||
| 127 | (section->s_flags & STYP_BSS) != 0; section++) ; | ||
| 128 | /* Update the remaining Section Headers. */ | ||
| 129 | blocks_section = (struct scnhdr *) 0; | ||
| 130 | first_changed_vaddr = 0; | ||
| 131 | for (; section != sections_limit; section++) | ||
| 132 | { | ||
| 133 | long delta = (section < rwdi_section ? delta_before_rwdi : delta_after_rwdi); | ||
| 134 | if (section->s_paddr != 0) | ||
| 135 | section->s_paddr += delta; | ||
| 136 | if (section->s_vaddr != 0) | ||
| 137 | { | ||
| 138 | if (first_changed_vaddr == 0) | ||
| 139 | first_changed_vaddr = section->s_vaddr; | ||
| 140 | section->s_vaddr += delta; | ||
| 141 | } | ||
| 142 | if (section->s_scnptr != 0) | ||
| 143 | section->s_scnptr += delta; | ||
| 144 | if (strcmp (section->s_name, ".blocks") == 0) | ||
| 145 | blocks_section = section; | ||
| 146 | else if (strcmp (section->s_name, ".sri") == 0 && | ||
| 147 | domain_header.o_sri != 0) | ||
| 148 | domain_header.o_sri += delta; | ||
| 149 | else if (strcmp (section->s_name, ".inlib") == 0 && | ||
| 150 | domain_header.o_inlib != 0) | ||
| 151 | domain_header.o_inlib += delta; | ||
| 152 | } | ||
| 153 | /* Open the Target File. */ | ||
| 154 | ios_$create (target_file_name, strlen (target_file_name), coff_$uid, | ||
| 155 | ios_$recreate_mode, ios_$write_opt, &target_file, &status); | ||
| 156 | if (status.all != status_$ok) | ||
| 157 | error ("cannot open target file for output"); | ||
| 158 | /* Write the File Header. */ | ||
| 159 | if (write (target_file, &file_header, sizeof (file_header)) != sizeof (file_header)) | ||
| 160 | error ("cannot write file header"); | ||
| 161 | /* Write the Domain Header. */ | ||
| 162 | if (write (target_file, &domain_header, sizeof (domain_header)) | ||
| 163 | != sizeof (domain_header)) | ||
| 164 | error ("cannot write domain header"); | ||
| 165 | /* Write the Section Headers. */ | ||
| 166 | if (write (target_file, sections, file_header.f_nscns*sizeof (struct scnhdr)) | ||
| 167 | != file_header.f_nscns*sizeof (struct scnhdr)) | ||
| 168 | error ("cannot write section headers"); | ||
| 169 | /* Copy the Allocated Sections. */ | ||
| 170 | for (section = sections; section != first_data_section; section++) | ||
| 171 | if (section->s_scnptr != 0) | ||
| 172 | CopyData (target_file, source_file, LONG_ALIGN(section->s_size)); | ||
| 173 | /* Write the Expanded Data Segment. */ | ||
| 174 | if (write (target_file, first_data_section->s_vaddr, data_size) != data_size) | ||
| 175 | error ("cannot write new data section"); | ||
| 176 | |||
| 177 | /* Skip over the Last Data Section and Copy until the .rwdi Section. */ | ||
| 178 | if (lseek (source_file, last_data_section->s_scnptr | ||
| 179 | +old_data_section_size, L_SET) == -1) | ||
| 180 | error ("cannot seek past data section"); | ||
| 181 | for (section = last_data_section+1; section != rwdi_section; section++) | ||
| 182 | if (section->s_scnptr != 0) | ||
| 183 | CopyData (target_file, source_file, LONG_ALIGN(section->s_size)); | ||
| 184 | /* Skip over the .rwdi Section and Copy Remainder of Source File. */ | ||
| 185 | if (lseek (source_file, source_file_offset_past_rwdi, L_SET) == -1) | ||
| 186 | error ("cannot seek past .rwdi section"); | ||
| 187 | while ((byte_count = read (source_file, buffer, sizeof (buffer))) > 0) | ||
| 188 | if (write (target_file, buffer, byte_count) != byte_count) | ||
| 189 | error ("cannot write data"); | ||
| 190 | /* Unrelocate .data references to Global Symbols. */ | ||
| 191 | for (section = first_data_section; section <= last_data_section; section++) | ||
| 192 | for (i = 0; i < section->s_nreloc; i++) | ||
| 193 | { | ||
| 194 | if (lseek (source_file, section->s_relptr | ||
| 195 | +i*sizeof (struct reloc)-delta_after_rwdi, L_SET) == -1) | ||
| 196 | error ("cannot seek to relocation info"); | ||
| 197 | if (read (source_file, &reloc_entry, sizeof (reloc_entry)) | ||
| 198 | != sizeof (reloc_entry)) | ||
| 199 | error ("cannot read reloc entry"); | ||
| 200 | if (lseek (source_file, reloc_entry.r_vaddr-section->s_vaddr | ||
| 201 | +section->s_scnptr, L_SET) == -1) | ||
| 202 | error ("cannot seek to data element"); | ||
| 203 | if (lseek (target_file, reloc_entry.r_vaddr-section->s_vaddr | ||
| 204 | +section->s_scnptr, L_SET) == -1) | ||
| 205 | error ("cannot seek to data element"); | ||
| 206 | if (read (source_file, buffer, 4) != 4) | ||
| 207 | error ("cannot read data element"); | ||
| 208 | if (write (target_file, buffer, 4) != 4) | ||
| 209 | error ("cannot write data element"); | ||
| 210 | } | ||
| 211 | |||
| 212 | /* Correct virtual addresses in .blocks section. */ | ||
| 213 | if (blocks_section != (struct scnhdr *) 0) | ||
| 214 | { | ||
| 215 | dst_rec_t dst_record; | ||
| 216 | dst_rec_comp_unit_t *comp_unit; | ||
| 217 | unsigned short number_of_sections; | ||
| 218 | unsigned long section_base; | ||
| 219 | unsigned long section_offset = 0; | ||
| 220 | /* Find section tables and update section base addresses. */ | ||
| 221 | while (section_offset < blocks_section->s_size) | ||
| 222 | { | ||
| 223 | if (lseek (target_file, | ||
| 224 | blocks_section->s_scnptr+section_offset, L_SET) == -1) | ||
| 225 | error ("cannot seek to comp unit record"); | ||
| 226 | /* Handle pad records before the comp unit record. */ | ||
| 227 | if (read (target_file, &dst_record, DST_RECORD_HDR_SIZE) | ||
| 228 | != DST_RECORD_HDR_SIZE) | ||
| 229 | error ("cannot read dst record tag"); | ||
| 230 | if (dst_record.rec_type == dst_typ_pad) | ||
| 231 | section_offset += DST_RECORD_HDR_SIZE; | ||
| 232 | else if (dst_record.rec_type == dst_typ_comp_unit) | ||
| 233 | { | ||
| 234 | comp_unit = &dst_record.rec_data.comp_unit_; | ||
| 235 | if (read (target_file, comp_unit, sizeof (*comp_unit)) | ||
| 236 | != sizeof (*comp_unit)) | ||
| 237 | error ("cannot read comp unit record"); | ||
| 238 | if (lseek (target_file, blocks_section->s_scnptr | ||
| 239 | +section_offset | ||
| 240 | #if dst_version_major == 1 && dst_version_minor < 4 | ||
| 241 | +comp_unit->section_table | ||
| 242 | #else | ||
| 243 | +comp_unit->section_table.rel_offset | ||
| 244 | #endif | ||
| 245 | +DST_RECORD_HDR_SIZE, | ||
| 246 | L_SET) == -1) | ||
| 247 | error ("cannot seek to section table"); | ||
| 248 | if (read (target_file, &number_of_sections, sizeof (number_of_sections)) | ||
| 249 | != sizeof (number_of_sections)) | ||
| 250 | error ("cannot read section table size"); | ||
| 251 | for (i = 0; i < number_of_sections; i++) | ||
| 252 | { | ||
| 253 | if (read (target_file, §ion_base, sizeof (section_base)) | ||
| 254 | != sizeof (section_base)) | ||
| 255 | error ("cannot read section base value"); | ||
| 256 | if (section_base < first_changed_vaddr) | ||
| 257 | continue; | ||
| 258 | else if (section_base < old_rwdi_vaddr) | ||
| 259 | section_base += delta_before_rwdi; | ||
| 260 | else section_base += delta_after_rwdi; | ||
| 261 | if (lseek (target_file, -sizeof (section_base), L_INCR) == -1) | ||
| 262 | error ("cannot seek to section base value"); | ||
| 263 | if (write (target_file, §ion_base, sizeof (section_base)) | ||
| 264 | != sizeof (section_base)) | ||
| 265 | error ("cannot write section base"); | ||
| 266 | } | ||
| 267 | section_offset += comp_unit->data_size; | ||
| 268 | } | ||
| 269 | else error ("unexpected dst record type"); | ||
| 270 | } | ||
| 271 | } | ||
| 272 | |||
| 273 | if (close (source_file) == -1) | ||
| 274 | error("cannot close source file"); | ||
| 275 | if (close (target_file) == -1) | ||
| 276 | error ("cannot close target file"); | ||
| 277 | } | ||
| 278 | |||
| 279 | |||
| 280 | static | ||
| 281 | CopyData (target_file, source_file, total_byte_count) | ||
| 282 | int target_file, source_file; | ||
| 283 | long total_byte_count; | ||
| 284 | { | ||
| 285 | unsigned char buffer[4096]; | ||
| 286 | long byte_count; | ||
| 287 | while (total_byte_count > 0) | ||
| 288 | { | ||
| 289 | if (total_byte_count > sizeof (buffer)) | ||
| 290 | byte_count = sizeof (buffer); | ||
| 291 | else byte_count = total_byte_count; | ||
| 292 | if (read (source_file, buffer, byte_count) != byte_count) | ||
| 293 | error ("cannot read data"); | ||
| 294 | if (write (target_file, buffer, byte_count) != byte_count) | ||
| 295 | error ("cannot write data"); | ||
| 296 | total_byte_count -= byte_count; | ||
| 297 | } | ||
| 298 | } | ||
| 299 | |||
| 300 | /* arch-tag: 783ebbdf-7d26-4df8-9469-17a1747dce96 | ||
| 301 | (do not change this comment) */ | ||
diff --git a/src/unexconvex.c b/src/unexconvex.c deleted file mode 100644 index 5682047d4fe..00000000000 --- a/src/unexconvex.c +++ /dev/null | |||
| @@ -1,605 +0,0 @@ | |||
| 1 | /* Modified version of unexec for convex machines. | ||
| 2 | Note that the GNU project considers support for the peculiarities | ||
| 3 | of the Convex operating system a peripheral activity which should | ||
| 4 | not be allowed to divert effort from development of the GNU system. | ||
| 5 | Changes in this code will be installed when Convex system | ||
| 6 | maintainers send them in, but aside from that we don't plan to | ||
| 7 | think about it, or about whether other Emacs maintenance might | ||
| 8 | break it. | ||
| 9 | |||
| 10 | Copyright (C) 1985, 1986, 1988, 2001, 2002, 2003, 2004, | ||
| 11 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 12 | |||
| 13 | This file is part of GNU Emacs. | ||
| 14 | |||
| 15 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 16 | it under the terms of the GNU General Public License as published by | ||
| 17 | the Free Software Foundation; either version 3, or (at your option) | ||
| 18 | any later version. | ||
| 19 | |||
| 20 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 21 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 22 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 23 | GNU General Public License for more details. | ||
| 24 | |||
| 25 | You should have received a copy of the GNU General Public License | ||
| 26 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 27 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 28 | Boston, MA 02110-1301, USA. */ | ||
| 29 | |||
| 30 | |||
| 31 | /* modified for C-1 arch by jthomp@convex 871103 */ | ||
| 32 | /* Corrected to support convex SOFF object file formats and thread specific | ||
| 33 | * regions. streepy@convex 890302 | ||
| 34 | */ | ||
| 35 | |||
| 36 | /* | ||
| 37 | * unexec.c - Convert a running program into an a.out file. | ||
| 38 | * | ||
| 39 | * Author: Spencer W. Thomas | ||
| 40 | * Computer Science Dept. | ||
| 41 | * University of Utah | ||
| 42 | * Date: Tue Mar 2 1982 | ||
| 43 | * Modified heavily since then. | ||
| 44 | * | ||
| 45 | * Synopsis: | ||
| 46 | * unexec (new_name, a_name, data_start, bss_start, entry_address) | ||
| 47 | * char *new_name, *a_name; | ||
| 48 | * unsigned data_start, bss_start, entry_address; | ||
| 49 | * | ||
| 50 | * Takes a snapshot of the program and makes an a.out format file in the | ||
| 51 | * file named by the string argument new_name. | ||
| 52 | * If a_name is non-NULL, the symbol table will be taken from the given file. | ||
| 53 | * On some machines, an existing a_name file is required. | ||
| 54 | * | ||
| 55 | * The boundaries within the a.out file may be adjusted with the data_start | ||
| 56 | * and bss_start arguments. Either or both may be given as 0 for defaults. | ||
| 57 | * | ||
| 58 | * Data_start gives the boundary between the text segment and the data | ||
| 59 | * segment of the program. The text segment can contain shared, read-only | ||
| 60 | * program code and literal data, while the data segment is always unshared | ||
| 61 | * and unprotected. Data_start gives the lowest unprotected address. | ||
| 62 | * The value you specify may be rounded down to a suitable boundary | ||
| 63 | * as required by the machine you are using. | ||
| 64 | * | ||
| 65 | * Specifying zero for data_start means the boundary between text and data | ||
| 66 | * should not be the same as when the program was loaded. | ||
| 67 | * If NO_REMAP is defined, the argument data_start is ignored and the | ||
| 68 | * segment boundaries are never changed. | ||
| 69 | * | ||
| 70 | * Bss_start indicates how much of the data segment is to be saved in the | ||
| 71 | * a.out file and restored when the program is executed. It gives the lowest | ||
| 72 | * unsaved address, and is rounded up to a page boundary. The default when 0 | ||
| 73 | * is given assumes that the entire data segment is to be stored, including | ||
| 74 | * the previous data and bss as well as any additional storage allocated with | ||
| 75 | * break (2). | ||
| 76 | * | ||
| 77 | * The new file is set up to start at entry_address. | ||
| 78 | * | ||
| 79 | * If you make improvements I'd like to get them too. | ||
| 80 | * harpo!utah-cs!thomas, thomas@Utah-20 | ||
| 81 | * | ||
| 82 | */ | ||
| 83 | |||
| 84 | /* There are several compilation parameters affecting unexec: | ||
| 85 | |||
| 86 | * COFF | ||
| 87 | |||
| 88 | Define this if your system uses COFF for executables. | ||
| 89 | Otherwise we assume you use Berkeley format. | ||
| 90 | |||
| 91 | * NO_REMAP | ||
| 92 | |||
| 93 | Define this if you do not want to try to save Emacs's pure data areas | ||
| 94 | as part of the text segment. | ||
| 95 | |||
| 96 | Saving them as text is good because it allows users to share more. | ||
| 97 | |||
| 98 | However, on machines that locate the text area far from the data area, | ||
| 99 | the boundary cannot feasibly be moved. Such machines require | ||
| 100 | NO_REMAP. | ||
| 101 | |||
| 102 | Also, remapping can cause trouble with the built-in startup routine | ||
| 103 | /lib/crt0.o, which defines `environ' as an initialized variable. | ||
| 104 | Dumping `environ' as pure does not work! So, to use remapping, | ||
| 105 | you must write a startup routine for your machine in Emacs's crt0.c. | ||
| 106 | If NO_REMAP is defined, Emacs uses the system's crt0.o. | ||
| 107 | |||
| 108 | * SECTION_ALIGNMENT | ||
| 109 | |||
| 110 | Some machines that use COFF executables require that each section | ||
| 111 | start on a certain boundary *in the COFF file*. Such machines should | ||
| 112 | define SECTION_ALIGNMENT to a mask of the low-order bits that must be | ||
| 113 | zero on such a boundary. This mask is used to control padding between | ||
| 114 | segments in the COFF file. | ||
| 115 | |||
| 116 | If SECTION_ALIGNMENT is not defined, the segments are written | ||
| 117 | consecutively with no attempt at alignment. This is right for | ||
| 118 | unmodified system V. | ||
| 119 | |||
| 120 | * SEGMENT_MASK | ||
| 121 | |||
| 122 | Some machines require that the beginnings and ends of segments | ||
| 123 | *in core* be on certain boundaries. For most machines, a page | ||
| 124 | boundary is sufficient. That is the default. When a larger | ||
| 125 | boundary is needed, define SEGMENT_MASK to a mask of | ||
| 126 | the bits that must be zero on such a boundary. | ||
| 127 | |||
| 128 | * A_TEXT_OFFSET(HDR) | ||
| 129 | |||
| 130 | Some machines count the a.out header as part of the size of the text | ||
| 131 | segment (a_text); they may actually load the header into core as the | ||
| 132 | first data in the text segment. Some have additional padding between | ||
| 133 | the header and the real text of the program that is counted in a_text. | ||
| 134 | |||
| 135 | For these machines, define A_TEXT_OFFSET(HDR) to examine the header | ||
| 136 | structure HDR and return the number of bytes to add to `a_text' | ||
| 137 | before writing it (above and beyond the number of bytes of actual | ||
| 138 | program text). HDR's standard fields are already correct, except that | ||
| 139 | this adjustment to the `a_text' field has not yet been made; | ||
| 140 | thus, the amount of offset can depend on the data in the file. | ||
| 141 | |||
| 142 | * A_TEXT_SEEK(HDR) | ||
| 143 | |||
| 144 | If defined, this macro specifies the number of bytes to seek into the | ||
| 145 | a.out file before starting to write the text segment.a | ||
| 146 | |||
| 147 | * EXEC_MAGIC | ||
| 148 | |||
| 149 | For machines using COFF, this macro, if defined, is a value stored | ||
| 150 | into the magic number field of the output file. | ||
| 151 | |||
| 152 | * ADJUST_EXEC_HEADER | ||
| 153 | |||
| 154 | This macro can be used to generate statements to adjust or | ||
| 155 | initialize nonstandard fields in the file header | ||
| 156 | |||
| 157 | * ADDR_CORRECT(ADDR) | ||
| 158 | |||
| 159 | Macro to correct an int which is the bit pattern of a pointer to a byte | ||
| 160 | into an int which is the number of a byte. | ||
| 161 | |||
| 162 | This macro has a default definition which is usually right. | ||
| 163 | This default definition is a no-op on most machines (where a | ||
| 164 | pointer looks like an int) but not on all machines. | ||
| 165 | |||
| 166 | */ | ||
| 167 | |||
| 168 | #include <config.h> | ||
| 169 | #define PERROR(file) report_error (file, new) | ||
| 170 | |||
| 171 | #include <a.out.h> | ||
| 172 | /* Define getpagesize () if the system does not. | ||
| 173 | Note that this may depend on symbols defined in a.out.h | ||
| 174 | */ | ||
| 175 | #include "getpagesize.h" | ||
| 176 | |||
| 177 | #include <sys/types.h> | ||
| 178 | #include <stdio.h> | ||
| 179 | #include <sys/stat.h> | ||
| 180 | #include <errno.h> | ||
| 181 | |||
| 182 | extern char *start_of_text (); /* Start of text */ | ||
| 183 | extern char *start_of_data (); /* Start of initialized data */ | ||
| 184 | |||
| 185 | #include <machine/filehdr.h> | ||
| 186 | #include <machine/opthdr.h> | ||
| 187 | #include <machine/scnhdr.h> | ||
| 188 | #include <machine/pte.h> | ||
| 189 | |||
| 190 | static long block_copy_start; /* Old executable start point */ | ||
| 191 | static struct filehdr f_hdr; /* File header */ | ||
| 192 | static struct opthdr f_ohdr; /* Optional file header (a.out) */ | ||
| 193 | long bias; /* Bias to add for growth */ | ||
| 194 | #define SYMS_START block_copy_start | ||
| 195 | |||
| 196 | static long text_scnptr; | ||
| 197 | static long data_scnptr; | ||
| 198 | |||
| 199 | static int pagemask; | ||
| 200 | static int pagesz; | ||
| 201 | |||
| 202 | static | ||
| 203 | report_error (file, fd) | ||
| 204 | char *file; | ||
| 205 | int fd; | ||
| 206 | { | ||
| 207 | if (fd) | ||
| 208 | close (fd); | ||
| 209 | error ("Failure operating on %s", file); | ||
| 210 | } | ||
| 211 | |||
| 212 | #define ERROR0(msg) report_error_1 (new, msg, 0, 0); return -1 | ||
| 213 | #define ERROR1(msg,x) report_error_1 (new, msg, x, 0); return -1 | ||
| 214 | #define ERROR2(msg,x,y) report_error_1 (new, msg, x, y); return -1 | ||
| 215 | |||
| 216 | static | ||
| 217 | report_error_1 (fd, msg, a1, a2) | ||
| 218 | int fd; | ||
| 219 | char *msg; | ||
| 220 | int a1, a2; | ||
| 221 | { | ||
| 222 | close (fd); | ||
| 223 | error (msg, a1, a2); | ||
| 224 | } | ||
| 225 | |||
| 226 | /* **************************************************************** | ||
| 227 | * unexec | ||
| 228 | * | ||
| 229 | * driving logic. | ||
| 230 | */ | ||
| 231 | unexec (new_name, a_name, data_start, bss_start, entry_address) | ||
| 232 | char *new_name, *a_name; | ||
| 233 | unsigned data_start, bss_start, entry_address; | ||
| 234 | { | ||
| 235 | int new, a_out = -1; | ||
| 236 | |||
| 237 | if (a_name && (a_out = open (a_name, 0)) < 0) { | ||
| 238 | PERROR (a_name); | ||
| 239 | } | ||
| 240 | if ((new = creat (new_name, 0666)) < 0) { | ||
| 241 | PERROR (new_name); | ||
| 242 | } | ||
| 243 | |||
| 244 | if (make_hdr (new, a_out, data_start, bss_start, entry_address, a_name, new_name) < 0 | ||
| 245 | || copy_text_and_data (new) < 0 | ||
| 246 | || copy_sym (new, a_out, a_name, new_name) < 0 ) { | ||
| 247 | close (new); | ||
| 248 | return -1; | ||
| 249 | } | ||
| 250 | |||
| 251 | close (new); | ||
| 252 | if (a_out >= 0) | ||
| 253 | close (a_out); | ||
| 254 | mark_x (new_name); | ||
| 255 | return 0; | ||
| 256 | } | ||
| 257 | |||
| 258 | /* **************************************************************** | ||
| 259 | * make_hdr | ||
| 260 | * | ||
| 261 | * Make the header in the new a.out from the header in core. | ||
| 262 | * Modify the text and data sizes. | ||
| 263 | */ | ||
| 264 | |||
| 265 | struct scnhdr *stbl; /* Table of all scnhdr's */ | ||
| 266 | struct scnhdr *f_thdr; /* Text section header */ | ||
| 267 | struct scnhdr *f_dhdr; /* Data section header */ | ||
| 268 | struct scnhdr *f_tdhdr; /* Thread Data section header */ | ||
| 269 | struct scnhdr *f_bhdr; /* Bss section header */ | ||
| 270 | struct scnhdr *f_tbhdr; /* Thread Bss section header */ | ||
| 271 | |||
| 272 | static int | ||
| 273 | make_hdr (new, a_out, data_start, bss_start, entry_address, a_name, new_name) | ||
| 274 | int new, a_out; | ||
| 275 | unsigned data_start, bss_start, entry_address; | ||
| 276 | char *a_name; | ||
| 277 | char *new_name; | ||
| 278 | { | ||
| 279 | register int scns; | ||
| 280 | unsigned int bss_end; | ||
| 281 | unsigned int eo_data; /* End of initialized data in new exec file */ | ||
| 282 | int scntype; /* Section type */ | ||
| 283 | int i; /* Var for sorting by vaddr */ | ||
| 284 | struct scnhdr scntemp; /* For swapping entries in sort */ | ||
| 285 | extern char *start_of_data(); | ||
| 286 | |||
| 287 | pagemask = (pagesz = getpagesize()) - 1; | ||
| 288 | |||
| 289 | /* Adjust text/data boundary. */ | ||
| 290 | if (!data_start) | ||
| 291 | data_start = (unsigned) start_of_data (); | ||
| 292 | |||
| 293 | data_start = data_start & ~pagemask; /* (Down) to page boundary. */ | ||
| 294 | |||
| 295 | bss_end = (sbrk(0) + pagemask) & ~pagemask; | ||
| 296 | |||
| 297 | /* Adjust data/bss boundary. */ | ||
| 298 | if (bss_start != 0) { | ||
| 299 | bss_start = (bss_start + pagemask) & ~pagemask;/* (Up) to page bdry. */ | ||
| 300 | if (bss_start > bss_end) { | ||
| 301 | ERROR1 ("unexec: Specified bss_start (%x) is past end of program", | ||
| 302 | bss_start); | ||
| 303 | } | ||
| 304 | } else | ||
| 305 | bss_start = bss_end; | ||
| 306 | |||
| 307 | if (data_start > bss_start) { /* Can't have negative data size. */ | ||
| 308 | ERROR2 ("unexec: data_start (%x) can't be greater than bss_start (%x)", | ||
| 309 | data_start, bss_start); | ||
| 310 | } | ||
| 311 | |||
| 312 | /* Salvage as much info from the existing file as possible */ | ||
| 313 | if (a_out < 0) { | ||
| 314 | ERROR0 ("can't build a COFF file from scratch yet"); | ||
| 315 | /*NOTREACHED*/ | ||
| 316 | } | ||
| 317 | |||
| 318 | if (read (a_out, &f_hdr, sizeof (f_hdr)) != sizeof (f_hdr)) { | ||
| 319 | PERROR (a_name); | ||
| 320 | } | ||
| 321 | block_copy_start += sizeof (f_hdr); | ||
| 322 | if (f_hdr.h_opthdr > 0) { | ||
| 323 | if (read (a_out, &f_ohdr, sizeof (f_ohdr)) != sizeof (f_ohdr)) { | ||
| 324 | PERROR (a_name); | ||
| 325 | } | ||
| 326 | block_copy_start += sizeof (f_ohdr); | ||
| 327 | } | ||
| 328 | |||
| 329 | /* Allocate room for scn headers */ | ||
| 330 | stbl = (struct scnhdr *)malloc( sizeof(struct scnhdr) * f_hdr.h_nscns ); | ||
| 331 | if( stbl == NULL ) { | ||
| 332 | ERROR0( "unexec: malloc of stbl failed" ); | ||
| 333 | } | ||
| 334 | |||
| 335 | f_tdhdr = f_tbhdr = NULL; | ||
| 336 | |||
| 337 | /* Loop through section headers, copying them in */ | ||
| 338 | for (scns = 0; scns < f_hdr.h_nscns; scns++) { | ||
| 339 | |||
| 340 | if( read( a_out, &stbl[scns], sizeof(*stbl)) != sizeof(*stbl)) { | ||
| 341 | PERROR (a_name); | ||
| 342 | } | ||
| 343 | |||
| 344 | scntype = stbl[scns].s_flags & S_TYPMASK; /* What type of section */ | ||
| 345 | |||
| 346 | if( stbl[scns].s_scnptr > 0L) { | ||
| 347 | if( block_copy_start < stbl[scns].s_scnptr + stbl[scns].s_size ) | ||
| 348 | block_copy_start = stbl[scns].s_scnptr + stbl[scns].s_size; | ||
| 349 | } | ||
| 350 | |||
| 351 | if( scntype == S_TEXT) { | ||
| 352 | f_thdr = &stbl[scns]; | ||
| 353 | } else if( scntype == S_DATA) { | ||
| 354 | f_dhdr = &stbl[scns]; | ||
| 355 | #ifdef S_TDATA | ||
| 356 | } else if( scntype == S_TDATA ) { | ||
| 357 | f_tdhdr = &stbl[scns]; | ||
| 358 | } else if( scntype == S_TBSS ) { | ||
| 359 | f_tbhdr = &stbl[scns]; | ||
| 360 | #endif /* S_TDATA (thread stuff) */ | ||
| 361 | |||
| 362 | } else if( scntype == S_BSS) { | ||
| 363 | f_bhdr = &stbl[scns]; | ||
| 364 | } | ||
| 365 | |||
| 366 | } | ||
| 367 | |||
| 368 | /* We will now convert TEXT and DATA into TEXT, BSS into DATA, and leave | ||
| 369 | * all thread stuff alone. | ||
| 370 | */ | ||
| 371 | |||
| 372 | /* Now we alter the contents of all the f_*hdr variables | ||
| 373 | to correspond to what we want to dump. */ | ||
| 374 | |||
| 375 | f_thdr->s_vaddr = (long) start_of_text (); | ||
| 376 | f_thdr->s_size = data_start - f_thdr->s_vaddr; | ||
| 377 | f_thdr->s_scnptr = pagesz; | ||
| 378 | f_thdr->s_relptr = 0; | ||
| 379 | f_thdr->s_nrel = 0; | ||
| 380 | |||
| 381 | eo_data = f_thdr->s_scnptr + f_thdr->s_size; | ||
| 382 | |||
| 383 | if( f_tdhdr ) { /* Process thread data */ | ||
| 384 | |||
| 385 | f_tdhdr->s_vaddr = data_start; | ||
| 386 | f_tdhdr->s_size += f_dhdr->s_size - (data_start - f_dhdr->s_vaddr); | ||
| 387 | f_tdhdr->s_scnptr = eo_data; | ||
| 388 | f_tdhdr->s_relptr = 0; | ||
| 389 | f_tdhdr->s_nrel = 0; | ||
| 390 | |||
| 391 | eo_data += f_tdhdr->s_size; | ||
| 392 | |||
| 393 | /* And now for DATA */ | ||
| 394 | |||
| 395 | f_dhdr->s_vaddr = f_bhdr->s_vaddr; /* Take BSS start address */ | ||
| 396 | f_dhdr->s_size = bss_end - f_bhdr->s_vaddr; | ||
| 397 | f_dhdr->s_scnptr = eo_data; | ||
| 398 | f_dhdr->s_relptr = 0; | ||
| 399 | f_dhdr->s_nrel = 0; | ||
| 400 | |||
| 401 | eo_data += f_dhdr->s_size; | ||
| 402 | |||
| 403 | } else { | ||
| 404 | |||
| 405 | f_dhdr->s_vaddr = data_start; | ||
| 406 | f_dhdr->s_size = bss_start - data_start; | ||
| 407 | f_dhdr->s_scnptr = eo_data; | ||
| 408 | f_dhdr->s_relptr = 0; | ||
| 409 | f_dhdr->s_nrel = 0; | ||
| 410 | |||
| 411 | eo_data += f_dhdr->s_size; | ||
| 412 | |||
| 413 | } | ||
| 414 | |||
| 415 | f_bhdr->s_vaddr = bss_start; | ||
| 416 | f_bhdr->s_size = bss_end - bss_start + pagesz /* fudge */; | ||
| 417 | f_bhdr->s_scnptr = 0; | ||
| 418 | f_bhdr->s_relptr = 0; | ||
| 419 | f_bhdr->s_nrel = 0; | ||
| 420 | |||
| 421 | text_scnptr = f_thdr->s_scnptr; | ||
| 422 | data_scnptr = f_dhdr->s_scnptr; | ||
| 423 | bias = eo_data - block_copy_start; | ||
| 424 | |||
| 425 | if (f_ohdr.o_symptr > 0L) { | ||
| 426 | f_ohdr.o_symptr += bias; | ||
| 427 | } | ||
| 428 | |||
| 429 | if (f_hdr.h_strptr > 0) { | ||
| 430 | f_hdr.h_strptr += bias; | ||
| 431 | } | ||
| 432 | |||
| 433 | if (write (new, &f_hdr, sizeof (f_hdr)) != sizeof (f_hdr)) { | ||
| 434 | PERROR (new_name); | ||
| 435 | } | ||
| 436 | |||
| 437 | if (write (new, &f_ohdr, sizeof (f_ohdr)) != sizeof (f_ohdr)) { | ||
| 438 | PERROR (new_name); | ||
| 439 | } | ||
| 440 | |||
| 441 | for( scns = 0; scns < f_hdr.h_nscns; scns++ ) { | ||
| 442 | |||
| 443 | /* This is a cheesy little loop to write out the section headers | ||
| 444 | * in order of increasing virtual address. Dull but effective. | ||
| 445 | */ | ||
| 446 | |||
| 447 | for( i = scns+1; i < f_hdr.h_nscns; i++ ) { | ||
| 448 | if( stbl[i].s_vaddr < stbl[scns].s_vaddr ) { /* Swap */ | ||
| 449 | scntemp = stbl[i]; | ||
| 450 | stbl[i] = stbl[scns]; | ||
| 451 | stbl[scns] = scntemp; | ||
| 452 | } | ||
| 453 | } | ||
| 454 | |||
| 455 | } | ||
| 456 | |||
| 457 | for( scns = 0; scns < f_hdr.h_nscns; scns++ ) { | ||
| 458 | |||
| 459 | if( write( new, &stbl[scns], sizeof(*stbl)) != sizeof(*stbl)) { | ||
| 460 | PERROR (new_name); | ||
| 461 | } | ||
| 462 | |||
| 463 | } | ||
| 464 | |||
| 465 | return (0); | ||
| 466 | |||
| 467 | } | ||
| 468 | |||
| 469 | /* **************************************************************** | ||
| 470 | * copy_text_and_data | ||
| 471 | * | ||
| 472 | * Copy the text and data segments from memory to the new a.out | ||
| 473 | */ | ||
| 474 | static int | ||
| 475 | copy_text_and_data (new) | ||
| 476 | int new; | ||
| 477 | { | ||
| 478 | register int scns; | ||
| 479 | |||
| 480 | for( scns = 0; scns < f_hdr.h_nscns; scns++ ) | ||
| 481 | write_segment( new, &stbl[scns] ); | ||
| 482 | |||
| 483 | return 0; | ||
| 484 | } | ||
| 485 | |||
| 486 | write_segment( new, sptr ) | ||
| 487 | int new; | ||
| 488 | struct scnhdr *sptr; | ||
| 489 | { | ||
| 490 | register char *ptr, *end; | ||
| 491 | register int nwrite, ret; | ||
| 492 | char buf[80]; | ||
| 493 | extern int errno; | ||
| 494 | char zeros[128]; | ||
| 495 | |||
| 496 | if( sptr->s_scnptr == 0 ) | ||
| 497 | return; /* Nothing to do */ | ||
| 498 | |||
| 499 | if( lseek( new, (long) sptr->s_scnptr, 0 ) == -1 ) | ||
| 500 | PERROR( "unexecing" ); | ||
| 501 | |||
| 502 | bzero (zeros, sizeof zeros); | ||
| 503 | |||
| 504 | ptr = (char *) sptr->s_vaddr; | ||
| 505 | end = ptr + sptr->s_size; | ||
| 506 | |||
| 507 | while( ptr < end ) { | ||
| 508 | |||
| 509 | /* distance to next multiple of 128. */ | ||
| 510 | nwrite = (((int) ptr + 128) & -128) - (int) ptr; | ||
| 511 | /* But not beyond specified end. */ | ||
| 512 | if (nwrite > end - ptr) nwrite = end - ptr; | ||
| 513 | ret = write (new, ptr, nwrite); | ||
| 514 | /* If write gets a page fault, it means we reached | ||
| 515 | a gap between the old text segment and the old data segment. | ||
| 516 | This gap has probably been remapped into part of the text segment. | ||
| 517 | So write zeros for it. */ | ||
| 518 | if (ret == -1 && errno == EFAULT) | ||
| 519 | write (new, zeros, nwrite); | ||
| 520 | else if (nwrite != ret) { | ||
| 521 | sprintf (buf, | ||
| 522 | "unexec write failure: addr 0x%x, fileno %d, size 0x%x, wrote 0x%x, errno %d", | ||
| 523 | ptr, new, nwrite, ret, errno); | ||
| 524 | PERROR (buf); | ||
| 525 | } | ||
| 526 | ptr += nwrite; | ||
| 527 | } | ||
| 528 | } | ||
| 529 | |||
| 530 | /* **************************************************************** | ||
| 531 | * copy_sym | ||
| 532 | * | ||
| 533 | * Copy the relocation information and symbol table from the a.out to the new | ||
| 534 | */ | ||
| 535 | static int | ||
| 536 | copy_sym (new, a_out, a_name, new_name) | ||
| 537 | int new, a_out; | ||
| 538 | char *a_name, *new_name; | ||
| 539 | { | ||
| 540 | char page[1024]; | ||
| 541 | int n; | ||
| 542 | |||
| 543 | if (a_out < 0) | ||
| 544 | return 0; | ||
| 545 | |||
| 546 | if (SYMS_START == 0L) | ||
| 547 | return 0; | ||
| 548 | |||
| 549 | lseek (a_out, SYMS_START, 0); /* Position a.out to symtab. */ | ||
| 550 | lseek( new, (long)f_ohdr.o_symptr, 0 ); | ||
| 551 | |||
| 552 | while ((n = read (a_out, page, sizeof page)) > 0) { | ||
| 553 | if (write (new, page, n) != n) { | ||
| 554 | PERROR (new_name); | ||
| 555 | } | ||
| 556 | } | ||
| 557 | if (n < 0) { | ||
| 558 | PERROR (a_name); | ||
| 559 | } | ||
| 560 | return 0; | ||
| 561 | } | ||
| 562 | |||
| 563 | /* **************************************************************** | ||
| 564 | * mark_x | ||
| 565 | * | ||
| 566 | * After successfully building the new a.out, mark it executable | ||
| 567 | */ | ||
| 568 | static | ||
| 569 | mark_x (name) | ||
| 570 | char *name; | ||
| 571 | { | ||
| 572 | struct stat sbuf; | ||
| 573 | int um; | ||
| 574 | int new = 0; /* for PERROR */ | ||
| 575 | |||
| 576 | um = umask (777); | ||
| 577 | umask (um); | ||
| 578 | if (stat (name, &sbuf) == -1) { | ||
| 579 | PERROR (name); | ||
| 580 | } | ||
| 581 | sbuf.st_mode |= 0111 & ~um; | ||
| 582 | if (chmod (name, sbuf.st_mode) == -1) | ||
| 583 | PERROR (name); | ||
| 584 | } | ||
| 585 | |||
| 586 | /* Find the first pty letter. This is usually 'p', as in ptyp0, but | ||
| 587 | is sometimes configured down to 'm', 'n', or 'o' for some reason. */ | ||
| 588 | |||
| 589 | first_pty_letter () | ||
| 590 | { | ||
| 591 | struct stat buf; | ||
| 592 | char pty_name[16]; | ||
| 593 | char c; | ||
| 594 | |||
| 595 | for (c = 'o'; c >= 'a'; c--) | ||
| 596 | { | ||
| 597 | sprintf (pty_name, "/dev/pty%c0", c); | ||
| 598 | if (stat (pty_name, &buf) < 0) | ||
| 599 | return c + 1; | ||
| 600 | } | ||
| 601 | return 'a'; | ||
| 602 | } | ||
| 603 | |||
| 604 | /* arch-tag: 8199e06d-69b5-4f79-84d8-00f6ea929af9 | ||
| 605 | (do not change this comment) */ | ||
diff --git a/src/unexenix.c b/src/unexenix.c deleted file mode 100644 index 343eb6dfbdc..00000000000 --- a/src/unexenix.c +++ /dev/null | |||
| @@ -1,264 +0,0 @@ | |||
| 1 | /* Unexec for Xenix. | ||
| 2 | Note that the GNU project considers support for Xenix operation | ||
| 3 | a peripheral activity which should not be allowed to divert effort | ||
| 4 | from development of the GNU system. Changes in this code will be | ||
| 5 | installed when Xenix users send them in, but aside from that | ||
| 6 | we don't plan to think about it, or about whether other Emacs | ||
| 7 | maintenance might break it. | ||
| 8 | |||
| 9 | Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004, | ||
| 10 | 2005, 2006, 2007 Free Software Foundation, Inc. | ||
| 11 | |||
| 12 | This file is part of GNU Emacs. | ||
| 13 | |||
| 14 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 15 | it under the terms of the GNU General Public License as published by | ||
| 16 | the Free Software Foundation; either version 3, or (at your option) | ||
| 17 | any later version. | ||
| 18 | |||
| 19 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 20 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 21 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 22 | GNU General Public License for more details. | ||
| 23 | |||
| 24 | You should have received a copy of the GNU General Public License | ||
| 25 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 26 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 27 | Boston, MA 02110-1301, USA. */ | ||
| 28 | |||
| 29 | |||
| 30 | |||
| 31 | /* | ||
| 32 | On 80386 Xenix, segmentation screws prevent us from modifying the text | ||
| 33 | segment at all. We basically just plug a new value for "data segment | ||
| 34 | size" into the countless headers and copy the other records straight | ||
| 35 | through. The data segment is ORG'ed at the xs_rbase value of the data | ||
| 36 | segment's xseg record (always @ 0x1880000, thanks to the "sophisticated | ||
| 37 | memory management hardware" of the chip) and extends to sbrk(0), exactly. | ||
| 38 | This code is afraid to malloc (should it be?), and alloca has to be the | ||
| 39 | wimpy, malloc-based version; consequently, data is usually copied in | ||
| 40 | smallish chunks. | ||
| 41 | |||
| 42 | gb@entity.com | ||
| 43 | */ | ||
| 44 | |||
| 45 | #include <config.h> | ||
| 46 | #include <sys/types.h> | ||
| 47 | #include <fcntl.h> | ||
| 48 | #include <sys/file.h> | ||
| 49 | #include <sys/stat.h> | ||
| 50 | #include <stdio.h> | ||
| 51 | #include <varargs.h> | ||
| 52 | #include <a.out.h> | ||
| 53 | |||
| 54 | static void fatal_unexec (); | ||
| 55 | |||
| 56 | #define READ(_fd, _buffer, _size, _error_message, _error_arg) \ | ||
| 57 | errno = EEOF; \ | ||
| 58 | if (read(_fd, _buffer, _size) != _size) \ | ||
| 59 | fatal_unexec(_error_message, _error_arg); | ||
| 60 | |||
| 61 | #define WRITE(_fd, _buffer, _size, _error_message, _error_arg) \ | ||
| 62 | if (write(_fd, _buffer, _size) != _size) \ | ||
| 63 | fatal_unexec(_error_message, _error_arg); | ||
| 64 | |||
| 65 | #define SEEK(_fd, _position, _error_message, _error_arg) \ | ||
| 66 | errno = EEOF; \ | ||
| 67 | if (lseek(_fd, _position, L_SET) != _position) \ | ||
| 68 | fatal_unexec(_error_message, _error_arg); | ||
| 69 | |||
| 70 | extern int errno; | ||
| 71 | extern char *strerror (); | ||
| 72 | #define EEOF -1 | ||
| 73 | |||
| 74 | #ifndef L_SET | ||
| 75 | #define L_SET 0 | ||
| 76 | #endif | ||
| 77 | |||
| 78 | /* Should check the magic number of the old executable; | ||
| 79 | not yet written. */ | ||
| 80 | check_exec (x) | ||
| 81 | struct xexec *x; | ||
| 82 | { | ||
| 83 | } | ||
| 84 | |||
| 85 | |||
| 86 | unexec (new_name, a_name, data_start, bss_start, entry_address) | ||
| 87 | char *new_name, *a_name; | ||
| 88 | unsigned data_start, bss_start, entry_address; | ||
| 89 | { | ||
| 90 | char *sbrk (), *datalim = sbrk (0), *data_org; | ||
| 91 | long segpos, textseen, textpos, textlen, datapos, datadiff, datalen; | ||
| 92 | |||
| 93 | struct xexec u_xexec, /* a.out header */ | ||
| 94 | *u_xexecp = &u_xexec; | ||
| 95 | struct xext u_xext, /* extended header */ | ||
| 96 | *u_xextp = &u_xext; | ||
| 97 | struct xseg u_xseg, /* segment table entry */ | ||
| 98 | *u_xsegp = &u_xseg; | ||
| 99 | int i, nsegs, isdata = 0, infd, outfd; | ||
| 100 | |||
| 101 | infd = open (a_name, O_RDONLY, 0); | ||
| 102 | if (infd < 0) fatal_unexec ("opening %s", a_name); | ||
| 103 | |||
| 104 | outfd = creat (new_name, 0666); | ||
| 105 | if (outfd < 0) fatal_unexec ("creating %s", new_name); | ||
| 106 | |||
| 107 | READ (infd, u_xexecp, sizeof (struct xexec), | ||
| 108 | "error reading %s", a_name); | ||
| 109 | check_exec (u_xexecp); | ||
| 110 | READ (infd, u_xextp, sizeof (struct xext), | ||
| 111 | "error reading %s", a_name); | ||
| 112 | segpos = u_xextp->xe_segpos; | ||
| 113 | nsegs = u_xextp->xe_segsize / sizeof (struct xseg); | ||
| 114 | SEEK (infd, segpos, "seek error on %s", a_name); | ||
| 115 | for (i = 0; i < nsegs; i ++) | ||
| 116 | { | ||
| 117 | READ (infd, u_xsegp, sizeof (struct xseg), | ||
| 118 | "error reading %s", a_name); | ||
| 119 | switch (u_xsegp->xs_type) | ||
| 120 | { | ||
| 121 | case XS_TTEXT: | ||
| 122 | { | ||
| 123 | if (i == 0) | ||
| 124 | { | ||
| 125 | textpos = u_xsegp->xs_filpos; | ||
| 126 | textlen = u_xsegp->xs_psize; | ||
| 127 | break; | ||
| 128 | } | ||
| 129 | fatal_unexec ("invalid text segment in %s", a_name); | ||
| 130 | } | ||
| 131 | case XS_TDATA: | ||
| 132 | { | ||
| 133 | if (i == 1) | ||
| 134 | { | ||
| 135 | datapos = u_xsegp->xs_filpos; | ||
| 136 | datalen = datalim - (data_org = (char *)(u_xsegp->xs_rbase)); | ||
| 137 | datadiff = datalen - u_xsegp->xs_psize; | ||
| 138 | break; | ||
| 139 | } | ||
| 140 | fatal_unexec ("invalid data segment in %s", a_name); | ||
| 141 | } | ||
| 142 | default: | ||
| 143 | { | ||
| 144 | if (i > 1) break; | ||
| 145 | fatal_unexec ("invalid segment record in %s", a_name); | ||
| 146 | } | ||
| 147 | } | ||
| 148 | } | ||
| 149 | u_xexecp->x_data = datalen; | ||
| 150 | u_xexecp->x_bss = 0; | ||
| 151 | WRITE (outfd, u_xexecp, sizeof (struct xexec), | ||
| 152 | "error writing %s", new_name); | ||
| 153 | WRITE (outfd, u_xextp, sizeof (struct xext), | ||
| 154 | "error writing %s", new_name); | ||
| 155 | SEEK (infd, segpos, "seek error on %s", a_name); | ||
| 156 | SEEK (outfd, segpos, "seek error on %s", new_name); | ||
| 157 | |||
| 158 | /* Copy the text segment record verbatim. */ | ||
| 159 | |||
| 160 | copyrec (infd, outfd, sizeof (struct xseg), a_name, new_name); | ||
| 161 | |||
| 162 | /* Read, modify, write the data segment record. */ | ||
| 163 | |||
| 164 | READ (infd, u_xsegp, sizeof (struct xseg), | ||
| 165 | "error reading %s", a_name); | ||
| 166 | u_xsegp->xs_psize = u_xsegp->xs_vsize = datalen; | ||
| 167 | u_xsegp->xs_attr &= (~XS_AITER & ~XS_ABSS); | ||
| 168 | WRITE (outfd, u_xsegp, sizeof (struct xseg), | ||
| 169 | "error writing %s", new_name); | ||
| 170 | |||
| 171 | /* Now copy any additional segment records, adjusting their | ||
| 172 | file position field */ | ||
| 173 | |||
| 174 | for (i = 2; i < nsegs; i++) | ||
| 175 | { | ||
| 176 | READ (infd, u_xsegp, sizeof (struct xseg), | ||
| 177 | "error reading %s", a_name); | ||
| 178 | u_xsegp->xs_filpos += datadiff; | ||
| 179 | WRITE (outfd, u_xsegp, sizeof (struct xseg), | ||
| 180 | "error writing %s", new_name); | ||
| 181 | } | ||
| 182 | |||
| 183 | SEEK (infd, textpos, "seek error on %s", a_name); | ||
| 184 | SEEK (outfd, textpos, "seek error on %s", new_name); | ||
| 185 | copyrec (infd, outfd, textlen, a_name, new_name); | ||
| 186 | |||
| 187 | SEEK (outfd, datapos, "seek error on %s", new_name); | ||
| 188 | WRITE (outfd, data_org, datalen, | ||
| 189 | "write error on %s", new_name); | ||
| 190 | |||
| 191 | for (i = 2, segpos += (2 * sizeof (struct xseg)); | ||
| 192 | i < nsegs; | ||
| 193 | i++, segpos += sizeof (struct xseg)) | ||
| 194 | { | ||
| 195 | SEEK (infd, segpos, "seek error on %s", a_name); | ||
| 196 | READ (infd, u_xsegp, sizeof (struct xseg), | ||
| 197 | "read error on %s", a_name); | ||
| 198 | SEEK (infd, u_xsegp->xs_filpos, "seek error on %s", a_name); | ||
| 199 | /* We should be at eof in the output file here, but we must seek | ||
| 200 | because the xs_filpos and xs_psize fields in symbol table | ||
| 201 | segments are inconsistent. */ | ||
| 202 | SEEK (outfd, u_xsegp->xs_filpos + datadiff, "seek error on %s", new_name); | ||
| 203 | copyrec (infd, outfd, u_xsegp->xs_psize, a_name, new_name); | ||
| 204 | } | ||
| 205 | close (infd); | ||
| 206 | close (outfd); | ||
| 207 | mark_x (new_name); | ||
| 208 | return 0; | ||
| 209 | } | ||
| 210 | |||
| 211 | copyrec (infd, outfd, len, in_name, out_name) | ||
| 212 | int infd, outfd, len; | ||
| 213 | char *in_name, *out_name; | ||
| 214 | { | ||
| 215 | char buf[BUFSIZ]; | ||
| 216 | int chunk; | ||
| 217 | |||
| 218 | while (len) | ||
| 219 | { | ||
| 220 | chunk = BUFSIZ; | ||
| 221 | if (chunk > len) | ||
| 222 | chunk = len; | ||
| 223 | READ (infd, buf, chunk, "error reading %s", in_name); | ||
| 224 | WRITE (outfd, buf, chunk, "error writing %s", out_name); | ||
| 225 | len -= chunk; | ||
| 226 | } | ||
| 227 | } | ||
| 228 | |||
| 229 | /* | ||
| 230 | * mark_x | ||
| 231 | * | ||
| 232 | * After successfully building the new a.out, mark it executable | ||
| 233 | */ | ||
| 234 | static | ||
| 235 | mark_x (name) | ||
| 236 | char *name; | ||
| 237 | { | ||
| 238 | struct stat sbuf; | ||
| 239 | int um = umask (777); | ||
| 240 | umask (um); | ||
| 241 | if (stat (name, &sbuf) < 0) | ||
| 242 | fatal_unexec ("getting protection on %s", name); | ||
| 243 | sbuf.st_mode |= 0111 & ~um; | ||
| 244 | if (chmod (name, sbuf.st_mode) < 0) | ||
| 245 | fatal_unexec ("setting protection on %s", name); | ||
| 246 | } | ||
| 247 | |||
| 248 | static void | ||
| 249 | fatal_unexec (s, va_alist) | ||
| 250 | va_dcl | ||
| 251 | { | ||
| 252 | va_list ap; | ||
| 253 | if (errno == EEOF) | ||
| 254 | fputs ("unexec: unexpected end of file, ", stderr); | ||
| 255 | else | ||
| 256 | fprintf (stderr, "unexec: %s, ", strerror (errno)); | ||
| 257 | va_start (ap); | ||
| 258 | _doprnt (s, ap, stderr); | ||
| 259 | fputs (".\n", stderr); | ||
| 260 | exit (1); | ||
| 261 | } | ||
| 262 | |||
| 263 | /* arch-tag: ce26be27-370a-438d-83b4-766059749a02 | ||
| 264 | (do not change this comment) */ | ||
diff --git a/src/unexsni.c b/src/unexsni.c deleted file mode 100644 index bbf9287e1f2..00000000000 --- a/src/unexsni.c +++ /dev/null | |||
| @@ -1,925 +0,0 @@ | |||
| 1 | /* Unexec for Siemens machines running Sinix (modified SVR4). | ||
| 2 | Copyright (C) 1985, 1986, 1987, 1988, 1990, 1992, 1993, 1994, 1995, 2001, | ||
| 3 | 2002, 2003, 2004, 2005, 2006, 2007 | ||
| 4 | Free Software Foundation, Inc. | ||
| 5 | |||
| 6 | This file is part of GNU Emacs. | ||
| 7 | |||
| 8 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 9 | it under the terms of the GNU General Public License as published by | ||
| 10 | the Free Software Foundation; either version 3, or (at your option) | ||
| 11 | any later version. | ||
| 12 | |||
| 13 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 16 | GNU General Public License for more details. | ||
| 17 | |||
| 18 | You should have received a copy of the GNU General Public License | ||
| 19 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 20 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | ||
| 21 | Boston, MA 02110-1301, USA. | ||
| 22 | |||
| 23 | In other words, you are welcome to use, share and improve this program. | ||
| 24 | You are forbidden to forbid anyone else to use, share and improve | ||
| 25 | what you give them. Help stamp out software-hoarding! */ | ||
| 26 | |||
| 27 | /* | ||
| 28 | * unexec.c - Convert a running program into an a.out file. | ||
| 29 | * | ||
| 30 | * Author: Spencer W. Thomas | ||
| 31 | * Computer Science Dept. | ||
| 32 | * University of Utah | ||
| 33 | * Date: Tue Mar 2 1982 | ||
| 34 | * Modified heavily since then. | ||
| 35 | * | ||
| 36 | * Synopsis: | ||
| 37 | * unexec (new_name, a_name, data_start, bss_start, entry_address) | ||
| 38 | * char *new_name, *a_name; | ||
| 39 | * unsigned data_start, bss_start, entry_address; | ||
| 40 | * | ||
| 41 | * Takes a snapshot of the program and makes an a.out format file in the | ||
| 42 | * file named by the string argument new_name. | ||
| 43 | * If a_name is non-NULL, the symbol table will be taken from the given file. | ||
| 44 | * On some machines, an existing a_name file is required. | ||
| 45 | * | ||
| 46 | * The boundaries within the a.out file may be adjusted with the data_start | ||
| 47 | * and bss_start arguments. Either or both may be given as 0 for defaults. | ||
| 48 | * | ||
| 49 | * Data_start gives the boundary between the text segment and the data | ||
| 50 | * segment of the program. The text segment can contain shared, read-only | ||
| 51 | * program code and literal data, while the data segment is always unshared | ||
| 52 | * and unprotected. Data_start gives the lowest unprotected address. | ||
| 53 | * The value you specify may be rounded down to a suitable boundary | ||
| 54 | * as required by the machine you are using. | ||
| 55 | * | ||
| 56 | * Specifying zero for data_start means the boundary between text and data | ||
| 57 | * should not be the same as when the program was loaded. | ||
| 58 | * If NO_REMAP is defined, the argument data_start is ignored and the | ||
| 59 | * segment boundaries are never changed. | ||
| 60 | * | ||
| 61 | * Bss_start indicates how much of the data segment is to be saved in the | ||
| 62 | * a.out file and restored when the program is executed. It gives the lowest | ||
| 63 | * unsaved address, and is rounded up to a page boundary. The default when 0 | ||
| 64 | * is given assumes that the entire data segment is to be stored, including | ||
| 65 | * the previous data and bss as well as any additional storage allocated with | ||
| 66 | * break (2). | ||
| 67 | * | ||
| 68 | * The new file is set up to start at entry_address. | ||
| 69 | * | ||
| 70 | * If you make improvements I'd like to get them too. | ||
| 71 | * harpo!utah-cs!thomas, thomas@Utah-20 | ||
| 72 | * | ||
| 73 | */ | ||
| 74 | |||
| 75 | /* Even more heavily modified by james@bigtex.cactus.org of Dell Computer Co. | ||
| 76 | * ELF support added. | ||
| 77 | * | ||
| 78 | * Basic theory: the data space of the running process needs to be | ||
| 79 | * dumped to the output file. Normally we would just enlarge the size | ||
| 80 | * of .data, scooting everything down. But we can't do that in ELF, | ||
| 81 | * because there is often something between the .data space and the | ||
| 82 | * .bss space. | ||
| 83 | * | ||
| 84 | * In the temacs dump below, notice that the Global Offset Table | ||
| 85 | * (.got) and the Dynamic link data (.dynamic) come between .data1 and | ||
| 86 | * .bss. It does not work to overlap .data with these fields. | ||
| 87 | * | ||
| 88 | * The solution is to create a new .data segment. This segment is | ||
| 89 | * filled with data from the current process. Since the contents of | ||
| 90 | * various sections refer to sections by index, the new .data segment | ||
| 91 | * is made the last in the table to avoid changing any existing index. | ||
| 92 | */ | ||
| 93 | |||
| 94 | /* Modified by wtien@urbana.mcd.mot.com of Motorola Inc. | ||
| 95 | * | ||
| 96 | * The above mechanism does not work if the unexeced ELF file is being | ||
| 97 | * re-layout by other applications (such as `strip'). All the applications | ||
| 98 | * that re-layout the internal of ELF will layout all sections in ascending | ||
| 99 | * order of their file offsets. After the re-layout, the data2 section will | ||
| 100 | * still be the LAST section in the section header vector, but its file offset | ||
| 101 | * is now being pushed far away down, and causes part of it not to be mapped | ||
| 102 | * in (ie. not covered by the load segment entry in PHDR vector), therefore | ||
| 103 | * causes the new binary to fail. | ||
| 104 | * | ||
| 105 | * The solution is to modify the unexec algorithm to insert the new data2 | ||
| 106 | * section header right before the new bss section header, so their file | ||
| 107 | * offsets will be in the ascending order. Since some of the section's (all | ||
| 108 | * sections AFTER the bss section) indexes are now changed, we also need to | ||
| 109 | * modify some fields to make them point to the right sections. This is done | ||
| 110 | * by macro PATCH_INDEX. All the fields that need to be patched are: | ||
| 111 | * | ||
| 112 | * 1. ELF header e_shstrndx field. | ||
| 113 | * 2. section header sh_link and sh_info field. | ||
| 114 | * 3. symbol table entry st_shndx field. | ||
| 115 | */ | ||
| 116 | |||
| 117 | /* | ||
| 118 | * New modifications for Siemens Nixdorf's MIPS-based machines. | ||
| 119 | * Marco.Walther@mch.sni.de | ||
| 120 | * marco@inreach.com | ||
| 121 | * | ||
| 122 | * The problem: Before the bss segment we have a so called sbss segment | ||
| 123 | * (small bss) and maybe an sdata segment. These segments | ||
| 124 | * must also be handled correct. | ||
| 125 | * | ||
| 126 | * /home1/marco/emacs/emacs-19.22/src | ||
| 127 | * dump -hv temacs | ||
| 128 | * | ||
| 129 | * temacs: | ||
| 130 | * | ||
| 131 | * **** SECTION HEADER TABLE **** | ||
| 132 | * [No] Type Flags Addr Offset Size Name | ||
| 133 | * Link Info Adralgn Entsize | ||
| 134 | * | ||
| 135 | * [1] PBIT -A-- 0x4000f4 0xf4 0x13 .interp | ||
| 136 | * 0 0 0x1 0 | ||
| 137 | * | ||
| 138 | * [2] REGI -A-- 0x400108 0x108 0x18 .reginfo | ||
| 139 | * 0 0 0x4 0x18 | ||
| 140 | * | ||
| 141 | * [3] DYNM -A-- 0x400120 0x120 0xb8 .dynamic | ||
| 142 | * 6 0 0x4 0x8 | ||
| 143 | * | ||
| 144 | * [4] HASH -A-- 0x4001d8 0x1d8 0x8a0 .hash | ||
| 145 | * 5 0 0x4 0x4 | ||
| 146 | * | ||
| 147 | * [5] DYNS -A-- 0x400a78 0xa78 0x11f0 .dynsym | ||
| 148 | * 6 2 0x4 0x10 | ||
| 149 | * | ||
| 150 | * [6] STRT -A-- 0x401c68 0x1c68 0xbf9 .dynstr | ||
| 151 | * 0 0 0x1 0 | ||
| 152 | * | ||
| 153 | * [7] REL -A-- 0x402864 0x2864 0x18 .rel.dyn | ||
| 154 | * 5 14 0x4 0x8 | ||
| 155 | * | ||
| 156 | * [8] PBIT -AI- 0x402880 0x2880 0x60 .init | ||
| 157 | * 0 0 0x10 0x1 | ||
| 158 | * | ||
| 159 | * [9] PBIT -AI- 0x4028e0 0x28e0 0x1234 .plt | ||
| 160 | * 0 0 0x4 0x4 | ||
| 161 | * | ||
| 162 | * [10] PBIT -AI- 0x403b20 0x3b20 0xee400 .text | ||
| 163 | * 0 0 0x20 0x1 | ||
| 164 | * | ||
| 165 | * [11] PBIT -AI- 0x4f1f20 0xf1f20 0x60 .fini | ||
| 166 | * 0 0 0x10 0x1 | ||
| 167 | * | ||
| 168 | * [12] PBIT -A-- 0x4f1f80 0xf1f80 0xd90 .rdata | ||
| 169 | * 0 0 0x10 0x1 | ||
| 170 | * | ||
| 171 | * [13] PBIT -A-- 0x4f2d10 0xf2d10 0x17e0 .rodata | ||
| 172 | * 0 0 0x10 0x1 | ||
| 173 | * | ||
| 174 | * [14] PBIT WA-- 0x5344f0 0xf44f0 0x4b3e4 .data <<<<< | ||
| 175 | * 0 0 0x10 0x1 | ||
| 176 | * | ||
| 177 | * [15] PBIT WA-G 0x57f8d4 0x13f8d4 0x2a84 .got | ||
| 178 | * 0 0 0x4 0x4 | ||
| 179 | * | ||
| 180 | * [16] PBIT WA-G 0x582360 0x142360 0x10 .sdata <<<<< | ||
| 181 | * 0 0 0x10 0x1 | ||
| 182 | * | ||
| 183 | * [17] NOBI WA-G 0x582370 0x142370 0xb84 .sbss <<<<< | ||
| 184 | * 0 0 0x4 0 | ||
| 185 | * | ||
| 186 | * [18] NOBI WA-- 0x582f00 0x142370 0x27ec0 .bss <<<<< | ||
| 187 | * 0 0 0x10 0x1 | ||
| 188 | * | ||
| 189 | * [19] SYMT ---- 0 0x142370 0x10e40 .symtab | ||
| 190 | * 20 1108 0x4 0x10 | ||
| 191 | * | ||
| 192 | * [20] STRT ---- 0 0x1531b0 0xed9e .strtab | ||
| 193 | * 0 0 0x1 0 | ||
| 194 | * | ||
| 195 | * [21] STRT ---- 0 0x161f4e 0xb5 .shstrtab | ||
| 196 | * 0 0 0x1 0 | ||
| 197 | * | ||
| 198 | * [22] PBIT ---- 0 0x162003 0x28e2a .comment | ||
| 199 | * 0 0 0x1 0x1 | ||
| 200 | * | ||
| 201 | * [23] PBIT ---- 0 0x18ae2d 0x592 .debug | ||
| 202 | * 0 0 0x1 0 | ||
| 203 | * | ||
| 204 | * [24] PBIT ---- 0 0x18b3bf 0x80 .line | ||
| 205 | * 0 0 0x1 0 | ||
| 206 | * | ||
| 207 | * [25] MDBG ---- 0 0x18b440 0x60 .mdebug | ||
| 208 | * 0 0 0x4 0 | ||
| 209 | * | ||
| 210 | * | ||
| 211 | * dump -hv emacs | ||
| 212 | * | ||
| 213 | * emacs: | ||
| 214 | * | ||
| 215 | * **** SECTION HEADER TABLE **** | ||
| 216 | * [No] Type Flags Addr Offset Size Name | ||
| 217 | * Link Info Adralgn Entsize | ||
| 218 | * | ||
| 219 | * [1] PBIT -A-- 0x4000f4 0xf4 0x13 .interp | ||
| 220 | * 0 0 0x1 0 | ||
| 221 | * | ||
| 222 | * [2] REGI -A-- 0x400108 0x108 0x18 .reginfo | ||
| 223 | * 0 0 0x4 0x18 | ||
| 224 | * | ||
| 225 | * [3] DYNM -A-- 0x400120 0x120 0xb8 .dynamic | ||
| 226 | * 6 0 0x4 0x8 | ||
| 227 | * | ||
| 228 | * [4] HASH -A-- 0x4001d8 0x1d8 0x8a0 .hash | ||
| 229 | * 5 0 0x4 0x4 | ||
| 230 | * | ||
| 231 | * [5] DYNS -A-- 0x400a78 0xa78 0x11f0 .dynsym | ||
| 232 | * 6 2 0x4 0x10 | ||
| 233 | * | ||
| 234 | * [6] STRT -A-- 0x401c68 0x1c68 0xbf9 .dynstr | ||
| 235 | * 0 0 0x1 0 | ||
| 236 | * | ||
| 237 | * [7] REL -A-- 0x402864 0x2864 0x18 .rel.dyn | ||
| 238 | * 5 14 0x4 0x8 | ||
| 239 | * | ||
| 240 | * [8] PBIT -AI- 0x402880 0x2880 0x60 .init | ||
| 241 | * 0 0 0x10 0x1 | ||
| 242 | * | ||
| 243 | * [9] PBIT -AI- 0x4028e0 0x28e0 0x1234 .plt | ||
| 244 | * 0 0 0x4 0x4 | ||
| 245 | * | ||
| 246 | * [10] PBIT -AI- 0x403b20 0x3b20 0xee400 .text | ||
| 247 | * 0 0 0x20 0x1 | ||
| 248 | * | ||
| 249 | * [11] PBIT -AI- 0x4f1f20 0xf1f20 0x60 .fini | ||
| 250 | * 0 0 0x10 0x1 | ||
| 251 | * | ||
| 252 | * [12] PBIT -A-- 0x4f1f80 0xf1f80 0xd90 .rdata | ||
| 253 | * 0 0 0x10 0x1 | ||
| 254 | * | ||
| 255 | * [13] PBIT -A-- 0x4f2d10 0xf2d10 0x17e0 .rodata | ||
| 256 | * 0 0 0x10 0x1 | ||
| 257 | * | ||
| 258 | * [14] PBIT WA-- 0x5344f0 0xf44f0 0x4b3e4 .data <<<<< | ||
| 259 | * 0 0 0x10 0x1 | ||
| 260 | * | ||
| 261 | * [15] PBIT WA-G 0x57f8d4 0x13f8d4 0x2a84 .got | ||
| 262 | * 0 0 0x4 0x4 | ||
| 263 | * | ||
| 264 | * [16] PBIT WA-G 0x582360 0x142360 0xb94 .sdata <<<<< | ||
| 265 | * 0 0 0x10 0x1 | ||
| 266 | * | ||
| 267 | * [17] PBIT WA-- 0x582f00 0x142f00 0x94100 .data <<<<< | ||
| 268 | * 0 0 0x10 0x1 | ||
| 269 | * | ||
| 270 | * [18] NOBI WA-G 0x617000 0x1d7000 0 .sbss <<<<< | ||
| 271 | * 0 0 0x4 0 | ||
| 272 | * | ||
| 273 | * [19] NOBI WA-- 0x617000 0x1d7000 0 .bss <<<<< | ||
| 274 | * 0 0 0x4 0x1 | ||
| 275 | * | ||
| 276 | * [20] SYMT ---- 0 0x1d7000 0x10e40 .symtab | ||
| 277 | * 21 1109 0x4 0x10 | ||
| 278 | * | ||
| 279 | * [21] STRT ---- 0 0x1e7e40 0xed9e .strtab | ||
| 280 | * 0 0 0x1 0 | ||
| 281 | * | ||
| 282 | * [22] STRT ---- 0 0x1f6bde 0xb5 .shstrtab | ||
| 283 | * 0 0 0x1 0 | ||
| 284 | * | ||
| 285 | * [23] PBIT ---- 0 0x1f6c93 0x28e2a .comment | ||
| 286 | * 0 0 0x1 0x1 | ||
| 287 | * | ||
| 288 | * [24] PBIT ---- 0 0x21fabd 0x592 .debug | ||
| 289 | * 0 0 0x1 0 | ||
| 290 | * | ||
| 291 | * [25] PBIT ---- 0 0x22004f 0x80 .line | ||
| 292 | * 0 0 0x1 0 | ||
| 293 | * | ||
| 294 | * [26] MDBG ---- 0 0x2200d0 0x60 .mdebug | ||
| 295 | * 0 0 0x4 0 | ||
| 296 | * | ||
| 297 | */ | ||
| 298 | |||
| 299 | #include <sys/types.h> | ||
| 300 | #include <stdio.h> | ||
| 301 | #include <sys/stat.h> | ||
| 302 | #include <memory.h> | ||
| 303 | #include <string.h> | ||
| 304 | #include <errno.h> | ||
| 305 | #include <unistd.h> | ||
| 306 | #include <fcntl.h> | ||
| 307 | #include <elf.h> | ||
| 308 | #include <sys/mman.h> | ||
| 309 | #include <assert.h> | ||
| 310 | |||
| 311 | /* #define DEBUG */ | ||
| 312 | |||
| 313 | #ifndef emacs | ||
| 314 | #define fatal(a, b, c) fprintf(stderr, a, b, c), exit(1) | ||
| 315 | #else | ||
| 316 | extern void fatal(char *, ...); | ||
| 317 | #endif | ||
| 318 | |||
| 319 | /* Get the address of a particular section or program header entry, | ||
| 320 | * accounting for the size of the entries. | ||
| 321 | */ | ||
| 322 | |||
| 323 | #define OLD_SECTION_H(n) \ | ||
| 324 | (*(Elf32_Shdr *) ((byte *) old_section_h + old_file_h->e_shentsize * (n))) | ||
| 325 | #define NEW_SECTION_H(n) \ | ||
| 326 | (*(Elf32_Shdr *) ((byte *) new_section_h + new_file_h->e_shentsize * (n))) | ||
| 327 | #define OLD_PROGRAM_H(n) \ | ||
| 328 | (*(Elf32_Phdr *) ((byte *) old_program_h + old_file_h->e_phentsize * (n))) | ||
| 329 | #define NEW_PROGRAM_H(n) \ | ||
| 330 | (*(Elf32_Phdr *) ((byte *) new_program_h + new_file_h->e_phentsize * (n))) | ||
| 331 | |||
| 332 | #define PATCH_INDEX(n) \ | ||
| 333 | do { \ | ||
| 334 | if ((n) >= old_sbss_index) \ | ||
| 335 | (n) += 1 + (old_sdata_index ? 0 : 1); } while (0) | ||
| 336 | |||
| 337 | typedef unsigned char byte; | ||
| 338 | |||
| 339 | /* Round X up to a multiple of Y. */ | ||
| 340 | |||
| 341 | int | ||
| 342 | round_up (x, y) | ||
| 343 | int x, y; | ||
| 344 | { | ||
| 345 | int rem = x % y; | ||
| 346 | if (rem == 0) | ||
| 347 | return x; | ||
| 348 | return x - rem + y; | ||
| 349 | } | ||
| 350 | |||
| 351 | /* **************************************************************** | ||
| 352 | * unexec | ||
| 353 | * | ||
| 354 | * driving logic. | ||
| 355 | * | ||
| 356 | * In ELF, this works by replacing the old .bss section with a new | ||
| 357 | * .data section, and inserting an empty .bss immediately afterwards. | ||
| 358 | * | ||
| 359 | */ | ||
| 360 | void | ||
| 361 | unexec (new_name, old_name, data_start, bss_start, entry_address) | ||
| 362 | char *new_name, *old_name; | ||
| 363 | unsigned data_start, bss_start, entry_address; | ||
| 364 | { | ||
| 365 | extern unsigned int bss_end; | ||
| 366 | int new_file, old_file, new_file_size; | ||
| 367 | |||
| 368 | /* Pointers to the base of the image of the two files. */ | ||
| 369 | caddr_t old_base, new_base; | ||
| 370 | |||
| 371 | /* Pointers to the file, program and section headers for the old and new | ||
| 372 | * files. | ||
| 373 | */ | ||
| 374 | Elf32_Ehdr *old_file_h, *new_file_h; | ||
| 375 | Elf32_Phdr *old_program_h, *new_program_h; | ||
| 376 | Elf32_Shdr *old_section_h, *new_section_h; | ||
| 377 | |||
| 378 | /* Point to the section name table in the old file */ | ||
| 379 | char *old_section_names; | ||
| 380 | |||
| 381 | Elf32_Addr old_bss_addr, new_bss_addr; | ||
| 382 | Elf32_Addr old_sbss_addr; | ||
| 383 | Elf32_Word old_bss_size, new_data2_size; | ||
| 384 | Elf32_Word old_sbss_size, new_data3_size; | ||
| 385 | Elf32_Off new_data2_offset; | ||
| 386 | Elf32_Off new_data3_offset; | ||
| 387 | Elf32_Addr new_data2_addr; | ||
| 388 | Elf32_Addr new_data3_addr; | ||
| 389 | |||
| 390 | |||
| 391 | Elf32_Addr old_rel_dyn_addr; | ||
| 392 | Elf32_Word old_rel_dyn_size; | ||
| 393 | int old_rel_dyn_index; | ||
| 394 | |||
| 395 | Elf32_Word old_sdata_size, new_sdata_size; | ||
| 396 | int old_sdata_index = 0; | ||
| 397 | |||
| 398 | int n, nn, old_data_index, new_data2_align; | ||
| 399 | int old_bss_index; | ||
| 400 | int old_sbss_index; | ||
| 401 | int old_bss_padding; | ||
| 402 | struct stat stat_buf; | ||
| 403 | |||
| 404 | /* Open the old file & map it into the address space. */ | ||
| 405 | |||
| 406 | old_file = open (old_name, O_RDONLY); | ||
| 407 | |||
| 408 | if (old_file < 0) | ||
| 409 | fatal ("Can't open %s for reading: errno %d\n", old_name, errno); | ||
| 410 | |||
| 411 | if (fstat (old_file, &stat_buf) == -1) | ||
| 412 | fatal ("Can't fstat(%s): errno %d\n", old_name, errno); | ||
| 413 | |||
| 414 | old_base = mmap (0, stat_buf.st_size, PROT_READ, MAP_SHARED, old_file, 0); | ||
| 415 | |||
| 416 | if (old_base == (caddr_t) -1) | ||
| 417 | fatal ("Can't mmap(%s): errno %d\n", old_name, errno); | ||
| 418 | |||
| 419 | #ifdef DEBUG | ||
| 420 | fprintf (stderr, "mmap(%s, %x) -> %x\n", old_name, stat_buf.st_size, | ||
| 421 | old_base); | ||
| 422 | #endif | ||
| 423 | |||
| 424 | /* Get pointers to headers & section names */ | ||
| 425 | |||
| 426 | old_file_h = (Elf32_Ehdr *) old_base; | ||
| 427 | old_program_h = (Elf32_Phdr *) ((byte *) old_base + old_file_h->e_phoff); | ||
| 428 | old_section_h = (Elf32_Shdr *) ((byte *) old_base + old_file_h->e_shoff); | ||
| 429 | old_section_names = (char *) old_base | ||
| 430 | + OLD_SECTION_H(old_file_h->e_shstrndx).sh_offset; | ||
| 431 | |||
| 432 | /* Find the old .sbss section. | ||
| 433 | */ | ||
| 434 | |||
| 435 | for (old_sbss_index = 1; old_sbss_index < old_file_h->e_shnum; | ||
| 436 | old_sbss_index++) | ||
| 437 | { | ||
| 438 | #ifdef DEBUG | ||
| 439 | fprintf (stderr, "Looking for .sbss - found %s\n", | ||
| 440 | old_section_names + OLD_SECTION_H(old_sbss_index).sh_name); | ||
| 441 | #endif | ||
| 442 | if (!strcmp (old_section_names + OLD_SECTION_H(old_sbss_index).sh_name, | ||
| 443 | ".sbss")) | ||
| 444 | break; | ||
| 445 | } | ||
| 446 | if (old_sbss_index == old_file_h->e_shnum) | ||
| 447 | fatal ("Can't find .sbss in %s.\n", old_name, 0); | ||
| 448 | |||
| 449 | if (!strcmp(old_section_names + OLD_SECTION_H(old_sbss_index - 1).sh_name, | ||
| 450 | ".sdata")) | ||
| 451 | { | ||
| 452 | old_sdata_index = old_sbss_index - 1; | ||
| 453 | } | ||
| 454 | |||
| 455 | |||
| 456 | /* Find the old .bss section. | ||
| 457 | */ | ||
| 458 | |||
| 459 | for (old_bss_index = 1; old_bss_index < old_file_h->e_shnum; old_bss_index++) | ||
| 460 | { | ||
| 461 | #ifdef DEBUG | ||
| 462 | fprintf (stderr, "Looking for .bss - found %s\n", | ||
| 463 | old_section_names + OLD_SECTION_H(old_bss_index).sh_name); | ||
| 464 | #endif | ||
| 465 | if (!strcmp (old_section_names + OLD_SECTION_H(old_bss_index).sh_name, | ||
| 466 | ".bss")) | ||
| 467 | break; | ||
| 468 | } | ||
| 469 | if (old_bss_index == old_file_h->e_shnum) | ||
| 470 | fatal ("Can't find .bss in %s.\n", old_name, 0); | ||
| 471 | |||
| 472 | if (old_sbss_index != (old_bss_index - 1)) | ||
| 473 | fatal (".sbss should come immediately before .bss in %s.\n", old_name, 0); | ||
| 474 | |||
| 475 | /* Find the old .rel.dyn section. | ||
| 476 | */ | ||
| 477 | |||
| 478 | for (old_rel_dyn_index = 1; old_rel_dyn_index < old_file_h->e_shnum; | ||
| 479 | old_rel_dyn_index++) | ||
| 480 | { | ||
| 481 | #ifdef DEBUG | ||
| 482 | fprintf (stderr, "Looking for .rel.dyn - found %s\n", | ||
| 483 | old_section_names + OLD_SECTION_H(old_rel_dyn_index).sh_name); | ||
| 484 | #endif | ||
| 485 | if (!strcmp (old_section_names + OLD_SECTION_H(old_rel_dyn_index).sh_name, | ||
| 486 | ".rel.dyn")) | ||
| 487 | break; | ||
| 488 | } | ||
| 489 | if (old_rel_dyn_index == old_file_h->e_shnum) | ||
| 490 | fatal ("Can't find .rel_dyn in %s.\n", old_name, 0); | ||
| 491 | |||
| 492 | old_rel_dyn_addr = OLD_SECTION_H(old_rel_dyn_index).sh_addr; | ||
| 493 | old_rel_dyn_size = OLD_SECTION_H(old_rel_dyn_index).sh_size; | ||
| 494 | |||
| 495 | /* Figure out parameters of the new data3 and data2 sections. | ||
| 496 | * Change the sbss and bss sections. | ||
| 497 | */ | ||
| 498 | |||
| 499 | old_bss_addr = OLD_SECTION_H(old_bss_index).sh_addr; | ||
| 500 | old_bss_size = OLD_SECTION_H(old_bss_index).sh_size; | ||
| 501 | |||
| 502 | old_sbss_addr = OLD_SECTION_H(old_sbss_index).sh_addr; | ||
| 503 | old_sbss_size = OLD_SECTION_H(old_sbss_index).sh_size; | ||
| 504 | |||
| 505 | if (old_sdata_index) | ||
| 506 | { | ||
| 507 | old_sdata_size = OLD_SECTION_H(old_sdata_index).sh_size; | ||
| 508 | } | ||
| 509 | |||
| 510 | #if defined(emacs) || !defined(DEBUG) | ||
| 511 | bss_end = (unsigned int) sbrk (0); | ||
| 512 | new_bss_addr = (Elf32_Addr) bss_end; | ||
| 513 | #else | ||
| 514 | new_bss_addr = old_bss_addr + old_bss_size + 0x1234; | ||
| 515 | #endif | ||
| 516 | if (old_sdata_index) | ||
| 517 | { | ||
| 518 | new_sdata_size = OLD_SECTION_H(old_sbss_index).sh_offset - | ||
| 519 | OLD_SECTION_H(old_sdata_index).sh_offset + old_sbss_size; | ||
| 520 | } | ||
| 521 | |||
| 522 | new_data3_addr = old_sbss_addr; | ||
| 523 | new_data3_size = old_sbss_size; | ||
| 524 | new_data3_offset = OLD_SECTION_H(old_sbss_index).sh_offset; | ||
| 525 | |||
| 526 | new_data2_addr = old_bss_addr; | ||
| 527 | new_data2_size = new_bss_addr - old_bss_addr; | ||
| 528 | new_data2_align = (new_data3_offset + old_sbss_size) % | ||
| 529 | OLD_SECTION_H(old_bss_index).sh_addralign; | ||
| 530 | new_data2_align = new_data2_align ? | ||
| 531 | OLD_SECTION_H(old_bss_index).sh_addralign - new_data2_align : | ||
| 532 | 0; | ||
| 533 | new_data2_offset = new_data3_offset + old_sbss_size + new_data2_align; | ||
| 534 | |||
| 535 | old_bss_padding = OLD_SECTION_H(old_bss_index).sh_offset - | ||
| 536 | OLD_SECTION_H(old_sbss_index).sh_offset; | ||
| 537 | #ifdef DEBUG | ||
| 538 | fprintf (stderr, "old_bss_index %d\n", old_bss_index); | ||
| 539 | fprintf (stderr, "old_bss_addr %x\n", old_bss_addr); | ||
| 540 | fprintf (stderr, "old_bss_size %x\n", old_bss_size); | ||
| 541 | fprintf (stderr, "new_bss_addr %x\n", new_bss_addr); | ||
| 542 | fprintf (stderr, "new_data2_addr %x\n", new_data2_addr); | ||
| 543 | fprintf (stderr, "new_data2_size %x\n", new_data2_size); | ||
| 544 | fprintf (stderr, "new_data2_offset %x\n", new_data2_offset); | ||
| 545 | fprintf (stderr, "old_sbss_index %d\n", old_sbss_index); | ||
| 546 | fprintf (stderr, "old_sbss_addr %x\n", old_sbss_addr); | ||
| 547 | fprintf (stderr, "old_sbss_size %x\n", old_sbss_size); | ||
| 548 | fprintf (stderr, "old_rel_dyn_addr %x\n", old_rel_dyn_addr); | ||
| 549 | fprintf (stderr, "old_rel_dyn_size %x\n", old_rel_dyn_size); | ||
| 550 | if (old_sdata_index) | ||
| 551 | { | ||
| 552 | fprintf (stderr, "old_sdata_size %x\n", old_sdata_size); | ||
| 553 | fprintf (stderr, "new_sdata_size %x\n", new_sdata_size); | ||
| 554 | } | ||
| 555 | else | ||
| 556 | { | ||
| 557 | fprintf (stderr, "new_data3_addr %x\n", new_data3_addr); | ||
| 558 | fprintf (stderr, "new_data3_size %x\n", new_data3_size); | ||
| 559 | fprintf (stderr, "new_data3_offset %x\n", new_data3_offset); | ||
| 560 | } | ||
| 561 | #endif | ||
| 562 | |||
| 563 | if ((unsigned) new_bss_addr < (unsigned) old_bss_addr + old_bss_size) | ||
| 564 | fatal (".bss shrank when undumping???\n", 0, 0); | ||
| 565 | |||
| 566 | /* Set the output file to the right size and mmap(2) it. Set | ||
| 567 | * pointers to various interesting objects. stat_buf still has | ||
| 568 | * old_file data. | ||
| 569 | */ | ||
| 570 | |||
| 571 | new_file = open (new_name, O_RDWR | O_CREAT, 0666); | ||
| 572 | if (new_file < 0) | ||
| 573 | fatal ("Can't creat(%s): errno %d\n", new_name, errno); | ||
| 574 | |||
| 575 | new_file_size = stat_buf.st_size + | ||
| 576 | ((1 + (old_sdata_index ? 0 : 1)) * old_file_h->e_shentsize) + | ||
| 577 | new_data2_size + new_data3_size + new_data2_align; | ||
| 578 | |||
| 579 | if (ftruncate (new_file, new_file_size)) | ||
| 580 | fatal ("Can't ftruncate(%s): errno %d\n", new_name, errno); | ||
| 581 | |||
| 582 | new_base = mmap (0, new_file_size, PROT_READ | PROT_WRITE, MAP_SHARED, | ||
| 583 | new_file, 0); | ||
| 584 | |||
| 585 | if (new_base == (caddr_t) -1) | ||
| 586 | fatal ("Can't mmap(%s): errno %d\n", new_name, errno); | ||
| 587 | |||
| 588 | new_file_h = (Elf32_Ehdr *) new_base; | ||
| 589 | new_program_h = (Elf32_Phdr *) ((byte *) new_base + old_file_h->e_phoff); | ||
| 590 | new_section_h = (Elf32_Shdr *) ((byte *) new_base + | ||
| 591 | old_file_h->e_shoff + | ||
| 592 | new_data2_size + | ||
| 593 | new_data2_align + | ||
| 594 | new_data3_size); | ||
| 595 | |||
| 596 | /* Make our new file, program and section headers as copies of the | ||
| 597 | * originals. | ||
| 598 | */ | ||
| 599 | |||
| 600 | memcpy (new_file_h, old_file_h, old_file_h->e_ehsize); | ||
| 601 | memcpy (new_program_h, old_program_h, | ||
| 602 | old_file_h->e_phnum * old_file_h->e_phentsize); | ||
| 603 | |||
| 604 | /* Modify the e_shstrndx if necessary. */ | ||
| 605 | PATCH_INDEX (new_file_h->e_shstrndx); | ||
| 606 | |||
| 607 | /* Fix up file header. We'll add one section. Section header is | ||
| 608 | * further away now. | ||
| 609 | */ | ||
| 610 | |||
| 611 | new_file_h->e_shoff += new_data2_size + new_data2_align + new_data3_size; | ||
| 612 | new_file_h->e_shnum += 1 + (old_sdata_index ? 0 : 1); | ||
| 613 | |||
| 614 | #ifdef DEBUG | ||
| 615 | fprintf (stderr, "Old section offset %x\n", old_file_h->e_shoff); | ||
| 616 | fprintf (stderr, "Old section count %d\n", old_file_h->e_shnum); | ||
| 617 | fprintf (stderr, "New section offset %x\n", new_file_h->e_shoff); | ||
| 618 | fprintf (stderr, "New section count %d\n", new_file_h->e_shnum); | ||
| 619 | #endif | ||
| 620 | |||
| 621 | /* Fix up a new program header. Extend the writable data segment so | ||
| 622 | * that the bss area is covered too. Find that segment by looking | ||
| 623 | * for a segment that ends just before the .bss area. Make sure | ||
| 624 | * that no segments are above the new .data2. Put a loop at the end | ||
| 625 | * to adjust the offset and address of any segment that is above | ||
| 626 | * data2, just in case we decide to allow this later. | ||
| 627 | */ | ||
| 628 | |||
| 629 | for (n = new_file_h->e_phnum - 1; n >= 0; n--) | ||
| 630 | { | ||
| 631 | /* Compute maximum of all requirements for alignment of section. */ | ||
| 632 | int alignment = (NEW_PROGRAM_H (n)).p_align; | ||
| 633 | if ((OLD_SECTION_H (old_bss_index)).sh_addralign > alignment) | ||
| 634 | alignment = OLD_SECTION_H (old_bss_index).sh_addralign; | ||
| 635 | |||
| 636 | if ((OLD_SECTION_H (old_sbss_index)).sh_addralign > alignment) | ||
| 637 | alignment = OLD_SECTION_H (old_sbss_index).sh_addralign; | ||
| 638 | |||
| 639 | /* Supposedly this condition is okay for the SGI. */ | ||
| 640 | #if 0 | ||
| 641 | if (NEW_PROGRAM_H(n).p_vaddr + NEW_PROGRAM_H(n).p_filesz > old_bss_addr) | ||
| 642 | fatal ("Program segment above .bss in %s\n", old_name, 0); | ||
| 643 | #endif | ||
| 644 | |||
| 645 | if (NEW_PROGRAM_H(n).p_type == PT_LOAD | ||
| 646 | && (round_up ((NEW_PROGRAM_H (n)).p_vaddr | ||
| 647 | + (NEW_PROGRAM_H (n)).p_filesz, | ||
| 648 | alignment) | ||
| 649 | == round_up (old_bss_addr, alignment))) | ||
| 650 | break; | ||
| 651 | } | ||
| 652 | if (n < 0) | ||
| 653 | fatal ("Couldn't find segment next to .bss in %s\n", old_name, 0); | ||
| 654 | |||
| 655 | NEW_PROGRAM_H(n).p_filesz += new_data2_size + new_data2_align + | ||
| 656 | new_data3_size; | ||
| 657 | NEW_PROGRAM_H(n).p_memsz = NEW_PROGRAM_H(n).p_filesz; | ||
| 658 | |||
| 659 | #if 1 /* Maybe allow section after data2 - does this ever happen? */ | ||
| 660 | for (n = new_file_h->e_phnum - 1; n >= 0; n--) | ||
| 661 | { | ||
| 662 | if (NEW_PROGRAM_H(n).p_vaddr | ||
| 663 | && NEW_PROGRAM_H(n).p_vaddr >= new_data3_addr) | ||
| 664 | NEW_PROGRAM_H(n).p_vaddr += new_data2_size - old_bss_size + | ||
| 665 | new_data3_size - old_sbss_size; | ||
| 666 | |||
| 667 | if (NEW_PROGRAM_H(n).p_offset >= new_data3_offset) | ||
| 668 | NEW_PROGRAM_H(n).p_offset += new_data2_size + new_data2_align + | ||
| 669 | new_data3_size; | ||
| 670 | } | ||
| 671 | #endif | ||
| 672 | |||
| 673 | /* Fix up section headers based on new .data2 section. Any section | ||
| 674 | * whose offset or virtual address is after the new .data2 section | ||
| 675 | * gets its value adjusted. .bss size becomes zero and new address | ||
| 676 | * is set. data2 section header gets added by copying the existing | ||
| 677 | * .data header and modifying the offset, address and size. | ||
| 678 | */ | ||
| 679 | for (old_data_index = 1; old_data_index < old_file_h->e_shnum; | ||
| 680 | old_data_index++) | ||
| 681 | if (!strcmp (old_section_names + OLD_SECTION_H(old_data_index).sh_name, | ||
| 682 | ".data")) | ||
| 683 | break; | ||
| 684 | if (old_data_index == old_file_h->e_shnum) | ||
| 685 | fatal ("Can't find .data in %s.\n", old_name, 0); | ||
| 686 | |||
| 687 | /* Walk through all section headers, insert the new data2 section right | ||
| 688 | before the new bss section. */ | ||
| 689 | for (n = 1, nn = 1; n < old_file_h->e_shnum; n++, nn++) | ||
| 690 | { | ||
| 691 | caddr_t src; | ||
| 692 | |||
| 693 | if (n == old_sbss_index) | ||
| 694 | |||
| 695 | /* If it is sbss section, insert the new data3 section before it. */ | ||
| 696 | { | ||
| 697 | /* Steal the data section header for this data3 section. */ | ||
| 698 | if (!old_sdata_index) | ||
| 699 | { | ||
| 700 | memcpy (&NEW_SECTION_H(nn), &OLD_SECTION_H(old_data_index), | ||
| 701 | new_file_h->e_shentsize); | ||
| 702 | |||
| 703 | NEW_SECTION_H(nn).sh_addr = new_data3_addr; | ||
| 704 | NEW_SECTION_H(nn).sh_offset = new_data3_offset; | ||
| 705 | NEW_SECTION_H(nn).sh_size = new_data3_size; | ||
| 706 | NEW_SECTION_H(nn).sh_flags = OLD_SECTION_H(n).sh_flags; | ||
| 707 | /* Use the sbss section's alignment. This will assure that the | ||
| 708 | new data3 section always be placed in the same spot as the old | ||
| 709 | sbss section by any other application. */ | ||
| 710 | NEW_SECTION_H(nn).sh_addralign = OLD_SECTION_H(n).sh_addralign; | ||
| 711 | |||
| 712 | /* Now copy over what we have in the memory now. */ | ||
| 713 | memcpy (NEW_SECTION_H(nn).sh_offset + new_base, | ||
| 714 | (caddr_t) OLD_SECTION_H(n).sh_addr, | ||
| 715 | new_data3_size); | ||
| 716 | /* the new .data2 section should also come before the | ||
| 717 | * new .sbss section */ | ||
| 718 | nn += 2; | ||
| 719 | } | ||
| 720 | else | ||
| 721 | { | ||
| 722 | /* We always have a .sdata section: append the contents of the | ||
| 723 | * old .sbss section. | ||
| 724 | */ | ||
| 725 | memcpy (new_data3_offset + new_base, | ||
| 726 | (caddr_t) OLD_SECTION_H(n).sh_addr, | ||
| 727 | new_data3_size); | ||
| 728 | nn ++; | ||
| 729 | } | ||
| 730 | } | ||
| 731 | else if (n == old_bss_index) | ||
| 732 | |||
| 733 | /* If it is bss section, insert the new data2 section before it. */ | ||
| 734 | { | ||
| 735 | Elf32_Word tmp_align; | ||
| 736 | Elf32_Addr tmp_addr; | ||
| 737 | |||
| 738 | tmp_align = OLD_SECTION_H(n).sh_addralign; | ||
| 739 | tmp_addr = OLD_SECTION_H(n).sh_addr; | ||
| 740 | |||
| 741 | nn -= 2; | ||
| 742 | /* Steal the data section header for this data2 section. */ | ||
| 743 | memcpy (&NEW_SECTION_H(nn), &OLD_SECTION_H(old_data_index), | ||
| 744 | new_file_h->e_shentsize); | ||
| 745 | |||
| 746 | NEW_SECTION_H(nn).sh_addr = new_data2_addr; | ||
| 747 | NEW_SECTION_H(nn).sh_offset = new_data2_offset; | ||
| 748 | NEW_SECTION_H(nn).sh_size = new_data2_size; | ||
| 749 | /* Use the bss section's alignment. This will assure that the | ||
| 750 | new data2 section always be placed in the same spot as the old | ||
| 751 | bss section by any other application. */ | ||
| 752 | NEW_SECTION_H(nn).sh_addralign = tmp_align; | ||
| 753 | |||
| 754 | /* Now copy over what we have in the memory now. */ | ||
| 755 | memcpy (NEW_SECTION_H(nn).sh_offset + new_base, | ||
| 756 | (caddr_t) tmp_addr, new_data2_size); | ||
| 757 | nn += 2; | ||
| 758 | } | ||
| 759 | |||
| 760 | memcpy (&NEW_SECTION_H(nn), &OLD_SECTION_H(n), | ||
| 761 | old_file_h->e_shentsize); | ||
| 762 | |||
| 763 | if (old_sdata_index && n == old_sdata_index) | ||
| 764 | /* The old .sdata section has now a new size */ | ||
| 765 | NEW_SECTION_H(nn).sh_size = new_sdata_size; | ||
| 766 | |||
| 767 | /* The new bss section's size is zero, and its file offset and virtual | ||
| 768 | address should be off by NEW_DATA2_SIZE. */ | ||
| 769 | if (n == old_sbss_index) | ||
| 770 | { | ||
| 771 | /* NN should be `old_sbss_index + 2' at this point. */ | ||
| 772 | NEW_SECTION_H(nn).sh_offset += new_data2_size + new_data2_align + | ||
| 773 | new_data3_size; | ||
| 774 | NEW_SECTION_H(nn).sh_addr += new_data2_size + new_data2_align + | ||
| 775 | new_data3_size; | ||
| 776 | /* Let the new bss section address alignment be the same as the | ||
| 777 | section address alignment followed the old bss section, so | ||
| 778 | this section will be placed in exactly the same place. */ | ||
| 779 | NEW_SECTION_H(nn).sh_addralign = | ||
| 780 | OLD_SECTION_H(nn + (old_sdata_index ? 1 : 0)).sh_addralign; | ||
| 781 | NEW_SECTION_H(nn).sh_size = 0; | ||
| 782 | } | ||
| 783 | else if (n == old_bss_index) | ||
| 784 | { | ||
| 785 | /* NN should be `old_bss_index + 2' at this point. */ | ||
| 786 | NEW_SECTION_H(nn).sh_offset += new_data2_size + new_data2_align + | ||
| 787 | new_data3_size - old_bss_padding; | ||
| 788 | NEW_SECTION_H(nn).sh_addr += new_data2_size; | ||
| 789 | /* Let the new bss section address alignment be the same as the | ||
| 790 | section address alignment followed the old bss section, so | ||
| 791 | this section will be placed in exactly the same place. */ | ||
| 792 | NEW_SECTION_H(nn).sh_addralign = | ||
| 793 | OLD_SECTION_H((nn - (old_sdata_index ? 0 : 1))).sh_addralign; | ||
| 794 | NEW_SECTION_H(nn).sh_size = 0; | ||
| 795 | } | ||
| 796 | /* Any section that was original placed AFTER the bss section should now | ||
| 797 | be off by NEW_DATA2_SIZE. */ | ||
| 798 | else if (NEW_SECTION_H(nn).sh_offset >= new_data3_offset) | ||
| 799 | NEW_SECTION_H(nn).sh_offset += new_data2_size + | ||
| 800 | new_data2_align + | ||
| 801 | new_data3_size - | ||
| 802 | old_bss_padding; | ||
| 803 | |||
| 804 | /* If any section hdr refers to the section after the new .data | ||
| 805 | section, make it refer to next one because we have inserted | ||
| 806 | a new section in between. */ | ||
| 807 | |||
| 808 | PATCH_INDEX(NEW_SECTION_H(nn).sh_link); | ||
| 809 | PATCH_INDEX(NEW_SECTION_H(nn).sh_info); | ||
| 810 | |||
| 811 | /* Now, start to copy the content of sections. */ | ||
| 812 | if (NEW_SECTION_H(nn).sh_type == SHT_NULL | ||
| 813 | || NEW_SECTION_H(nn).sh_type == SHT_NOBITS) | ||
| 814 | continue; | ||
| 815 | |||
| 816 | /* Write out the sections. .data, .data1 and .sdata get copied from | ||
| 817 | * the current process instead of the old file. | ||
| 818 | */ | ||
| 819 | if (!strcmp (old_section_names + OLD_SECTION_H(n).sh_name, ".data") || | ||
| 820 | !strcmp (old_section_names + OLD_SECTION_H(n).sh_name, ".data1") || | ||
| 821 | (old_sdata_index && (n == old_sdata_index))) | ||
| 822 | src = (caddr_t) OLD_SECTION_H(n).sh_addr; | ||
| 823 | else | ||
| 824 | src = old_base + OLD_SECTION_H(n).sh_offset; | ||
| 825 | |||
| 826 | memcpy (NEW_SECTION_H(nn).sh_offset + new_base, src, | ||
| 827 | ((n == old_sdata_index) ? | ||
| 828 | old_sdata_size : | ||
| 829 | NEW_SECTION_H(nn).sh_size)); | ||
| 830 | |||
| 831 | /* If it is the symbol table, its st_shndx field needs to be patched. */ | ||
| 832 | if (NEW_SECTION_H(nn).sh_type == SHT_SYMTAB | ||
| 833 | || NEW_SECTION_H(nn).sh_type == SHT_DYNSYM) | ||
| 834 | { | ||
| 835 | Elf32_Shdr *spt = &NEW_SECTION_H(nn); | ||
| 836 | unsigned int num = spt->sh_size / spt->sh_entsize; | ||
| 837 | Elf32_Sym * sym = (Elf32_Sym *) (NEW_SECTION_H(nn).sh_offset + | ||
| 838 | new_base); | ||
| 839 | for (; num--; sym++) | ||
| 840 | { | ||
| 841 | if ((sym->st_shndx == SHN_UNDEF) | ||
| 842 | || (sym->st_shndx == SHN_ABS) | ||
| 843 | || (sym->st_shndx == SHN_COMMON)) | ||
| 844 | continue; | ||
| 845 | |||
| 846 | PATCH_INDEX(sym->st_shndx); | ||
| 847 | } | ||
| 848 | } | ||
| 849 | } | ||
| 850 | { | ||
| 851 | Elf32_Rel *rel_p; | ||
| 852 | unsigned int old_data_addr_start; | ||
| 853 | unsigned int old_data_addr_end; | ||
| 854 | unsigned int old_data_offset; | ||
| 855 | unsigned int new_data_offset; | ||
| 856 | int i; | ||
| 857 | |||
| 858 | rel_p = (Elf32_Rel *)OLD_SECTION_H(old_rel_dyn_index).sh_addr; | ||
| 859 | old_data_addr_start = OLD_SECTION_H(old_data_index).sh_addr; | ||
| 860 | old_data_addr_end = old_data_addr_start + | ||
| 861 | OLD_SECTION_H(old_data_index).sh_size; | ||
| 862 | old_data_offset = (int)OLD_SECTION_H(old_data_index).sh_offset + | ||
| 863 | (unsigned int)old_base; | ||
| 864 | new_data_offset = (int)NEW_SECTION_H(old_data_index).sh_offset + | ||
| 865 | (unsigned int)new_base; | ||
| 866 | |||
| 867 | #ifdef DEBUG | ||
| 868 | fprintf(stderr, "old_data.sh_addr= 0x%08x ... 0x%08x\n", old_data_addr_start, | ||
| 869 | old_data_addr_end); | ||
| 870 | #endif /* DEBUG */ | ||
| 871 | |||
| 872 | for (i = 0; i < old_rel_dyn_size/sizeof(Elf32_Rel); i++) | ||
| 873 | { | ||
| 874 | #ifdef DEBUG | ||
| 875 | fprintf(stderr, ".rel.dyn offset= 0x%08x type= %d sym= %d\n", | ||
| 876 | rel_p->r_offset, ELF32_R_TYPE(rel_p->r_info), ELF32_R_SYM(rel_p->r_info)); | ||
| 877 | #endif /* DEBUG */ | ||
| 878 | |||
| 879 | if (rel_p->r_offset) | ||
| 880 | { | ||
| 881 | unsigned int offset; | ||
| 882 | |||
| 883 | assert(old_data_addr_start <= rel_p->r_offset && | ||
| 884 | rel_p->r_offset <= old_data_addr_end); | ||
| 885 | |||
| 886 | offset = rel_p->r_offset - old_data_addr_start; | ||
| 887 | |||
| 888 | #ifdef DEBUG | ||
| 889 | fprintf(stderr, "r_offset= 0x%08x *r_offset= 0x%08x\n", | ||
| 890 | rel_p->r_offset, *((int *)(rel_p->r_offset))); | ||
| 891 | fprintf(stderr, "old = 0x%08x *old =0x%08x\n", | ||
| 892 | (old_data_offset + offset - (unsigned int)old_base), | ||
| 893 | *((int *)(old_data_offset + offset))); | ||
| 894 | fprintf(stderr, "new = 0x%08x *new =0x%08x\n", | ||
| 895 | (new_data_offset + offset - (unsigned int)new_base), | ||
| 896 | *((int *)(new_data_offset + offset))); | ||
| 897 | #endif /* DEBUG */ | ||
| 898 | |||
| 899 | *((int *)(new_data_offset + offset)) = *((int *)(old_data_offset + offset)); | ||
| 900 | } | ||
| 901 | |||
| 902 | rel_p++; | ||
| 903 | } | ||
| 904 | } | ||
| 905 | |||
| 906 | /* Close the files and make the new file executable */ | ||
| 907 | |||
| 908 | if (close (old_file)) | ||
| 909 | fatal ("Can't close(%s): errno %d\n", old_name, errno); | ||
| 910 | |||
| 911 | if (close (new_file)) | ||
| 912 | fatal ("Can't close(%s): errno %d\n", new_name, errno); | ||
| 913 | |||
| 914 | if (stat (new_name, &stat_buf) == -1) | ||
| 915 | fatal ("Can't stat(%s): errno %d\n", new_name, errno); | ||
| 916 | |||
| 917 | n = umask (777); | ||
| 918 | umask (n); | ||
| 919 | stat_buf.st_mode |= 0111 & ~n; | ||
| 920 | if (chmod (new_name, stat_buf.st_mode) == -1) | ||
| 921 | fatal ("Can't chmod(%s): errno %d\n", new_name, errno); | ||
| 922 | } | ||
| 923 | |||
| 924 | /* arch-tag: c784ead3-7a27-442b-83fe-7af8d08654d3 | ||
| 925 | (do not change this comment) */ | ||
| @@ -1269,12 +1269,6 @@ get_emacs_configuration (void) | |||
| 1269 | break; | 1269 | break; |
| 1270 | #endif | 1270 | #endif |
| 1271 | 1271 | ||
| 1272 | #ifdef PROCESSOR_INTEL_860 | ||
| 1273 | case PROCESSOR_INTEL_860: | ||
| 1274 | arch = "i860"; | ||
| 1275 | break; | ||
| 1276 | #endif | ||
| 1277 | |||
| 1278 | #ifdef PROCESSOR_MIPS_R2000 | 1272 | #ifdef PROCESSOR_MIPS_R2000 |
| 1279 | case PROCESSOR_MIPS_R2000: | 1273 | case PROCESSOR_MIPS_R2000: |
| 1280 | case PROCESSOR_MIPS_R3000: | 1274 | case PROCESSOR_MIPS_R3000: |