mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-11-23 07:19:15 +00:00
* movemail.c:
* make-docfile.c: Remove reference to symbols defined by systems not supported anymore: MAC_OS8, XENIX and STRIDE. * (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.
This commit is contained in:
parent
8d8ccf3636
commit
e39a993cce
@ -1,3 +1,9 @@
|
||||
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
|
||||
|
@ -62,11 +62,7 @@ Boston, MA 02110-1301, USA. */
|
||||
#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
|
||||
|
@ -503,13 +503,7 @@ main (argc, argv)
|
||||
#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 */
|
||||
|
||||
|
@ -1,3 +1,28 @@
|
||||
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.
|
||||
|
@ -1928,11 +1928,7 @@ allocate_string ()
|
||||
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)
|
||||
{
|
||||
|
@ -160,14 +160,14 @@ Lisp_Object
|
||||
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)
|
||||
@ -244,10 +244,6 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
|
||||
char *outf, *tempfile;
|
||||
int outfilefd;
|
||||
#endif
|
||||
#ifdef MAC_OS8
|
||||
char *tempfile;
|
||||
int outfilefd;
|
||||
#endif
|
||||
#if 0
|
||||
int mask;
|
||||
#endif
|
||||
@ -470,39 +466,11 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
|
||||
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 */
|
||||
@ -561,52 +529,6 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
|
||||
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'
|
||||
@ -669,7 +591,6 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
|
||||
if (fd_error >= 0)
|
||||
emacs_close (fd_error);
|
||||
#endif /* not MSDOS */
|
||||
#endif /* not MAC_OS8 */
|
||||
|
||||
environ = save_environ;
|
||||
|
||||
@ -703,14 +624,14 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
|
||||
/* 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))
|
||||
|
@ -837,13 +837,6 @@ Boston, MA 02110-1301, USA. */
|
||||
/* 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
|
||||
|
||||
|
266
src/ecrt0.c
266
src/ecrt0.c
@ -84,146 +84,6 @@ char **environ;
|
||||
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. */
|
||||
@ -295,21 +155,10 @@ start1 (CRT0_DUMMIES argc, xargv)
|
||||
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");
|
||||
@ -319,32 +168,6 @@ start1 (CRT0_DUMMIES argc, xargv)
|
||||
|
||||
#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
|
||||
@ -353,7 +176,6 @@ _start ()
|
||||
/* On 68000, _start pushes a6 onto stack */
|
||||
start1 ();
|
||||
}
|
||||
#endif /* not ISI68k */
|
||||
#endif /* m68000 */
|
||||
#endif /* m68k */
|
||||
|
||||
@ -373,15 +195,6 @@ start1 (ignore, argc, xargv)
|
||||
|
||||
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));
|
||||
}
|
||||
|
||||
@ -503,85 +316,6 @@ char **argv_value;
|
||||
#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");
|
||||
|
39
src/emacs.c
39
src/emacs.c
@ -1307,29 +1307,6 @@ main (argc, argv
|
||||
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
|
||||
@ -1351,9 +1328,7 @@ main (argc, argv
|
||||
#ifdef CLASH_DETECTION
|
||||
init_filelock ();
|
||||
#endif
|
||||
#ifndef MAC_OS8
|
||||
init_atimer ();
|
||||
#endif
|
||||
running_asynch_code = 0;
|
||||
|
||||
/* Handle --unibyte and the EMACS_UNIBYTE envvar,
|
||||
@ -1533,10 +1508,8 @@ main (argc, argv
|
||||
/* 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 ();
|
||||
@ -1551,10 +1524,7 @@ main (argc, argv
|
||||
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
|
||||
@ -1576,11 +1546,8 @@ main (argc, argv
|
||||
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 ();
|
||||
@ -1588,10 +1555,7 @@ main (argc, argv
|
||||
#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 ();
|
||||
@ -1673,10 +1637,7 @@ main (argc, argv
|
||||
|
||||
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 */
|
||||
|
40
src/fileio.c
40
src/fileio.c
@ -68,10 +68,6 @@ extern int errno;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef APOLLO
|
||||
#include <sys/time.h>
|
||||
#endif
|
||||
|
||||
#include "lisp.h"
|
||||
#include "intervals.h"
|
||||
#include "buffer.h"
|
||||
@ -810,12 +806,6 @@ directory_file_name (src, dst)
|
||||
/* 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
|
||||
@ -823,7 +813,6 @@ directory_file_name (src, dst)
|
||||
#endif
|
||||
)
|
||||
dst[slen - 1] = 0;
|
||||
#endif
|
||||
#ifdef DOS_NT
|
||||
CORRECT_DIR_SEPS (dst);
|
||||
#endif
|
||||
@ -1788,10 +1777,6 @@ See also the function `substitute-in-file-name'.")
|
||||
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] == '~')
|
||||
@ -2023,10 +2008,6 @@ See also the function `substitute-in-file-name'.")
|
||||
*o++ = *p++;
|
||||
}
|
||||
else if (!strncmp (p, "//", 2)
|
||||
#ifdef APOLLO
|
||||
/* // at start of filename is meaningful in Apollo system. */
|
||||
&& o != target
|
||||
#endif /* APOLLO */
|
||||
)
|
||||
{
|
||||
o = target;
|
||||
@ -2042,11 +2023,6 @@ See also the function `substitute-in-file-name'.")
|
||||
{
|
||||
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;
|
||||
@ -2097,11 +2073,11 @@ search_embedded_absfilename (nm, endp)
|
||||
#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)
|
||||
@ -3782,12 +3758,7 @@ variable `last-coding-system-used' to the coding system actually used. */)
|
||||
}
|
||||
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);
|
||||
@ -4665,9 +4636,6 @@ variable `last-coding-system-used' to the coding system actually used. */)
|
||||
{
|
||||
if (!EQ (current_buffer->undo_list, Qt))
|
||||
current_buffer->undo_list = Qnil;
|
||||
#ifdef APOLLO
|
||||
stat (SDATA (filename), &st);
|
||||
#endif
|
||||
|
||||
if (NILP (handler))
|
||||
{
|
||||
@ -5376,15 +5344,13 @@ This does code conversion according to the value of
|
||||
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. */
|
||||
|
14
src/frame.c
14
src/frame.c
@ -592,9 +592,6 @@ make_terminal_frame (struct terminal *terminal)
|
||||
}
|
||||
else
|
||||
f->output_method = output_termcap;
|
||||
#else
|
||||
#ifdef MAC_OS8
|
||||
make_mac_terminal_frame (f);
|
||||
#else
|
||||
{
|
||||
f->output_method = output_termcap;
|
||||
@ -620,7 +617,6 @@ make_terminal_frame (struct terminal *terminal)
|
||||
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)
|
||||
@ -687,7 +683,7 @@ affects all frames on the same terminal device. */)
|
||||
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)
|
||||
@ -1359,13 +1355,7 @@ The functions are run with one arg, the frame to be deleted. */)
|
||||
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
|
||||
|
@ -43,13 +43,9 @@ Boston, MA 02110-1301, USA. */
|
||||
# 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 */
|
||||
|
@ -95,18 +95,7 @@ volatile int interrupt_input_blocked;
|
||||
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;
|
||||
@ -7234,7 +7223,7 @@ tty_read_avail_input (struct terminal *terminal,
|
||||
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);
|
||||
@ -7284,9 +7273,9 @@ tty_read_avail_input (struct terminal *terminal,
|
||||
);
|
||||
|
||||
#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)
|
||||
|
@ -1113,9 +1113,6 @@ complete_filename_p (pathname)
|
||||
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 */
|
||||
|
@ -85,17 +85,6 @@ NOTE-END */
|
||||
|
||||
#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
|
||||
|
@ -130,7 +130,7 @@ NOTE-END */
|
||||
|
||||
/* 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.
|
||||
@ -161,7 +161,7 @@ NOTE-END */
|
||||
#endif
|
||||
|
||||
#endif /* not BSD_SYSTEM */
|
||||
#endif /* not NEWSOS5 && not __linux__ */
|
||||
#endif /* not __linux__ */
|
||||
|
||||
/* The standard definitions of these macros would work ok,
|
||||
but these are faster because the constants are short. */
|
||||
@ -173,7 +173,7 @@ NOTE-END */
|
||||
((int)(type) << VALBITS) \
|
||||
+ (((unsigned) (ptr) << (BITS_PER_INT-VALBITS)) >> (BITS_PER_INT-VALBITS)))
|
||||
|
||||
#if !defined (NEWSOS5) && !defined (__linux__)
|
||||
#if !defined (__linux__)
|
||||
#ifdef USG
|
||||
|
||||
/* Cancel certain parts of standard sysV support. */
|
||||
@ -213,7 +213,7 @@ NOTE-END */
|
||||
#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) */
|
||||
|
@ -78,7 +78,7 @@ Boston, MA 02110-1301, USA. */
|
||||
#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)
|
||||
@ -87,12 +87,12 @@ Boston, MA 02110-1301, USA. */
|
||||
#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
|
||||
@ -596,7 +596,6 @@ allocate_pty ()
|
||||
#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);
|
||||
@ -606,7 +605,6 @@ allocate_pty ()
|
||||
return -1;
|
||||
# endif /* IRIS */
|
||||
}
|
||||
#endif /* not UNIPLUS */
|
||||
setup_pty (fd);
|
||||
return fd;
|
||||
}
|
||||
@ -1889,12 +1887,12 @@ create_process (process, new_argv, current_dir)
|
||||
#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 */
|
||||
@ -1935,15 +1933,6 @@ create_process (process, new_argv, current_dir)
|
||||
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);
|
||||
@ -1993,7 +1982,7 @@ create_process (process, new_argv, current_dir)
|
||||
#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
|
||||
@ -2107,7 +2096,7 @@ create_process (process, new_argv, current_dir)
|
||||
}
|
||||
#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)).
|
||||
@ -2141,7 +2130,7 @@ create_process (process, new_argv, current_dir)
|
||||
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)
|
||||
@ -2168,7 +2157,7 @@ create_process (process, new_argv, 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
|
||||
@ -2179,10 +2168,10 @@ create_process (process, new_argv, current_dir)
|
||||
#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);
|
||||
@ -2260,7 +2249,7 @@ create_process (process, new_argv, 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
|
||||
@ -4650,12 +4639,6 @@ wait_reading_process_output (time_limit, microsecs, read_kbd, do_display,
|
||||
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)
|
||||
{
|
||||
|
@ -70,7 +70,7 @@ extern void pure_write_error P_ ((void)) NO_RETURN;
|
||||
/* 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[];
|
||||
|
127
src/sysdep.c
127
src/sysdep.c
@ -49,15 +49,6 @@ extern void srandom P_ ((unsigned int));
|
||||
|
||||
#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
|
||||
@ -151,12 +142,12 @@ extern int errno;
|
||||
#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
|
||||
@ -164,8 +155,8 @@ extern int errno;
|
||||
#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;
|
||||
|
||||
@ -345,17 +336,6 @@ discard_tty_input ()
|
||||
&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)
|
||||
;
|
||||
@ -372,7 +352,6 @@ discard_tty_input ()
|
||||
}
|
||||
}
|
||||
#endif /* not MSDOS */
|
||||
#endif /* not Apollo */
|
||||
#endif /* not VMS */
|
||||
#endif /* not WINDOWSNT */
|
||||
}
|
||||
@ -532,11 +511,6 @@ wait_for_termination (pid)
|
||||
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;
|
||||
@ -570,7 +544,6 @@ wait_for_termination (pid)
|
||||
#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 */
|
||||
@ -727,12 +700,6 @@ child_setup_tty (out)
|
||||
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 */
|
||||
@ -821,7 +788,6 @@ sys_suspend ()
|
||||
|
||||
/* Fork a subshell. */
|
||||
|
||||
#ifndef MAC_OS8
|
||||
void
|
||||
sys_subshell ()
|
||||
{
|
||||
@ -957,7 +923,6 @@ sys_subshell ()
|
||||
synch_process_alive = 0;
|
||||
#endif /* !VMS */
|
||||
}
|
||||
#endif /* !MAC_OS8 */
|
||||
|
||||
static void
|
||||
save_signal_handlers (saved_handlers)
|
||||
@ -1066,69 +1031,6 @@ unrequest_sigio (void)
|
||||
}
|
||||
|
||||
#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
|
||||
@ -1150,8 +1052,6 @@ unrequest_sigio ()
|
||||
}
|
||||
|
||||
#endif /* MSDOS */
|
||||
#endif /* _CX_UX */
|
||||
#endif /* STRIDE */
|
||||
#endif /* FASYNC */
|
||||
#endif /* F_SETFL */
|
||||
#endif /* SIGIO */
|
||||
@ -1486,10 +1386,6 @@ init_sys_modes (tty_out)
|
||||
#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,
|
||||
@ -1703,11 +1599,9 @@ init_sys_modes (tty_out)
|
||||
#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
|
||||
@ -2085,14 +1979,6 @@ setup_pty (fd)
|
||||
}
|
||||
#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 */
|
||||
|
||||
@ -2377,13 +2263,8 @@ start_of_text ()
|
||||
#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 */
|
||||
|
27
src/systty.h
27
src/systty.h
@ -26,9 +26,6 @@ Boston, MA 02110-1301, USA. */
|
||||
|
||||
/* Include the proper files. */
|
||||
#ifdef HAVE_TERMIO
|
||||
#ifdef __DGUX
|
||||
#include <sys/ioctl.h>
|
||||
#endif
|
||||
#ifndef NO_TERMIO
|
||||
#include <termio.h>
|
||||
#endif /* not NO_TERMIO */
|
||||
@ -130,42 +127,18 @@ static struct sensemode {
|
||||
#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
|
||||
|
||||
|
||||
/* 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
|
||||
|
@ -79,7 +79,7 @@ Boston, MA 02110-1301, USA. */
|
||||
|
||||
#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)
|
||||
@ -129,7 +129,7 @@ Boston, MA 02110-1301, USA. */
|
||||
#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 */
|
||||
|
||||
|
88
src/unexec.c
88
src/unexec.c
@ -975,92 +975,9 @@ copy_text_and_data (new, a_out)
|
||||
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;
|
||||
@ -1175,13 +1092,8 @@ adjust_lnnoptrs (writedesc, readdesc, new_name)
|
||||
{
|
||||
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;
|
||||
|
@ -8785,8 +8785,6 @@ echo_area_display (update_frame_p)
|
||||
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
|
||||
@ -8794,7 +8792,6 @@ echo_area_display (update_frame_p)
|
||||
if (FRAME_INITIAL_P (XFRAME (selected_frame)))
|
||||
return 0;
|
||||
#endif /* HAVE_WINDOW_SYSTEM */
|
||||
#endif
|
||||
|
||||
/* Redraw garbaged frames. */
|
||||
if (frame_garbaged)
|
||||
|
Loading…
Reference in New Issue
Block a user