Jim Blandy [Sat, 10 Apr 1993 06:01:49 +0000 (06:01 +0000)]
* Makefile.in (clean mostlyclean): Missing right paren.
Change `configure' to a mixture of custom code and autoconf stuff.
autoconf can't derive all the information we need, but we'd really
like to be able to take advantage of some of its tests, and its
file-editing facilities.
* configure.in: Renamed from configure.
Quote the sections of shell script we want copied literally to
the configure script.
(compile): Initialize this to make the autoconf macros' code happy.
Use AC_PROG_CC, AC_CONST, and AC_RETSIGTYPE instead of writing out
code to do their jobs.
Use autoconf to produce Makefile and src/config.h.
Remove the Makefile-style comment that autoconf places at the top
of src/config.h.
(config_h_opts): Removed - no longer necessary.
* Makefile.in (configname): Renamed to configuration.
(CONFIG_CFLAGS): Renamed to DEFS.
(CC, DEFS, C_SWITCH_SYSTEM, version, configuration): Adjusted to
get values via autoload @cookies@.
(libsrc_libs): Get this from autoconf. We used to do nothing
about this.
(${SUBDIR}): Pass DEFS to submakes instead of CONFIG_CFLAGS.
* Makefile.in (src/paths.h, lib-src/Makefile, src/Makefile): Don't
echo the move-if-change command.
Eric S. Raymond [Fri, 9 Apr 1993 23:17:05 +0000 (23:17 +0000)]
(emerge-with-ancestor): Applied Donald Erway's fix patch, which
included the following explanatory comment: "D.Erway - This used to
just do emerge-get-diff3-group on 2, then on 3. This was incorrect,
since the file 3 info for a diff can preceed the file 2 info for that
same diff. So we save and restore point to overcome this.
Eric S. Raymond [Thu, 8 Apr 1993 16:35:59 +0000 (16:35 +0000)]
dired-noselect, dired-internal-noselect, dired-insert-directory:
Enhancements to support passing dired a DIRNAME argument consisting
of a directory-name car and a list-of-files cdr. This is needed to
support VC's augmented dired, which wants a filtered file display
that recurses (showing all version-controlled files in subdirectories
as well as the top-level ones).
Eric S. Raymond [Thu, 8 Apr 1993 16:35:52 +0000 (16:35 +0000)]
(vc-directory. vc-start-entry, vc-next-action, vc-next-action-on-file):
The vc-directory listing is now in an augmented Dired mode that supports
vc-next-action on all marked files.
Eric S. Raymond [Thu, 8 Apr 1993 16:35:48 +0000 (16:35 +0000)]
Massive changes, amounting nearly to a rewrite. The new features
include auto-configuring support for SVr4, more commands, and a full minor-mode
implementation that binds all GUD commands not just in the GUD interaction
mode, but in C buffers visited by GUD. The common prefix of GUD commands is
now C-x X, like electric-debug mode.
Jim Blandy [Thu, 8 Apr 1993 09:32:50 +0000 (09:32 +0000)]
* make-dist: It's oldXMenu/compile.com, not oldXMenu/compile.mms.
Don't try to make links to the RCS or Old subdirectories.
Use the appropriate extension for the compression type in use.
Create the tar file in the shell's initial default directory, not
in ${tempparent}.
Erase the whole ${tempparent} tree, not just ${tempdir}.
Roland McGrath [Wed, 7 Apr 1993 18:26:27 +0000 (18:26 +0000)]
(compilation-error-regexp-alist): Fixed MIPS CC regexp to match file
names longer than one char.
(compilation-parse-errors): Error if compilation-error-regexp-alist is nil.
Jim Blandy [Wed, 7 Apr 1993 16:36:59 +0000 (16:36 +0000)]
* m/imbrs6000.h: If we're using GCC, define ORDINARY_LINK instead
of defining LINKER to use cc.
* s/aix3-1.h (LINKER): Don't use cc for linking command if we're
using GCC.
* s/aix3-2.h (SYSTEM_MALLOC): Undefine this.
Jim Blandy [Wed, 7 Apr 1993 14:57:22 +0000 (14:57 +0000)]
* xterm.c (updating_frame): Declare this extern instead of static,
so it's the same variable as the updating_frame in term.c.
(XTupdate_begin, XTupdate_end): Don't bother to set
updating_frame; the term.c functions take care of that for us.
Roland McGrath [Mon, 5 Apr 1993 23:52:16 +0000 (23:52 +0000)]
(vc-comment-to-change-log): Renamed from vc-comment-to-changelog.
Take optional arg and pass it to find-change-log.
Added docstring and interactive spec.
Roland McGrath [Mon, 5 Apr 1993 22:35:50 +0000 (22:35 +0000)]
(compilation-error-regexp-alist): Merged HP-UX 7.0 fc regexp with the
GNU format regexp: just allowing blanks to terminate the line number
makes that one handle the HP case. Merged MIPS RISC CC regexp with
Apollo cc regexp: make "s optional, and don't anchor to bol.
Jim Blandy [Thu, 1 Apr 1993 01:07:38 +0000 (01:07 +0000)]
* timer.el (timer-program): New defconst.
(run-at-time): Use timer-program as the name of the program the
subprocess should run, and search for it in exec-directory, rather
than checking the entire exec path.
Roland McGrath [Wed, 31 Mar 1993 22:20:33 +0000 (22:20 +0000)]
(map-y-or-n-p): Make bindings of user-defined keys be each a vector
containing the user's binding, rather than 'user. Check (vectorp DEF)
and call the vector's elt, rather than checking (eq 'user DEF) and
calling something completely random.
Jim Blandy [Wed, 31 Mar 1993 10:55:33 +0000 (10:55 +0000)]
Put interrupt input blocking in a separate file from xterm.h.
This isn't specific to X, and it allows us to avoid #including
xterm.h in files that don't really have anything to do with X.
* blockinput.h: New file.
* xterm.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT,
UNBLOCK_INPUT_RESIGNAL): These are now in blockinput.h.
(x_input_blocked, x_pending_input): Deleted; there are analogs
in blockinput.h called interrupt_input_blocked and
interrupt_input_pending.
* keyboard.c (interrupt_input_blocked, interrupt_input_pending):
New variables, used by the macros in blockinput.h.
* xterm.c: #include blockinput.h.
(x_input_blocked, x_pending_input): Deleted.
(XTread_socket): Test and set interrupt_input_blocked and
interrupt_input_pending instead of the old variables.
* alloc.c, xfaces.c, xfns.c, xmenu.c, xselect.c, keymap.c:
#include blockinput.h.
* eval.c: #include blockinput.h instead of xterm.h.
* keyboard.c: #include blockinput.h.
(input_poll_signal): Just test
interrupt_input_blocked, instead of testing HAVE_X_WINDOWS and
x_input_blocked.
Block the processing of interrupt input while we're manipulating the
malloc heap.
* alloc.c: (xfree): New function, to make it easy to free things
safely.
(xmalloc, xrealloc): Block X input while doing the deed.
(VALIDATE_LISP_STORAGE, gc_sweep, compact_strings): Use xfree
instead of free.
(uninterrupt_malloc): New function, to install input-blocking
hooks into the GNU malloc routines.
* emacs.c [not SYSTEM_MALLOC] (main): Call uninterrupt_malloc
on startup.
* alloc.c: (make_interval, make_float, Fcons, Fmake_vector,
Fmake_symbol, Fmake_marker, make_uninit_string, Fgarbage_collect):
Use xmalloc instead of malloc; don't bother to check if out of
memory here.
(Fgarbage_collect): Call xrealloc instead of realloc.
* buffer.c: Use xmalloc and xfree instead of malloc and free;
don't bother to check if out of memory here.
(Fget_buffer_create): Put BLOCK_INPUT/UNBLOCK_INPUT pair around
calls to ralloc routines.
* insdel.c: Same.
* lisp.h (xfree): New extern declaration.
* xfaces.c (xfree): Don't #define this to be free; use the
definition in alloc.c.
* dispnew.c, doc.c, doprnt.c, fileio.c, lread.c, term.c, xfns.c,
xmenu.c, xterm.c: Use xfree instead of free.
* hftctl.c: Use xfree and xmalloc instead of free and malloc.
* keymap.c (current_minor_maps): BLOCK_INPUT while calling realloc
and malloc.
* search.c: Since the regexp routines can malloc, BLOCK_INPUT
while runing them. #include blockinput.h.
* sysdep.c: #include blockinput.h. Call xfree and xmalloc instead
of free and malloc. BLOCK_INPUT around routines which we know
will call malloc.
ymakefile (keyboard.o, keymap.o, search.o, sysdep.o, xfaces.o,
xfns.o, xmenu.o, xterm.o, xselect.o, alloc.o, eval.o): Note that
these depend on blockinput.h.
Jim Blandy [Wed, 31 Mar 1993 10:47:13 +0000 (10:47 +0000)]
* xfaces.c: Doc fixes.
Put interrupt input blocking in a separate file from xterm.h.
This isn't specific to X, and it allows us to avoid #including
xterm.h in files that don't really have anything to do with X.
* blockinput.h: New file.
* xterm.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT,
UNBLOCK_INPUT_RESIGNAL): These are now in blockinput.h.
(x_input_blocked, x_pending_input): Deleted; there are analogs
in blockinput.h called interrupt_input_blocked and
interrupt_input_pending.
* keyboard.c (interrupt_input_blocked, interrupt_input_pending):
New variables, used by the macros in blockinput.h.
* xterm.c: #include blockinput.h.
(x_input_blocked, x_pending_input): Deleted.
(XTread_socket): Test and set interrupt_input_blocked and
interrupt_input_pending instead of the old variables.
* alloc.c, xfaces.c, xfns.c, xmenu.c, xselect.c, keymap.c:
#include blockinput.h.
* eval.c: #include blockinput.h instead of xterm.h.
* keyboard.c: #include blockinput.h.
(input_poll_signal): Just test
interrupt_input_blocked, instead of testing HAVE_X_WINDOWS and
x_input_blocked.
Block the processing of interrupt input while we're manipulating the
malloc heap.
* alloc.c: (xfree): New function, to make it easy to free things
safely.
(xmalloc, xrealloc): Block X input while doing the deed.
(VALIDATE_LISP_STORAGE, gc_sweep, compact_strings): Use xfree
instead of free.
(uninterrupt_malloc): New function, to install input-blocking
hooks into the GNU malloc routines.
* emacs.c [not SYSTEM_MALLOC] (main): Call uninterrupt_malloc
on startup.
* alloc.c: (make_interval, make_float, Fcons, Fmake_vector,
Fmake_symbol, Fmake_marker, make_uninit_string, Fgarbage_collect):
Use xmalloc instead of malloc; don't bother to check if out of
memory here.
(Fgarbage_collect): Call xrealloc instead of realloc.
* buffer.c: Use xmalloc and xfree instead of malloc and free;
don't bother to check if out of memory here.
(Fget_buffer_create): Put BLOCK_INPUT/UNBLOCK_INPUT pair around
calls to ralloc routines.
* insdel.c: Same.
* lisp.h (xfree): New extern declaration.
* xfaces.c (xfree): Don't #define this to be free; use the
definition in alloc.c.
* dispnew.c, doc.c, doprnt.c, fileio.c, lread.c, term.c, xfns.c,
xmenu.c, xterm.c: Use xfree instead of free.
* hftctl.c: Use xfree and xmalloc instead of free and malloc.
* keymap.c (current_minor_maps): BLOCK_INPUT while calling realloc
and malloc.
* search.c: Since the regexp routines can malloc, BLOCK_INPUT
while runing them. #include blockinput.h.
* sysdep.c: #include blockinput.h. Call xfree and xmalloc instead
of free and malloc. BLOCK_INPUT around routines which we know
will call malloc.
ymakefile (keyboard.o, keymap.o, search.o, sysdep.o, xfaces.o,
xfns.o, xmenu.o, xterm.o, xselect.o, alloc.o, eval.o): Note that
these depend on blockinput.h.
Jim Blandy [Wed, 31 Mar 1993 07:19:25 +0000 (07:19 +0000)]
* keyboard.c (parse_modifiers, apply_modifiers): Make sure we're
not trying to create modifier masks using integers which are
unrepresentable as lisp values.
Jim Blandy [Tue, 30 Mar 1993 23:07:47 +0000 (23:07 +0000)]
New macros NULL_DEVICE and EXEC_SUFFIXES, to give the name of the
equivalent of /dev/null, and the suffixes used by executable
files. This is simple, and helps people porting Emacs to other
operating systems.
* process.h (NULL_DEVICE): Give this a default value.
* process.c (Fstart_process): Pass EXEC_SUFFIXES to openp.
(Fprocess_send_eof): Use NULL_DEVICE instead of "/dev/null".
* callproc.c (Fcall_process): Pass EXEC_SUFFIXES to openp.
Use NULL_DEVICE instead of "/dev/null".
* s/vms.h (NULL_DEVICE): #define this.
Jim Blandy [Tue, 30 Mar 1993 23:05:56 +0000 (23:05 +0000)]
New macros NULL_DEVICE and EXEC_SUFFIXES, to give the name of the
equivalent of /dev/null, and the suffixes used by executable
files. This is simple, and helps people porting Emacs to other
operating systems.
* process.h (NULL_DEVICE): Give this a default value.
* process.c (Fstart_process): Pass EXEC_SUFFIXES to openp.
(Fprocess_send_eof): Use NULL_DEVICE instead of "/dev/null".
* callproc.c (Fcall_process): Pass EXEC_SUFFIXES to openp.
Use NULL_DEVICE instead of "/dev/null".
Jim Blandy [Tue, 30 Mar 1993 21:21:49 +0000 (21:21 +0000)]
Rename int-to-string to number-to-string, since it can handle
floating-point as well as integer arguments. subr.el defines the
former as an alias for the latter.
* data.c (Fnumber_to_string): Renamed from Fint_to_string.
(wrong_type_argument): Adjust caller.
(syms_of_data): Adjust defsubr.
* fns.c (concat): Adjust caller.
* lisp.h (Fnumber_to_string): Adjust extern declaration.
* mocklisp.c (Finsert_string): Adjust caller.
* process.c (status_message): Adjust caller.
Richard M. Stallman [Sun, 28 Mar 1993 20:17:39 +0000 (20:17 +0000)]
(regexp-history): New history list.
(occur, flush-lines, keep-lines, how-many): Use it.
(occur): Don't insert previous string in minibuffer gratuitously.
Just use it if input is empty.
Use save-match-data around count-lines.
Eric S. Raymond [Sun, 28 Mar 1993 06:40:46 +0000 (06:40 +0000)]
(vc-comment-to-changelog): A useful vc-checkin hook, added.
(vc-checkout): Now rejects attempts to check out files via FTP.
The `derived buffers' in the mode (the VC log buffer, status buffers,
and most buffer output commands) now know which file buffer was their
parent, and most commands will try to find such a parent buffer when
executed from within a special buffer.