+2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * movemail.c:
+ * make-docfile.c: Remove reference to symbols defined by systems
+ not supported anymore: MAC_OS8, XENIX and STRIDE.
+
2008-01-12 Eli Zaretskii <eliz@gnu.org>
* emacsclient.c (decode_options) [WINDOWSNT]: Don't use the value
#endif /* not DOS_NT */
#ifndef DIRECTORY_SEP
-#ifdef MAC_OS8
-#define DIRECTORY_SEP ':'
-#else /* not MAC_OS8 */
#define DIRECTORY_SEP '/'
-#endif /* not MAC_OS8 */
#endif
#ifndef IS_DIRECTORY_SEP
#ifdef MAIL_USE_SYSTEM_LOCK
if (! preserve_mail)
{
-#if defined (STRIDE) || defined (XENIX)
- /* Stride, xenix have file locking, but no ftruncate.
- This mess will do. */
- close (open (inname, O_CREAT | O_TRUNC | O_RDWR, 0666));
-#else
ftruncate (indesc, 0L);
-#endif /* STRIDE or XENIX */
}
#endif /* MAIL_USE_SYSTEM_LOCK */
+2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
+
+ * (unexsunos4): Remove file, system not supported anymore.
+
+ * (src/m/mips.h):
+ * (src/m/intel386.h):
+ * callproc.c:
+ * config.in:
+ * ecrt0.c:
+ * emacs.c:
+ * fileio.c:
+ * frame.c:
+ * getpagesize.h:
+ * keyboard.c:
+ * lread.c:
+ * process.c:
+ * puresize.h:
+ * sysdep.c:
+ * systty.h:
+ * syswait.h:
+ * unexec.c:
+ * xdisp.c:
+ * alloc.c: Remove code containing references to symbols defined by
+ unsupported systems.
+
2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
* coding.c (detect_coding_mask): Fix previous change.
consing_since_gc += sizeof *s;
#ifdef GC_CHECK_STRING_BYTES
- if (!noninteractive
-#ifdef MAC_OS8
- && current_sblock
-#endif
- )
+ if (!noninteractive)
{
if (++check_string_bytes_count == 200)
{
call_process_cleanup (fdpid)
Lisp_Object fdpid;
{
-#if defined (MSDOS) || defined (MAC_OS8)
+#if defined (MSDOS)
/* for MSDOS fdpid is really (fd . tempfile) */
register Lisp_Object file;
file = Fcdr (fdpid);
emacs_close (XFASTINT (Fcar (fdpid)));
if (strcmp (SDATA (file), NULL_DEVICE) != 0)
unlink (SDATA (file));
-#else /* not MSDOS and not MAC_OS8 */
+#else /* not MSDOS */
register int pid = XFASTINT (Fcdr (fdpid));
if (call_process_exited)
char *outf, *tempfile;
int outfilefd;
#endif
-#ifdef MAC_OS8
- char *tempfile;
- int outfilefd;
-#endif
#if 0
int mask;
#endif
fd[1] = outfilefd;
#endif /* MSDOS */
-#ifdef MAC_OS8
- /* Since we don't have pipes on the Mac, create a temporary file to
- hold the output of the subprocess. */
- tempfile = (char *) alloca (SBYTES (Vtemp_file_name_pattern) + 1);
- bcopy (SDATA (Vtemp_file_name_pattern), tempfile,
- SBYTES (Vtemp_file_name_pattern) + 1);
-
- mktemp (tempfile);
-
- outfilefd = creat (tempfile, S_IREAD | S_IWRITE);
- if (outfilefd < 0)
- {
- close (filefd);
- report_file_error ("Opening process output file",
- Fcons (build_string (tempfile), Qnil));
- }
- fd[0] = filefd;
- fd[1] = outfilefd;
-#endif /* MAC_OS8 */
-
if (INTEGERP (buffer))
fd[1] = emacs_open (NULL_DEVICE, O_WRONLY, 0), fd[0] = -1;
else
{
#ifndef MSDOS
-#ifndef MAC_OS8
- errno = 0;
- if (pipe (fd) == -1)
- {
- emacs_close (filefd);
- report_file_error ("Creating process pipe", Qnil);
- }
-#endif
#endif
#if 0
/* Replaced by close_process_descs */
report_file_error ("Cannot redirect stderr", Fcons (error_file, Qnil));
}
-#ifdef MAC_OS8
- {
- /* Call run_mac_command in sysdep.c here directly instead of doing
- a child_setup as for MSDOS and other platforms. Note that this
- code does not handle passing the environment to the synchronous
- Mac subprocess. */
- char *infn, *outfn, *errfn, *currdn;
-
- /* close these files so subprocess can write to them */
- close (outfilefd);
- if (fd_error != outfilefd)
- close (fd_error);
- fd1 = -1; /* No harm in closing that one! */
-
- infn = SDATA (infile);
- outfn = tempfile;
- if (NILP (error_file))
- errfn = NULL_DEVICE;
- else if (EQ (Qt, error_file))
- errfn = outfn;
- else
- errfn = SDATA (error_file);
- currdn = SDATA (current_dir);
- pid = run_mac_command (new_argv, currdn, infn, outfn, errfn);
-
- /* Record that the synchronous process exited and note its
- termination status. */
- synch_process_alive = 0;
- synch_process_retcode = pid;
- if (synch_process_retcode < 0) /* means it couldn't be exec'ed */
- {
- synchronize_system_messages_locale ();
- synch_process_death = strerror (errno);
- }
-
- /* Since CRLF is converted to LF within `decode_coding', we can
- always open a file with binary mode. */
- fd[0] = open (tempfile, O_BINARY);
- if (fd[0] < 0)
- {
- unlink (tempfile);
- close (filefd);
- report_file_error ("Cannot re-open temporary file", Qnil);
- }
- }
-#else /* not MAC_OS8 */
#ifdef MSDOS /* MW, July 1993 */
/* Note that on MSDOS `child_setup' actually returns the child process
exit status, not its PID, so we assign it to `synch_process_retcode'
if (fd_error >= 0)
emacs_close (fd_error);
#endif /* not MSDOS */
-#endif /* not MAC_OS8 */
environ = save_environ;
/* Enable sending signal if user quits below. */
call_process_exited = 0;
-#if defined(MSDOS) || defined(MAC_OS8)
+#if defined(MSDOS)
/* MSDOS needs different cleanup information. */
record_unwind_protect (call_process_cleanup,
Fcons (make_number (fd[0]), build_string (tempfile)));
#else
record_unwind_protect (call_process_cleanup,
Fcons (make_number (fd[0]), make_number (pid)));
-#endif /* not MSDOS and not MAC_OS8 */
+#endif /* not MSDOS */
if (BUFFERP (buffer))
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
#undef TM_IN_SYS_TIME
-/* Define to 1 for Encore UMAX. */
-#undef UMAX
-
-/* Define to 1 for Encore UMAX 4.3 that has <inq_status/cpustats.h> instead of
- <sys/cpustats.h>. */
-#undef UMAX4_3
-
/* Define to the unexec source file name. */
#undef UNEXEC_SRC
static start1 ();
#endif
-#ifdef APOLLO
-extern char *malloc(), *realloc(), *(*_libc_malloc) (), *(*_libc_realloc)();
-extern void free(), (*_libc_free) (); extern int main();
-std_$call void unix_$main();
-
-_start()
-{
- _libc_malloc = malloc;
- _libc_realloc = realloc;
- _libc_free = free;
- unix_$main(main); /* no return */
-}
-#endif /* APOLLO */
-
-#if defined(orion) || defined(pyramid) || defined(celerity) || defined(ALLIANT) || defined(clipper) || defined(sps7)
-
-#if defined(sps7) && defined(V3x)
- asm(" section 10");
- asm(" ds.b 0xb0");
-#endif
-
-#ifdef ALLIANT
-/* _start must initialize _curbrk and _minbrk on the first startup;
- when starting up after dumping, it must initialize them to what they were
- before the dumping, since they are in the shared library and
- are not dumped. See ADJUST_EXEC_HEADER in m-alliant.h. */
-extern unsigned char *_curbrk, *_minbrk;
-extern unsigned char end;
-unsigned char *_setbrk = &end;
-#ifdef ALLIANT_2800
-unsigned char *_end = &end;
-#endif
-#endif
-
-#ifndef DUMMIES
-#define DUMMIES
-#endif
-
-_start (DUMMIES argc, argv, envp)
- int argc;
- char **argv, **envp;
-{
-#ifdef ALLIANT
-#ifdef ALLIANT_2800
- _curbrk = _end;
- _minbrk = _end;
-#else
- _curbrk = _setbrk;
- _minbrk = _setbrk;
-#endif
-#endif
-
- environ = envp;
-
- exit (main (argc, argv, envp));
-}
-
-#endif /* orion or pyramid or celerity or alliant or clipper */
-
-#if defined (ns16000) && !defined (sequent) && !defined (UMAX) && !defined (CRT0_DUMMIES)
-
-_start ()
-{
-/* On 16000, _start pushes fp onto stack */
- start1 ();
-}
-
-/* ignore takes care of skipping the fp value pushed in start. */
-static
-start1 (ignore, argc, argv)
- int ignore;
- int argc;
- register char **argv;
-{
- environ = argv + argc + 1;
-
- if (environ == *argv)
- environ--;
- exit (main (argc, argv, environ));
-}
-#endif /* ns16000, not sequent and not UMAX, and not the CRT0_DUMMIES method */
-
-#ifdef UMAX
-_start()
-{
- asm(" exit [] # undo enter");
- asm(" .set exitsc,1");
- asm(" .set sigcatchall,0x400");
-
- asm(" .globl _exit");
- asm(" .globl start");
- asm(" .globl __start");
- asm(" .globl _main");
- asm(" .globl _environ");
- asm(" .globl _sigvec");
- asm(" .globl sigentry");
-
- asm("start:");
- asm(" br .xstart");
- asm(" .org 0x20");
- asm(" .double p_glbl,0,0xf00000,0");
- asm(" .org 0x30");
- asm(".xstart:");
- asm(" adjspb $8");
- asm(" movd 8(sp),0(sp) # argc");
- asm(" addr 12(sp),r0");
- asm(" movd r0,4(sp) # argv");
- asm("L1:");
- asm(" movd r0,r1");
- asm(" addqd $4,r0");
- asm(" cmpqd $0,0(r1) # null args term ?");
- asm(" bne L1");
- asm(" cmpd r0,0(4(sp)) # end of 'env' or 'argv' ?");
- asm(" blt L2");
- asm(" addqd $-4,r0 # envp's are in list");
- asm("L2:");
- asm(" movd r0,8(sp) # env");
- asm(" movd r0,@_environ # indir is 0 if no env ; not 0 if env");
- asm(" movqd $0,tos # setup intermediate signal handler");
- asm(" addr @sv,tos");
- asm(" movzwd $sigcatchall,tos");
- asm(" jsr @_sigvec");
- asm(" adjspb $-12");
- asm(" jsr @_main");
- asm(" adjspb $-12");
- asm(" movd r0,tos");
- asm(" jsr @_exit");
- asm(" adjspb $-4");
- asm(" addr @exitsc,r0");
- asm(" svc");
- asm(" .align 4 # sigvec arg");
- asm("sv:");
- asm(" .double sigentry");
- asm(" .double 0");
- asm(" .double 0");
-
- asm(" .comm p_glbl,1");
-}
-#endif /* UMAX */
-
#ifdef CRT0_DUMMIES
/* Define symbol "start": here; some systems want that symbol. */
asm (" global _start");
asm (" text");
asm ("_start:");
-#ifndef NU
-#ifdef STRIDE
- asm (" comm havefpu%,2");
-#else /* m68k, not STRIDE */
asm (" comm splimit%,4");
-#endif /* STRIDE */
asm (" global exit");
asm (" text");
-#ifdef STRIDE
- asm (" trap &3");
- asm (" mov.w %d0,havefpu%");
-#else /* m68k, not STRIDE */
asm (" mov.l %d0,splimit%");
-#endif /* STRIDE */
-#endif /* not NU */
asm (" jsr start1");
asm (" mov.l %d0,(%sp)");
asm (" jsr exit");
#ifdef m68000
-#ifdef ISI68K
-/* Added by ESM Sun May 24 12:44:02 1987 to get new ISI library to work */
-/* Edited by Ray Mon May 15 15:59:56 EST 1989 so we can compile with gcc */
-#if defined(BSD4_3) && !defined(__GNUC__)
-static foo () {
-#endif
- asm (" .globl is68020");
- asm ("is68020:");
-#ifndef BSD4_3
- asm (" .long 0x00000000");
- asm (" .long 0xffffffff");
-/* End of stuff added by ESM */
-#endif
- asm (" .text");
- asm (" .globl __start");
- asm ("__start:");
- asm (" .word 0");
- asm (" link a6,#0");
- asm (" jbsr _start1");
- asm (" unlk a6");
- asm (" rts");
-#if defined(BSD4_3) && !defined(__GNUC__)
- }
-#endif
-#else /* not ISI68K */
-
_start ()
{
#ifdef sun
/* On 68000, _start pushes a6 onto stack */
start1 ();
}
-#endif /* not ISI68k */
#endif /* m68000 */
#endif /* m68k */
if ((char *)environ == xargv)
environ--;
-#ifdef sun_68881
- asm(" jsr f68881_used");
-#endif
-#ifdef sun_fpa
- asm(" jsr ffpa_used");
-#endif
-#ifdef sun_soft
- asm(" jsr start_float");
-#endif
exit (main (argc, argv, environ));
}
#endif /* new hp assembler */
#endif /* hp9000s300 */
-#ifdef GOULD
-
-/* startup code has to be in near text rather
- than fartext as allocated by the C compiler. */
- asm(" .text");
- asm(" .align 2");
- asm(" .globl __start");
- asm(" .text");
- asm("__start:");
-/* setup base register b1 (function base). */
- asm(" .using b1,.");
- asm(" tpcbr b1");
-/* setup base registers b3 through b7 (data references). */
- asm(" file basevals,b3");
-/* setup base register b2 (stack pointer); it should be
- aligned on a 8-word boundary; but because it is pointing
- to argc, its value should be remembered (in r5). */
- asm(" movw b2,r4");
- asm(" movw b2,r5");
- asm(" andw #~0x1f,r4");
- asm(" movw r4,b2");
-/* allocate stack frame to do some work. */
- asm(" subea 16w,b2");
-/* initialize signal catching for UTX/32 1.2; this is
- necessary to make restart from saved image work. */
- asm(" movea sigcatch,r1");
- asm(" movw r1,8w[b2]");
- asm(" svc #1,#150");
-/* setup address of argc for start1. */
- asm(" movw r5,8w[b2]");
- asm(" func #1,_start1");
- asm(" halt");
-/* space for ld to store base register initial values. */
- asm(" .align 5");
- asm("basevals:");
- asm(" .word __base3,__base4,__base5,__base6,__base7");
-
-static
-start1 (xargc)
- int *xargc;
-{
- register int argc;
- register char **argv;
-
- argc = *xargc;
- argv = (char **)(xargc) + 1;
- environ = argv + argc + 1;
-
- if (environ == argv)
- environ--;
- exit (main (argc, argv, environ));
-
-}
-
-#endif /* GOULD */
-
-#ifdef elxsi
-#include <elxsi/argvcache.h>
-
-extern char **environ;
-extern int errno;
-extern void _init_doscan(), _init_iob();
-extern char end[];
-char *_init_brk = end;
-
-_start()
-{
- environ = exec_cache.ac_envp;
- brk (_init_brk);
- errno = 0;
- _init_doscan ();
- _init_iob ();
- _exit (exit (main (exec_cache.ac_argc,
- exec_cache.ac_argv,
- exec_cache.ac_envp)));
-}
-#endif /* elxsi */
-
-
#ifdef sparc
asm (".global __start");
asm (".text");
CANNOT_DUMP is defined. */
syms_of_keyboard ();
-#ifdef MAC_OS8
- /* init_window_once calls make_terminal_frame which on Mac OS
- creates a full-fledge output_mac type frame. This does not
- work correctly before syms_of_textprop, syms_of_macfns,
- syms_of_ccl, syms_of_fontset, syms_of_xterm, syms_of_search,
- syms_of_frame, mac_term_init, and init_keyboard have already
- been called. */
- syms_of_textprop ();
- syms_of_macfns ();
- syms_of_ccl ();
- syms_of_fontset ();
- syms_of_macterm ();
- syms_of_macmenu ();
- syms_of_macselect ();
- syms_of_data ();
- syms_of_search ();
- syms_of_frame ();
-
- init_atimer ();
- mac_term_init (build_string ("Mac"), NULL, NULL);
- init_keyboard ();
-#endif
-
init_window_once (); /* Init the window system. */
init_fileio_once (); /* Must precede any path manipulation. */
#ifdef HAVE_WINDOW_SYSTEM
#ifdef CLASH_DETECTION
init_filelock ();
#endif
-#ifndef MAC_OS8
init_atimer ();
-#endif
running_asynch_code = 0;
/* Handle --unibyte and the EMACS_UNIBYTE envvar,
/* The basic levels of Lisp must come first. */
/* And data must come first of all
for the sake of symbols like error-message. */
-#ifndef MAC_OS8
/* Called before init_window_once for Mac OS Classic. */
syms_of_data ();
-#endif
syms_of_alloc ();
syms_of_lread ();
syms_of_print ();
syms_of_casetab ();
syms_of_callproc ();
syms_of_category ();
-#ifndef MAC_OS8
- /* Called before init_window_once for Mac OS Classic. */
syms_of_ccl ();
-#endif
syms_of_charset ();
syms_of_cmds ();
#ifndef NO_DIR_LIBRARY
syms_of_marker ();
syms_of_minibuf ();
syms_of_process ();
-#ifndef MAC_OS8
- /* Called before init_window_once for Mac OS Classic. */
syms_of_search ();
syms_of_frame ();
-#endif
syms_of_syntax ();
syms_of_terminal ();
syms_of_term ();
#ifdef HAVE_SOUND
syms_of_sound ();
#endif
-#ifndef MAC_OS8
- /* Called before init_window_once for Mac OS Classic. */
syms_of_textprop ();
-#endif
syms_of_composite ();
#ifdef VMS
syms_of_vmsproc ();
init_editfns (); /* init_process uses Voperating_system_release. */
init_process (); /* init_display uses add_keyboard_wait_descriptor. */
-#ifndef MAC_OS8
- /* Called before init_window_once for Mac OS Classic. */
init_keyboard (); /* This too must precede init_sys_modes. */
-#endif
#ifdef VMS
init_vmsproc (); /* And this too. */
#endif /* VMS */
#endif
#endif
-#ifdef APOLLO
-#include <sys/time.h>
-#endif
-
#include "lisp.h"
#include "intervals.h"
#include "buffer.h"
/* Process as Unix format: just remove any final slash.
But leave "/" unchanged; do not change it to "". */
strcpy (dst, src);
-#ifdef APOLLO
- /* Handle // as root for apollo's. */
- if ((slen > 2 && dst[slen - 1] == '/')
- || (slen > 1 && dst[0] != '/' && dst[slen - 1] == '/'))
- dst[slen - 1] = 0;
-#else
if (slen > 1
&& IS_DIRECTORY_SEP (dst[slen - 1])
#ifdef DOS_NT
#endif
)
dst[slen - 1] = 0;
-#endif
#ifdef DOS_NT
CORRECT_DIR_SEPS (dst);
#endif
while (*p)
{
if (p[0] == '/' && p[1] == '/'
-#ifdef APOLLO
- /* // at start of filename is meaningful on Apollo system. */
- && nm != p
-#endif /* APOLLO */
)
nm = p + 1;
if (p[0] == '/' && p[1] == '~')
*o++ = *p++;
}
else if (!strncmp (p, "//", 2)
-#ifdef APOLLO
- /* // at start of filename is meaningful in Apollo system. */
- && o != target
-#endif /* APOLLO */
)
{
o = target;
{
while (o != target && *--o != '/')
;
-#ifdef APOLLO
- if (o == target + 1 && o[-1] == '/' && o[0] == '/')
- ++o;
- else
-#endif /* APOLLO */
if (o == target && *o == '/')
++o;
p += 3;
#endif /* VMS */
|| IS_DIRECTORY_SEP (p[-1]))
&& file_name_absolute_p (p)
-#if defined (APOLLO) || defined (WINDOWSNT) || defined(CYGWIN)
+#if defined (WINDOWSNT) || defined(CYGWIN)
/* // at start of file name is meaningful in Apollo,
WindowsNT and Cygwin systems. */
&& !(IS_DIRECTORY_SEP (p[0]) && p - 1 == nm)
-#endif /* not (APOLLO || WINDOWSNT || CYGWIN) */
+#endif /* not (WINDOWSNT || CYGWIN) */
)
{
for (s = p; *s && (!IS_DIRECTORY_SEP (*s)
}
if (total < 0)
#else
-#ifndef APOLLO
if (stat (SDATA (filename), &st) < 0)
-#else
- if ((fd = emacs_open (SDATA (filename), O_RDONLY, 0)) < 0
- || fstat (fd, &st) < 0)
-#endif /* not APOLLO */
#endif /* WINDOWSNT */
{
if (fd >= 0) emacs_close (fd);
{
if (!EQ (current_buffer->undo_list, Qt))
current_buffer->undo_list = Qnil;
-#ifdef APOLLO
- stat (SDATA (filename), &st);
-#endif
if (NILP (handler))
{
but who knows about all the other machines with NFS?) */
#if 0
- /* On VMS and APOLLO, must do the stat after the close
+ /* On VMS, must do the stat after the close
since closing changes the modtime. */
#ifndef VMS
-#ifndef APOLLO
/* Recall that #if defined does not work on VMS. */
#define FOO
fstat (desc, &st);
#endif
-#endif
#endif
/* NFS can report a write failure now. */
}
else
f->output_method = output_termcap;
-#else
-#ifdef MAC_OS8
- make_mac_terminal_frame (f);
#else
{
f->output_method = output_termcap;
FRAME_FOREGROUND_PIXEL(f) = FACE_TTY_DEFAULT_FG_COLOR;
FRAME_BACKGROUND_PIXEL(f) = FACE_TTY_DEFAULT_BG_COLOR;
#endif
-#endif /* MAC_OS8 */
#endif /* MSDOS */
if (!noninteractive)
abort ();
#else /* not MSDOS */
-#if 0 /* #ifdef MAC_OS8 */
+#if 0
/* This can happen for multi-tty when using both terminal frames and
Carbon frames. */
if (sf->output_method != output_mac)
if (! FRAME_LIVE_P (f))
return Qnil;
- if (NILP (force) && !other_visible_frames (f)
-#ifdef MAC_OS8
- /* Terminal frame deleted before any other visible frames are
- created. */
- && strcmp (SDATA (f->name), "F1") != 0
-#endif
- )
+ if (NILP (force) && !other_visible_frames (f))
error ("Attempt to delete the sole visible or iconified frame");
#if 0
# define CLSIZE 1
# endif /* no CLSIZE */
# else /* no NBPG */
-# ifdef NBPC
-# define getpagesize() NBPC
-# else /* no NBPC */
# ifdef PAGESIZE
# define getpagesize() PAGESIZE
# endif /* PAGESIZE */
-# endif /* no NBPC */
# endif /* no NBPG */
# endif /* no EXEC_PAGESIZE */
# else /* no HAVE_SYS_PARAM_H */
during the current critical section. */
int interrupt_input_pending;
-
-#ifdef HAVE_WINDOW_SYSTEM
-/* Make all keyboard buffers much bigger when using X windows. */
-#ifdef MAC_OS8
-/* But not too big (local data > 32K error) if on Mac OS Classic. */
-#define KBD_BUFFER_SIZE 512
-#else
-#define KBD_BUFFER_SIZE 4096
-#endif
-#else /* No X-windows, character input */
#define KBD_BUFFER_SIZE 4096
-#endif /* No X-windows */
#ifdef MULTI_KBOARD
KBOARD *initial_kboard;
if (n_to_read > sizeof cbuf)
n_to_read = sizeof cbuf;
#else /* no FIONREAD */
-#if defined (USG) || defined (DGUX) || defined(CYGWIN)
+#if defined (USG) || defined(CYGWIN)
/* Read some input if available, but don't wait. */
n_to_read = sizeof cbuf;
fcntl (fileno (tty->input), F_SETFL, O_NDELAY);
);
#ifndef FIONREAD
-#if defined (USG) || defined (DGUX) || defined (CYGWIN)
+#if defined (USG) || defined (CYGWIN)
fcntl (fileno (tty->input), F_SETFL, 0);
-#endif /* USG or DGUX or CYGWIN */
+#endif /* USG or CYGWIN */
#endif /* no FIONREAD */
if (nread <= 0)
return (IS_DIRECTORY_SEP (s[0])
|| (SCHARS (pathname) > 2
&& IS_DEVICE_SEP (s[1]) && IS_DIRECTORY_SEP (s[2]))
-#ifdef ALTOS
- || *s == '@'
-#endif
#ifdef VMS
|| index (s, ':')
#endif /* VMS */
#define DOT_GLOBAL_START
-#ifdef XENIX
-/* Data type of load average, as read out of kmem. */
-#define LOAD_AVE_TYPE short
-
-/* Convert that into an integer that is 100 for a load average of 1.0 */
-#define LOAD_AVE_CVT(x) (((double) (x)) * 100.0 / FSCALE)
-
-#define FSCALE 256.0 /* determined by experimentation... */
-#endif
-
-
#ifdef SOLARIS2
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
/* Alter some of the options used when linking. */
-#if !defined(NEWSOS5) && !defined(__linux__)
+#if !defined(__linux__)
#ifdef BSD_SYSTEM
/* DECstations don't have this library.
#endif
#endif /* not BSD_SYSTEM */
-#endif /* not NEWSOS5 && not __linux__ */
+#endif /* not __linux__ */
\f
/* The standard definitions of these macros would work ok,
but these are faster because the constants are short. */
((int)(type) << VALBITS) \
+ (((unsigned) (ptr) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS)))
\f
-#if !defined (NEWSOS5) && !defined (__linux__)
+#if !defined (__linux__)
#ifdef USG
/* Cancel certain parts of standard sysV support. */
#undef HAVE_UNION_WAIT
#endif /* BSD_SYSTEM */
-#endif /* not NEWSOS5 && not __linux__ */
+#endif /* not __linux__ */
/* arch-tag: 8fd020ee-78a7-4d87-96ce-6129f52f7bee
(do not change this comment) */
#include <client.h>
#endif
-/* On some systems, e.g. DGUX, inet_addr returns a 'struct in_addr'. */
+/* On some systems, inet_addr returns a 'struct in_addr'. */
#ifdef HAVE_BROKEN_INET_ADDR
#define IN_ADDR struct in_addr
#define NUMERIC_ADDR_ERROR (numeric_addr.s_addr == -1)
#define NUMERIC_ADDR_ERROR (numeric_addr == -1)
#endif
-#if defined(BSD_SYSTEM) || defined(STRIDE)
+#if defined(BSD_SYSTEM)
#include <sys/ioctl.h>
#if !defined (O_NDELAY) && defined (HAVE_PTYS) && !defined(USG5)
#include <fcntl.h>
#endif /* HAVE_PTYS and no O_NDELAY */
-#endif /* BSD_SYSTEM || STRIDE */
+#endif /* BSD_SYSTEM */
#ifdef BROKEN_O_NONBLOCK
#undef O_NONBLOCK
#else
sprintf (pty_name, "/dev/tty%c%x", c, i);
#endif /* no PTY_TTY_NAME_SPRINTF */
-#ifndef UNIPLUS
if (access (pty_name, 6) != 0)
{
emacs_close (fd);
return -1;
# endif /* IRIS */
}
-#endif /* not UNIPLUS */
setup_pty (fd);
return fd;
}
#endif
if (forkin < 0)
report_file_error ("Opening pty", Qnil);
-#if defined (RTU) || defined (UNIPLUS) || defined (DONT_REOPEN_PTY)
+#if defined (DONT_REOPEN_PTY)
/* In the case that vfork is defined as fork, the parent process
(Emacs) may send some data before the child process completes
tty options setup. So we setup tty before forking. */
child_setup_tty (forkout);
-#endif /* RTU or UNIPLUS or DONT_REOPEN_PTY */
+#endif /* DONT_REOPEN_PTY */
#else
forkin = forkout = -1;
#endif /* not USG, or USG_SUBTTY_WORKS */
set_exclusive_use (outchannel);
#endif
-/* Stride people say it's a mystery why this is needed
- as well as the O_NDELAY, but that it fails without this. */
-#if defined (STRIDE) || (defined (pfa) && defined (HAVE_PTYS))
- {
- int one = 1;
- ioctl (inchannel, FIONBIO, &one);
- }
-#endif
-
#ifdef O_NONBLOCK
fcntl (inchannel, F_SETFL, O_NONBLOCK);
fcntl (outchannel, F_SETFL, O_NONBLOCK);
#ifdef BSD4_1
sighold (SIGCHLD);
#else /* not BSD4_1 */
-#if defined (BSD_SYSTEM) || defined (UNIPLUS) || defined (HPUX)
+#if defined (BSD_SYSTEM) || defined (HPUX)
sigsetmask (sigmask (SIGCHLD));
#else /* ordinary USG */
#if 0
}
#endif /* TIOCNOTTY */
-#if !defined (RTU) && !defined (UNIPLUS) && !defined (DONT_REOPEN_PTY)
+#if !defined (DONT_REOPEN_PTY)
/*** There is a suggestion that this ought to be a
conditional on TIOCSPGRP,
or !(defined (HAVE_SETSID) && defined (TIOCSCTTY)).
ioctl (xforkout, TIOCSPGRP, &pgrp);
#endif
}
-#endif /* not UNIPLUS and not RTU and not DONT_REOPEN_PTY */
+#endif /* not DONT_REOPEN_PTY */
#ifdef SETUP_SLAVE_PTY
if (pty_flag)
#ifdef BSD4_1
sigrelse (SIGCHLD);
#else /* not BSD4_1 */
-#if defined (BSD_SYSTEM) || defined (UNIPLUS) || defined (HPUX)
+#if defined (BSD_SYSTEM) || defined (HPUX)
sigsetmask (SIGEMPTYMASK);
#else /* ordinary USG */
#if 0
#endif /* SIGCHLD */
#endif /* !POSIX_SIGNALS */
-#if !defined (RTU) && !defined (UNIPLUS) && !defined (DONT_REOPEN_PTY)
+#if !defined (DONT_REOPEN_PTY)
if (pty_flag)
child_setup_tty (xforkout);
-#endif /* not RTU and not UNIPLUS and not DONT_REOPEN_PTY */
+#endif /* not DONT_REOPEN_PTY */
#ifdef WINDOWSNT
pid = child_setup (xforkin, xforkout, xforkout,
new_argv, 1, current_dir);
#ifdef BSD4_1
sigrelse (SIGCHLD);
#else /* not BSD4_1 */
-#if defined (BSD_SYSTEM) || defined (UNIPLUS) || defined (HPUX)
+#if defined (BSD_SYSTEM) || defined (HPUX)
sigsetmask (SIGEMPTYMASK);
#else /* ordinary USG */
#if 0
not by DEC's bundled CC. -JimB */
else if (xerrno == ENOMEM)
no_avail = 1;
-#endif
-#ifdef ALLIANT
- /* This happens for no known reason on ALLIANT.
- I am guessing that this is the right response. -- RMS. */
- else if (xerrno == EFAULT)
- no_avail = 1;
#endif
else if (xerrno == EBADF)
{
/* Define PURE_P. */
#if defined(VIRT_ADDR_VARIES) || defined(CYGWIN)
-/* For machines like APOLLO where text and data can go anywhere
+/* For machines where text and data can go anywhere
in virtual memory. */
extern EMACS_INT pure[];
#include "blockinput.h"
-#ifdef MAC_OS8
-#include <sys/param.h>
-
-#ifndef subprocesses
-/* Nonzero means delete a process right away if it exits (process.c). */
-static int delete_exited_processes;
-#endif
-#endif /* MAC_OS8 */
-
#ifdef WINDOWSNT
#define read sys_read
#define write sys_write
#undef TIOCSWINSZ
#endif
-#if defined (USG) || defined (DGUX)
+#if defined (USG)
#include <sys/utsname.h>
#ifndef MEMORY_IN_STRING_H
#include <memory.h>
#endif
-#if defined (TIOCGWINSZ) || defined (ISC4_0)
+#if defined (TIOCGWINSZ)
#ifdef NEED_SIOCTL
#include <sys/sioctl.h>
#endif
#include <sys/stream.h>
#include <sys/ptem.h>
#endif
-#endif /* TIOCGWINSZ or ISC4_0 */
-#endif /* USG or DGUX */
+#endif /* TIOCGWINSZ */
+#endif /* USG */
extern int quit_char;
&buf.main, 0, 0, terminator_mask, 0, 0);
queue_kbd_input ();
#else /* not VMS */
-#ifdef APOLLO
- {
- struct tty_display_info *tty;
- for (tty = tty_list; tty; tty = tty->next)
- {
- int zero = 0;
- if (tty->input)
- ioctl (fileno (tty->input), TIOCFLUSH, &zero);
- }
- }
-#else /* not Apollo */
#ifdef MSDOS /* Demacs 1.1.1 91/10/16 HIRANO Satoshi */
while (dos_keyread () != -1)
;
}
}
#endif /* not MSDOS */
-#endif /* not Apollo */
#endif /* not VMS */
#endif /* not WINDOWSNT */
}
else
sigpause (SIGEMPTYMASK);
#else /* not BSD_SYSTEM, and not HPUX version >= 6 */
-#if defined (UNIPLUS)
- if (0 > kill (pid, 0))
- break;
- wait (0);
-#else /* neither BSD_SYSTEM nor UNIPLUS: random sysV */
#ifdef POSIX_SIGNALS /* would this work for GNU/Linux as well? */
sigblock (sigmask (SIGCHLD));
errno = 0;
#endif /* not WINDOWSNT */
#endif /* not HAVE_SYSV_SIGPAUSE */
#endif /* not POSIX_SIGNALS */
-#endif /* not UNIPLUS */
#endif /* not BSD_SYSTEM, and not HPUX version >= 6 */
#endif /* not VMS */
#else /* not subprocesses */
if (interrupt_input)
reset_sigio (0);
#endif /* BSD4_1 */
-#ifdef RTU
- {
- int zero = 0;
- ioctl (out, FIOASYNC, &zero);
- }
-#endif /* RTU */
#endif /* not DOS_NT */
}
#endif /* not VMS */
/* Fork a subshell. */
-#ifndef MAC_OS8
void
sys_subshell ()
{
synch_process_alive = 0;
#endif /* !VMS */
}
-#endif /* !MAC_OS8 */
static void
save_signal_handlers (saved_handlers)
}
#else /* no FASYNC */
-#ifdef STRIDE /* Stride doesn't have FASYNC - use FIOASYNC */
-
-void
-request_sigio ()
-{
- int on = 1;
-
- if (noninteractive || read_socket_hook)
- return;
-
- /* XXX CURTTY() is bogus here. */
- ioctl (fileno (CURTTY ()->input), FIOASYNC, &on);
- interrupts_deferred = 0;
-}
-
-void
-unrequest_sigio ()
-{
- int off = 0;
-
- if (noninteractive || read_socket_hook)
- return;
-
- /* XXX CURTTY() is bogus here. */
- ioctl (fileno (CURTTY ()->input), FIOASYNC, &off);
- interrupts_deferred = 1;
-}
-
-#else /* not FASYNC, not STRIDE */
-
-#ifdef _CX_UX
-
-#include <termios.h>
-
-void
-request_sigio ()
-{
- int on = 1;
- sigset_t st;
-
- if (noninteractive || read_socket_hook)
- return;
-
- sigemptyset (&st);
- sigaddset (&st, SIGIO);
- ioctl (0, FIOASYNC, &on); /* XXX This fails for multiple ttys. */
- interrupts_deferred = 0;
- sigprocmask (SIG_UNBLOCK, &st, (sigset_t *)0);
-}
-
-void
-unrequest_sigio ()
-{
- int off = 0;
-
- if (noninteractive || read_socket_hook)
- return;
-
- ioctl (0, FIOASYNC, &off); /* XXX This fails for multiple ttys. */
- interrupts_deferred = 1;
-}
-
-#else /* ! _CX_UX */
#ifndef MSDOS
void
}
#endif /* MSDOS */
-#endif /* _CX_UX */
-#endif /* STRIDE */
#endif /* FASYNC */
#endif /* F_SETFL */
#endif /* SIGIO */
#if defined (HAVE_TERMIO) || defined (HAVE_TERMIOS)
XSETINT (Vtty_erase_char, tty.main.c_cc[VERASE]);
-#ifdef DGUX
- /* This allows meta to be sent on 8th bit. */
- tty.main.c_iflag &= ~INPCK; /* don't check input for parity */
-#endif
tty.main.c_iflag |= (IGNBRK); /* Ignore break condition */
tty.main.c_iflag &= ~ICRNL; /* Disable map of CR to NL on input */
#ifdef INLCR /* I'm just being cautious,
#ifdef TCXONC
if (!tty_out->flow_control) ioctl (fileno (tty_out->input), TCXONC, 1);
#endif
-#ifndef APOLLO
#ifdef TIOCSTART
if (!tty_out->flow_control) ioctl (fileno (tty_out->input), TIOCSTART, 0);
#endif
-#endif
#if defined (HAVE_TERMIOS) || defined (HPUX9)
#ifdef TCOON
}
#endif
#endif
-#ifdef IBMRTAIX
- /* On AIX, the parent gets SIGHUP when a pty attached child dies. So, we */
- /* ignore SIGHUP once we've started a child on a pty. Note that this may */
- /* cause EMACS not to die when it should, i.e., when its own controlling */
- /* tty goes away. I've complained to the AIX developers, and they may */
- /* change this behavior, but I'm not going to hold my breath. */
- signal (SIGHUP, SIG_IGN);
-#endif
}
#endif /* HAVE_PTYS */
\f
#ifdef TEXT_START
return ((char *) TEXT_START);
#else
-#ifdef GOULD
- extern csrt ();
- return ((char *) csrt);
-#else /* not GOULD */
extern int _start ();
return ((char *) _start);
-#endif /* GOULD */
#endif /* TEXT_START */
}
#endif /* not HAVE_TEXT_START */
\f
/* Include the proper files. */
#ifdef HAVE_TERMIO
-#ifdef __DGUX
-#include <sys/ioctl.h>
-#endif
#ifndef NO_TERMIO
#include <termio.h>
#endif /* not NO_TERMIO */
#ifdef SYSV_PTYS
#include <sys/types.h>
#include <sys/tty.h>
-#ifdef titan
-#include <sys/ttyhw.h>
-#include <sys/stream.h>
-#endif
#ifndef NO_PTY_H
#include <sys/pty.h>
#endif
#endif
-/* saka@pfu.fujitsu.co.JP writes:
- FASYNC defined in this file. But, FASYNC don't working.
- so no problem, because unrequest_sigio only need. */
-#if defined (pfa)
-#include <sys/file.h>
-#endif
-
\f
/* Special cases - inhibiting the use of certain features. */
-#ifdef APOLLO
-#undef TIOCSTART
-#endif
-
-#ifdef XENIX
-#undef TIOCGETC /* Avoid confusing some conditionals that test this. */
-#endif
-
#ifdef BROKEN_TIOCGETC
#undef TIOCGETC /* Avoid confusing some conditionals that test this. */
#endif
-/* UNIPLUS systems may have FIONREAD. */
-#ifdef UNIPLUS
-#include <sys.ioctl.h>
-#endif
-
/* Allow m- file to inhibit use of FIONREAD. */
#ifdef BROKEN_FIONREAD
#undef FIONREAD
#else /* not WAIT_USE_INT */
-#if (!defined (BSD_SYSTEM) && !defined (UNIPLUS) && !defined (STRIDE) && !(defined (HPUX) && !defined (NOMULTIPLEJOBS)) && !defined (HAVE_WAIT_HEADER))
+#if (!defined (BSD_SYSTEM) && !(defined (HPUX) && !defined (NOMULTIPLEJOBS)) && !defined (HAVE_WAIT_HEADER))
#define WAITTYPE int
#define WIFSTOPPED(w) ((w&0377) == 0177)
#define WIFSIGNALED(w) ((w&0377) != 0177 && (w&~0377) == 0)
#ifndef WIFEXITED
#define WIFEXITED(w) (WTERMSIG (w) == 0)
#endif
-#endif /* BSD_SYSTEM || UNIPLUS || STRIDE || HPUX */
+#endif /* BSD_SYSTEM || HPUX */
#endif /* not WAIT_USE_INT */
#endif /* no WAITTYPE */
lseek (new, (long) N_TXTOFF (hdr), 0);
#endif /* no A_TEXT_SEEK */
-#ifdef RISCiX
-
- /* Acorn's RISC-iX has a wacky way of initialising the position of the heap.
- * There is a little table in crt0.o that is filled at link time with
- * the min and current brk positions, among other things. When start
- * runs, it copies the table to where these parameters live during
- * execution. This data is in text space, so it cannot be modified here
- * before saving the executable, so the data is written manually. In
- * addition, the table does not have a label, and the nearest accessible
- * label (mcount) is not prefixed with a '_', thus making it inaccessible
- * from within C programs. To overcome this, emacs's executable is passed
- * through the command 'nm %s | fgrep mcount' into a pipe, and the
- * resultant output is then used to find the address of 'mcount'. As far as
- * is possible to determine, in RISC-iX releases prior to 1.2, the negative
- * offset of the table from mcount is 0x2c, whereas from 1.2 onwards it is
- * 0x30. bss_end has been rounded up to page boundary. This solution is
- * based on suggestions made by Kevin Welton and Steve Hunt of Acorn, and
- * avoids the need for a custom version of crt0.o for emacs which has its
- * table in data space.
- */
-
- {
- char command[1024];
- char errbuf[1024];
- char address_text[32];
- int proforma[4];
- FILE *pfile;
- char *temp_ptr;
- char c;
- int mcount_address, mcount_offset, count;
- extern char *_execname;
-
-
- /* The use of _execname is incompatible with RISCiX 1.1 */
- sprintf (command, "nm %s | fgrep mcount", _execname);
-
- if ( (pfile = popen(command, "r")) == NULL)
- {
- sprintf (errbuf, "Could not open pipe");
- PERROR (errbuf);
- }
-
- count=0;
- while ( ((c=getc(pfile)) != EOF) && (c != ' ') && (count < 31))
- address_text[count++]=c;
- address_text[count]=0;
-
- if ((count == 0) || pclose(pfile) != NULL)
- {
- sprintf (errbuf, "Failed to execute the command '%s'\n", command);
- PERROR (errbuf);
- }
-
- sscanf(address_text, "%x", &mcount_address);
- ptr = (char *) unexec_text_start;
- mcount_offset = (char *)mcount_address - ptr;
-
-#ifdef RISCiX_1_1
-#define EDATA_OFFSET 0x2c
-#else
-#define EDATA_OFFSET 0x30
-#endif
-
- end = ptr + mcount_offset - EDATA_OFFSET;
-
- write_segment (new, ptr, end);
-
- proforma[0] = bss_end; /* becomes _edata */
- proforma[1] = bss_end; /* becomes _end */
- proforma[2] = bss_end; /* becomes _minbrk */
- proforma[3] = bss_end; /* becomes _curbrk */
-
- write (new, proforma, 16);
-
- temp_ptr = ptr;
- ptr = end + 16;
- end = temp_ptr + hdr.a_text;
-
- write_segment (new, ptr, end);
- }
-
-#else /* !RISCiX */
ptr = (char *) unexec_text_start;
end = ptr + hdr.a_text;
write_segment (new, ptr, end);
-#endif /* RISCiX */
ptr = (char *) unexec_data_start;
end = ptr + hdr.a_data;
{
register int nsyms;
register int new;
-#if defined (amdahl_uts) || defined (pfa)
- SYMENT symentry;
- AUXENT auxentry;
-#else
struct syment symentry;
union auxent auxentry;
-#endif
if (!lnnoptr || !f_hdr.f_symptr)
return 0;
if (!FRAME_VISIBLE_P (f) || !f->glyphs_initialized_p)
return 0;
-/* The terminal frame is used as the first Emacs frame on the Mac OS. */
-#ifndef MAC_OS8
#ifdef HAVE_WINDOW_SYSTEM
/* When Emacs starts, selected_frame may be the initial terminal
frame. If we let this through, a message would be displayed on
if (FRAME_INITIAL_P (XFRAME (selected_frame)))
return 0;
#endif /* HAVE_WINDOW_SYSTEM */
-#endif
/* Redraw garbaged frames. */
if (frame_garbaged)