sprintf-related integer and memory overflow issues
[emacs.git] / lib-src / ChangeLog
blob9041eae8bbe3da72d0c137d3d328a2af8ff7f2d3
1 2011-09-04  Paul Eggert  <eggert@cs.ucla.edu>
3         Integer and memory overflow issues (Bug#9397).
5         * emacsclient.c (xmalloc): Accept size_t, not unsigned int, to
6         avoid potential buffer overflow issues on typical 64-bit hosts.
7         Return void *, not long *.
8         (get_current_dir_name): Report a failure, instead of looping
9         forever, if buffer size calculation overflows.  Treat malloc
10         failures like realloc failures, as that has better behavior and is
11         more consistent.  Do not check whether xmalloc returns NULL, as
12         that's not possible.
13         (message): Do not arbitrarily truncate message to 2048 bytes when
14         sending it to stderr; use vfprintf instead.
15         (get_server_config, set_local_socket)
16         (start_daemon_and_retry_set_socket): Do not alloca
17         arbitrarily-large buffers; that's not safe.
18         (get_server_config, set_local_socket): Do not use sprintf when its
19         result might not fit in 'int'.
20         (set_local_socket): Do not assume uid fits in 'int'.
22         * etags.c (xmalloc, xrealloc): Accept size_t, not unsigned int,
23         to avoid potential buffer overflow issues on typical 64-bit hosts.
24         (whatlen_max): New static var.
25         (main): Avoid buffer overflow if subsidiary command length is
26         greater than BUFSIZ or 2*BUFSIZ + 20. Do not use sprintf when its
27         result might not fit in 'int'.
29         * movemail.c (main): Do not use sprintf when its result might not fit
30         in 'int'.  Instead, put the possibly-long file name into the
31         output of pfatal_with_name.
33         * update-game-score.c: Include <limits.h>
34         (get_user_id): Do not assume uid fits in 'int'.  Simplify.
36 2011-07-28  Paul Eggert  <eggert@cs.ucla.edu>
38         Assume freestanding C89 headers, string.h, stdlib.h.
39         * ebrowse.c: Include stdlib.h unconditionally.
40         * etags.c, update-game-score.c:
41         Include string.h and stdlib.h unconditionally.
42         * makefile.w32-in (LOCAL_CFLAGS): Don't define STDC_HEADERS.
43         * movemail.c, pop.c: Include string.h unconditionally.
44         * update-game-score.c: No need to include stdarg.h; not used.
46         Assume support for memcmp, memcpy, memmove, memset.
47         * etags.c (absolute_filename): Assume memmove exists.
49 2011-07-09  Andreas Schwab  <schwab@linux-m68k.org>
51         * update-game-score.c (usage): Update usage line.
53 2011-07-02  Jason Rumney  <jasonr@gnu.org>
55         * emacsclient.c (decode_options) [WINDOWSNT]: Avoid tty mode on
56         Windows (Bug#5486).
58 2011-06-25  Glenn Morris  <rgm@gnu.org>
60         * emacsclient.c (decode_options) <opt>: Add `F:'.
61         (print_help_and_exit): Mention --frame-parameters.
63 2011-06-25  Andreas Rottmann  <a.rottmann@gmx.at>
65         * emacsclient.c (longopts, decode_options, main): Add frame-parameters.
67 2011-06-10  Paul Eggert  <eggert@cs.ucla.edu>
69         * movemail.c: Fix race condition and related bugs (Bug#8836).
70         (main) [!MAIL_USE_SYSTEM_LOCK]: Prefer mkstemp to mktemp, as this
71         fixes some race conditions.  Report mkstemp/mktemp errno rather
72         than a possibly-garbage errno.  Reinitialize the template each
73         time through the loop, as earlier mkstemp/mktemp calls could have
74         trashed it.  Pass 0600 (not 0666) to mktemp, for consistency
75         with mkstemp; the permissions don't matter anyway.
77 2011-06-01  Dan Nicolaescu  <dann@ics.uci.edu>
79         * emacsclient.c (socket_status): Use constant pointer.
81 2011-05-28  Paul Eggert  <eggert@cs.ucla.edu>
83         Use 'inline', not 'INLINE'.
84         * etags.c (hash): Now inline unconditionally.
85         * make-docfile.c (put_char): inline, not INLINE.
87 2011-05-25  Glenn Morris  <rgm@gnu.org>
89         * Makefile.in (.c.o): Remove (every .o file has an explicit rule).
90         (insrcdir): New.
91         (stamp-rcs2log, stamp-rcs-checkin, stamp-grep-changelog, stamp-vcdiff):
92         Use $insrcdir to suppress unaesthetic ignored errors.
93         (clean): Simplify list of things to delete.
94         (all, clean): Use $EXE_FILES.
96         * Makefile.in (movemail${EXEEXT}): Build in one step, not via .o file.
98         * Makefile.in (REGEXPOBJ, REGEXPDEPS): Remove.  Replace by expansion.
99         (etags${EXEEXT}): Just depend on regex.o, not regex.h as well.
101 2011-05-24  Glenn Morris  <rgm@gnu.org>
103         * Makefile.in (update-game-score${EXEEXT}): Use a single rule.
105 2011-05-19  Glenn Morris  <rgm@gnu.org>
107         * makefile.w32-in (echolisp): Remove rule that is no longer needed.
108         (clean): No more echolisp.tmp.
110 2011-05-18  Glenn Morris  <rgm@gnu.org>
112         * fakemail.c: Remove file.
113         * makefile.w32-in ($(BLD)/fakemail.exe, fakemail)
114         ($(BLD)/fakemail.$(O)): Remove.
115         * Makefile.in (UTILITIES): Remove fakemail${EXEEXT}.
116         (fakemail${EXEEXT}): Remove rule.
118 2011-04-24  Teodor Zlatanov  <tzz@lifelogs.com>
120         * makefile.w32-in (obj): Add gnutls.o.
122 2011-04-16  Paul Eggert  <eggert@cs.ucla.edu>
124         Static checks with GCC 4.6.0 and non-default toolkits.
126         * movemail.c (mail_spool_name): Protoize.
127         (main): Remove unused var.  Mark var as initialized.
128         Move locals to avoid shadowing, and use time_t for times.
130         * fakemail.c (xmalloc, xreallc): Use standard C prototypes
131         with void *.  This avoids warnings about pointer casts.
133         * emacsclient.c (main): Don't use uninitialized var.
134         (IS_ANY_SEP): Remove; unused.
135         (get_current_dir_name): Add an extern decl.
137 2011-04-06  Paul Eggert  <eggert@cs.ucla.edu>
139         Fix more problems found by GCC 4.6.0's static checks.
141         * emacsclient.c (message): Mark it as a printf-like function.
143         * make-docfile.c (IF_LINT): New macro, copied from emacsclient.c.
144         (write_c_args): Use it to suppress GCC warning.
146 2011-03-30  Paul Eggert  <eggert@cs.ucla.edu>
148         Fix a problem found by GCC 4.6.0's static checks.
149         * etags.c (just_read_file): Remove dummy variable and simplify.
151 2011-03-27  Glenn Morris  <rgm@gnu.org>
153         * emacsclient.c: Replace SIGTYPE with void.
155 2011-03-23  Juanma Barranquero  <lekktu@gmail.com>
157         * ntlib.c: Include <ctype.h>.
159 2011-03-23  Glenn Morris  <rgm@gnu.org>
161         * Makefile.in ($(DESTDIR)${archlibdir}):
162         Use `install-sh -d' rather than mkinstalldirs.
164 2011-03-23  Paul Eggert  <eggert@cs.ucla.edu>
166         * ebrowse.c: Use size_t, not int, for sizes.
167         This avoids a warning with gcc -Wstrict-overflow, and works
168         better for very large objects.
169         (inbuffer_size): Now size_t.  All uses changed.
170         (xmalloc, xrealloc, operator_name, process_file): Use size_t for
171         sizes.  Don't bother testing whether a size_t value can be negative.
173         * etags.c (Ada_funcs): Redo slightly to avoid overflow warning.
175         etags: In Prolog functions, don't assume int fits in size_t.
176         This avoids a warning with gcc -Wstrict-overflow.
177         * etags.c (Prolog_functions, prolog_pr, prolog_atom): Use size_t,
178         not int, to store sizes.
179         (prolog_atom): Return 0, not -1, on error.  All callers changed.
181         update-game-score: fix bug with -r
182         * update-game-score.c (main): Don't set 'scores' to garbage when
183         -r is specified and scorecount != MAX_SCORES (Bug#8310).  This bug
184         was introduced in the 2002-04-10 change, and was found with gcc
185         -Wstrict-overflow (GCC 4.5.2, x86-64).
187         fakemail: Remove dependency on ignore-value.
188         This undoes some of the recent fakemail-related changes.
189         It is made possible due to recent changes to gnulib's stdio module.
190         * Makefile.in (fakemail${EXEEXT}): Do not depend on ignore-value.h.
191         * fakemail.c: Do not include ignore-value.h.
192         (put_line): Do not use ignore_value.
194 2011-03-07  Chong Yidong  <cyd@stupidchicken.com>
196         * Version 23.3 released.
198 2011-03-03  Drake Wilson  <drake@begriffli.ch>  (tiny change)
200         * emacsclient.c (longopts): Add quiet.
201         (decode_options): Handle q/quiet.
202         (print_help_and_exit): Add q/quiet.
203         (main): Suppress some messages if quiet option is used.
205 2011-02-26  Eli Zaretskii  <eliz@gnu.org>
207         * Makefile.in (fakemail${EXEEXT}): Depend on lib/ignore-value.h.
209         * emacsclient.c (xstrdup) [WINDOWSNT]: Function added back.
210         (w32_getenv): Use xstrdup to return all values in malloc'ed
211         storage.
213 2011-02-26  Paul Eggert  <eggert@cs.ucla.edu>
215         * ebrowse.c (parse_qualified_param_ident_or_type): Make it clear
216         to reader (and to the compiler) that the loop always executes at
217         least once.  This prevents a warning with recent GCC.
218         (BROWSE_STRUCT): Remove unused macro.
220         * fakemail.c: Include <ignore-value.h>.
221         (put_line): Explicitly ignore fwrite return value, for benefit of
222         recent glibc + gcc.
223         (close_the_streams): Diagnose output errors instead of merely
224         exiting with nonzero status.
225         (my_fclose, main): Diagnose input errors, and exit with nonzero status.
226         Formerly, input errors were silently ignored.
228         * ebrowse.c (putstr): Rename from PUTSTR and turn into a function.
229         All callers changed.  This is cleaner, and avoids GCC warnings about
230         passing NULL to fputs.
231         (insert_keyword): Rename parameter to avoid shadowing diagnostic.
233 2011-02-25  Paul Eggert  <eggert@cs.ucla.edu>
235         * emacsclient.c (main): Avoid dangling 'if'.
236         (xstrdup): Remove; no longer needed.
237         (get_current_dir_name, w32_getenv, get_server_config, find_tty):
238         (set_local_socket, main):
239         Use const char *, not char *, for pointers that are not assigned
240         through.
241         (IF_LINT): New macro.
242         (set_local_socket, main): Use it to suppress warnings with
243         GCC -Wuninitialized.
245         * emacsclient.c: Redo local variables to avoid shadowing problems.
246         (message, socket_status, start_daemon_and_retry_set_socket):
247         Rename locals.
248         (main): Move decl of "i".
250         * etags.c (ISUPPER): Move to inside the only #ifdef where it's used.
251         This avoids an unused-macro warning with some GCC settings.
253         * make-docfile.c (write_globals): Change char * to char const *
254         to avoid a GCC "assignment discards qualifiers" diagnostic
255         in some configurations.
256         (scan_c_file): Refactor local variable decls to make their scope
257         more accurate and to avoid a GCC -Wuninitialized diagnostic.
259 2011-02-22  Eli Zaretskii  <eliz@gnu.org>
261         * etags.c (canonicalize_filename, ISUPPER): Fix last change.
263         * makefile.w32-in ($(BLD)/ebrowse.$(O), $(BLD)/pop.$(O)): Depend
264         on ../lib/min-max.h.
266 2011-02-22  Paul Eggert  <eggert@cs.ucla.edu>
268         etags: Downcase drive letters, for consistency with Emacs proper.
269         * etags.c (upcase): Remove; no longer used.
270         (canonicalize_filename): Downcase drive letters.
272         Assume S_ISLNK etc. work, since gnulib supports this.
273         * etags.c (S_ISREG): Remove.
275 2011-02-22  Paul Eggert  <eggert@cs.ucla.edu>
277         Assume S_ISLNK etc. work, since gnulib supports this.
278         * etags.c (S_ISREG): Remove.
280 2011-02-22  Juanma Barranquero  <lekktu@gmail.com>
282         * makefile.w32-in (obj): Remove filemode.o.
284 2011-02-21  Paul Eggert  <eggert@cs.ucla.edu>
286         New file "lib/min-max.h".
287         * ebrowse.c (min, max): Define them by including <min-max.h>
288         instead of defining it ourselves.
289         * pop.c (min): Likewise.
290         * Makefile.in (ebrowse${EXEEXT}, pop.o): Depend on min-max.h.
292         * movemail.c (popmail): Report fchown failure instead of ignoring it.
293         But if the file already has the right ownership, don't worry about it.
295         * make-docfile.c (input_buffer): Rename variables to avoid shadowing.
296         * test-distrib.c (buf): Make this local, to avoid shadowing.
298         * movemail.c (main, pop_retr): Rename locals to avoid shadowing.
299         (progname, sfi, sfo, ibuffer, obuffer): Remove unused vars.
300         (DONE): Remove unused macro.
301         (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_FROM_LINE):
302         Define these macros only in the contexts that need them.
303         * pop.c (index): Remove unused macro.
304         (KPOP_PORT): Define only if KERBEROS is defined.
306         Declare file-scope functions and variables static if not exported.
307         This is more consistent, and is nicer with gcc -Wstrict-prototypes.
308         * ebrowse.c, emacsclient.c, fakemail.c, make-docfile.c, movemail.c:
309         * profile.c, test-distrib.c, update-game-score.c:
310         Declare non-'main' functions and variables to be static.
311         * ebrowse.c: Omit redundant function prototypes.
313 2011-02-21  Eli Zaretskii  <eliz@gnu.org>
315         * makefile.w32-in ($(BLD)/ctags.$(O), $(BLD)/emacsclient.$(O))
316         ($(BLD)/etags.$(O), $(BLD)/movemail.$(O), $(BLD)/ntlib.$(O)):
317         Depend on $(EMACS_ROOT)/nt/inc/sys/stat.h.
319 2011-02-21  Ben Key  <bkey76@gmail.com>
321         * make-docfile.c (scan_c_file): Adapt DEFVAR_PER_BUFFER case to
322         the new BVAR macro.
324 2011-02-20  Juanma Barranquero  <lekktu@gmail.com>
326         * makefile.w32-in (obj): Remove md5.o.
328 2011-02-18  Karl Chen  <Karl.Chen@quarl.org>
330         * emacsclient.c (main): Loop while `recv' return EINTR.
332 2011-02-09  Paul Eggert  <eggert@cs.ucla.edu>
334         * make-docfile.c (EMACS_INTEGER): Rename from EMACS_INT.
335         This avoids collision with config.h's EMACS_INT on some
336         configurations.  All uses changed.
338 2011-02-08  Tom Tromey  <tromey@redhat.com>
340         * make-docfile.c: Unconditionally include stdlib.h.
341         (generate_globals): New global.
342         (xrealloc): New function.
343         (main): Handle '-g'.  Call start_globals, write_globals.
344         (scan_file): Conditionally call put_filename.
345         (start_globals): New function.
346         (struct global): New.
347         (num_globals, globals): New globals.
348         (add_global, compare_globals, write_globals): New functions.
349         (scan_c_file): Update for "-g".
350         (scan_lisp_file): Fail if "-g".
352 2011-02-05  Paul Eggert  <eggert@cs.ucla.edu>
354         * emacsclient.c: Conform to C89 pointer rules.
355         (file_name_absolute_p): Accept const char *, not const unsigned
356         char *, to satisfy C89 rules.
358 2011-02-02  Eli Zaretskii  <eliz@gnu.org>
360         * makefile.w32-in (ETAGS_CFLAGS, CTAGS_CFLAGS):
361         Add ``-DEMACS_NAME="\"GNU Emacs\""''.
362         (obj): Remove strftime.o.
364 2011-01-31  Eli Zaretskii  <eliz@gnu.org>
366         * makefile.w32-in (VERSION): Don't define, defined on nt/config.nt.
367         (ECLIENT_CFLAGS): Remove -DVERSION.
368         ($(BLD)/emacsclient.$(O)): Don't depend on makefile.w32-in.
370 2011-01-31  Paul Eggert  <eggert@cs.ucla.edu>
372         src/emacs.c now gets version number from configure.in
373         * ebrowse.c: Adjust comment to say that.
375 2011-01-30  Jim Meyering  <meyering@redhat.com>
377         make-docfile: don't corrupt heap for an invalid .elc file
378         "printf '#@1a' > in.elc; ./make-docfile in.elc" would store 0
379         one byte before just-malloc'd saved_string buffer.
380         * make-docfile.c (scan_lisp_file): Diagnose an invalid dynamic
381         doc string length.  Also fix an always-false while-loop test.
383 2011-01-29  Eli Zaretskii  <eliz@gnu.org>
385         * makefile.w32-in (LOCAL_FLAGS): Add -I../lib.
386         (GETOPTOBJS, GETOPTDEPS): Remove targets.
387         (MOVEMAILOBJS): Replace $(GETOPTOBJS) with ../lib/$(BLD)/libgnu.$(A).
388         ($(BLD)/movemail.exe): Depend on ../lib/getopt.h.
389         (ECLIENTOBJS, ETAGSOBJ, CTAGSOBJ, EBROWSEOBJ): Replace getopt.o
390         and getopt1.o with ../lib/$(BLD)/libgnu.$(A).
391         (clean): Don't remove getopt.h.
392         (getopt.h, $(BLD)/getopt.$(O), $(BLD)/getopt1.$(O)): Remove targets.
393         ($(BLD)/ctags.$(O), $(BLD)/etags.$(O)): Replace getopt.h with
394         $(EMACS_ROOT)/lib/getopt.h.
396 2011-01-28  Chong Yidong  <cyd@stupidchicken.com>
398         * ntlib.c (setregid): New stub, renamed from setegid.
400         * ntlib.h: Update prototype.
402 2011-01-25  Chong Yidong  <cyd@stupidchicken.com>
404         * movemail.c (main): Use setregid instead of setegid, which is
405         missing on older systems.  Suggested by Peter O'Gorman (Bug#6811).
407 2011-01-23  Paul Eggert  <eggert@cs.ucla.edu>
409         Check return values of some library calls.
410         * hexl.c (main): Check fread result.
411         * make-docfile.c (main): Check chdir result.
412         (scan_c_file): Check fscanf result.
413         * movemail.c (main): Check ftruncate result.
415 2011-01-17  Paul Eggert  <eggert@cs.ucla.edu>
417         Include <unistd.h> unilaterally.
418         * emacsclient.c, etags.c, fakemail.c, make-docfile.c, movemail.c:
419         * pop.c, test-distrib.c, update-game-score.c:
420         Include <unistd.h> without worrying about HAVE_UNISTD_H, since
421         unistd.h is always present now, possibly supplied by gnulib.
423         Include <getopt.h> not "getopt.h".
424         * ebrowse.c, emacsclient.c: Include <getopt.h>, not "getopt.h".
425         Since getopt.h is no longer in this directory, there's no point
426         using the form with double-quotes.
428         Remove unused files.
429         * getopt.c, getopt1.c, getopt_.h, getopt_int.h: Remove.
430         These files are now in ../lib, copied from gnulib.
432         Use gnulib's getopt-gnu module.
433         * Makefile.in (mostlyclean): Do not clean getopt.h or getopt.h-t,
434         as these are now done by gnulib.
435         (GETOPT_H, getopt.h, GETOPTOBJS, GETOPTDEPS, getopt.o, getopt1.o):
436         Remove; now done by gnulib.  All uses removed.
438         Automate syncing from gnulib.
439         * Makefile.in (EXE_FILES): New macro.
440         (BASE_CFLAGS): Add -I../lib and -I${srcdir}/../lib,
441         for gnulib's .h files.
442         (LOADLIBES): Add ../lib/libgnu.a.
443         ($(EXE_FILES)): Depend on ../lib/libgnu.a.
444         (../lib/libgnu.a): New rule.
446 2011-01-08  Paul Eggert  <eggert@cs.ucla.edu>
448         * Makefile.in (EXECUTABLES): Remove; macro unused since 1993.
450 2011-01-08  Glenn Morris  <rgm@gnu.org>
452         * Makefile.in (EMACSOPT): Add --no-site-lisp.
454         * Makefile.in (EMACSOPT): Remove --multibyte, it does nothing any more.
456 2011-01-02  Glenn Morris  <rgm@gnu.org>
458         * ebrowse.c (version) <emacs_copyright>:
459         * etags.c (print_version) <emacs_copyright>:
460         * rcs2log (Copyright): Set short copyright year to 2011.
462 2010-11-27  Joe Matarazzo  <joe.matarazzo@gmail.com>  (tiny change)
464         * ebrowse.c (yylex): If end of input buffer encountered while
465         searching for a newline after "//", return YYEOF.  (Bug#7446)
467 2010-11-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
469         * emacsclient.c (set_local_socket) [DARWIN_OS]: Add fall-back
470         definition of _CS_DARWIN_USER_TEMP_DIR for Mac OS X 10.4 and older.
472 2010-11-15  Dan Nicolaescu  <dann@ics.uci.edu>
474         * test-distrib.c: Remove include guards for config.h and fcntl.h.
475         (O_RDONLY): Do not define.
476         (cool_read): Fix type for variable "sofar".
478 2010-10-25  Glenn Morris  <rgm@gnu.org>
480         * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove easymenu.elc.
482 2010-10-23  Glenn Morris  <rgm@gnu.org>
484         * digest-doc.c, sorted-doc.c: Remove files.
485         * Makefile.in (UTILITIES): Remove digest-doc and sorted-doc.
486         (digest-doc${EXEEXT}, sorted-doc${EXEEXT}): Remove rules.
487         * makefile.w32-in (ALL): Remove digest-doc and sorted-doc.
488         ($(BLD)/sorted-doc.exe, $(BLD)/digest-doc.exe, sorted-doc, digest-doc)
489         ($(BLD)/digest-doc.$(O), $(BLD)/sorted-doc.$(O)): Remove rules.
490         (install): Don't install digest-doc.exe or sorted-doc.exe.
492 2010-10-10  Dan Nicolaescu  <dann@ics.uci.edu>
494         * Makefile.in (PROFILING_LDFLAGS): Remove, not needed.
496 2010-10-09  Glenn Morris  <rgm@gnu.org>
498         * b2m.c, b2m.pl: Remove files.
499         * Makefile.in (INSTALLABLES): Remove b2m.
500         * makefile.w32-in ($(BLD)/b2m.$(O)): Remove.
502 2010-10-08  Glenn Morris  <rgm@gnu.org>
504         * emacsclient.c (set_local_socket) [DARWIN_OS]: Try as a fall-back
505         DARWIN_USER_TEMP_DIR.  (Bug#3992)
507 2010-10-03  Dan Nicolaescu  <dann@ics.uci.edu>
509         * test-distrib.c (cool_read):
510         * movemail.c (main, concat):
511         * make-docfile.c (scan_file, write_c_args):
512         * emacsclient.c (get_server_config): Fix -Wconversion warning.
513         (egetenv): Move conditional definition earlier.
514         (progname): Use const.
515         * sorted-doc.c (xstrdup): Use const.
517         * Makefile.in: Remove ^L, old makes choke on it.
519 2010-10-02  Wolfgang Schnerring  <wosc@wosc.de>  (tiny change)
521         * emacsclient.c (main): Return EXIT_FAILURE if Emacs sends us an
522         error string (Bug#6963).
524 2010-10-02  Juanma Barranquero  <lekktu@gmail.com>
526         * makefile.w32-in (tags): Remove target.
528 2010-10-01  Eli Zaretskii  <eliz@gnu.org>
530         * makefile.w32-in (tags, TAGS): New targets.
532 2010-09-30  Juanma Barranquero  <lekktu@gmail.com>
534         * emacsclient.c (get_server_config): Don't read Emacs pid from
535         the authentication file.
537 2010-09-29  Juanma Barranquero  <lekktu@gmail.com>
539         * makefile.w32-in (../src/config.h): Remove target, it is stale.
541         * emacsclient.c (main): Remove unused variables.
542         (start_daemon_and_retry_set_socket): Use EXIT_FAILURE.
544 2010-09-25  Ulrich Mueller  <ulm@gentoo.org>
546         * etags.c (compressors, print_language_names): Support xz compression.
548 2010-08-11  Jan Djärv  <jan.h.d@swipnet.se>
550         * fakemail.c: Include stdlib.h for getenv.  Remove declaration of
551         popen, fclose and pclose.
552         (my_name, fatal, error, put_line): Use const char*.
553         (main): Remove extern getenv, mail_program_name is const char*.
555         * update-game-score.c (get_prefix, write_scores, main): Use const char*.
557         * sorted-doc.c (error, fatal, states): Use const char *.
559         * pop.h (pop_multi_first): Use const char *.
560         (_ARGS): Remove.
562         * pop.c (pop_multi_first, socket_connection, sendline): Use const char*.
564         * movemail.c (fatal, error, concat): Use const char *.
566         * make-docfile.c (error, fatal, scan_c_file, scan_lisp_file):
567         Use const char *.
569         * etags.c (compressor, language, Ada_suffix, Ada_help, Asm_suffixes)
570         (Asm_help, default_C_suffixes, default_C_help, Cplusplus_suffixes)
571         (Cplusplus_help, Cjava_suffixes, Cobol_suffixes, Cstar_suffixes)
572         (Erlang_suffixes, Erlang_help, Forth_suffixes, Forth_help)
573         (Fortran_suffixes, Fortran_help, HTML_suffixes,  HTML_help)
574         (Lisp_suffixes, Lisp_help, Lua_suffixes, Lua_help)
575         (Makefile_filenames, Makefile_help, Objc_suffixes, Objc_help)
576         (Pascal_suffixes, Pascal_help, Perl_suffixes, Perl_interpreters)
577         (Perl_help, PHP_suffixes, PHP_help, plain_C_suffixses, PS_suffixes)
578         (PS_help, Prolog_suffixes, Prolog_help, Python_suffixes, Python_help)
579         (Scheme_suffixes, Scheme_help, TeX_suffixes, TeX_help, Texinfo_suffixes)
580         (Texinfo_help, Yacc_suffixes, Yacc_help, auto_help, none_help)
581         (no_lang_help, print_language_names)
582         (get_language_from_interpreter, get_language_from_filename)
583         (init, make_tag, struct C_stab_entry, write_classname, TEX_defenv)
584         (TEX_decode_env, nocase_tail, savestr, savenstr, fatal, pfatal)
585         (concat): Use const char*.
587         * emacsclient.c (message, sock_err_message, send_to_emacs)
588         (quote_argument, set_local_socket)
589         (start_daemon_and_retry_set_socket): Use const char*.
591         * ebrowse.c (struct member): filename, def_filename is const.
592         (struct sym): filename, sfilename is const.
593         (struct kw): name is const.
594         (add_sym, yyerror, token_string, insert_keyword, main): Use const char*.
596         * b2m.c (concat, fatal): Use const char*.
597         (main): Don't assign labels a string literal.
599 2010-08-07  Juanma Barranquero  <lekktu@gmail.com>
601         * ebrowse.c (usage, version, mark_virtual):
602         Remove duplicate declarations.
604 2010-08-06  Dan Nicolaescu  <dann@ics.uci.edu>
606         * emacsclient.c: Move socket related #includes together with the
607         rest of the #includes.  Move WINDOWSNT includes closer together.
608         (HAVE_CONFIG_H): Remove.
609         (NO_RETURN): Remove, defined in config.h.
610         (main): Convert definition to standard C.
612 2010-07-29  Juanma Barranquero  <lekktu@gmail.com>
614         * make-docfile.c (write_c_args): Warn for old-style empty arglist ().
616 2010-07-25  Juanma Barranquero  <lekktu@gmail.com>
618         * emacsclient.c (getcwd): Fix previous change: make getcwd
619         conditional on HAVE_GETCWD and declare with the correct POSIX
620         profile (for some reason MinGW headers define its 2nd arg as int,
621         not size_t; but getcwd is not used on Windows nonetheless).
623 2010-07-25  Juanma Barranquero  <lekktu@gmail.com>
625         * emacsclient.c (getcwd, w32_getenv):
626         * ntlib.h (getlogin, getuid, getegid, getgid): Fix prototypes.
628 2010-07-24  Dan Nicolaescu  <dann@ics.uci.edu>
630         * update-game-score.c (usage): Add NO_RETURN specifier.
631         * movemail.c (fatal, pfatal_with_name, pfatal_and_delete):
632         * make-docfile.c (fatal):
633         * hexl.c (usage):
634         * fakemail.c (fatal):
635         * etags.c (fatal, suggest_asking_for_help, pfatal):
636         * emacsclient.c (fatal):
637         * b2m.c (fatal): Likewise.
639 2010-07-23  Juanma Barranquero  <lekktu@gmail.com>
641         * make-docfile.c (write_c_args): Correctly handle prefixes of "defalt".
643 2010-07-20  Juanma Barranquero  <lekktu@gmail.com>
645         * emacsclient.c (get_current_dir_name, w32_get_resource)
646         (w32_getenv, w32_set_user_model_id, w32_window_app, w32_execvp)
647         (close_winsock, initialize_sockets, w32_find_emacs_process)
648         (w32_give_focus):
649         * ntlib.c (getlogin, getuid, getgid, getegid):
650         Convert definitions to standard C.
652 2010-07-12  Andreas Schwab  <schwab@linux-m68k.org>
654         * Makefile.in (C_WARNINGS_SWITCH, PROFILING_CFLAGS)
655         (PROFILING_LDFLAGS): Set from substitution.
656         (BASE_CFLAGS): Add  ${C_WARNINGS_SWITCH}.
657         (ALL_CFLAGS, CPP_CFLAGS): Add ${PROFILING_CFLAGS}.
658         (LINK_CFLAGS): Add ${PROFILING_LDFLAGS}.
660 2010-07-12  Eli Zaretskii  <eliz@gnu.org>
662         * makefile.w32-in (lisp2): Change hebrew.el to hebrew.elc (see
663         2010-07-12T05:25:46Z!handa@etlken).
665 2010-07-11  Andreas Schwab  <schwab@linux-m68k.org>
667         * emacsclient.c (set_local_socket): Use strchr, strrchr instead of
668         index, rindex.
669         * movemail.c (mail_spool_name, popmail): Likewise.
670         * pop.c (pop_list): Likewise.
672 2010-07-11  Eli Zaretskii  <eliz@gnu.org>
674         * makefile.w32-in (obj): Add menu.o, bidi.o, w32uniscribe.o,
675         and unexw32.o.  (Bug#6603)
677 2010-07-10  Eli Zaretskii  <eliz@gnu.org>
679         * Makefile.in ($(DESTDIR)${archlibdir}): Convert spaces to TABs.
681 2010-07-09  Andreas Schwab  <schwab@linux-m68k.org>
683         * make-docfile.c (write_c_args): Restructure scanning loop.
685 2010-07-09  Dan Nicolaescu  <dann@ics.uci.edu>
687         * make-docfile.c (write_c_args): Deal with type names in DEFUN
688         arguments.
690 2010-07-08  Dan Nicolaescu  <dann@ics.uci.edu>
692         * update-game-score.c (P_): Remove macro.
693         * ebrowse.c: Remove include guards.
694         (P_): Remove macro.
696 2010-07-07  Andreas Schwab  <schwab@linux-m68k.org>
698         * ebrowse.c (add_sym, make_namespace): Replace bcopy, bzero by
699         memcpy, memmove, memset.
700         * pop.c (pop_retrieve, socket_connection, pop_getline): Likewise.
702 2010-07-06  Andreas Schwab  <schwab@linux-m68k.org>
704         * movemail.c: Add MAIL_USE_POP around prototypes.
705         Include <string.h> if HAVE_STRING_H.
706         (strerror): Only declare if !HAVE_STRERROR.
707         (fatal): Make static.
708         (error): Likewise.
709         (pfatal_with_name): Likewise.
710         (pfatal_and_delete): Likewise.
711         (concat): Likewise.
712         (xmalloc): Likewise.
713         (popmail): Likewise.
714         (pop_retr): Likewise.
715         (mbx_write): Likewise.
716         (mbx_delimit_begin): Likewise.
717         (mbx_delimit_end): Likewise.
719 2010-07-04  Dan Nicolaescu  <dann@ics.uci.edu>
721         * fakemail.c (action): Convert function definitions to standard C.
722         (add_a_stream):
723         * test-distrib.c (cool_read):
724         (main): Likewise.
726 2010-07-03  Andreas Schwab  <schwab@linux-m68k.org>
728         * sorted-doc.c (cmpdoc): Fix signature.
729         (qsort_compare): Delete.
730         (main): Remove cast.
732 2010-07-03  Juanma Barranquero  <lekktu@gmail.com>
734         * ebrowse.c (match_qualified_namespace_alias): Check for null pointer.
736 2010-07-03  Juanma Barranquero  <lekktu@gmail.com>
738         Fix prototype warnings.
740         * ebrowse.c (match_qualified_namespace_alias):
741         Pass sym* to find_namespace, not link*.
743         * emacsclient.c (send_to_emacs, quote_argument): Arg s is HSOCKET.
745         * sorted-doc.c (qsort_compare): New typedef.
746         (main): Use it to cast cmpdoc.
748 2010-07-03  Dan Nicolaescu  <dann@ics.uci.edu>
750         * update-game-score.c: Convert function definitions to standard C.
751         * sorted-doc.c:
752         * profile.c:
753         * pop.c:
754         * movemail.c:
755         * make-docfile.c:
756         * hexl.c:
757         * fakemail.c:
758         * etags.c:
759         * ebrowse.c:
760         * digest-doc.c:
761         * b2m.c: Likewise.
763 2010-07-02  Dan Nicolaescu  <dann@ics.uci.edu>
765         * make-docfile.c (xmalloc, xrealloc, concat, readline, fatal):
766         * b2m.c (scan_file, scan_lisp_file, scan_c_file): Convert to
767         standard C prototypes.
769 2010-07-02  Jan Djärv  <jan.h.d@swipnet.se>
771         * ebrowse.c: Remove P_ and __P.
772         * etags.c:
773         * movemail.c:
774         * pop.c:
775         * update-game-score.c: Likewise.
777 2010-06-24  Juanma Barranquero  <lekktu@gmail.com>
779         * movemail.c (error): Avoid warning when there are no args.
781 2010-06-11  Juanma Barranquero  <lekktu@gmail.com>
783         * makefile.w32-in (lisp2): Fix references to vc/vc-hooks.elc
784         and vc/ediff-hook.elc.
786 2010-06-06  Dan Nicolaescu  <dann@ics.uci.edu>
788         * ntlib.h: Remove code dealing with BSTRING.
790 2010-05-29  Chong Yidong  <cyd@stupidchicken.com>
792         * emacsclient.c (longopts, decode_options, print_help_and_exit):
793         New arg `-parent-id'.
794         (main): Send parent-id to Emacs.
796 2010-05-27  Glenn Morris  <rgm@gnu.org>
798         * Makefile.in (distclean): No more Makefile.c.
800 2010-05-22  Jan Djärv  <jan.h.d@swipnet.se>
802         * Makefile.in (STAMP_INST_SCRIPTS, STAMP_SCRIPS): New (Bug #6246).
803         (all): Depend onSTAMP_INST_SCRIPTS, STAMP_SCRIPS (Bug #6246).
804         (stamp-rcs2log, stamp-rcs-checkin, stamp-grep-changelog, stamp-vcdiff):
805         New rules (Bug #6246).
806         (clean): Remove stamp-* (Bug #6246).
808 2010-05-12  Glenn Morris  <rgm@gnu.org>
810         * Makefile.in (INSTALLABLES): Remove @LIB_SRC_EXTRA_INSTALLABLES@.
812 2010-05-11  Glenn Morris  <rgm@gnu.org>
814         * Makefile.in (.m.o): Remove, there are no .m files.
815         (BASE_CFLAGS): New variable.
816         (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Use $BASE_CFLAGS.
817         (check): Update the message.
818         (update-game-score${EXEEXT}): Do not use $MOVE_FLAGS.
820         * Makefile.in: Convert comments to makefile format.
822         * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
823         (config.h) [MSDOS]: Do not include.
825 2010-05-10  Glenn Morris  <rgm@gnu.org>
827         * Makefile.in (LIBS_SYSTEM): Set with configure, not cpp.
828         (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
829         (NOT_C_CODE): Remove, no longer used.
830         (config.h) [!MSDOS]: No longer include.
831         (LOADLIBES): Use LIBS_SYSTEM as a variable.
833         * Makefile.in (BLESSMAIL_TARGET): Set with configure, not cpp.
835 2010-05-08  Glenn Morris  <rgm@gnu.org>
837         * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
839 2010-05-07  Chong Yidong  <cyd@stupidchicken.com>
841         * Version 23.2 released.
843 2010-05-06  Glenn Morris  <rgm@gnu.org>
845         * Makefile.in: Minimize blessmail-related cpp usage.
846         (BLESSMAIL_TARGET): New variable.
847         (MOVEMAIL_NEEDS_BLESSING): Remove, replace by above variable.
848         (blessmail): Always define this rule.
849         (need-blessmail): New rule, split out from maybe-blessmail.
850         (maybe-blessmail): Use BLESSMAIL_TARGET.
852 2010-05-04  Glenn Morris  <rgm@gnu.org>
854         * Makefile.in: Use @C_SWITCH_SYSTEM@, @C_SWITCH_MACHINE@ rather than
855         @c_switch_system@, @c_switch_machine@.
857 2010-04-26  Dan Nicolaescu  <dann@ics.uci.edu>
859         * Makefile.in (LIBS_MACHINE): Remove all uses, unused.
861 2010-04-12  Dan Nicolaescu  <dann@ics.uci.edu>
863         * Makefile.in (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Move to the
864         non-cpp section.
866 2010-04-11  Dan Nicolaescu  <dann@ics.uci.edu>
868         * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE): Define using
869         autoconf, not cpp.
870         (ALL_CFLAGS): Use them as make variables.
872 2010-04-07  Christoph Scholtes  <cschol2112@googlemail.com>
874         * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Use parenthesis
875         for macros for nmake compatibility.
877 2010-04-03  Juanma Barranquero  <lekktu@gmail.com>
879         Add stubs for Windows, required after CVE-2010-0825 change.
880         * ntlib.c (getgid, getegid, setegid): New stubs.
881         * ntlib.h (getgid, getegid, setegid): Declare them.
883 2010-04-02  Dan Rosenberg  <dan.j.rosenberg@gmail.com>  (tiny change)
885         * movemail.c (main): Check return values of setuid.
886         Avoid possibility of symlink attack when movemail is setgid mail
887         (CVE-2010-0825).
889 2010-04-02  Dan Nicolaescu  <dann@ics.uci.edu>
891         Remove extern errno declarations.
892         * movemail.c:
893         * etags.c:
894         * emacsclient.c: Remove extern errno declarations.
896 2010-03-20  Glenn Morris  <rgm@gnu.org>
898         * Makefile.in (KRB4LIB, DESLIB, KRB5LIB, CRYPTOLIB, COM_ERRLIB)
899         (LIBHESIOD, LIBRESOLV): Make previous change a bit more friendly by
900         defining these as Makefile variables.
901         (LIBS_MOVE): Add LIBS_MAIL into this.
902         (movemail${EXEEXT}): Just use LIBS_MOVE, not LIBS_MAIL as well.
904 2010-03-18  Glenn Morris  <rgm@gnu.org>
906         * Makefile.in (KRB4LIB, DESLIB, KRB5LIB, CRYPTOLIB, COM_ERRLIB)
907         (HESIODLIB, LIBS_MAIL): Set using autoconf rather than cpp.
908         (BASE_CFLAGS): Remove (identical to CPP_CFLAGS).
910 2010-03-18  Tetsurou Okazaki  <okazaki@be.to>  (tiny change)
912         * Makefile.in (uninstall): Handle the case where archlibdir does not
913         exist.  (Bug#5720)
915 2010-03-10  Chong Yidong  <cyd@stupidchicken.com>
917         * Branch for 23.2.
919 2010-02-20  Kevin Ryde  <user42@zip.com.au>
921         * etags.c (Scheme_functions): Don't loop past a null character
922         (Bug#5601).
924 2010-01-29  Kester Habermann  <kester@linuxtag.org>  (tiny change)
926         * etags.c (Fortran_functions): Handle recursive keyword (Bug#5484).
928 2010-01-11  Glenn Morris  <rgm@gnu.org>
930         * ebrowse.c (version):
931         * etags.c (print_version):
932         * rcs2log (Copyright): Set copyright year to 2010.
934 2009-12-09  David Robinow  <drobinow@gmail.com>  (tiny change)
936         * makefile.w32-in: Use parenthesis for macros for nmake
937         compatibility.
939 2009-11-23  Tobias Ringström  <tobias@ringis.se>  (tiny change)
941         * etags.c (absolute_filename): Use memmove if we have it for
942         overlapping copy.
944 2009-11-04  Dan Nicolaescu  <dann@ics.uci.edu>
946         * make-docfile.c (scan_lisp_file): Also look for `defvaralias'.
948 2009-10-15  Juanma Barranquero  <lekktu@gmail.com>
950         * .gitignore: Add echolisp.tmp.
952 2009-10-15  Glenn Morris  <rgm@gnu.org>
954         * emacsclient.c (print_help_and_exit): Fix bug report instructions.
956         * makefile.w32-in (echolisp): New rule.
957         (clean): Delete echolisp.tmp.
959 2009-09-27  Eli Zaretskii  <eliz@gnu.org>
961         * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Add term/internal.elc,
962         term/pc-win.elc, emacs-lisp/easymenu.elc, and term/ns-win.elc, to
963         be consistent with src/Makefile.in.
965 2009-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
967         * update-game-score.c (main): Sort scores before trimming them,
968         reported by Jason Feng <jfeng@ozbert.com> (bug#4397).
970 2009-09-09  Glenn Morris  <rgm@gnu.org>
972         * Makefile.in ($(DESTDIR)${archlibdir}): Set umask to world-readable
973         before creating directories and game score files.
975 2009-08-19  Glenn Morris  <rgm@gnu.org>
977         * cvtmail.c: Remove file.
978         * Makefile.in (UTILITIES): Remove cvtmail.
979         (cvtmail${EXEEXT}): Remove.
981 2009-07-08  E. Jay Berkenbilt  <ejb@ql.org>  (tiny change)
983         * b2m.c (main): Ensure that each message ends in two newlines.
985 2009-07-03  Jason Rumney  <jasonr@gnu.org>
987         * emacsclient.c (w32_set_user_model_id): Use standard types.
989 2009-07-03  Eli Zaretskii  <eliz@gnu.org>
991         * makefile.w32-in (WINNT_SUPPORT): Add common-win.elc, like
992         src/Makefile.in did.
994 2009-06-30  Jason Rumney  <jasonr@gnu.org>
996         * emacsclient.c (w32_give_focus): Use GetModuleHandle for library
997         that is already loaded.
998         (w32_set_user_model_id): New function.
999         (main): Use it to associate emacsclient with emacs (bug#1849).
1001 2009-06-29  Jim Meyering  <meyering@redhat.com>
1003         Remove useless if-before-free test.
1004         * make-docfile.c (scan_lisp_file): Remove useless test.
1006 2009-06-23  Dan Nicolaescu  <dann@ics.uci.edu>
1008         * Makefile.in (movemail.o): Don't pass -Demacs, unused.
1010 2009-06-21  Chong Yidong  <cyd@stupidchicken.com>
1012         * Branch for 23.1.
1014 2006-06-09  Adrian Robert  <Adrian.B.Robert@gmail.com>
1016         * mac-fix-env.m:
1017         * Makefile.in (mac-fix-env): Remove.
1019 2006-06-06  David Reitter  <david.reitter@gmail.com>
1021         * Makefile.in (mac-fix-env): Compile it using ALL_CFLAGS.
1023 2009-04-20  Juanma Barranquero  <lekktu@gmail.com>
1025         * emacsclient.c (print_help_and_exit): Fix typo and tabify (careful
1026         spacing is required in the message output, as the comment suggests).
1028 2009-04-20  Chong Yidong  <cyd@stupidchicken.com>
1030         * emacsclient.c (print_help_and_exit): Clarify argument placement
1031         for short option names.
1033 2009-04-02  Dan Nicolaescu  <dann@ics.uci.edu>
1035         * emacsclient.c (print_help_and_exit): Fix typo.
1037 2009-03-21  Eli Zaretskii  <eliz@gnu.org>
1039         * ntlib.c (setuid): Argument is now unsigned.
1040         (getuid): Return value is now unsigned.
1041         (getpwuid): Argument is now unsigned.
1042         (fchown): UID and GID arguments are now unsigned.
1044         * ntlib.h (fchown): UID and GID arguments are now unsigned.
1045         (getuid): Return value is now unsigned.
1046         (setuid): Argument is now unsigned.
1047         (getpwuid): Remove prototype (it's declared in nt/inc/pwd.h).
1049 2009-03-11  Stefan Monnier  <monnier@iro.umontreal.ca>
1051         * emacsclient.c (main): Revert part of last change, so
1052         drive-relative file names again work on Windows.
1054 2009-03-10  Stefan Monnier  <monnier@iro.umontreal.ca>
1056         * emacsclient.c (main): Always pass cwd via "-dir".  Pass the file
1057         names without prepending cwd to them, so Emacs uses its customary
1058         rules to determine how to interpret the file name.
1060 2009-03-04  Glenn Morris  <rgm@gnu.org>
1062         * movemail.c (main) [MAIL_USE_POP]: Add -r to usage message.
1064 2009-02-13  Sven Joachim  <svenjoac@gmx.de>
1066         * movemail.c: Include time.h unconditionally.
1067         (main): Use time_t for time variables.
1069 2009-02-11  Glenn Morris  <rgm@gnu.org>
1071         * movemail.c (mbx_delimit_begin): Also write the current time.
1073 2009-02-10  Glenn Morris  <rgm@gnu.org>
1075         * movemail.c (mbx_delimit_begin, mbx_delimit_end): Write mbox rather
1076         than Babyl format.  (Bug#2196)
1078 2009-01-23  Adrian Robert  <Adrian.B.Robert@gmail.com>
1080         * emacsclient.c (decode_options): Use a dummy display name under
1081         NS/Cocoa.
1083 2009-01-14  Lars Rasmusson  <lars.rasmusson@gmail.com>  (tiny change)
1085         * ebrowse.c (matching_regexp): Fix OB1 error.
1087 2009-01-05  Glenn Morris  <rgm@gnu.org>
1089         * ebrowse.c (version):
1090         * etags.c (print_version):
1091         * rcs2log (Copyright): Update copyright for 2009.
1093 2009-01-01  Chong Yidong  <cyd@stupidchicken.com>
1095         * movemail.c (main): Fatal if hard links cannot be created.
1097 2008-12-18  Dan Nicolaescu  <dann@ics.uci.edu>
1099         * emacsclient.c (start_daemon_and_retry_set_socket): Improve error
1100         checking.
1102 2008-12-14  Dan Nicolaescu  <dann@ics.uci.edu>
1104         * emacsclient.c: Include syswait.h instead of sys/types.h.
1106 2008-12-11  Dhruva Krishnamurthy  <dhruvakm@gmail.com>  (tiny change)
1108         * emacsclient.c (WCONTINUED): New compatibility define
1109         for older systems.
1111 2008-12-10  Dan Nicolaescu  <dann@ics.uci.edu>
1113         * emacsclient.c (main): Fix previous change.
1115 2008-12-10  Juanma Barranquero  <lekktu@gmail.com>
1117         * emacsclient.c (main): Fix mindless breakage where emacsclient
1118         does not work *at all* on Windows, even if it *can* connect.
1120 2008-12-10  Dan Nicolaescu  <dann@ics.uci.edu>
1122         * emacsclient.c (EMACS_DAEMON): Remove definition.
1123         (decode_options): Do not allow an empty alternate_editor on
1124         WINDOWSNT.
1125         (print_help_and_exit): Replace EMACS_DAEMON with WINDOWSNT.
1126         (start_daemon_and_retry_set_socket): Likewise.
1127         (main): Fail in case of not being able to connect.
1129 2008-12-10  Juanma Barranquero  <lekktu@gmail.com>
1131         * emacsclient.c [!WINDOWSNT] (EMACS_DAEMON): New define.
1132         Changes when EMACS_DAEMON is not defined:
1133         (print_help_and_exit): Don't add daemon information to help.
1134         (start_daemon_and_retry_set_socket): Make a no-op.
1135         (main): Don't set `start_daemon_if_needed' (which is initialized to 0).
1137 2008-12-10  Dan Nicolaescu  <dann@ics.uci.edu>
1139         * emacsclient.c (print_help_and_exit): Describe what an empty
1140         string argument does for --alternate-editor.
1141         (set_socket): Make it possible to not exit in case of an error.
1142         (start_daemon_and_retry_set_socket): New function.
1143         (main): Use it.  Restore the NULL value for socket_name and
1144         server_file after the set_socket call.
1146 2008-12-03  Dan Nicolaescu  <dann@ics.uci.edu>
1148         * emacsclient.c: Include <arpa/inet.h>.
1150 2008-12-01  Dan Nicolaescu  <dann@ics.uci.edu>
1152         * make-docfile.c (scan_lisp_file): Use xmalloc instead of malloc.
1154 2008-11-22  Derek Peschel  <dpeschel@eskimo.com>  (tiny change)
1156         * etags.c (add_regex): Pass correct length to re_compile_pattern.
1158 2008-11-02  Chong Yidong  <cyd@stupidchicken.com>
1160         * emacsclient.c (window_system): Delete redundant variable.
1161         (decode_options): Don't use it.
1162         (find_tty): New function.
1163         (main): Use find_tty, and don't use window_system.
1165 2008-11-01  Eli Zaretskii  <eliz@gnu.org>
1167         * emacsclient.c (main) [WINDOWSNT]: Don't ifdef away the call to
1168         `ttyname'.
1169         (w32_getenv): Treat $TERM specially: if not found in the
1170         environment and in the Registry, return "w32console".
1171         (ttyname) [WINDOWSNT]: New function.
1173 2008-10-31  Andreas Schwab  <schwab@suse.de>
1175         * emacsclient.c (main): Don't force sending tty when in eval mode.
1177 2008-10-30  Chong Yidong  <cyd@stupidchicken.com>
1179         * emacsclient.c (main): If using the current frame, send tty
1180         information to Emacs in case daemon mode needs to occupy this tty.
1182 2008-10-29  Juanma Barranquero  <lekktu@gmail.com>
1184         * emacsclient.c (EXTRA_SPACE): New macro.
1185         (get_server_config, set_local_socket): Use it.
1187         * makefile.w32-in ($(BLD)/sorted-doc.$(O)): Remove spurious backslash.
1188         Reported by Guillaume Conjat <gconjat.ext@orange-ftgroup.com>.
1190 2008-10-29  Ulrich Mueller  <ulm@gentoo.org>
1192         * emacsclient.c (set_local_socket): Use TMPDIR (default /tmp)
1193         instead of hardcoded /tmp.
1195 2008-10-13  Dan Nicolaescu  <dann@ics.uci.edu>
1197         * emacsclient.c (longopts, print_help_and_exit): Add -nw.
1198         (decode_options): Use getopt_long_only.
1200 2008-09-30  Eli Zaretskii  <eliz@gnu.org>
1202         * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove ccl.elc and
1203         codepage.elc.
1205 2008-09-19  Dan Nicolaescu  <dann@ics.uci.edu>
1207         * emacsclient.c (main): Use stdout rather than stdin to obtain the
1208         terminal (bug#427).
1210 2008-08-25  Francesco Potortì  <pot@gnu.org>
1212         * etags.c (main): Do not use static space for the tagfile string.
1214 2008-08-17  Francesco Potortì  <pot@gnu.org>
1216         * etags.c (main): Use canonicalize_filename on tags file name.
1217         (relative_filename): Revert 3.85: do not collapse slashes here.
1218         (absolute_dirname): Remove useless call to canonicalize_filename.
1219         (canonicalize_filename): Collapse multiple slashes here.
1221 2008-08-07  Dan Nicolaescu  <dann@ics.uci.edu>
1223         * Makefile.in (INSTALLABLES): Add LIB_SRC_EXTRA_INSTALLABLES.
1224         Do not special case for NS_IMPL_COCOA.
1226 2008-08-06  Adrian Robert  <Adrian.B.Robert@gmail.com>
1228         * Makefile.in (CFLAGS): Drop -universal under NS_IMPL_COCOA.
1229         (.m.o): Dispense with GNUstep-specific flags.
1231 2008-08-05  Ulrich Mueller  <ulm@gentoo.org>
1233         * pop.c (socket_connection): Add conditionals for
1234         HAVE_KRB5_ERROR_TEXT and HAVE_KRB5_ERROR_E_TEXT to support
1235         compilation with MIT Kerberos and Heimdal, respectively.
1237 2008-07-31  Dan Nicolaescu  <dann@ics.uci.edu>
1239         * etags.c:
1240         * emacsclient.c: Remove VMS support.
1242 2008-07-27  Dan Nicolaescu  <dann@ics.uci.edu>
1244         Remove support for Mac Carbon.
1245         * makefile.w32-in:
1246         * emacsclient.c: Remove code for Carbon.
1248 2008-07-21  Dan Nicolaescu  <dann@ics.uci.edu>
1250         * Makefile.in (mac-fix-env): Remove #ifdef around rule.
1252 2008-07-17  Andreas Schwab  <schwab@suse.de>
1254         * Makefile.in (INSTALL_SCRIPT): Remove duplicate definition.
1255         (LIB_STANDARD_LIBSRC): Don't define.
1256         (LOADLIBES): Remove LIB_STANDARD_LIBSRC.
1258 2008-07-16  Adrian Robert  <Adrian.B.Robert@gmail.com>
1260         * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
1261         NS_IMPL_COCOA.
1263 2008-07-16  Dan Nicolaescu  <dann@ics.uci.edu>
1265         * ntlib.h (fcloseall, fgetchar, flushall, fputchar, putw):
1266         Remove, unused.
1268 2008-07-15  Adrian Robert  <Adrian.B.Robert@gmail.com>
1270         * .cvsignore: Add mac-fix-env.
1271         * mac-fix-env.m: New file, automatically update
1272         ~/.MacOSX/environment.plist on OS X systems to expose environment
1273         variables inside Emacs started from icon.
1274         * Makefile.in: Add -universal to CFLAGS on OS X, add mac-fix-env to
1275         programs to build.
1276         * make-docfile.c: Add .m to list of file extensions.
1278 2008-07-12  Dan Nicolaescu  <dann@ics.uci.edu>
1280         * movemail.c (main): Use int instead of WAITTYPE.
1282 2008-07-05  Juanma Barranquero  <lekktu@gmail.com>
1284         * makefile.w32-in (OTHER_PLATFORM_SUPPORT):
1285         Remove vmsproc.el and vms-patch.el.
1287 2008-06-26  Juanma Barranquero  <lekktu@gmail.com>
1289         * makefile.w32-in (obj): Remove w32bdf.o.
1291 2008-06-26  Dan Nicolaescu  <dann@ics.uci.edu>
1293         * fakemail.c: Remove references to obsolete variables.
1295 2008-06-02  Jim Meyering  <meyering@redhat.com>
1297         * ebrowse.c (xfree): Remove definition; s/xfree/free/.
1299         Remove useless if-before-free tests.
1300         * ebrowse.c (xfree): Likewise.
1301         * etags.c (process_file_name, free_tree, free_fdesc): Likewise.
1302         (popclass_above, Prolog_functions, Erlang_functions): Likewise.
1303         * pop.c (pop_quit): Likewise.
1305 2008-05-30  Juanma Barranquero  <lekktu@gmail.com>
1307         * makefile.w32-in (lisp2): Add minibuffer.elc.
1309 2008-05-29  Tom Tromey  <tromey@redhat.com>
1311         * etags.c (relative_filename): Treat "///" like "/" in filenames.
1313 2008-05-09  Eli Zaretskii  <eliz@gnu.org>
1315         * ntlib.c: Include sys/types.h, sys/stat.h, and errno.h.
1316         (IS_DIRECTORY_SEP): New macro.
1317         (convert_time, is_exec, stat): New functions.
1319 2008-05-08  Eli Zaretskii  <eliz@gnu.org>
1321         * makefile.w32-in (lisp2): Rename epa-file-hook.elc to epa-hook.elc.
1323 2008-05-03  Eli Zaretskii  <eliz@gnu.org>
1325         * makefile.w32-in (lisp2): Add epa-file-hook.elc, to track the
1326         corresponding change in src/Makefile.in.
1328 2008-04-24  Adam GoÅ‚Ä™biowski  <adamg@pld-linux.org>  (tiny change)
1330         * Makefile.in (etags${EXEEXT}, ctags${EXEEXT}): Fix quote typo.
1332 2008-04-10  Jason Rumney  <jasonr@gnu.org>
1334         * makefile.w32-in (CLIENTRES): New variable and target.
1335         (TRES): Remove.
1336         ($(BLD)/emacsclientw.exe): Use $(CLIENTRES) instead of $(TRES).
1338 2008-04-19  Stefan Monnier  <monnier@iro.umontreal.ca>
1340         * vcdiff: Use "sccs get" rather than "get"; leave PATH alone.
1342 2008-04-18  Steve Grubb  <sgrubb@redhat.com>  (tiny change)
1344         * vcdiff: Use mktemp (CVE-2008-1694).
1346 2008-04-09  Jason Rumney  <jasonr@gnu.org>
1348         * makefile.w32-in (distclean, maintainer-clean): New targets.
1350 2008-03-13  Glenn Morris  <rgm@gnu.org>
1352         * makefile.w32-in (VERSION): Set to 23.0.60.
1354 2008-03-04  Juanma Barranquero  <lekktu@gmail.com>
1356         * .cvsignore: Add oo.
1358 2008-02-27  Yuri Shtil  <yuris@juniper.net>  (tiny change)
1360         * etags.c (Perl_functions): Fix call to skip_spaces.
1362 2008-02-24  Dan Nicolaescu  <dann@ics.uci.edu>
1364         * Makefile.in (NO_SHORTNAMES):
1365         * emacsclient.c (NO_SHORTNAMES):
1366         * fakemail.c (NO_SHORTNAMES):
1367         * make-docfile.c (NO_SHORTNAMES):
1368         * movemail.c (NO_SHORTNAMES):
1369         * pop.c (NO_SHORTNAMES): Remove references to obsolete variable.
1371 2008-02-23  Jason Rumney  <jasonr@gnu.org>
1373         * makefile.w32-in (MOUSE_SUPPORT): Remove duplicate tooltip.elc.
1374         (MSDOS_SUPPORT, VMS_SUPPORT): Remove.
1375         (OTHER_PLATFORM_SUPPORT): Replace above.  Add X specific files too.
1376         (lisp2): Add new languages.
1377         ($(DOC)): Use OTHER_PLATFORM_SUPPORT.
1379 2008-02-22  Juanma Barranquero  <lekktu@gmail.com>
1381         * makefile.w32-in (lisp2): Remove devanagari.el, kannada.el,
1382         malayalam.el, and tamil.el.  Add sinhala.el.
1384 2008-02-20  Juanma Barranquero  <lekktu@gmail.com>
1386         * emacsclient.c (main) [WINDOWSNT]: Understand DRIVE:NAME,
1387         where NAME is relative to DRIVE'S current directory.
1389 2008-02-15  Juanma Barranquero  <lekktu@gmail.com>
1391         * emacsclient.c (print_help_and_exit): Show -d option on Windows.
1393 2008-02-10  Dan Nicolaescu  <dann@ics.uci.edu>
1395         * fakemail.c: Undo previous change.
1397 2008-02-09  Dan Nicolaescu  <dann@ics.uci.edu>
1399         * fakemail.c (MAIL_PROGRAM_NAME): Remove unused conditional.
1400         (main): Replace MAIL_PROGRAM_NAME with its value.
1402         * Makefile.in (REGEXP_IN_LIBC): Remove reference to obsolete variable.
1404 2008-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>
1406         * emacsclient.c (decode_options): Pass --display implicitly if -c
1407         is specified.  Only set tty if -t or -c is specified.
1409 2008-02-04  Jason Rumney  <jasonr@gnu.org>
1411         * makefile.w32-in (lisp1): Use (), not {}.
1413 2008-02-04  Tom Tromey  <tromey@redhat.com>
1415         * etags.c: Add "GTY" as synonym for __attribute__.
1416         Update gperf output.
1418 2008-02-01  Jason Rumney  <jasonr@gnu.org>
1420         * makefile.w32-in (obj): Sync with src/Makefile.in.
1421         (TOOLTIP_SUPPORT, WINDOW_SUPPORT): New definitions.
1422         (WINNT_SUPPORT): Add term/w32-win.elc.
1423         (lisp1, lisp2): Sync with lisp in src/Makefile.in.
1425 2008-02-01  Jason Rumney  <jasonr@gnu.org>
1427         * makefile.w32-in (obj): Add font.o and w32font.o.
1429 2008-02-01  Zhang Wei  <id.brep@gmail.com>  (tiny change)
1431         * makefile.w32-in (lisp1): Delete ucs-tables.elc,
1432         utf-8.elc, and latin-*.el.
1434 2008-01-26  Stefan Monnier  <monnier@iro.umontreal.ca>
1436         * emacsclient.c (decode_options): Default to NULL display, as Emacs-22.
1437         Allow the -d option under w32 again, for those rare cases where it
1438         actually does make sense.
1440 2008-01-25  Juanma Barranquero  <lekktu@gmail.com>
1442         * emacsclient.c (set_tcp_socket): Don't send "\n" after
1443         the authentication string; there's no need to haste.
1445 2008-01-22  Chong Yidong  <cyd@stupidchicken.com>
1447         * pop.c (pop_stat, pop_last): Fix last fix.
1449 2008-01-18  Dan Nicolaescu  <dann@ics.uci.edu>
1451         * movemail.c: Remove references to XENIX.
1453 2008-01-13  Dan Nicolaescu  <dann@ics.uci.edu>
1455         * movemail.c:
1456         * make-docfile.c: Remove reference to symbols defined by systems
1457         not supported anymore: MAC_OS8, XENIX and STRIDE.
1459 2008-01-12  Eli Zaretskii  <eliz@gnu.org>
1461         * emacsclient.c (decode_options) [WINDOWSNT]: Don't use the value
1462         of DISPLAY in the environment.  Don't support -d.
1463         (print_help_and_exit) [WINDOWSNT]: Don't show the --display option.
1464         (longopts) [WINDOWSNT]: Remove --display.
1466 2008-01-10  Chong Yidong  <cyd@stupidchicken.com>
1468         * pop.c (pop_stat, pop_last): Check validity of string-to-integer
1469         conversion.  Mistakes spotted by Nico Golde.
1471 2008-01-09  Glenn Morris  <rgm@gnu.org>
1473         * emacsclient.c: Add missing final newlines to message calls.
1475 2008-01-09  Daniel Hackney  <dan@haxney.org>  (tiny change)
1477         * emacsclient.c (set_socket): Add final newline to socket error message.
1479 2008-01-04  Glenn Morris  <rgm@gnu.org>
1481         * ebrowse.c (version) <emacs_copyright>: New variable.
1482         Just use current year for copyright.
1484         * etags.c (print_version):
1485         * rcs2log (Copyright): Update to 2008.
1487 2007-11-28  Jason Rumney  <jasonr@gnu.org>
1489         * makefile.w32-in (VMS_SUPPORT): No longer byte-compiled.
1491 2007-11-27  Jan Djärv  <jan.h.d@swipnet.se>
1493         * pop.c (socket_connection): Remove AI_ADDRCONFIG.
1495 2007-11-19  Jan Djärv  <jan.h.d@swipnet.se>
1497         * pop.c (socket_connection): Move realhost out of #ifdefs.
1498         Set realhost both for HAVE_GETADDRINFO and !HAVE_GETADDRINFO.
1500 2007-11-18  Jan Djärv  <jan.h.d@swipnet.se>
1502         * pop.c (socket_connection): Use getaddrinfo if available.
1504 2007-11-22  Francesco Potortì  <pot@gnu.org>
1506         * etags.c (default_C_help) [CTAGS]: Differentiate the help string,
1507         as the defaults in ctags are different from etags.
1509 2007-11-15  Francesco Potortì  <pot@gnu.org>
1511         * etags.c: Make prototypes for extern definitions, and add all
1512         that are needed to quench warnings on 64-bit.
1513         (main): Use the same defaults for ctags as for etags: find
1514         typedefs, structure tags, macro constants, enum constants, struct
1515         members and global variables.
1516         (make_C_tag) [DEBUG]: Add debugging printout.
1517         (C_entries): In case '}' decrement bracelev before testing it.
1519 2007-11-15  Masatake YAMATO  <jet@gyve.org>
1521         * etags.c (C_entries): In case '}', set fvdef to fvnone
1522         unconditioned to (!ignoreindent && lp == newlb.buffer + 1).
1524 2007-11-01  Dan Nicolaescu  <dann@ics.uci.edu>
1526         * makefile.w32-in (obj): Remove sunfns.o.
1528 2007-10-28  Juanma Barranquero  <lekktu@gmail.com>
1530         * makefile.w32-in (obj): Remove abbrev.o.
1532 2007-10-26  Juanma Barranquero  <lekktu@gmail.com>
1534         * emacsclient.c: Add a wrapper for getenv so it also checks the
1535         registry on Windows.  Suggestion and algorithm by Eli Zaretskii.
1536         Code partially based on w32_get_resource and init_environment (w32.c).
1537         (egetenv): New wrapper for getenv.
1538         (get_current_dir_name, decode_options, get_server_config)
1539         (set_local_socket, set_socket, main): Use egetenv, not getenv.
1540         (w32_get_resource, w32_getenv) [WINDOWSNT]: New functions.
1542 2007-10-25  Jason Rumney  <jasonr@gnu.org>
1544         * emacsclient.c (sock_err_message): New function.
1545         (set_tcp_socket): Use it.
1547 2007-10-09  Juanma Barranquero  <lekktu@gmail.com>
1549         * emacsclient.c (print_help_and_exit): Fix space to improve
1550         alignment in output messages.
1552 2007-09-27  Jason Rumney  <jasonr@gnu.org>
1554         * makefile.w32-in (emacsclient, emacsclientw): Link to COMCTL32.
1556         * emacsclient.c (w32_window_app): Init common controls when windowed.
1558 2007-09-21  Glenn Morris  <rgm@gnu.org>
1560         * emacstool.c: Remove file.
1561         * Makefile.in (emacstool, nemacstool, xvetool, xveterm):
1562         Delete targets built from emacstool.
1564 2007-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
1566         * emacsclient.c (decode_options): -t implies -c.
1568 2007-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
1570         * emacsclient.c (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP)
1571         (IS_ANY_SEP): Only define if !defined(HAVE_GET_CURRENT_DIR_NAME).
1572         (main_argc): Remove.
1573         (strprefix): Use strncmp.
1575 2007-09-20  Jason Rumney  <jasonr@gnu.org>
1577         * emacsclient.c (main) [SIGSTOP]: Change conditional from WINDOWSNT.
1579 2007-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
1581         * emacsclient.c (current_frame): Change the default.
1582         (longopts): Replace --current-frame by --create-frame.
1583         (decode_options): Reverse the meaning of -c.
1584         (print_help_and_exit): Update help text accordingly.
1585         (main): Remove the -version and -good-version messages.
1587 2007-09-12  Glenn Morris  <rgm@gnu.org>
1589         * Makefile.in (SOURCES, unlock, relock): Delete.
1591 2007-08-29  Glenn Morris  <rgm@gnu.org>
1593         * makefile.w32-in (VERSION): Increase to 23.0.50.
1595 2007-08-29  Dan Nicolaescu  <dann@ics.uci.edu>
1597         * emacsclient.c (w32_execvp): Move definition before use.
1598         (decode_options): Don't use a tty on mac carbon or windows.
1600 2007-08-29  Jason Rumney  <jasonr@gnu.org>
1602         * emacsclient.c (SEND_STRING, SEND_QUOTED): Remove obfuscation macros.
1603         (quote_argument, set_tcp_socket, handle_sigcont, handle_sigtstp):
1604         (main): Expand removed macros inline.
1605         (main) [WINDOWSNT]: Don't call ttyname.  Don't recognize -suspend
1606         option.
1607         (main) [NO_SOCKETS_IN_FILE_SYSTEM]: Don't call init_signals.
1609 2007-08-29  Károly LÅ‘rentey  <lorentey@elte.hu>
1611         * emacsclient.c (signal.h): New include.
1612         (sys/stat.h, errno.h): Always include, even on WINDOWSNT.
1613         (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP, IS_ANY_SEP):
1614         Copy definitions here from src/lisp.h.
1615         (main_argc, main_argv, current_frame, window_system, tty): New vars.
1616         (longopts): Add tty, current-frame.
1617         (xmalloc, xstrdup): New functions.
1618         (get_current_dir_name): New function, copied from src/sysdep.c.
1619         (decode_options): Set display from environment.  Add tty and
1620         current_frame options.  Make --no-wait imply --current-frame,
1621         except when it is the only option given.  Make sure no frame is
1622         opened when --current-frame is set.
1623         (print_help_and_exit): Document tty and current-frame options.
1624         (fail): Change arguments to void.
1625         (main): When sockets are not defined, set main_argc, main_argv,
1626         and call fail() with no arguments.
1627         (emacs_socket): New variable (moved out from main `s').
1628         (quote_file_name): Rename to quote_argument.
1629         (quote_argument): New name for old quote_file_name.
1630         (unquote_argument, strprefix, pass_signal_to_emacs)
1631         (handle_sigcont, handle_sigtstp, init_signals): New functions.
1632         (set_local_socket): Initialize saved_errno to 0.  If socket-name
1633         is too long, call `fail' rather than `exit'.
1634         (main): Doc update.  Set main_argc, main_argv.  New var `str'.
1635         Don't need a filename or argument if tty or window_system set.
1636         Call fail with no arguments.  Use get_current_dir_name to send
1637         over the current directory.  Send version number to Emacs for
1638         verification.  If tty is set, check TERM, and pass name and type
1639         to Emacs.  Pass window_system to Emacs.  Move sending of eval to
1640         optind loop.  Send -position, -file to Emacs.  Call fsync after
1641         fflush.  Check for a client/server version match.
1642         Handle -emacs-pid, -window-system-unsupported, -print, -error, and
1643         -suspend commands.  Don't exit prematurely on --no-wait, let Emacs
1644         close the connection for us.  When creating a new frame, send
1645         environment and pwd to Emacs.  Send current-frame to Emacs.
1647 2007-08-25  Eli Zaretskii  <eliz@gnu.org>
1649         * Makefile.in (rcs2log, rcs-checkin, grep-changelog, vcdiff):
1650         Prepend "-" to the command, in case srcdir=. and file is copied
1651         into itself.
1653 2007-07-25  Glenn Morris  <rgm@gnu.org>
1655         * Relicense all FSF files to GPLv3 or later.
1657         * COPYING: Switch to GPLv3.
1659 2007-07-17  Francesco Potortì  <pot@gnu.org>
1661         * etags.c (C_entries): Reset the fvdef machine when out of function.
1662         (PRINT_UNDOCUMENTED_OPTIONS_HELP): #define as FALSE if undefined.
1663         (print_help): Use it in if() rather than #if.
1664         (print_help): Conditionally print help about --no-line-directive.
1666 2007-07-16  Eli Zaretskii  <eliz@gnu.org>
1668         * makefile.w32-in (clean): Don't delete *~.
1670 2007-06-07  Glenn Morris  <rgm@gnu.org>
1672         * etags.c (print_version): Add `emacs_copyright' string, for
1673         easier automatic updating.
1675 2007-05-18  Francesco Potortì  <pot@gnu.org>
1677         * etags.c: Extern definitions of some more pointer functions for
1678         standalone compilation, especially important for 64bit platforms.
1679         (main, print_help): --members is now the default for etags.
1680         (C_entries): Parse start of C comment as a space == end of token.
1681         This is not necessary for C++ comment, already parsed as newline.
1683 2007-04-26  Glenn Morris  <rgm@gnu.org>
1685         * makefile.w32-in (VERSION): Increase to 22.1.50.
1687 2007-06-02  Chong Yidong  <cyd@stupidchicken.com>
1689         * Version 22.1 released.
1691 2007-02-26  Francesco Potortì  <pot@gnu.org>
1693         * Makefile.in (etags, ctags): Define EMACS_NAME as "GNU Emacs".
1695 2007-02-20  Ulrich Mueller  <ulm@kph.uni-mainz.de>  (tiny change)
1697         * Makefile.in (EMACS, EMACSOPT): New variables.
1698         (blessmail): Use `--no-site-file' when compiling.
1700 2007-02-05  Francesco Potortì  <pot@gnu.org>
1702         * etags.c (default_C_help, Cplusplus_help, PHP_help, print_help)
1703         (main): Now --members is the default for etags, not for ctags yet.
1705 2007-02-04  Per Cederqvist  <ceder@ingate.com>  (tiny change)
1707         * etags.c (gperf, in_word_set): Change attribute for Java to
1708         (C_JAVA & ~C_PLPL).  The previous change introduced 2004-09-13 was
1709         broken, as (C_JAVA & !C_PLPL) always evaluates to 0.  This caused
1710         import, package, extends, implements and interface to be treated
1711         specially for all kinds of C-style files, not just Java files.
1713 2007-01-02  Francesco Potortì  <pot@gnu.org>
1715         * etags.c (longopts): New undocumented option --no-duplicates.
1716         (no_duplicates): Static variables for the above option.
1717         (print_help): Do not print help for --no-warn, now undocumented.
1718         (add_node): Allow duplicate tags in ctags mode unless --no-duplicates.
1719         (main): Pass the -u option to sort in ctags mode.
1721 2006-12-28  Francesco Potortì  <pot@gnu.org>
1723         * etags.c (readline): When creating a relative file name from a
1724         #line directive, leave the file name alone.  The previous
1725         behavior was to make it relative to the tags file directory,
1726         under the hypothesis that the #line directive file name was
1727         relative to the directory of the tagged file.  That hypothesis is
1728         wrong with Cpp and Lex.
1729         (Makefile_targets): Do not include spaces in tag names.
1731 2006-12-22  Eli Zaretskii  <eliz@gnu.org>
1733         * makefile.w32-in (make-docfile, ctags, etags, ebrowse, hexl)
1734         (movemail, fakemail, sorted-doc, digest-doc, emacsclient)
1735         (test-distrib, $(DOC), all): Depend on stamp_BLD instead of $(BLD).
1736         ($(BLD)/make-docfile.$(O) $(BLD)/hexl.$(O) $(BLD)/fakemail.$(O))
1737         ($(BLD)/sorted-doc.$(O) $(BLD)/digest-doc.$(O))
1738         ($(BLD)/test-distrib.$(O) $(GETOPTOBJS) $(MOVEMAILOBJS))
1739         ($(BLD)/emacsclient.$(O) $(BLD)/etags.$(O) $(BLD)/regex.$(O))
1740         ($(BLD)/ebrowse.$(O) $(BLD)/ctags.$(O)): Depend on stamp_BLD.
1741         (clean): Delete stamp_BLD.
1743 2006-12-20  Francesco Potortì  <pot@gnu.org>
1745         * etags.c (C_entries): DEFUN names were longer by one: corrected.
1747 2006-12-18  Juanma Barranquero  <lekktu@gmail.com>
1749         * emacsclient.c [WINDOWSNT] (set_fg, get_wc): New variables.
1750         [WINDOWSNT] (w32_find_emacs_process, w32_give_focus): New functions.
1751         (main) [WINDOWSNT]: Remove code to release the focus; call
1752         w32_give_focus instead.
1754 2006-12-15  Juanma Barranquero  <lekktu@gmail.com>
1756         * emacsclient.c (w32_execvp): New function; wrapper for `execvp'.
1757         (execvp) [WINDOWSNT]: Redefine to `w32_execvp'.
1758         (fail): Remove Windows-specific fix (subsumed into w32_execvp).
1759         Suggestions and comment by Eli Zaretskii.
1761 2006-12-06  Christoph Conrad  <christoph.conrad@gmx.de>
1763         * makefile.w32-in ($(BLD)/emacsclient.exe, $(BLD)/emacsclientw.exe):
1764         Use $(USER32) for compatibility with Visual Studio .NET 2003.
1766 2006-11-30  Juanma Barranquero  <lekktu@gmail.com>
1768         * emacsclient.c (emacs_pid): New variable.
1769         (message): Remove leftover code.
1770         (get_server_config): Set emacs_pid.  Don't allow Emacs to grab the
1771         focus yet; emacsclient can still display an informational message
1772         before sending requests to Emacs.
1773         (main): Allow Emacs to grab the focus.  Simplify message() call.
1775 2006-11-30  Michael Mauger  <mmaug@yahoo.com>
1777         * emacsclient.c (message): Make sure the message is properly
1778         written even if it contains printf escapes, and flush the result.
1779         (set_tcp_socket): Make the message for non-local connections
1780         informational rather than an error.
1782 2006-11-28  Kevin Ryde  <user42@zip.com.au>
1784         * etags.c (readline): Check for double quote after #line.
1786 2006-11-28  Jan Djärv  <jan.h.d@swipnet.se>
1788         * etags.c (readline): sscanf could in principle return 2.
1790 2006-11-28  Francesco Potortì  <pot@gnu.org>
1792         * etags.c (readline): lno is unsigned.
1793         (TeX_commands): Use p++ (rather than *p++) to increment p.
1794         (Lua_functions): Explicitly discard LOOKING_AT's return value.
1796 2006-11-27  Juanma Barranquero  <lekktu@gmail.com>
1798         * makefile.w32-in (TRES): New macro (copied from nt/makefile.w32-in).
1799         ($(TRES)): New rule (copied from nt/makefile.w32-in).
1800         ($(BLD)/emacsclientw.exe): Add dependency.
1802 2006-11-27  Eli Zaretskii  <eliz@gnu.org>
1804         * makefile.w32-in ($(BLD)/emacsclient.$(O)): Depend on makefile.w32-in.
1806 2006-11-25  Juanma Barranquero  <lekktu@gmail.com>
1808         * makefile.w32-in (VERSION): New macro.
1809         (ECLIENT_CFLAGS): Add -DVERSION.
1811 2006-11-25  Jason Rumney  <jasonr@gnu.org>
1813         * emacsclient.c (file_name_absolute_p) [WINDOWSNT]: Use isalpha().
1815 2006-11-24  Michael Mauger  <mmaug@yahoo.com>
1817         * emacsclient.c (file_name_absolute_p) [WINDOWSNT]: Support absolute
1818         file names with forward slashes.
1820 2006-11-23  Juanma Barranquero  <lekktu@gmail.com>
1822         * emacsclient.c (print_help_and_exit): Tweak message contents and
1823         tabs/spaces to improve alignment in message boxes.
1825 2006-11-22  Lennart Borgman  <lennart.borgman.073@student.lu.se>
1827         * emacsclient.c: Include <stdarg.h>.
1828         [WINDOWSNT]: Include <windows.h>.
1829         (w32_check_console_app): New function.
1830         (message): New function.
1831         (decode_options, print_help_and_exit, fail, main)
1832         (initialize_sockets, get_server_config, set_tcp_socket)
1833         (set_local_socket, set_socket): Use message().
1835 2006-11-13  Jason Rumney  <jasonr@gnu.org>
1837         * emacsclient.c [WINDOWSNT]: Let config.h define HAVE_SOCKETS and
1838         HAVE_INET_SOCKETS.
1840 2006-11-13  Juanma Barranquero  <lekktu@gmail.com>
1842         * makefile.w32-in (emacsclient): Depend also on emacsclientw.exe.
1843         ($(BLD)/emacsclientw.exe): New target.
1844         (install): Install emacsclientw.exe.
1845         ($(BLD)/cvtmail.$(O), $(BLD)/emacstool.$(O)): Remove obsolete targets.
1846         (ECLIENT_CFLAGS): Remove redundant flags.
1848         * emacsclient.c [WINDOWSNT]: Undef _WINSOCKAPI_ and _WINSOCK_H.
1850 2006-11-13  Jason Rumney  <jasonr@gnu.org>
1852         * makefile.w32-in ($(BLD)/emacsclient.$(O)): Use CFLAGS.
1854 2006-11-10  David Reitter  <david.reitter@gmail.com>
1856         * emacsclient.c [!WINDOWSNT]: Include <sys/types.h>.
1858 2006-11-08  Juanma Barranquero  <lekktu@gmail.com>
1860         * emacsclient.c (get_server_config) [WINDOWSNT]: Declare set_fg as
1861         FARPROC to avoid a compiler warning.
1863 2006-11-07  Juanma Barranquero  <lekktu@gmail.com>
1865         * emacsclient.c (get_server_config) [WINDOWSNT]: Look for the server
1866         file on APPDATA if it doesn't exist on HOME, even if HOME is defined.
1868         * emacsclient.c (get_server_config): Extract also the Emacs pid
1869         from the server file.  On Windows, try to force the Emacs frame to
1870         the foreground.
1872 2006-11-06  Juanma Barranquero  <lekktu@gmail.com>
1874         * emacsclient.c (longopts) [!NO_SOCKETS_IN_FILE_SYSTEM]: Don't show
1875         option --socket-name.
1876         (decode_options): Don't get EMACS_SERVER_FILE here, it could override
1877         command line options.
1878         (decode_options) [!NO_SOCKETS_IN_FILE_SYSTEM]: Don't parse "-s" option.
1879         (fail): Don't check for missing arguments, it is now done in set_socket.
1880         (file_name_absolute_p): New function (loosely based on the one in
1881         fileio.c).
1882         (initialize_sockets): Don't check for duplicate loading of Winsock.
1883         (get_server_config): Only try relative paths in the default
1884         directory locations.
1885         (set_tcp_socket): Don't call INITIALIZE().  Warn when connecting to
1886         a remote server.
1887         (set_socket): Call INITIALIZE().  Search explicit command-line
1888         arguments, then environment variable EMACS_SERVER_FILE, then implicit
1889         socket paths, before trying the alternate editor.
1890         (main): Use file_name_absolute_p.
1892 2006-11-04  Eli Zaretskii  <eliz@gnu.org>
1894         * makefile.w32-in (../src/$(BLD)/temacs.exe): Create as temporary
1895         file if it doesn't already exist.
1897 2006-11-03  Juanma Barranquero  <lekktu@gmail.com>
1899         * emacsclient.c (initialize_sockets): Don't initialize Winsock
1900         more than once.
1902 2006-11-03  Mark Davies  <mark@mcs.vuw.ac.nz>
1904         * Makefile.in (INSTALL_SCRIPT): New macro.
1905         ($(DESTDIR)${archlibdir}, install): Use it, instead of INSTALL_PROGRAM.
1907 2006-11-02  Juanma Barranquero  <lekktu@gmail.com>
1909         * grep-changelog: When called with no arguments (not even a
1910         filter), show help instead of blindingly dumping every single
1911         ChangeLog available.  Doc fix.  Update version.
1913 2006-11-02  Tim Van Holder  <tim.vanholder@gmail.com>  (tiny change)
1915         * emacsclient.c [WINDOWSNT]: Define HAVE_INET_SOCKETS.
1916         [!WINDOWSNT]: Include <netinet/in.h> if available.
1917         [HAVE_SOCKETS]: Also require HAVE_INET_SOCKETS.
1918         (IOCTL, IOCTL_BOOL_ARG): Remove.
1919         (set_tcp_socket): Don't set the socket in blocking mode.
1920         Remove c_arg.
1922 2006-11-01  Juanma Barranquero  <lekktu@gmail.com>
1924         * emacsclient.c (fail) [WINDOWSNT]: Force the first argv passed to
1925         execvp to point to alternate_editor (otherwise .BAT scripts can't run).
1927 2006-10-31  Ã“scar Fuentes  <ofv@wanadoo.es>  (tiny change)
1929         * emacsclient.c [WINDOWSNT]: Include <malloc.h> and <stdlib.h>.
1930         (close_winsock): Declare as __cdecl.
1932 2006-10-31  Jan Djärv  <jan.h.d@swipnet.se>
1934         * emacsclient.c [!WINDOWSNT]: Include <fcntl.h> if available.
1935         (set_tcp_socket): Prefer O_NONBLOCK, then O_NDELAY, then FIONBIO
1936         to set the socket in non-blocking mode.
1938 2006-10-31  Tim Van Holder  <tim.vanholder@gmail.com>  (tiny change)
1940         * emacsclient.c [!WINDOWSNT]: Include <netinet/in.h> and <sys/ioctl.h>.
1941         (INVALID_SOCKET): Define.
1942         (initialize_sockets): Put #endif at the right place.
1943         (set_local_socket): Use progname, not argv[0].
1945 2006-10-31  Juanma Barranquero  <lekktu@gmail.com>
1947         * makefile.w32-in (ALL): Add emacsclient.
1948         (ECLIENT_CFLAGS, ECLIENTOBJS): New macros.
1949         (emacsclient, $(BLD)/emacsclient.exe): New targets.
1950         (install): Install emacsclient.
1952         * emacsclient.c: Add support for TCP sockets.
1953         (SEND_STRING, SEND_QUOTED, HSOCKET, CLOSE_SOCKET, IOCTL)
1954         (INITIALIZE): New macros.
1955         (IOCTL_BOOL_ARG): New typedef.
1956         (server_file): New global variable.
1957         (longopts): New option --server-file.
1958         (decode_options): Process new option --server-file and environment
1959         variable EMACS_SERVER_FILE.
1960         (print_help_and_exit): Document new option.
1961         (fail): If no connection available and no alternate editor,
1962         suggest using options to make them explicit.
1963         (AUTH_KEY_LENGTH, SEND_BUFFER_SIZE): New constants.
1964         (send_buffer, sblen): New variables.
1965         (send_to_emacs): New function to buffer output and send it with `send'.
1966         (quote_file_name): Use SEND_STRING.
1967         (close_winsock, initialize_sockets): New functions to load and
1968         unload Winsock.
1969         (get_server_config, set_tcp_socket): New functions to create and
1970         set up TCP sockets.
1971         (set_local_socket): New function to create and set up Unix
1972         socket (code moved from previous implementation).
1973         (set_socket): New function to choose between TCP and Unix sockets.
1974         (main): Use SEND_STRING and SEND_QUOTED.  Most code moved to
1975         set_local_socket.  Use set_socket.  Get answers from server.el with
1976         recv(), not file stream functions.
1978 2006-10-09  Eli Zaretskii  <eliz@gnu.org>
1980         * makefile.w32-in (../src/config.h): Fix error message.
1982 2006-09-30  Eli Zaretskii  <eliz@gnu.org>
1984         * .cvsignore: Add blessmail.
1986 2006-09-15  Jay Belanger  <belanger@truman.edu>
1988         * COPYING: Replace "Library Public License" by "Lesser Public
1989         License" throughout.
1991 2006-08-09  Jan Djärv  <jan.h.d@swipnet.se>
1993         * etags.c (readline): Expect sscanf returns >= 1.
1994         (readline): Change position on %n and \" in sscanf.
1996 2006-08-07  Masatake YAMATO  <jet@gyve.org>
1998         * etags.c (readline): Expect sscanf returns 2, not 1.
2000 2006-08-07  Masatake YAMATO  <jet@gyve.org>
2002         * etags.c (TEX_mode): Check getc returns EOF.
2003         File ended without newline causes infinite loop.
2005 2006-07-30  Adrian Aichner  <adrian@xemacs.org>  (tiny change)
2007         * etags.c: It's XEmacs, not Xemacs: change all the occurrences.
2009 2006-07-30  Francesco Potortì  <pot@gnu.org>
2011         * etags.c [ETAGS_REGEXPS]: Now is unconditionally defined.
2012         [LONG_OPTIONS]: Changed to NO_LONG_OPTIONS, which is undefined.
2013         (Objc_suffixes): Suggest using --lang=c for full help.
2014         (C_entries): Initialise savetoken to 0 to shut up the compiler.
2016 2006-07-20  Andreas Schwab  <schwab@suse.de>
2018         * fakemail.c (fatal): Drop second parameter and treat first
2019         parameter as a plain string.  Callers changed.
2021 2006-07-18  Dan Nicolaescu  <dann@ics.uci.edu>
2023         * ebrowse.c (usage, version): Mark as NO_RETURN.
2025         * emacsclient.c (print_help_and_exit): Likewise.
2027 2006-07-10  Francesco Potortì  <pot@gnu.org>
2029         * etags.c (absolute_filename): Free unused space (cosmetic change).
2030         (in_word_set): In C, also tag #undef symbols.
2032 2006-06-09  Eli Zaretskii  <eliz@gnu.org>
2034         * yow.c: Remove file.
2036         * makefile.w32-in ($(BLD)/yow.$(O)): Remove target.
2038         * Makefile.in (UTILITIES): Remove yow${EXEEXT}.
2039         yow${EXEEXT}: Remove target.
2041 2006-06-04  Masatake YAMATO  <jet@gyve.org>
2043         * ebrowse.c (main): Exit with EXIT_FAILURE if BROWSE file
2044         doesn't exist, is not seekable, not is failed in ftall.
2046 2006-06-03  Eli Zaretskii  <eliz@gnu.org>
2048         * makefile.w32-in (ALL): Add sorted-doc and digest-doc.
2049         ($(BLD)/sorted-doc.exe, $(BLD)/digest-doc.exe)
2050         ($(BLD)/test-distrib.exe): New targets.
2051         (sorted-doc, digest-doc, test-distrib): New targets.
2052         (install): Install sorted-doc.exe and digest-doc.exe.
2053         ($(BLD)/sorted-doc.$(O)): Update dependencies.
2055         * digest-doc.c [DOS_NT] <top level>: Include fcntl.h and io.h.
2056         (main) [DOS_NT]: Switch stdin to binary mode, if it is not a
2057         terminal device.
2059         * sorted-doc.c [DOS_NT] <top level>: Include fcntl.h and io.h.
2060         [WINDOWSNT] <top level>: Don't redeclare malloc.
2061         (main) [DOS_NT]: Switch stdin to binary mode, if it is not a
2062         terminal device.
2063         (main): Initialize bp, to avoid compiler warnings.
2065         * makefile.w32-in: Delete traces of leditcfns.c.
2067         * leditcfns.c: Remove file.
2069 2006-05-23  Francesco Potortì  <pot@gnu.org>
2071         * pop.c (pop_open, socket_connection, KPOP_SERVICE):
2072         Add comments explaining why the "kpop" service is never used.
2074 2006-05-13  Eli Zaretskii  <eliz@gnu.org>
2076         * makefile.w32-in (lisp1): Add fringe.elc.
2078 2006-05-02  Francesco Potortì  <pot@gnu.org>
2080         * etags.c (Perl_functions): Free space allocated for var package.
2081         (Erlang_functions): Possibly free space allocated for var last.
2082         (Prolog_functions): Possibly free space allocated for var last.
2084 2006-04-29  Dan Nicolaescu  <dann@ics.uci.edu>
2086         * sorted-doc.c (main): Initialize docs to NULL.
2088         * yow.c (yow): Free buf.
2090         * etags.c: Delete c-indentation-style local variable.
2092 2006-04-29  Richard Stallman  <rms@gnu.org>
2094         * movemail.c (main): Check for negative value from `read'.
2096         * fakemail.c (read_header): Give fatal error if input has no header.
2098 2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
2100         * b2m.c (main): Don't include <limits.h>.
2101         (TM_YEAR_BASE): New macro.
2102         (TM_YEAR_IN_ASCTIME_RANGE): Don't define if already defined, so
2103         that s/ files can override this.  Use the more-conservative range
2104         1000-9999.
2105         (main): Check for asctime returning NULL.
2106         * fakemail.c: Likewise.
2108 2006-03-27  Paul Eggert  <eggert@cs.ucla.edu>
2110         * b2m.c: Include <limits.h>.
2111         (TM_YEAR_IN_ASCTIME_RANGE): New macro.
2112         (main): Check for out-of-range time stamps.
2113         * fakemail.c: Likewise.
2115 2006-03-18  Andre Spiegel  <spiegel@gnu.org>
2117         * vcdiff: Use "echo" as a default for $echo, otherwise we'll
2118         execute $DIFF twice, and once with the wrong options.
2120 2006-02-23  Claudio Fontana  <claudio@gnu.org>
2122         * Makefile.in (install, uninstall): Add DESTDIR variable to
2123         support staged installations.
2125 2005-12-30  Eli Zaretskii  <eliz@gnu.org>
2127         * makefile.w32-in (MOUSE_SUPPORT): Add tooltip.elc.
2128         (lisp1): Add rfn-eshadow.elc, international/utf-16.elc, image.elc,
2129         international/fontset.elc, dnd.elc, mwheel.elc, and tool-bar.elc.
2130         Rearrange the list to be similar to $(shortlisp) in
2131         src/Makefile.in.
2132         (lisp2): Add language/kannada.el, emacs-lisp/syntax.elc,
2133         emacs-lisp/timer.elc, jka-cmpr-hook.elc, font-lock.elc,
2134         jit-lock.elc.  Rearrange the list to be similar to $(shortlisp) in
2135         src/Makefile.in.
2137 2005-12-22  Richard M. Stallman  <rms@gnu.org>
2139         * Makefile.in (update-game-score.o): Delete spurious final `\'.
2141 2005-11-18  Hideki IWAMOTO  <h-iwamoto@kit.hi-ho.ne.jp>  (tiny change)
2143         * etags.c (main): Cxref mode writes to stdout: do not close tagf,
2144         which was never opened.
2146 2005-10-20  Olli Savia  <ops@iki.fi>  (tiny change)
2148         * etags.c: Undef STDIN if defined.  (LynxOS defines it in system
2149         header files.)
2151 2005-09-27  Francesco Potortì  <pot@gnu.org>
2153         * etags.c: Preliminary Forth support.
2154         (prolog_pr): Cast strlen to int before comparison.
2155         (LOOKING_AT, LOOKING_AT_NOCASE): Let the preprocessor check that
2156         the second argument is indeed a literal string.
2157         (main): In append mode, sort the tags file after writing it.
2159 2005-09-27  Emanuele Giaquinta  <emanuele.giaquinta@gmail.com>  (tiny change)
2161         * etags.c (longopts, print_help, main): The -a (--append) option
2162         can be used in ctags also; for one, the Linux make file uses it.
2164 2005-09-20  Chong Yidong  <cyd@stupidchicken.com>
2166         * ebrowse.c (add_sym): Compare namespace names instead of
2167         namespace objects.  This prevents the parser from incorrectly
2168         treating classes whose superclass is in another namespace.
2170 2005-09-15  Richard M. Stallman  <rms@gnu.org>
2172         * Makefile.in (update-game-score.o): New target.
2173         Compile and link this program separately.
2174         (update-game-score${EXEEXT}): Use GETOPTDEPTS.
2176 2005-09-11  Jason Rumney  <jasonr@gnu.org>
2178         * makefile.w32-in (../src/config.h): Don't overwrite.  Print a
2179         message instead.
2180         (../src/paths.h): Remove.
2182 2005-07-27  Juanma Barranquero  <lekktu@gmail.com>
2184         * .cvsignore: Don't ignore fns-* and fns.el, which are no longer
2185         generated.  Ignore also ctags.c and getopt.h.
2187         * makefile.w32-in (clean): Delete getopt.h.
2188         (getopt.h): New rule.
2190 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
2192         Merge gnulib getopt implementation into Emacs.
2194         * Makefile.in (mostlyclean): Remove getopt.h, getopt.h-t.
2195         (GETOPT_H): New macro, from gnulib.
2196         (getopt.h): New rule, from gnulib.
2197         (GETOPTOBJS): Now autoconfigured.
2198         (GETOPTDEPS): getopt.h is now autoconfigured.
2199         (getopt.o, getopt1.o): Depend on $(GETOPT_H), not ${srcdir}/getopt.h.
2200         (getopt.o): Depend on ${srcdir}/gettext.h.
2201         (movemail.o): Depend on $(GETOPT_H).
2202         * getopt.c, getopt1.c: Sync from gnulib.
2203         * getopt_.h, getopt_int.h, gettext.h: New files, from gnulib.
2204         * getopt.h: Removed (now is getopt_.h).
2206 2005-07-13  Ken Raeburn  <raeburn@gnu.org>
2208         * pop.c: Don't include des.h (or variants thereof); krb.h will do it.
2209         (sendline): Add the \r\n to the line in a temporary buffer, and write
2210         it all at once.
2212 2005-07-04  Lute Kamstra  <lute@gnu.org>
2214         Update FSF's address in GPL notices.
2216 2005-06-13  Eli Zaretskii  <eliz@gnu.org>
2218         * makefile.w32-in ($(DOC)): Fix last change.
2220 2005-06-12  Eli Zaretskii  <eliz@gnu.org>
2222         * makefile.w32-in ($(DOC)): Depend on make-docfile.exe,
2223         temacs.exe, and the preloaded *.elc files.  This avoids
2224         unnecessary dumping and DOC rebuilding.
2226 2005-06-04  Eli Zaretskii  <eliz@gnu.org>
2228         * ntlib.h (fileno): Don't define if already defined.
2230 2005-05-25  Thien-Thi Nguyen  <ttn@gnu.org>
2232         * yow.c (setup_yow): Use EXIT_FAILURE in case no separators found.
2233         (yow): Use EXIT_FAILURE in case of memory error.
2235 2005-05-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2237         * make-docfile.c (DIRECTORY_SEP): New macro.
2238         (IS_DIRECTORY_SEP): Use it.
2240 2005-03-18  Jan Djärv  <jan.h.d@swipnet.se>
2242         * emacsclient.c: Avoid expansion of getcwd when defined as a macro.
2244 2005-03-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2246         * make-docfile.c: Undo previous change.
2248 2005-02-04  Andreas Schwab  <schwab@suse.de>
2250         * movemail.c (fatal): Accept third parameter and pass down to error.
2251         (pfatal_with_name): Pass error string as format parameter instead of
2252         as part of format string.
2253         (pfatal_and_delete): Likewise.
2254         (main): Adjust call to fatal.
2255         (xmalloc): Likewise.
2257 2005-01-29  Richard M. Stallman  <rms@gnu.org>
2259         * movemail.c (popmail): Don't use Errmsg as format string.
2261 2004-12-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2263         * make-docfile.c: Include stdlib.h even if WINDOWSNT is not defined.
2265 2004-12-15  Andreas Schwab  <schwab@suse.de>
2267         * etags.c (main): Fix typo in conversion of LONG_OPTIONS from
2268         preprocessing to compile time constant.
2270 2004-11-17  Kim F. Storm  <storm@cua.dk>
2272         * etags.c: Undo last change.
2274 2004-11-09  Kim F. Storm  <storm@cua.dk>
2276         * make-docfile.c (scan_c_file): Set defvarperbufferflag to
2277         silence compiler.
2279         * hexl.c (main): Init local var c to silence compiler.
2281         * etags.c (main, consider_token, C_entries): Add misc switch
2282         default targets to silence compiler.
2284 2004-11-09  Jan Djärv  <jan.h.d@swipnet.se>
2286         * makefile.w32-in (obj): Add all files (X and Mac) to doc so the
2287         resulting DOC file can be used on Unix/Mac also.
2289 2004-09-13  Francesco Potortì  <pot@gnu.org>
2291         * etags.c (main): When relative file names are given as argument,
2292         make them relative to the current working dir, rather than
2293         relative to the output tags file, if the latter is in /dev.
2295 2004-09-13  Francesco Potortì  <pot@gnu.org>
2297         * etags.c [EXIT_SUCCESS, EXIT_FAILURE]: Define them when no
2298         <stdlib.h> is available.
2299         (enum sym_type): New st_C_attribute value for parsing
2300         gcc's __attribute__.  Deleted st_C_typespec value.
2301         (gperf, in_word_set): Use gperf 3, options changed.  Added the
2302         __attribute__ keyword, removed all the st_C_typespec keywords,
2303         changed attribute for Java to (C_JAVA & !C_PLPL).
2304         (inattribute): New global bool, part of the C state machine.
2305         (cblev): Identifier renamed to bracelev throughout.
2306         (consider_token, C_entries): Numerous changes for making the
2307         parser more robust and adding support for __attribute__.
2309 2004-09-13  David A. Capello  <dacap@users.sourceforge.net>  (tiny change)
2311         * etags.c (Lua_suffixes, Lua_help, lang_names, Lua_functions):
2312         Support the Lua scripting language <http://www.lua.org>.
2314 2004-09-08  Francesco Potortì  <pot@gnu.org>
2316         * etags.c [LONG_OPTIONS]: Make it TRUE (ifdef) or FALSE (ifndef)
2317         for ease of use.
2319 2004-07-17  Richard M. Stallman  <rms@gnu.org>
2321         * emacsclient.c (quote_file_name): Pass COPY thru %s to output it.
2323 2004-06-01  Juanma Barranquero  <lektu@terra.es>
2325         * makefile.w32-in (obj): Add image.c.
2327 2004-05-10  Thien-Thi Nguyen  <ttn@gnu.org>
2329         * test-distrib.c (main): For failing cases, exit with `EXIT_FAILURE'.
2331 2004-05-08  Jason Rumney  <jasonr@gnu.org>
2333         * makefile.w32-in (lisp1, lisp2): Split lisp to avoid long
2334         command-lines.
2336 2004-05-08  Thien-Thi Nguyen  <ttn@gnu.org>
2338         * cvtmail.c: Throughout, replace 0 destined for `exit' arg
2339         with `EXIT_SUCCESS'.  Likewise, replace 1 with `EXIT_FAILURE'.
2340         (main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
2342         * ebrowse.c, emacsclient.c, fakemail.c, hexl.c,
2343         * make-docfile.c, movemail.c, profile.c, sorted-doc.c,
2344         * test-distrib.c, update-game-score.c, yow.c: Likewise.
2346 2004-05-08  Thien-Thi Nguyen  <ttn@gnu.org>
2348         * Makefile.in (emacsclient${EXEEXT}): Use makefile var `version'.
2350 2004-05-07  Thien-Thi Nguyen  <ttn@gnu.org>
2352         * b2m.c (GOOD, BAD): Delete macros.  Throughout,
2353         replace w/ `EXIT_SUCCESS' and `EXIT_FAILURE', respectively.
2354         (main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value.
2356         * etags.c: Likewise.
2358 2004-05-03  Jason Rumney  <jasonr@gnu.org>
2360         * makefile.nt: Remove.
2362 2004-04-26  Eli Zaretskii  <eliz@gnu.org>
2364         * make-docfile.c (IS_DIRECTORY_SEP): New macro.
2365         (put_filename): Remove unused variable len.  Use IS_DIRECTORY_SEP
2366         instead of a literal '/'.
2368 2004-04-23  Juanma Barranquero  <lektu@terra.es>
2370         * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2372 2004-04-17  Paul Eggert  <eggert@gnu.org>
2374         * rcs2log (Help): Clarify wording of the usage message.
2375         Problem reported by Alan Mackenzie in
2376         <http://mail.gnu.org/archive/html/bug-gnu-emacs/2004-04/msg00188.html>.
2378 2004-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
2380         * make-docfile.c (xmalloc): Fix return type.
2381         (put_filename): New fun.
2382         (scan_file): Use it.
2384 2004-03-09  Juanma Barranquero  <lektu@terra.es>
2386         * grep-changelog: Changes to support ChangeLog.10+.
2387         (main): Tidy up usage string.  Fix "Use of uninitialized value"
2388         warning.  Set version to 0.2.  Parse the directory listing to get
2389         any ChangeLog.n file, not just 1..9.
2390         (header_match_p, entry_match_p, print_log, parse_changelog):
2391         Remove Perl prototypes (their purpose is to help the parser, which
2392         isn't needed here, not declare arguments).
2393         (parse_changelog): Make --reverse faster on big batches by not
2394         modifying the entries list.
2396 2004-03-01  Juanma Barranquero  <lektu@terra.es>
2398         * makefile.w32-in (obj): Add fringe.c.
2400 2004-02-14  Paul Eggert  <eggert@twinsun.com>
2402         * rcs2log: Work correctly if CVSROOT specifies :fork: or
2403         :local: methods, or omits the colon between the hostname
2404         and the path.  Allow :/ in repository path, since CVS does.
2405         Fix typo: "pository" should be set from $CVSROOT, not $repository.
2406         This fixes a bug reported by Wolfgang Scherer in
2407         <http://mail.gnu.org/archive/html/bug-gnu-emacs/2004-02/msg00085.html>,
2408         along with some related bugs I discovered by inspecting how
2409         CVS itself parses $CVSROOT.
2411 2004-02-04  Jérôme Marant  <jmarant@nerim.net>  (tiny change)
2413         * emacsclient.c (decode_options): Fix handling of alternate editor.
2415 2004-01-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2417         * emacsclient.c (main): Don't use the hostname in the socket name.
2418         Look for relative socket names in the /tmp dir rather than in cwd.
2420 2004-01-24  Richard M. Stallman  <rms@gnu.org>
2422         * emacsclient.c (main): Restore errno from saved_errno,
2423         so the error message comes from socket_status.
2425 2004-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
2427         * emacsclient.c (main): Stop if socket name too long.
2428         Only try su-fallback if the socket name was not explicit.
2429         Check socket name length in su-fallback case as well.
2431 2004-01-08  Andreas Schwab  <schwab@suse.de>
2433         * emacsclient.c (main): Save errno from socket_status.
2435 2004-01-04  Andreas Schwab  <schwab@suse.de>
2437         * emacsclient.c (main): Fix socket name when using another user.
2439 2003-12-27  Paul Eggert  <eggert@twinsun.com>
2441         * rcs2log (rlog_options): Append -rbranchtag if CVS/Tag indicates
2442         a tag, and if the user has not specified an rlog option.
2443         Adapted from a suggestion by Martin Stjernholm in
2444         <http://mail.gnu.org/archive/html/bug-gnu-emacs/2003-07/msg00066.html>.
2445         (Copyright): Update to 2003.
2447 2003-12-24  Thien-Thi Nguyen  <ttn@gnu.org>
2449         * make-docfile.c (main): For return code, no longer special-case VMS.
2450         Instead, use `EXIT_SUCCESS' and `EXIT_FAILURE' from stdlib.h.
2452 2003-09-28  Andreas Büsching  <crunchy@tzi.de>  (tiny change)
2454         * emacsclient.c (quote_file_name): Print the result instead of
2455         returning it.  Fix the return type accordingly.
2456         (main): With --eval, if no file name, read from stdin.
2457         Quote file names.
2459 2003-09-10  Richard M. Stallman  <rms@gnu.org>
2461         * emacsclient.c (main): Use socket_name.
2463 2003-09-10  Andreas Büsching  <crunchy@tzi.de>  (tiny change)
2465         * emacsclient.c (socket_name): New variable.
2466         (longopts, decode_options, print_help_and_exit):
2467         Handle --socket-name argument.
2469 2003-08-25  Takaaki Ota  <Takaaki.Ota@am.sony.com>  (tiny change)
2471         * etags.c (consider_token): Check C++ `operator' only when the
2472         token len is long enough.
2474 2003-08-20  Dave Love  <fx@gnu.org>
2476         * Makefile.in: Remove obsolete references to alloca.
2478 2003-07-29  Ken Brush  <ken@wirex.com>
2480         * emacsclient.c (main)
2481         * etags.c (suggest_asking_for_help)
2482         * movemail.c (main): Fix having macros in a printf statement.
2484 2003-05-31  Juanma Barranquero  <lektu@terra.es>
2486         * makefile.w32-in (lisp): Fix references to byte-run.el,
2487         float-sup.el and map-ynp.el, which are now in emacs-lisp.
2489 2003-05-22  Dave Love  <fx@gnu.org>
2491         * update-game-score.c (difftime) [!HAVE_DIFFTIME]: Define.
2492         (strerror) [!HAVE_STRERROR && !WINDOWSNT]: New.
2494 2003-05-20  Dave Love  <fx@gnu.org>
2496         * movemail.c: Check HAVE_LIBLOCKFILE like HAVE_LIBMAIL.
2498         * Makefile.in [HAVE_LIBLOCKFILE]: Define LIBS_MAIL=-llockfile.
2500 2003-04-27  Oliver Scholz  <alkibiades@gmx.de>
2502         * update-game-score.c (read_scores): Fix corruption of scores on read.
2504 2003-04-12  Stefan Monnier  <monnier@cs.yale.edu>
2506         * emacsclient.c (main): Use new safe location for socket.
2508 2003-03-12  Tom Tromey  <tromey@redhat.com>
2510         * emacsclient.c (print_help_and_exit): Print to stdout.
2511         Exit successfully.  Added some blank lines for readability.
2512         (decode_options): Don't call print_help_and_exit in default case.
2513         Print version information to stdout.
2514         (main): Don't call print_help_and_exit.
2516 2003-02-15  Richard M. Stallman  <rms@gnu.org>
2518         * cvtmail.c: Cast result of malloc and realloc.
2519         Don't include stdlib.h, because config.h does.
2520         (malloc, realloc): Declarations deleted.
2522         * yow.c (yow): Cast result of malloc and realloc.
2523         (malloc, realloc): Declarations deleted.
2525 2003-02-11  Juanma Barranquero  <lektu@terra.es>
2527         * makefile.w32-in (lisp): Add malayalam.el and tamil.el.
2529 2003-02-08  Andreas Schwab  <schwab@suse.de>
2531         * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
2532         instead of the substitution.
2534 2003-02-04  Richard M. Stallman  <rms@gnu.org>
2536         * update-game-score.c (push_score, read_scores): Cast values
2537         of malloc and realloc.
2538         (main, lock_file): Avoid assignment inside if.
2540 2003-01-31  Joe Buehler  <jhpb@draco.hekimian.com>
2542         * Makefile.in: Use @EXEEXT@ for Cygwin.
2544 2003-01-21  Dave Love  <fx@gnu.org>
2546         * etags.c (Cplusplus_help, Cjava_help): Re-phrase and avoid
2547         column-0 `('.
2549         * yow.c: Don't include string.h.
2551 2003-01-20  Richard M. Stallman  <rms@gnu.org>
2553         * Makefile.in (rcs2log, rcs-checkin, grep-changelog, vcdiff):
2554         New targets.
2556 2003-01-06  Kim F. Storm  <storm@cua.dk>
2558         * pop.c (__P): Rename from _P to avoid problems on Cygwin.
2559         All uses changed.
2561 2002-12-18  Andrew Innes  <andrewi@gnu.org>
2563         * makefile.w32-in ($(DOC)): Use -o and -a options to make-docfile,
2564         because GNU make doesn't append when using >> redirection.
2566 2002-12-12  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2568         * b2m.pl: Make sure every message ends with a blank line, because
2569         some mbox parsers require a blank line before "From " lines.
2571 2002-12-08  Richard M. Stallman  <rms@gnu.org>
2573         * getopt.c: Do include libintl.h if HAVE_LIBINTL_H.
2574         (_): Test only HAVE_LIBINTL_H to decide what to do.
2576 2002-12-05  Richard M. Stallman  <rms@gnu.org>
2578         * getopt.c: Comment out include of libintl.h or gettext.h.
2580 2002-12-04  Richard M. Stallman  <rms@gnu.org>
2582         * Update getopt from gnulib version; changes described below.
2584         * getopt1.c: Conditionally find getopt.h.
2585         [_LIBC] (getopt_long, getopt_long_only): Do libc_hidden_def.
2587         * getopt.c (const): Move outside !HAVE_CONFIG_H conditional.
2588         (libintl.h): Include this if _LIBC.  Otherwise include gettext.h.
2589         (wchar.h): Include, maybe.
2590         (attribute_hidden): Define if not defined.
2591         (__getopt_initialized): Use attribute_hidden.
2592         (__libc_argc, __libc_argv): Rename from original_argc, etc.
2593         (__getopt_nonoption_flags, nonoption_flags_max_len)
2594         (nonoption_flags_len): Conditional on USE_NONOPTION_FLAGS.
2595         (SWAP_FLAGS): New definitions.
2596         (exchange): Test USE_NONOPTION_FLAGS.
2597         (_getopt_initialize): Test USE_NONOPTION_FLAGS.
2598         (_getopt_internal): Error if argc < 1.  New local var print_errors.
2599         Improve test for ambiguous long option.
2600         Add LIBIO support for error message output.
2601         (NONOPTION_P): Test USE_NONOPTION_FLAGS.
2603         * getopt.h: Maybe include ctype.h.
2604         Treat __cplusplus like __STDC__.
2605         (decls): Use __ in arg names.
2607 2002-12-02  Stephen Eglen  <stephen@gnu.org>
2609         * emacsclient.c (main): Tell user how to start server within Emacs
2610         if socket could not be found.
2612 2002-12-02  Richard M. Stallman  <rms@gnu.org>
2614         * emacsclient.c (main): Test HAVE_GETCWD rather than BSD_SYSTEM.
2616 2002-11-19  Ben Key  <bkey1@tampabay.rr.com>
2618         * makefile.w32-in: Fixed a bug that caused the documentation for
2619         the built in function play-sound-internal not to be included in
2620         /etc/DOC.
2622 2002-11-18  Dave Love  <fx@gnu.org>
2624         * update-game-score.c: Include unistd.h, string.h, stdlib.h,
2625         fcntl.h, stdarg.h conditionally.
2626         (_GNU_SOURCE, __attribute__): Don't define.
2627         (optarg, optind, opterr): Declare.
2628         (lose, lose_syserr): Use NO_RETURN.
2629         (get_user_id): Use P_.
2631 2002-11-17  Richard M. Stallman  <rms@gnu.org>
2633         * Makefile.in (${archlibdir}): Ignore errors operating on $(gamedir).
2635 2002-11-14  Dave Love  <fx@gnu.org>
2637         * movemail.c (pop_retr): Declare comment.
2639         * make-docfile.c (read_c_string_or_comment): Declare msgno.
2641         * Makefile.in (YACC): Deleted.
2643 2002-10-19  Andreas Schwab  <schwab@suse.de>
2645         * Makefile.in (${archlibdir}): Always create $(gamedir).
2646         (update-game-score): Pass $(gamedir) as HAVE_SHARED_GAME_DIR.
2648 2002-10-04  Juanma Barranquero  <lektu@terra.es>
2650         * makefile.w32-in (lisp): Load devanagari.el, not .elc.
2652 2002-09-30  Markus Rost  <rost@math.ohio-state.edu>
2654         * emacsclient.c (main): Remove reference to SERVER_HOME_DIR
2655         completely.
2657 2002-09-27  Stefan Monnier  <monnier@cs.yale.edu>
2659         * emacsclient.c: Remove SYSV support.
2660         (eval, display): New vars.
2661         (longopts): Add --eval and --display.
2662         (decode_options): Add -e and -d processing.
2663         (print_help_and_exit): Update the usage string.
2664         (main): Add support for --eval and --display.
2665         (main): Always use /tmp and non-qualified hostname.
2667 2002-09-25  Stefan Monnier  <monnier@cs.yale.edu>
2669         * emacsserver.c: Remove.
2671 2002-09-17  Stefan Monnier  <monnier@cs.yale.edu>
2673         * emacsclient.c (quote_file_name): Quote \n.
2674         (main): Print a final \n when needed.
2676 2002-09-03  Francesco Potortì  <pot@gnu.org>
2678         * etags.c (regex_tag_multiline, readline): Never pass pfnote a
2679         string that cannot be freed.
2681 2002-08-30  Francesco Potortì  <pot@gnu.org>
2683         * etags.c (consider_token, C_entries): Switch to C++ parsing when
2684         auto-detection is enabled and the `::' qualifier is met.
2685         (consider_token, C_entries): Several bugs corrected that tagged
2686         some declarations even though --declarations was not used.
2687         (plainc): New macro.
2688         (C_entries): Use it.
2689         (C_entries): Several cosmetic changes.
2690         (C_entries): Invalidate the token is some cases.
2692 2002-08-29  Francesco Potortì  <pot@gnu.org>
2694         * etags.c (C_entries): Correct a problem with const C++ funcs.
2695         (ignoreindent): Rename from noindentypedefs.
2696         (cjava, cplpl): They are now macros instead of local vars.
2698 2002-08-28  Francesco Potortì  <pot@gnu.org>
2700         * etags.c (HTML_labels): Tag ID= also.
2702 2002-08-27  Francesco Potortì  <pot@gnu.org>
2704         * etags.c (Ada_funcs): Do not tag "use type Xxxx;".
2706         * etags.c (HTML_labels): New language HTML.
2707         (etags_strcasecmp): Like BSD's, for compatibility.
2708         (strcaseeq): Make it into a macro.
2710         * etags.c (make_tag): Never generate null length tag names.
2711         (linebuffer_init): Rename from initbuffer.  All callers changed.
2712         (pattern): Structure renamed to `regexp', member regex renamed to
2713         pattern.
2714         (node_st): Member pat renamed to regex.
2715         (pattern); New member force_explicit_name, for future use.
2716         Now always set to true, cannot be reset.
2717         (add_regex, regex_tag_multiline, readline): Use it.
2718         (main): Free some global structures.
2719         (fdesc): New member `written'.
2720         (readline, process_file): Initialise it.
2721         (put_entries): Set it.
2722         (main): Use it to create entries for files without tags.
2723         (total_size_of_entries): Do not count invalid tags.
2725 2002-08-19  Stefan Monnier  <monnier@cs.yale.edu>
2727         * make-docfile.c (scan_keyword_or_put_char, write_c_args): Use `fn'
2728         for the function name in the usage info.
2730 2002-07-31  Colin Walters  <walters@gnu.org>
2732         * update-game-score.c (P_): New macro.  Use it for all prototypes.
2733         (lose): Don't use varargs.
2734         (lose_syserr): New function.
2736         * update-game-score.c: Change all functions to K&R style.
2738 2002-07-30  Andreas Schwab  <schwab@suse.de>
2740         * Makefile.in (localstatedir): New variable.
2742 2002-07-29  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2744         * b2m.pl: Fix regexp for finding return address fields.
2746 2002-07-15  Stefan Monnier  <monnier@cs.yale.edu>
2748         * make-docfile.c (scan_c_file): Warn about missing `usage' info.
2750 2002-07-05  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
2752         * b2m.pl: Obey the rmail file and use the unpruned header properly.
2754 2002-06-26  Pavel Janík  <Pavel@Janik.cz>
2756         * b2m.pl: New file.
2758 2002-06-21  Francesco Potortì  <pot@gnu.org>
2760         * etags.c (F_getit, Fortran_functions, Ada_getit, Asm_labels)
2761         (Python_functions, PHP_functions, PHP_functions, PHP_functions)
2762         (PHP_functions, PHP_functions, Cobol_paragraphs)
2763         (Makefile_targets, Postscript_functions, Texinfo_nodes)
2764         (prolog_pr, erlang_func, erlang_attribute)
2765         (Perl_functions, Perl_functions, Pascal_functions)
2766         (TeX_commands, get_tag): Use make_tag instead of pfnote.
2767         (get_tag): Prototype changed, all callers changed.
2769 2002-06-20  Francesco Potortì  <pot@gnu.org>
2771         * etags.c: Implement implicit tag names, that is, unnamed tags
2772         whose name is automatically deduced by etags.el.  The advantage is
2773         that there is no explicit tag name in most tags, so the size of
2774         the tags file is reduced, yet find-tag is able to do a match as
2775         accurate as with named tags.  See the comment in make_tag for details.
2776         (make_tag): New function (was the disabled function new_pfnote).
2777         (make_C_tag): Use it.
2779 2002-06-19  Francesco Potortì  <pot@gnu.org>
2781         * etags.c (add_regex): Invalid regexp modifiers are ignored.
2782         (Makefile_targets): Tag variables unless --no-globals.
2783         (LOOP_ON_INPUT_LINES): Serious bug corrected.
2785 2002-06-13  Francesco Potortì  <pot@gnu.org>
2787         * etags.c (erlang_atom, erlang_attribute): Bugs corrected.
2788         (invalidate_nodes): Bug corrected.
2789         (print_help): Better help for regexps.
2791 2002-06-13  Juanma Barranquero  <lektu@terra.es>
2793         * makefile.w32-in (lisp): Add international/ucs-tables.elc and
2794         font-core.elc.
2796 2002-06-12  Francesco Potortì  <pot@gnu.org>
2798         * etags.c: New multi-line regexp and new regexp syntax.
2799         (arg_type): at_icregexp label removed (obsolete).
2800         (pattern): New member multi_line for multi-line regexps.
2801         (filebuf): A global buffer containing the whole file as a string
2802         for multi-line regexp matching.
2803         (need_filebuf): Global flag raised if multi-line regexps used.
2804         (print_help): Document new regexp modifiers, remove references to
2805         obsolete option --ignore-case-regexp.
2806         (main): Do not set regexp syntax and translation table here.
2807         (main): Treat -c option as a backward compatibility hack.
2808         (main, find_entries): Init and free filebuf.
2809         (find_entries): Call regex_tag_multiline after the regular parser.
2810         (scan_separators): Check for unterminated regexp and return NULL.
2811         (analyse_regex, add_regex): Remove the ignore_case argument, which
2812         is now a modifier to the regexp.  All callers changed.
2813         (add_regex): Manage the regexp modifiers.
2814         (regex_tag_multiline): New function.  Reads from filebuf.
2815         (readline_internal): If necessary, copy the whole file into filebuf.
2816         (readline): Skip multi-line regexps, leave them to regex_tag_multiline.
2818 2002-06-11  Francesco Potortì  <pot@gnu.org>
2820         * etags.c (add_regex): Better check for null regexps.
2821         (readline): Check for regex matching null string.
2822         (find_entries): Reorganization.
2824 2002-06-07  Francesco Potortì  <pot@gnu.org>
2826         * etags.c (scan_separators): Support all character escape
2827         sequences supported by Gcc.
2828         (find_entries): Rewind unconditionally.
2829         (find_entries): Do not call language functions directly, now calls
2830         itself.
2831         (find_entries): Do general initialisations here.
2832         (CNL_SAVE_DEFINEDEF, C_entries, LOOP_ON_INPUT_LINES, F_getit)
2833         (Ada_getit, Pascal_functions, Pascal_functions)
2834         (prolog_skip_comment): Do not do them here.
2835         (readline_internal): Increment lineno here.
2836         (readline): Conditionally undo readline_internal increment.
2837         (readline): Do not return a value.
2839 2002-06-06  Francesco Potortì  <pot@gnu.org>
2841         * etags.c: New option --parse-stdin=FILE.
2842         (enum arg_type): New label at_stdin.
2843         (STDIN): New constant.
2844         (parsing_stdin): New flag.
2845         (longopts): New option --parse-stdin=NAME.
2846         (print_help): Document it.
2847         (main): Handle it.
2848         (process_file): Split into process_file and process_file_name.
2849         (process_file_name): New function.
2851         * etags.c: Improvements and bug squashing in TeX handling.
2852         (TeX_commands): Skip comments.
2853         (TEX_defenv): Now contains more constructs.
2854         (TEX_cmt): Make it a static char and move it before TeX_commands.
2855         (TeX_commands): Shorten the tag to the brace after the name.
2856         (TeX_commands): Names now include the initial backslash.
2857         (TeX_commands): Names do not include numeric args #n.
2858         (TeX_commands): Correct line char number in tags.
2859         (TEX_tabent, TEX_token): Deleted.
2860         (TeX_commands, TEX_decode_env): Streamlined.
2862 2002-06-05  Francesco Potortì  <pot@gnu.org>
2864         * etags.c (main): Avoid a buffer overrun with sprintf.
2866 2002-05-30  Richard M. Stallman  <rms@gnu.org>
2868         * Makefile.in (LIBS_MAIL): Rename from LIB_MAIL.
2869         (LIBS_MOVE): Rename from MOVE_LIBS.
2871 2002-05-26  Paul Eggert  <eggert@twinsun.com>
2873         Reinstate the following change from 2002-03-22, which was
2874         inadvertently lost on 2002-04-13.
2876         * etags.c (main): Use `sort -o TAGFILE TAGFILE' instead of
2877         `sort TAGFILE -o TAGFILE', as POSIX 1003.1-2001 disallows
2878         the latter usage.
2880 2002-05-17  Eli Zaretskii  <eliz@is.elta.co.il>
2882         * pop.c (socket_connection): Move the code to resolve the POP
2883         host right before trying to connect with it.
2885 2002-05-05  Eli Zaretskii  <eliz@is.elta.co.il>
2887         * tcp.c: Delete file since the TCP emulation is no longer in use on any
2888         platform.
2890 2002-04-28  Colin Walters  <walters@verbum.org>
2892         * Makefile.in (${archlibdir}): Don't conditionalize on
2893         HAVE_SHARED_GAME_DIR.  Instead, test at installation time whether
2894         or not we have access to the specified game user.
2896         * update-game-score.c (SCORE_FILE_PREFIX): Delete.
2897         (main): New argument -d, for specifying directory.
2898         (usage): Document.
2899         (get_user_id): Compute.
2900         (get_home_dir): Deleted.
2901         (get_prefix): New function, taken from main.
2902         (main): Check whether or not we are running setuid.  Move prefix
2903         computation to get_prefix.  Don't call getpwent; we don't need to
2904         any more.  Instead, move it to get_user_id().
2906 2002-04-24  Pavel Janík  <Pavel@Janik.cz>
2908         * ebrowse.c (skip_initializer): Return void.
2910 2002-04-23  Colin Walters  <walters@verbum.org>
2912         * update-game-score.c (read_score) [HAVE_GETDELIM]: Trim trailing
2913         space.
2915 2002-04-22  Francesco Potortì  <pot@gnu.org>
2917         * etags.c (last_node): Make it a global variable.
2918         (process_file): Print the tags from the nodes as soon as
2919         possible, and delete the nodes.  This brings down the memory
2920         occupancy as etags to almost the same level as when the #line
2921         directives were not parsed.
2922         (free_fdesc): New function.
2923         (find_entries): Use it.
2924         (invalidate_nodes): In etags mode, do not just mark the nodes as
2925         invalid, do delete them.
2927 2002-04-21  Gerd Moellmann  <gerd@gnu.org>
2929         * ebrowse.c (add_declarator): Test *CLS instead of CLS.
2931 2002-04-16  Eli Zaretskii  <eliz@is.elta.co.il>
2933         * update-game-score.c: Move config.h before the other headers, to
2934         avoid compiler warnings.
2936 2002-04-16  Francesco Potortì  <pot@gnu.org>
2938         * etags.c (find_entries): Bug fix in list management.
2940 2002-04-15  Francesco Potortì  <pot@gnu.org>
2942         * etags.c (get_language_from_filename): Add one argument.
2943         (strcaseeq): New function.
2944         (get_language_from_filename): Use it to do a case insensitive
2945         comparison if called with appropriate args.
2946         (find_entries): Try with case insensitive match.
2947         (process_file): Bug fixed.
2949 2002-04-13  Francesco Potortì  <pot@gnu.org>
2951         * etags.c (find_entries): Delete tags previously obtained from
2952         file xxx.c's #line directives when parsing file xxx.y.  This is
2953         generally done for automatically generated files containing
2954         #line directives.  This handles the case when xxx.y is tagged
2955         before xxx.c, and the entries of xxx.c pointing to xxx.y should
2956         be discarded.
2957         (language): Add the metasource member.  Initializers changed.
2958         (invalidate_nodes): New function.
2959         (readline): Discard lines after having found a #line
2960         directive pointing to an already tagged file.  This handles the
2961         case when xxx.y is tagged before xxx.c, and the entries of
2962         xxx.c pointing to xxx.y should be discarded.
2963         (fdesc): New structure for keeping track of input files.
2964         (fdesc): Remove `file' member (a string) and use instead a pointer
2965         to a file description structure.
2966         (curfile, curfiledir, curtagfname, curlang, nocharno)
2967         (forced_lang): Global variables removed in favor of fdhead and
2968         curfdp, pointers to file description structures.
2969         (longopts, main, print_help): Use the CTAGS conditional to include
2970         or exclude options that work on etags or ctags only.
2971         (process_file, find_entries, pfnote, add_node, put_entries)
2972         (readline): Use fdhead and curfdp.
2973         (process_file, find_entries): Do not take an arg string, all
2974         callers changed.
2976         * etags.c (longopts, print_help, main): Test CTAGS to disallow
2977         options that are not right for either etags or ctags.
2979         * etags.c (number_len, total_size_of_entries): Define them also
2980         in CTAGS mode, because gcc does not compile all refs away.
2982 2002-04-14  Colin Walters  <walters@debian.org>
2984         * update-game-score.c (lock_file): If the lock file is older than
2985         an hour, delete it.  Reset attempts to zero if we have to break
2986         the lock.
2988 2002-04-14  Andreas Schwab  <schwab@suse.de>
2990         * update-game-score.c (read_score): Fix type of second parameter
2991         of getdelim to be of type size_t instead of int.  Use 0 instead of
2992         ESUCCES.
2994 2002-04-10  Colin Walters  <walters@verbum.org>
2996         * update-game-score.c (toplevel): Include stdarg.h.
2997         (MAX_DATA_LEN, MAX_SCORES): New.
2998         (SCORE_FILE_PREFIX): If HAVE_SHARED_GAME_DIR is not defined,
2999         default to ~/.emacs.d/games.
3000         (get_user_id): Don't zero uid in the case where we can't get the
3001         username.
3002         (lose): New function.
3003         (main): Actually use `max', and default it to MAX_SCORES.
3004         Correctly handle new default for SCORE_FILE_PREFIX.  Use `lose'
3005         function.
3006         (read_score): Handle the case of reading unamelen characters, then
3007         finishing.  Use mktemp if mkstemp isn't available.
3008         (lock_file, unlock_file): Delete unused versions.
3009         (lock_file): Always sleep, even if we unlinked the lock file.
3011         * Makefile.in (gamedir, gameuser): New variables.
3012         (toplevel, UTILITIES): Add update-game-score.
3013         (${archlibdir}): Handle HAVE_SHARED_GAME_DIR.
3015 2002-04-07  Colin Walters  <walters@verbum.org>
3017         * update-game-score.c (SCORE_FILE_PREFIX): Don't hardcode.
3018         (get_user_id): Take struct passwd as an argument.
3019         (get_home_dir): New function.
3020         (main): Read in user information here.  Discover home directory if
3021         necessary.
3022         (read_score): Trim newline only in `getline' case.
3024 2002-04-05  Colin Walters  <walters@debian.org>
3026         * update-game-score.c (toplevel): Include pwd.h.
3027         (struct score_entry): Add username field.
3028         (push_score): Use it.
3029         (get_user_id): New function.
3030         (main): Don't malloc excessively.
3031         (main): Use username field.
3032         (read_score): Read it.
3033         (push_score): Handle it.
3034         (write_scores): Write it.
3035         (read_score): Handle arbitrary length data.
3037 2002-03-30  Eli Zaretskii  <eliz@is.elta.co.il>
3039         * ebrowse.c (add_declarator): Fix the first call to add_member_defn.
3041 2002-03-29  Gerd Moellmann  <gerd@gnu.org>
3043         * ebrowse.c (add_declarator, skip_initializer): New functions.
3044         (declaration): Use them.
3046 2002-03-28  Jason Rumney  <jasonr@gnu.org>
3048         * makefile.w32-in (lisp): Move backquote.elc into emacs-lisp.
3050 2002-03-27  Colin Walters  <walters@debian.org>
3052         * update-game-score.c: New file.
3054 2002-03-22  Paul Eggert  <eggert@twinsun.com>
3056         * etags.c (main): Use `sort -o TAGFILE TAGFILE' instead of
3057         `sort TAGFILE -o TAGFILE', as POSIX 1003.1-2001 disallows
3058         the latter usage.
3060 2002-03-12  Francesco Potortì  <pot@gnu.org>
3062         * etags.c (Python_functions): Skip spaces at beginning of lines.
3063         (Python_functions, PHP_functions): Name tags, for ctags' sake.
3064         (TeX_commands): Name tags.  Correction of old disabled code.
3066         * etags.c (curfiledir, curtagfname): New global variables.
3067         (process_file): Initialise them.
3068         (readline): Canonicalize the name found in #line directive.
3070 2002-03-06  Jason Rumney  <jasonr@gnu.org>
3072         * etags.c (put_entries): Use #if !CTAGS, to fix link error on
3073         compilers that don't optimize out dead code.
3075 2002-03-05  Francesco Potortì  <pot@gnu.org>
3077         * etags.c: Honour #line directives.
3078         (no_line_directive): New global var; set it for old behavior.
3079         (main): Remove some #ifdef in the getopt switch.
3080         (add_node, put_entries): Code added to merge different chunks of
3081         nodes referring to the same file.  Currently the tags are just
3082         appended, without any check for duplicates.
3083         (Perl_functions): Do not special case ctags.
3084         (readline): Identify #line directives and do the right thing.
3085         (nocharno, invalidcharno): New global vars.
3086         (process_file): Reset nocharno.
3087         (readline): Set nocharno.
3088         (pfnote): Read nocharno and maybe put invalidcharno in node.
3089         (total_size_of_entries, put_entries): Use invalidcharno.
3091         * etags.c: Keep the whole tag table in memory, even in etags mode.
3092         (main): Call put_entries here even in CTAGS mode.
3093         (main, process_file): Check the return values of fclose and pclose.
3094         (process_file): Do not call put_entries after parsing each file.
3095         (process_file): Canonicalise file names even for ctags.
3096         (process_file): Set curfile here...
3097         (find_entries): ... not here any more.
3098         (add_node): In etags mode, build a linked list of entries (on
3099         right pointer) for each file, and link the first entry of each
3100         file on left nodes.
3101         (put_entries): Print here the name of the file.
3102         (put_entries): Print the entries starting from the first file.
3103         (number_len, total_size_of_entries): Define these only in etags
3104         mode, make the second work only on the right nodes.
3106         * etags.c: Make all global variables static.
3108 2002-02-25  Juanma Barranquero  <lektu@terra.es>
3110         * makefile.w32-in (lisp): Add missing backslash.
3112 2002-02-24  Jason Rumney  <jasonr@gnu.org>
3114         * makefile.w32-in (WINNT_SUPPORT, MOUSE_SUPPORT, lisp): Revert to
3115         using .elc files.
3116         (lisp): Sync with list in src/Makefile.in.
3117         (VMS_SUPPORT, MSDOS_SUPPORT): Define, so DOC files can be shared.
3119 2002-02-10  Paul Eggert  <eggert@twinsun.com>
3121         * rcs-checkin: Use `sort -k 2', not `sort +1', as POSIX 1003.1-2001
3122         disallows the old syntax.
3124 2002-02-03  Paul Eggert  <eggert@twinsun.com>
3126         * rcs2log (Copyright): Update to 2002.
3127         (AWK, TMPDIR): Work around portability problem in broken shells that
3128         don't understand `: ${VAR=val}'.
3129         (SORT_K_OPTIONS): New var, for hosts that conform to POSIX 1003.1-2001.
3130         Prefer the new -k option to the traditional +M -N option.
3132 2002-01-01  Pavel Janík  <Pavel@Janik.cz>
3134         * b2m.c (main): Parenthesize assignment when used as truth value
3135         to prevent gcc warnings.
3137         * fakemail.c: Include <config.h>.
3139 2001-12-29  Pavel Janík  <Pavel@Janik.cz>
3141         * cvtmail.c, emacsclient.c, emacsserver.c, pop.c, sorted-doc.c,
3142         * yow.c: Include <config.h>.
3144 2001-12-21  Francesco Potortì  <pot@gnu.org>
3146         * etags.c (Perl_functions): Tag packages and use them in sub tags.
3147         (get_tag): Return a pointer to the tag that is found.
3149         * etags.c (LOOKING_AT): Use !intoken instead of iswhite.
3150         (F_takeprec): Rename from takeprec.  All callers changed.
3151         (F_getit): Rename from getit.  All callers changed.
3152         (nocase_tail): Rename from tail.  All callers changed.
3153         (Ada_getit): Rename from adagetit.  All callers changed.
3154         (L_getit): Simplify by using get_tag.
3155         (Perl_functions, Postscript_functions, erlang_attribute): Use the
3156         modified LOOKING_AT.
3157         (notinname): Remove '[' and added ')' to the recognised chars.
3158         (LOOKING_AT, get_tag, PHP_functions): Use notinname.
3159         (Ada_getit, Ada_funcs, Python_functions, Scheme_functions):
3160         Clarified, using strneq or notinname.
3161         (L_isdef, L_isquote): Removed.
3162         (Lisp_functions, L_getit): Clarified.
3164         * etags.c (P_): Rename to __P for consistency with config.h.
3165         [HAVE_CONFIG_H]: Let config.h deal with __P.
3166         [__STDC__] [!HAVE_CONFIG_H]: Define PTR as in config.h.
3167         [!__STDC__] [!HAVE_CONFIG_H]: Do not undefine static, because
3168         gperf code needs it.
3169         [HAVE_CONFIG_H] [!PTR]: Define PTR (for use with XEmacs).
3170         [HAVE_CONFIG_H] [!__P]: Define __P (for use with XEmacs).
3171         (xmalloc, xrealloc): Use PTR instead of long *.
3172         (bool): Make it a define, not a typedef, for C++ compilers.
3173         (pattern): Members renamed to avoid name clash in some C++ compilers.
3174         (get_language_from_langname): Use const argument.
3176 2001-12-22  Pavel Janík  <Pavel@Janik.cz>
3178         * makefile.nt, makefile.w32-in: Remove mocklisp files.
3180 2001-12-19  Pavel Janík  <Pavel@Janik.cz>
3182         * emacsserver.c: Conditionally include config.h.
3184         * fakemail.c: Likewise.
3186         * emacsclient.c: Include "config.h", not <../src/config.h>.
3187         (main): Parenthesize assignment when used as truth value to
3188         prevent gcc warnings.
3190         * ebrowse.c: Include stdlib.h and string.h conditionally.
3192 2001-12-18  Eli Zaretskii  <eliz@is.elta.co.il>
3194         * yow.c (main): Use time_t, not long, to avoid a compiler warning.
3196 2001-12-18  Pavel Janík  <Pavel@Janik.cz>
3198         * test-distrib.c: Fix previous change.
3200 2001-12-18  Dave Love  <fx@gnu.org>
3202         * test-distrib.c: Conditionally include fcntl.h.
3204         * fakemail.c: Include "config.h", not <../src/config.h>.
3205         (_XOPEN_SOURCE): Define as 500.
3207         * emacsserver.c: Include "config.h", not <../src/config.h>.
3209         * cvtmail.c: Include config.h, stdlib.h.
3210         (xmalloc, xrealloc, skip_to_lf sysfail): Prototype.
3212         * yow.c: Conditionally include various headers.  Use "epaths.h",
3213         not <../src/epaths.h>.
3214         (malloc, realloc) [!HAVE_STDLIB_H]: Prototype.
3216 2001-12-12  Francesco Potortì  <pot@gnu.org>
3218         * etags.c (PHP_functions): New function for parsing PHP.
3219         (LOOKING_AT): New macro.
3220         (Perl_functions, Python_functions, PHP_functions)
3221         (Scheme_functions, Texinfo_nodes): Use it.
3222         (Perl_functions): Use strneq.
3223         (prolog_pred): Rename to prolog_pr.
3224         (prolog_pr): Recognise Prolog rules in addition to predicates.
3225         [ETAGS_REGEXPS] [!HAVE_CONFIG_H] [__CYGWIN__]: Prevent
3226         unmodified compile, as Cygwin's regex.h is incompatible with us.
3227         [!HAVE_CONFIG_H] [!__STDC__]: #define const as the empty string.
3229 2001-12-11  Richard M. Stallman  <rms@gnu.org>
3231         * Makefile.in (clean): Don't delete ../etc/DOC*.
3233 2001-12-11  Pavel Janík  <Pavel@Janik.cz>
3235         * COPYING: Moved back.
3237 2001-11-30  Andrew Innes  <andrewi@gnu.org>
3239         * makefile.w32-in (FACE_SUPPORT):
3240         (MOUSE_SUPPORT):
3241         (FLOAT_SUPPORT):
3242         (WINNT_SUPPORT):
3243         (lisp): Reference .el files instead of .elc files, to simplify
3244         bootstrapping.
3245         ($(DOC)): Change dependency to just `make-docfile'.
3247 2001-11-29  Pavel Janík  <Pavel@Janik.cz>
3249         * COPYING: Removed.
3251 2001-11-28  Paul Eggert  <eggert@twinsun.com>
3253         * rcs2log (Copyright): Add '(C)' as per coding guidelines.
3255         The following changes are derived from suggestions by Bob Chapman
3256         <rechapman@compuserve.com>.
3258         * rcs2log (printlogline): Also allow tab and newline to separate
3259         '(function):' from the rest of a comment.
3260         (reformat the sorted log entries): Require date and author to
3261         match the clumpname.
3263 2001-11-16  Gerd Moellmann  <gerd@gnu.org>
3265         * ebrowse.c (matching_regexp): Escape '\\'.
3267 2001-11-15  Pavel Janík  <Pavel@Janik.cz>
3269         * Makefile.in: Add support for --program-prefix, --program-suffix
3270         and --program-transform-name options.
3272 2001-11-03  Richard M. Stallman  <rms@gnu.org>
3274         * cvtmail.c (xrealloc): Always pass two args to `fatal'.
3276         * movemail.c (popmail): Always pass two args to `error'.
3278 2001-10-24  Ken Raeburn  <raeburn@gnu.org>
3280         * Makefile.in (HESIODLIB) [HAVE_LIBHESIOD]: Set to include
3281         -lhesiod and maybe -lresolv.
3282         (CRYPTOLIB) [HAVE_LIBK5CRYPTO]: Use -lk5crypto for Kerberos
3283         support if it's available.
3285 2001-10-21  Miles Bader  <miles@gnu.org>
3287         * make-docfile.c (struct rcsoc_state): New type.
3288         (read_c_string_or_comment): Add SAW_USAGE
3289         parameter, and implement scanning for a `usage:' keyword.
3290         Use a variable of type `rcsoc_state' to hold most of our state.
3291         (put_char): Add STATE parameter, and remove all other parameters
3292         except CH.  Use STATE to get access to all needed state.
3293         (scan_keyword_or_put_char): New function.
3294         (scan_c_file): Pass SAW_USAGE argument to read_c_string_or_comment.
3295         Don't output a usage-string if there was one in the doc-string.
3297 2001-10-20  Gerd Moellmann  <gerd@gnu.org>
3299         * (Version 21.1 released.)
3301 2001-10-19  Pavel Janík  <Pavel@Janik.cz>
3303         * b2m.c: Properly spell the name of Emacs.
3305 2001-10-17  Miles Bader  <miles@gnu.org>
3307         * make-docfile.c (put_char): New function.
3308         (read_c_string_or_comment): Strip trailing spaces and newlines.
3310 2001-10-16  Miles Bader  <miles@gnu.org>
3312         * make-docfile.c (scan_c_file): Handle `new style' doc strings in
3313         comments [with `doc:' keyword prefix].
3315 2001-10-15  Gerd Moellmann  <gerd@gnu.org>
3317         * make-docfile.c (read_c_string_or_comment): Don't drop a '*'
3318         in a C doc comment.
3320 2001-10-13  Gerd Moellmann  <gerd@gnu.org>
3322         * make-docfile.c (read_c_string_or_comment): Rename from
3323         read_c_string.  Add parameter COMMENT.  Read C-style comments.
3324         (scan_c_file): Handle doc strings in C comments.
3326 2001-10-12  Andrew Innes  <andrewi@gnu.org>
3328         * makefile.nt (ALL): Do not include fakemail.
3330         * makefile.w32-in (install): Do not copy fakemail.
3332 2001-10-10  Jason Rumney  <jasonr@gnu.org>
3334         * makefile.w32-in (ALL): Do not include fakemail.
3336         * makefile.nt (install): Ditto.
3338 2001-10-09  Gerd Moellmann  <gerd@gnu.org>
3340         * emacsserver.c (main): Cast geteuid in sprintf to int.
3342         * emacsclient.c (main): Cast isdigit argument to unsigned char.
3344 2001-10-07  Pavel Janík  <Pavel@Janik.cz>
3346         * profile.c: Include config.h, not ../src/config.h.
3347         Include systime.h, not ../src/systime.h.
3349 2001-10-05  Gerd Moellmann  <gerd@gnu.org>
3351         * Branch for 21.1.
3353 2001-10-01  Alexander Zhuckov  <zuav@int.spb.ru>
3355         * ebrowse.c (struct alias): Add two new struct members: NAMESP and
3356         ALIASEE to help work with namespace aliases.
3357         (struct sym): Remove struct member NAMESP_ALIASES.
3358         (namespace_alias_table): New variable.
3359         (make_namespace): Add parameter CONTEXT.
3360         (check_namespace): New function.
3361         (find_namespace): Add parameter CONTEXT.
3362         (check_namespace_alias): New function.
3363         (register_namespace_alias): Change type of parameter OLD_NAME.
3364         Search for already defined alias in NAMESPACE_ALIAS_TABLE.
3365         (check_namespace): New function.
3366         (enter_namespace): Call find_namespace with CONTEXT parameter.
3367         (match_qualified_namespace_alias): New function.
3368         (parse_qualified_ident_or_type): Fix typo in comment.
3369         While parsing qualified ident or type update namespace context and
3370         restore it on exit.
3371         (parse_qualified_param_ident_or_type): Fix typo in comment.
3372         (globals): Change handling of namespace aliases.
3373         (version): Add year 2001.
3375 2001-09-15  Eli Zaretskii  <eliz@is.elta.co.il>
3377         * etags.c (analyse_regex): If regex_arg is NULL, return
3378         immediately after a call to free_patterns.
3380 2001-09-05  Paul Eggert  <eggert@twinsun.com>
3382         * rcs2log (Help, mainline code): Add new option -L FILE.
3383         (Copyright): Update year.
3384         (LANG, LANGUAGE, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES)
3385         (LC_NUMERIC, LC_TIME): New shell vars, to make sure we live in the
3386         C locale.
3387         (mainline code): Handle nonstandard -u option differently, by
3388         transforming it to standard form.  Check for "Working file: ", not
3389         "Working file:".  Allow file names with spaces.
3390         (SOH, rlogfile): New shell vars.
3391         (rlogout): Remove.  Its old functionality is mostly migrated to
3392         rlogfile.
3394         Append ';;' to the last arm of every case statement, for
3395         portability to ancient broken BSD shells.
3397         (logins): Fix bug; was not being computed at all, lowering performance.
3398         (pository): New var.  This fixes some bugs where repositories are
3399         remote, or have trailing slashes.
3400         (authors): $llogout is never an empty shell var, so don't worry
3401         about that possibility.
3402         (printlogline, mainline code): Fix bug with SOH's being put into
3403         the output.
3405 2001-09-01  Eli Zaretskii  <eliz@is.elta.co.il>
3407         * ebrowse.c (SEEK_END): #define if not defined by system headers.
3408         Suggested by Dave Love <d.love@dl.ac.uk>.
3410 2001-08-29  Eli Zaretskii  <eliz@is.elta.co.il>
3412         * makefile.nt (lisp): Synchronize with src/Makefile.in.
3413         * makefile.w32-in (lisp): Ditto.
3415 2001-07-25  Juanma Barranquero  <lektu@terra.es>
3417         * grep-changelog (parse_changelog): Remove unused local variable.
3419         * grep-changelog (main): Add new option --reverse.
3420         (print_log): Use it.
3421         (parse_changelog): Use it.
3423 2001-07-20  Gerd Moellmann  <gerd@gnu.org>
3425         * grep-changelog: Remove RCS Id keyword.
3427 2001-07-20  Juanma Barranquero  <lektu@terra.es>
3429         * grep-changelog (parse_changelog): Add tests for defined values
3430         to quiet warning from Perl 5.005 or above.
3431         (entry_match_p, header_match_p): Fix handling of null or empty
3432         argument to prevent duplicate headers.
3434         * grep-changelog (main, parse_changelog): Make "use strict"-clean.
3436 2001-07-17  Jan Nieuwenhuizen  <janneke@gnu.org>
3438         * emacsclient.c (print_help_and_exit): Fix help message for
3439         +LINE:COLUMN option.
3441 2000-07-17  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3443         * emacsclient.c (main): Add support for +LINE:COLUMN command line
3444         argument.
3446 2001-07-16  Gerd Moellmann  <gerd@gnu.org>
3448         * ebrowse.c (main): Check that the output file exists and
3449         is non-empty if invoked with `--append'.
3451 2001-05-14  Francesco Potortì  <pot@gnu.org>
3453         * etags.c (add_regex): Reset the whole newly allocated pattern
3454         buffer instead of the individual members.  It's safer and works
3455         with XEmacs.
3457         * etags.1: Markups corrected.
3459 2001-05-08  Gerd Moellmann  <gerd@gnu.org>
3461         * ebrowse.c (enter_namespace): Fix reallocation of namespace_stack.
3463 2001-05-03  Gerd Moellmann  <gerd@gnu.org>
3465         * ebrowse.c (globals): Fix handling of namespace aliases.
3467 2001-04-27  Eli Zaretskii  <eliz@is.elta.co.il>
3469         * etags.c (print_help): Enclose the regexp in the help text
3470         example in quotes.
3472 2001-04-05  Dave Love  <fx@gnu.org>
3474         * emacsclient.c (fail): Don't return a value.
3475         (main): Cast uid values for sprintf.
3477 2001-04-03  Gerd Moellmann  <gerd@gnu.org>
3479         * emacsclient.c (fail, main): Don't use implicit int return type.
3481         * b2m.c (main): Always return a value.
3483 2001-03-02  Gerd Moellmann  <gerd@gnu.org>
3485         * ebrowse.c (parse_qualified_param_ident_or_type): Return a
3486         freshly allocated object in *LAST_ID.
3487         (read_line): Accept \r\n line endings.
3489 2001-02-24  Andrew Innes  <andrewi@gnu.org>
3491         * makefile.w32-in: Fix copyright notice.
3493 2001-02-23  Francesco Potortì  <pot@gnu.org>
3495         * etags.c (enum sym_type): New label st_C_template.
3496         (gperf input): Use it for switching to C++ from C.
3497         (consider_token): Do it.
3498         (C_entries): Initialise typdefcblev to quiet compilers.
3499         [!HAVE_CONFIG_H] [!__STDC__]: #define static as nothing.
3501 2001-02-22  Andrew Innes  <andrewi@gnu.org>
3503         * makefile.nt ($(BLD)\movemail.obj): Remove reference to
3504         VMS header files.
3505         ($(BLD)\profile.obj): Ditto.
3507         * makefile.w32-in ($(BLD)/movemail.$(O)): Remove reference to
3508         VMS header files.
3509         ($(BLD)/profile.$(O)): Ditto.
3511 2001-02-05  Andrew Innes  <andrewi@gnu.org>
3513         * makefile.w32-in ($(DOC)): Use $(THISDIR) instead of . in
3514         invocation of make-docfile, to work with Windows 2000.
3516 2001-01-31  Dave Love  <fx@gnu.org>
3518         * etags.c (in_word_set): Use `static' in definition (for pcc).
3520 2001-01-31  Francesco Potortì  <pot@gnu.org>
3522         * etags.c [NDEBUG]: #undef assert and #define it as ((void)0), for
3523         the sake of some buggy assert.h (e.g. in MinGW and sunos4 pcc).
3524         (C_entries): Tag token renamed to still_in_token because sunos4
3525         pcc wants to expand it as the token() macro even though it has no
3526         arguments.
3528 2001-01-30  Andrew Innes  <andrewi@gnu.org>
3530         * etags.c (assert) [__MINGW32__]: Redefine assert to work around a
3531         bug in the Mingw32 assert.h header file.
3533 2001-01-30  Francesco Potortì  <pot@gnu.org>
3535         * etags.c [WIN32-NATIVE]: #undef MSDOS, #undef WINDOWSNT and
3536         #define it for the sake of XEmacs.
3537         [WINDOWSNT]: #undef HAVE_NTGUI even if built without
3538         HAVE_CONFIG_H.  This change only affects a standalone etags.
3539         [WINDOWSNT]: #undef DOS_NT and #define it even if built with
3540         HAVE_CONFIG_H.  This change does nothing in Emacs, as DOS_NT is
3541         always defined when HAVE_CONFIG_H and WINDOWS are both defined.
3542         [!HAVE_UNISTD_H]: Use defined(WINDOWSNT) instead of the bare
3543         WINDOWSNT, as this is the correct way to use it.
3545 2001-01-28  Francesco Potortì  <pot@gnu.org>
3547         * etags.c: Be capable to parse nested struct-like structures.
3548         (structdef, structtag): Struct state machine revisited.
3549         (struct tok): Revisited.
3550         (cstack, nestlev, instruct): New struct and macros.
3551         (pushclass_above, popclass_above, write_classname): New functions
3552         for dealing with nested class names.
3553         (consider_token, make_C_tag, C_entries): Many changes for dealing
3554         with arbitrarily nested structures.
3555         (etags_getcwd): #if MSDOS, not #ifdef MSDOS!
3556         (C_entries): Consider templates in C++.
3557         (sym_type): New constant st_C_class for detecting "class" also in
3558         C mode.
3559         (C_AUTO): New macro for automatic detection of C++.
3560         (consider_token): Automatic set C++ mode.
3561         (C_entries): New security check for yacc.
3562         (print_language_names, print_help): Mention the autodetect
3563         feature, do not show help for the -C option, now mostly useless.
3564         (C_entries): Tag C++ forward declarations if --declarations.
3565         (C_entries): Don't be fooled by things like XDEFUN.
3566         (consider_token): Discard asm pseudo function.
3568 2001-01-27  Eli Zaretskii  <eliz@is.elta.co.il>
3570         * etags.c: Add a coding: tag.
3572 2001-01-26  Gerd Moellmann  <gerd@gnu.org>
3574         * ebrowse.c (matching_regexp_buffer, matching_regexp_end_buf):
3575         New variables.
3576         (matching_regexp): Use them instead of static variables in
3577         function scope.
3579 2001-01-25  Francesco Potortì  <pot@gnu.org>
3581         * etags.c (struct tok): Rename from struct token.
3582         (token): Rename from tok.
3583         (structtype): Make it a local variable.
3584         [DEBUG]: Use assert.
3585         (xrnew): Change the synopsis.
3586         (typedefs_or_cplusplus): Rename from typedefs_and_cplusplus.
3587         (grow_linebuffer): Don't call xrnew when not needed.
3588         (token): Buffer renamed to line.
3589         (C_entries): Three calls to inibuffer moved here from main.
3590         (C_entries): Remove all references to var methodlen, delete it.
3591         (linebuffer_setlen): Was grow_buffer, now also sets len.
3592         (consider_token, C_entries, Pascal_functions): Use it.
3593         (C_entries): Preventing problems relative to extern "C".
3594         (C_entries): Can tag more than one variable or func separated by
3595         comma when --declarations is used.
3596         (C_entries): More accurate tagging of members and declarations.
3597         (yacc_rules): Was global, made local to C_entries.
3598         (next_token_is_func): Removed.
3599         (fvdef): New constants fdefunkey, fdefunname.
3600         (consider_token, C_entries): Use them.
3601         (C_entries): Build proper lisp names for Emacs DEFUNs.
3603 2001-01-22  Gerd Moellmann  <gerd@gnu.org>
3605         * ebrowse.c (xfree): New function.
3606         (member, declaration, globals): Use xmalloc instead of alloca.
3608 2001-01-15  Francesco Potortì  <pot@gnu.org>
3610         * etags.c (print_language_names): Print filenames in addition to
3611         suffixes.
3613 2001-01-14  Francesco Potortì  <pot@gnu.org>
3615         * etags.c (get_language_from_langname): Rename from
3616         get_language_from_name.
3617         (get_language_from_filename): Rename from get_language_from_suffix.
3618         Now first looks for the complete file name.
3619         (language): New member char **filenames.
3620         (Makefile_filenames): List of possible filenames for makefiles.
3621         (lang_names): Add a NULL member for every entry, added an entry
3622         for makefiles.
3623         (Makefile_targets): New function.
3624         (Texinfo_nodes): Rename from Texinfo_fuctions and made
3625         it conformant to the style of the rest of the code.
3627 2001-01-13  Gerd Moellmann  <gerd@gnu.org>
3629         * make-docfile.c (write_c_args): Print newlines as spaces.
3631 2001-01-06  Andrew Innes  <andrewi@gnu.org>
3633         * makefile.w32-in (clean): Delete $(COMPILER_TEMP_FILES) instead
3634         of *.pdb.
3636 2001-01-03  Paul Eggert  <eggert@twinsun.com>
3638         * rcs2log: Avoid security hole allowing attacker to
3639         cause user of rcs2log to overwrite arbitrary files, fixing
3640         a bug reported by Morten Welinder.
3642         Don't put "exit 1" at the end of the exit trap; it's
3643         ineffective in POSIX shells.
3645 2001-01-02  Gerd Moellmann  <gerd@gnu.org>
3647         * ebrowse.c (yyerror): Change to take two arguments.
3648         Add prototype.  Change callers.
3650 2001-01-02  Eli Zaretskii  <eliz@is.elta.co.il>
3652         * ebrowse.c (enter_namespace, main): Cast variables to shut up
3653         compiler warnings.
3654         (yyerror): Change parameter declarations to be of type long, so
3655         that they can take pointers on 64-bit platforms.
3657         * emacsclient.c (main): Remove unused local variable statbfr.
3658         (main) <homedir>: Make its declaration conditional on
3659         SERVER_HOME_DIR, to avoid compiler warnings.
3661         * emacsserver.c (main) <homedir>: Make its declaration conditional
3662         on SERVER_HOME_DIR, to avoid compiler warnings.
3664         * fakemail.c (readline): Cast buffer to "long *" to pacify
3665         over-zealous compilers.
3667 2000-12-16  Eli Zaretskii  <eliz@is.elta.co.il>
3669         * etags.c (canonicalize_filename) [DOS_NT]: Fix last change.
3671 2000-12-15  Gerd Moellmann  <gerd@gnu.org>
3673         * ebrowse.c (operator_name): Cast argument of isalpha to
3674         unsigned char.
3676         * etags.c (ISALNUM, ISALPHA, ISDIGIT, ISLOWER): New macros.
3677         Use them throughout instead of ctype functions/macros.
3678         (lowcase): Cast to unsigned char.
3679         (UPCASE): New macro.
3680         (canonicalize_filename): Use UPCASE instead toupper.
3682         * fakemail.c (get_keyword): Make sure that isspace and
3683         similar aren't called with a negative argument.
3685 2000-12-13  Dave Love  <fx@gnu.org>
3687         * ebrowse.c (ensure_scope_buffer_room): Fix xrealloc call.
3689 2000-12-06  Andrew Innes  <andrewi@gnu.org>
3691         * makefile.w32-in (LOCAL_FLAGS): Remove -DVERSION flag, since we
3692         don't know the real version, and I can't seem to get the quoting
3693         right in all circumstances.
3695         * ebrowse.c (VERSION): Provide default definition, like etags.c
3696         does, because Windows build can't snarf this from version.el.
3698 2000-11-30  Andrew Innes  <andrewi@gnu.org>
3700         * makefile.w32-in ($(BLD)/ebrowse.exe): Use tabs not spaces.
3701         (install): Ditto.
3703 2000-11-23  Jason Rumney  <jasonr@gnu.org>
3705         * makefile.w32-in: Add targets for ebrowse.exe.
3706         (LOCAL_FLAGS): Add -DVERSION flag.
3708 2000-09-25  Dave Love  <fx@gnu.org>
3710         * sorted-doc.c: Include config.h.
3711         [!HAVE_STDLIB_H]: Declare malloc.
3713 2000-09-14  Andrew Innes  <andrewi@gnu.org>
3715         * makefile.w32-in: Revert to Unix line endings.
3717 2000-09-04  Dave Love  <fx@gnu.org>
3719         * movemail.c (index, rindex): Prototype conditionally.
3721 2000-09-03  Andrew Innes  <andrewi@gnu.org>
3723         * makefile.w32-in: Change to DOS line endings.
3725 2000-09-01  Eli Zaretskii  <eliz@is.elta.co.il>
3727         * movemail.c (toplevel): Remove redundant fcntl.h.
3728         [!F_OK]: Provide default definitions only after including both
3729         fcntl.h and unistd.h.
3731 2000-08-29  Dave Love  <fx@gnu.org>
3733         * movemail.c: Revert previous change.
3735 2000-08-29  Eli Zaretskii  <eliz@is.elta.co.il>
3737         * Makefile.in (profile, make-docfile, hexl): Depend on config.h.
3739 2000-08-28  Dave Love  <fx@gnu.org>
3741         * movemail.c (toplevel) [HAVE_STRING_H]: Include string.h.
3742         (toplevel) [HAVE_STRINGS_H]: Include strings.h.
3744 2000-08-22  Andrew Innes  <andrewi@gnu.org>
3746         * ntlib.h (WIN32): Remove unnecessary definition.
3747         (sleep): Make argument unsigned long.
3748         (_WINSOCK_H): Undefine so normal winsock definitions can be used.
3750         * ntlib.c (sleep): Make argument unsigned long.
3752         * movemail.c (main) [WINDOWSNT]: Force binary mode for fileio.
3754         * makefile.w32-in: New file.
3756 2000-08-20  Eli Zaretskii  <eliz@is.elta.co.il>
3758         * etags.c (canonicalize_filename) [DOS_NT]: Upcase the first
3759         letter only if it is a drive letter.
3761 2000-07-14  Gerd Moellmann  <gerd@gnu.org>
3763         * ebrowse.c (xrealloc, xmalloc): Rename from yrealloc and ymalloc.
3765         * etags.c (xmalloc, xrealloc): Make externally visible, for use
3766         by alloca.o.
3768         * Makefile.in (alloca.o): Add -Demacs so that alloca will use xmalloc.
3770 2000-07-10  Gerd Moellmann  <gerd@gnu.org>
3772         * ebrowse.c (yylex): Accept string literals with newlines in them.
3773         (process_pp_line): Handle case of string literal with newline
3774         in it in replacement text, which counts as continuing the
3775         replacement text in GNU C.
3777 2000-07-02  Gerd Moellmann  <gerd@gnu.org>
3779         * ebrowse.c (token_string): Add missing tokens.
3780         (parm_list): Handle case of qualified pointers.
3782 2000-06-23  Dave Love  <fx@gnu.org>
3784         * ebrowse.c: Move config.h before other includes (which may use
3785         feature tests).
3787 2000-06-14  Jim Meyering  <meyering@lucent.com>
3789         * grep-changelog: Fix typos in comments.  Remove trailing blanks.
3791 2000-06-11  Jason Rumney  <jasonr@gnu.org>
3793         * makefile.nt: Add targets for ebrowse.
3795         * ebrowse.c [WINDOWS_NT]: Use stricmp instead of strcasecmp to
3796         compare filenames.
3798 2000-06-06  Gerd Moellmann  <gerd@gnu.org>
3800         * ebrowse.c (ymalloc): Rename from xmalloc.
3801         (yrealloc): Rename from xrealloc.
3803 2000-05-21  Dave Love  <fx@gnu.org>
3805         * movemail.c: Include config.h, not ../src/config.h.
3806         (Errmsg): Bump length.
3808         * pop.c (ERROR_MAX): Increase to 160.
3810 2000-05-04  Gerd Moellmann  <gerd@gnu.org>
3812         * ebrowse.c (DEFAULT_OUTFILE): Set to `BROWSE'.
3814 2000-05-02  Eli Zaretskii  <eliz@is.elta.co.il>
3816         * ebrowse.c (PATH_LIST_SEPARATOR) [__MSDOS__ || WINDOWSNT]:
3817         Define to semi-colon.
3818         (FILENAME_EQ): New macro, for comparing file names.
3819         (add_member_decl, add_global_decl, add_member_defn): Use FILENAME_EQ.
3820         (process_file): Don't assume that fread always reads as many bytes
3821         as it was told to (DOS-style CR-LF text files fail this logic).
3822         (open_file): Allocate enough space for path->path plus the file
3823         name and the slash.
3825 2000-04-19  Dave Love  <fx@gnu.org>
3827         * etags.c (Texinfo_functions): New function.
3828         (lang_names): Install it.
3829         (Texinfo_suffixes): New variable.
3831 2000-04-19  Gerd Moellmann  <gerd@gnu.org>
3833         * ebrowse.c (xmalloc, xrealloc): Rewritten.
3834         (declaration): Remove parameter IS_EXTERN.
3835         (class_definition): Remove unused variable.
3837 2000-04-09  Gerd Moellmann  <gerd@gnu.org>
3839         * Makefile.in (INSTALLABLES): Add ebrowse.
3840         (ebrowse): New target.
3842         * ebrowse.c: New file.
3844 2000-03-29  Andreas Schwab  <schwab@suse.de>
3846         * make-docfile.c (scan_lisp_file): Also look for `defsubst'.
3848 2000-03-02  Gerd Moellmann  <gerd@gnu.org>
3850         * etags.c (lisp_suffixes): Add `LSP'.
3852 2000-02-10  Francesco Potortì  <pot@gnu.org>
3854         * etags.c (iswhite): Redefine not to consider '\0' as white
3855         space, and use it throughout in place of isspace, thus preventing a
3856         potential signed char to int conversion problem.
3857         (MSDOS): #undefine before redefining.
3859 2000-02-04  Francesco Potortì  <pot@gnu.org>
3861         * etags.c (many functions): Add prototypes.
3863 2000-02-10  Dave Love  <fx@gnu.org>
3865         * etags.c (pfnote, new_pfnote, C_entries, prolog_pred)
3866         (erlang_func): Add `static' to definitions to keep pcc happy.
3868 2000-01-31  Francesco Potortì  <pot@gnu.org>
3870         * etags.c [MSDOS]: Set MSDOS to 1 if #defined, 0 otherwise.
3871         (get_compressor_from_suffix, process_file): Use MSDOS in if clause.
3872         (etags_strchr, etags_strrchr): Use const char * and int as arguments.
3873         (getenv, getcwd): Only declare them if necessary.
3874         (EMACS_NAME): New constant macro.
3875         (print_version): Use it.
3876         (P_) [__STDC__]: Macro for defining function prototypes.
3878 2000-01-18  Fabrice Popineau  <Fabrice.Popineau@supelec.fr>
3880         * etags.c [WINDOWSNT]: #include <direct.h>
3882 2000-01-18  Martin Buchholz  <martin@xemacs.org>
3884         * etags.c (all functions): Made them static.
3885         (all functions): Write prototypes.
3887 2000-01-29  Richard M. Stallman  <rms@caffeine.ai.mit.edu>
3889         * movemail.c (main): Improve error message if can't create lock file.
3891 2000-01-28  Eric Hanchrow  <offby1@blarg.net>
3893         * emacsclient.c (socket_status): New function.
3894         (main): If $LOGNAME or $USER exist and differ from our euid, look
3895         for a socket based on the UID associated with the name.
3897 2000-01-12  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
3899         * emacsclient.c: Add option -a EDITOR and environment variable
3900         ALTERNATE_EDITOR.  Exec this editor if we fail to contact Emacs.
3902 1999-12-10  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
3904         * movemail.c (popmail): Allow mailbox specifications of the
3905         form `po:username:hostname'.
3907 1999-11-19  Francesco Potortì  <pot@gnu.org>
3909         * etags.c (_GNU_SOURCE): Define only if undefined.
3910         (get_scheme): Declaration deleted.
3911         (main): Error was called with an integer as second arg, instead of
3912         a char pointer.
3913         (canonicalize_filename): Bug removed.
3915 1999-11-18  Dave Love  <d.love@dl.ac.uk>
3917         * etags.c (C_entries): Rename label `intoken', avoiding K&R
3918         lossage from name clash with macro.
3920 1999-11-13  Gerd Moellmann  <gerd@gnu.org>
3922         * Makefile.in (b2m): Add dependency on GETOPTDEPS.
3924 1999-11-03  Gerd Moellmann  <gerd@gnu.org>
3926         * etags.c (print_help): Change email address to send bugs to.
3928 1999-11-01  Francesco Potortì  <pot@gnu.org>
3930         * etags.c: Add suffix psw for PSWrap.
3931         (L_getit): Generalize a "cp!=' '" into "!isspace(*cp)".
3932         (Postscript_functions): Add code for PSWrap.
3933         (Scheme_functions): Use local pointer and new get_tag function.
3934         (get_tag): New name for old get_scheme.
3935         (process_file): Do not free NULL when file does not exist.
3936         (typdef): ttypedefseen renamed to tkeyseen, new label ttypeseen.
3937         (C_entries): Modifications that make --members tag even inside
3938         typedefs and C nested structs (one level only).
3939         (consider_token): Correct a bug which prevented tagging of enum
3940         constants.
3941         (C_stab_entry): Add if, for, while, switch, return as
3942         st_C_ignore.  This makes it simpler to work when cblev!=0.
3944         * etags.c (C_entries): Tag member function declarations when
3945         --declarations is used.
3947         * etags.c (C_entries, consider_token): C++ `operator' now is
3948         tagged in most cases.
3949         As before, :: is not recognised if surrounded by spaces.
3951         * etags.c (relative_filename): Account for DOS file names such
3952         that is impossible to make one relative to another.
3954         * etags.c (sym_type): New st_C_extern tag.
3955         (gperf input): Use it for spotting external declarations.
3956         (print_help): Document the new behavior of --declarations.
3957         (fvextern): New global variable.
3958         (consider_token, C_entries): Use it.
3960         * etags.c (HAVE_GETCWD) [WINDOWSNT]: Define if undefined.
3961         (etags_getcwd): Remove test for WINDOWSNT.
3963         * etags.c (process_file) [MSDOS]: If foo.c.gz is not found, try
3964         foo.cgz, foo.cz, etc.
3966         * etags.c (declarations): New global switch.
3967         (longopts): Describe it.
3968         (print_help): Document it.
3969         (C_entries): Use it.
3970         (process_file): Don't process a file twice.
3972         * etags.c (Fortran_functions): No tags for "procedure".
3974 1999-11-01  Eli Zaretskii  <eliz@is.elta.co.il>
3976         * etags.c (get_compressor_from_suffix): Second argument EXTPTR, if
3977         non-zero, returns a pointer to where the extension begins; callers
3978         changed.
3979         [MSDOS]: Support DOS file names by handling e.g. foo.cgz as if it
3980         were foo.c.gz.
3982 1999-11-01  Francesco Potortì  <pot@gnu.org>
3984         * etags.c (sym_type, C_stab_entry): New constant st_C_operator.
3985         (fvdev): New constant foperator.
3986         (consider_token): Use it to get "operator" in C++.
3987         (C_entries): Extend length of operator@ function name.
3988         (C_entries): Use foperator when necessary.
3990         * etags.c (main) [!ETAGS_REGEXPS]: Do not call free_patterns.
3992         * etags.c (compressor): New struct for compressed files.
3993         (get_compressor_from_suffix): New function.
3994         (get_language_from_suffix): Use it.  Also, semantics changed.
3995         (process_file): Consider compressed files, close file.
3996         (find_entries): Use different call arg for get_language_from_suffix,
3997         don't close file.
3999         * etags.c (main): Call free_tree.
4000         (find_entries): Do not free curfile.
4001         (pfnote): Cosmetic change: NULL and '\0' where appropriate.
4002         (prolog_pred, erlang_func, substitute): Cast strlen to int when
4003         comparing.
4004         (canonicalize_filename): Shut up compiler warning.
4005         (Perl_functions): Make tag significant.
4007 1999-11-01  Dave Love  <d.love@dl.ac.uk>
4009         * etags.c (longopts, optstring): New option --ignore-case-regex (-c).
4010         (argument_type): New member at_icregexp.
4011         (lc_trans): New global.
4012         (main): Fill lc_trans.  Process -c args.
4013         (add_regex): New arg determining whether to use translation table.
4014         (analyse_regex): New arg.  Use it for add_regex.
4016 1999-11-01  Francesco Potortì  <pot@gnu.org>
4018         * etags.c (init): Cosmetic change: NULL --> '\0'.
4019         (erlang_attribute): Bug corrected (uninitialized variable).
4020         (filename_is_absolute): New function replaces absolutefn macro and
4021         corrects a bug.  All callers changed.
4022         (canonicalize_filename): New function.
4023         (process_file, etags_getcwd, absolute_dirname): Use it.
4024         (relative_filename, absolute_filename): Remove var shadowing.
4025         (C_entries, Pascal_functions): Add fake initializations to keep
4026         compilers quiet.
4027         (TeX_functions, Prolog_functions, Erlang_functions): Cleanup.
4029         * etags.c (xrnew): New macro.  All callers of xrealloc changed.
4030         (language): New typedef (was struct lang_entry).
4031         (curlang): New global variable.
4032         (node): Typedef renamed from NODE.
4033         (linebuffer): New typedef (was struct linebuffer).
4034         (pattern): New typedef (was struct pattern).  Some members added.
4035         Now used as element of a linked list.
4036         (patterns, num_patterns): Global variables deleted.
4037         (p_head): New global variable.
4038         (forced_lang): New global variable (replaces lang_func).
4039         (get_language_from_name, get_language_from_interpreter)
4040         (get_language_from_suffix): Semantics changed.  All callers changed.
4041         (last_node): New global variable.
4042         (free_tree, add_node, put_entries, total_size_of_entries):
4043         Change name of local vars to avoid clashes with typedef node.
4044         (number_len): Rewritten for elegance.
4045         (token): New typedef replaces TOKEN.
4046         (analyse_regex, add_regex): Rewritten for new functionality.
4047         (free_patterns): New function called from main and add_regex.
4048         (initbuffer, readline_internal, readline, grow_linebuffer):
4049         Change name of local vars to avoid clashes with typedef linebuffer.
4050         (readline): Rewritten for new functionality.
4052         * etags.c (Scheme_suffixes): New suffix ".ss".
4053         (print_help): --globals is now used for more than C-type languages.
4054         (Perl_functions): Tag global variables ("my" and "local").
4056         * etags.c (print_help): Some messages clarified.
4057         (LOOP_ON_INPUT_LINES): New macro.
4058         (just_read_file, Fortran_functions, Asm_labels, Perl_functions)
4059         (Python_functions, Cobol_paragraphs, Pascal_functions)
4060         (Lisp_functions, Postscript_functions, Scheme_functions)
4061         (TeX_functions, Prolog_functions, Erlang_functions): Use it.
4062         (Cobol_paragraphs, Postscript_functions, TeX_functions)
4063         (Prolog_functions, Erlang_functions): Use a local variable instead
4064         of the global variable dbp.
4065         (Pascal_functions, L_isquote, Scheme_functions): Use GNU coding
4066         standard indentation.
4068         * etags.c (Python_suffixes, lang_names, Python_functions):
4069         Python support.
4070         (skip_spaces, skip_non_spaces): Utility functions.
4071         (find_entries, takeprec, getit, Fortran_functions, Perl_functions)
4072         (Python_functions, L_getit, Lisp_functions, Scheme_functions)
4073         (prolog_pred, erlanf_func, erlang_attribute): Use them.
4074         (eat_white): Deleted.
4076         * etags.c (CHAR, init): Keep into account non US-ASCII
4077         characters and compilers with default signed chars.
4078         (L_getit): Tag "(defstruct (foo", "(defun (operator" and similar
4079         constructs.
4080         (C_stab_entry): "interface" in Java behaves like "class".
4082         * etags.c (HAVE_NTGUI) [WINDOWSNT]: #undef if HAVE_CONFIG_H.
4083         (main): Put interval syntax here.
4084         (add_regex): And remove it from here.
4086         * etags.c (suggest_asking_for_help): Provide a
4087         meaningful help message with and without LONG_OPTIONS.
4089         * etags.c (<io.h>) [MSDOS]: Include it, don't include string.h.
4090         <stdlib.h, string.h>: Don't test MSDOS when including them.
4091         (white, nonam, endtk): Like elsewhere, use \r instead of \013.
4092         (put_entries): Correctly use %ld instead of %d in printf.
4094         * etags.c (<unistd.h>) [HAVE_UNISTD_H]: Include conditionally, else
4095         declare getcwd if HAVE_GETCWD.
4096         (consider_token): Dead break instruction removed.
4098 1999-10-19  Paul Eggert  <eggert@twinsun.com>
4100         Add support for large files.  Merge glibc 2.1.2.
4102         * b2m.c, emacsclient.c, emacsserver.c, fakemail.c, make-docfile.c,
4103         * movemail.c, pop.c:
4104         Do not include <stdlib.h>, as <config.h> does this now.
4106         * b2m.c, emacsserver.c, etags.c, profile.c:
4107         Include <config.h> before any system include files.
4109         * emacsclient.c, emacsserver.c, fakemail.c, movemail.c, pop.c,
4110         * test-distrib.c:
4111         (read, write, open, close): Do not undef.
4113         * getopt.c, getopt1.c: Adopt glibc 2.1.2, with the following fix:
4114         (const): Do not define if HAVE_CONFIG_H; that's config.h's job.
4116         * getopt.h: Adopt glibc 2.1.2.
4118 1999-10-15  Dave Love  <fx@gnu.org>
4120         * Makefile.in (pop.o): Depend on config.h.
4122 1999-10-11  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4124         * pop.c: Use "pop3" as the POP service name on all platforms,
4125         instead of using "pop" on Unix and "pop3" on Windows NT.  "pop3"
4126         has been the standard service name since RFC 1340 was published in
4127         July 1992, so I think it's safe to start using it by default.
4129 1999-09-27  Dave Love  <fx@gnu.org>
4131         * make-docfile.c (scan_lisp_file): Fix typo causing infloop.
4133 1999-09-19  Richard M. Stallman  <rms@caffeine.ai.mit.edu>
4135         * make-docfile.c (scan_lisp_file): Fix previous changes;
4136         swallow CRLF like just CR or just LF.
4138 1999-09-03  Richard Stallman  <rms@gnu.org>
4140         * make-docfile.c: Include config.h not ../src/config.h.
4141         (main, fopen, chdir): Add #undef.
4142         (read_c_string, scan_c_file, skip_white, read_lisp_symbol)
4143         (scan_lisp_file): Handle \r like \n.
4145 1999-08-30  Andreas Schwab  <schwab@gnu.org>
4147         * make-docfile.c, fakemail.c: Include <stdlib.h> if available.
4149         * emacsserver.c: Include <stdlib.h> if available.  Don't declare
4150         errno if it's a macro.
4152         * test-distrib.c: Include <unistd.h> if available.
4154 1999-08-29  Richard Stallman  <rms@gnu.org>
4156         * emacsclient.c (print_help_and_exit): Mention --version.
4158 1999-08-25  Richard M. Stallman  <rms@gnu.org>
4160         * emacsclient.c (decode_options): Update version output.
4161         (print_help_and_exit): Update bug report address.
4163 1999-08-13  Richard M. Stallman  <rms@gnu.org>
4165         * emacsclient.c (main): Move the dynamic allocation of
4166         system_name outside of the SERVER_HOME_DIR conditional.
4167         * emacsserver.c (main): Likewise.
4169 1999-08-10  Gerd Moellmann  <gerd@gnu.org>
4171         * grep-changelog: New.
4172         * Makefile.in (INSTALLABLE_SCRIPTS): Add it.
4174 1999-07-12  Richard Stallman  <rms@gnu.org>
4176         * Version 20.4 released.
4178 1999-06-30  Markus Rost  <markus.rost@mathematik.uni-regensburg.de>
4180         * Makefile.in (clean): Remove fns*.el.
4182 1999-06-23  Dave Love  <fx@gnu.org>
4184         * etags.c (erlang_attribute): Fix undefined variable usage (after
4185         Potorti).
4187 1999-05-02  Andrew Innes  <andrewi@gnu.org>
4189         * movemail.c (main) [WINDOWSNT]: Call ftruncate, which is now
4190         mapped to _chsize.
4192 1999-04-29  Richard M. Stallman  <rms@gnu.org>
4194         * emacsclient.c (main, both versions): Use quote_file_name on cwd.
4196 1999-03-30  Dave Love  <fx@gnu.org>
4198         * sorted-doc.c (main): Split up tables.  Modify the preamble
4199         somewhat.
4201 1999-03-05  Geoff Voelker  <voelker@cs.washington.edu>
4203         * makefile.nt: Remove common multiple file compilation commands.
4205 1999-02-26  Richard Stallman  <rms@gnu.org>
4207         * Makefile.in (yow): Depend on epaths.h, not paths.h.
4209         * yow.c: Refer to epaths.h.
4211 1999-02-22  Simon Josefsson  <jas@pdc.kth.se>
4213         * emacsserver.c (perror_1, fatal_error): Don't compile unless needed.
4215 1999-01-27  Andrew Innes  <andrewi@gnu.org>
4217         * makefile.nt: Do make version comparison as strings.
4219 1999-01-25  Richard Stallman  <rms@gnu.org>
4221         * emacsclient.c (xmalloc): Fix previous change.
4223 1999-01-24  Richard M. Stallman  <rms@borg.ai.mit.edu>
4225         * emacsclient.c (xmalloc): Declare to return long.
4227 1999-01-22  Geoff Voelker  <voelker@cs.washington.edu>
4229         * etags.c (etags_getcwd, absolute_filename) [DOS_NT]: Canonicalize
4230         the case of the drive letter.
4232 1999-01-15  Richard Stallman  <rms@psilocin.ai.mit.edu>
4234         * emacsserver.c (main): Eliminate arbitrary limit on
4235         length of system_name.
4237         * emacsclient.c (main): Eliminate arbitrary limit on
4238         length of system_name.
4239         (xmalloc): Define unconditionally.
4241 1999-01-12  Darrin B. Jewell  <jewell@mit.edu>
4243         * etags.c (relative_filename): Stop backward search at beginning
4244         of string, since non-Unix systems can have absolute paths with no
4245         initial slash.
4247 1998-12-08  Geoff Voelker  <voelker@cs.washington.edu>
4249         * makefile.nt: Do string comparision of _NMAKE_VER.
4251 1998-11-03  Theodore Jump  <tjump@cais.com>
4253         * makefile.nt: Compile multiple source files when possible.
4255 1998-10-13  Richard Stallman  <rms@psilocin.ai.mit.edu>
4257         * Makefile.in: Replace tabs with spaces
4258         when they might confuse some Make versions.
4260 1998-10-10  Richard Stallman  <rms@psilocin.ai.mit.edu>
4262         * emacsclient.c (main): Null-terminate system_name.
4264         * emacsserver.c (main): Null-terminate system_name.
4266 1998-09-21  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4268         * movemail.c (popmail, pop_retr) [MAIL_USE_POP]: When displaying
4269         an error message from POP, mention that it's from POP, to
4270         distinguish it from local error messages.
4272 1998-09-04  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4274         * movemail.c [MAIL_USE_POP]: Add the "-r" flag to reverse the
4275         order of messages downloaded from a POP server (e.g., if the
4276         server stores messages in mailboxes in reverse order).
4278 1998-08-19  Richard Stallman  <rms@psilocin.ai.mit.edu>
4280         * Version 20.3 released.
4282 1998-08-11  Paul Eggert  <eggert@twinsun.com>
4284         * rcs2log: Update copyright date and bug report address.
4285         (initialize_fullname): Prefer getent if available.
4287 1998-07-30  Paul Eggert  <eggert@twinsun.com>
4289         * Makefile.in (REGEXPDEPS, regex.o):
4290         Prepend $(srcdir)/ to rule dependencies outside this dir.
4292 1998-06-09  Andrew Innes  <andrewi@harlequin.co.uk>
4294         * etags.c (etags_getcwd) [WINDOWSNT]: Use getcwd on Windows.
4296 1998-06-06  Richard Stallman  <rms@psilocin.ai.mit.edu>
4298         * Makefile.in: Properly terminate a comment.
4300 1998-06-01  Andrew Innes  <andrewi@mescaline.gnu.org>
4302         * movemail.c (sys_wait): Rename to wait.
4304         * ntlib.h: Undefine _WINSOCKAPI_.
4306         * makefile.nt (LOCAL_FLAGS): Define HAVE_CONFIG_H.
4308 1998-05-30  Geoff Voelker  <voelker@cs.washington.edu>
4310         * ntlib.c (getppid): Look for EM_PARENT_PROCESS_ID.
4312 1998-05-01  Andrew Innes  <andrewi@harlequin.co.uk>
4314         * movemail.c [WINDOWSNT]: Undefine DISABLE_DIRECT_ACCESS.
4315         Force all file i/o to be in binary mode.  Include ntlib.h.
4317 1998-04-27  Andreas Schwab  <schwab@delysid.gnu.org>
4319         * make-docfile.c: Include <unistd.h> for chdir.
4321 1998-04-25  Richard Stallman  <rms@psilocin.gnu.org>
4323         * etags.c (TEX_decode_env): Don't free the value getenv returns.
4325 1998-04-17  Geoff Voelker  <voelker@cs.washington.edu>
4327         * makefile.nt (obj): Update with new files in src.
4328         (clean): Delete patch scratch files, optimized compilation dir.
4330 1998-04-08  Dave Love  <fx@gnu.org>
4332         * emacsclient.c: Move inclusion of unistd.h to top, else fails on
4333         Irix6, at least.
4335 1998-04-06  Andreas Schwab  <schwab@gnu.org>
4337         Silence -Wimplicit:
4338         * movemail.c: Move cancelations up.  Include <stdlib.h> if
4339         available.
4340         * fakemail.c (_XOPEN_SOURCE): Define for declaration of cuserid.
4341         (parse_header): Explicitly declare return type.
4342         * emacsserver.c: Include <unistd.h> if available.
4343         (main, handle_signals, perror_1, fatal_error): Explicitly declare
4344         return types.  Add forward declarations.
4345         * emacsclient.c: Include <stdlib.h> and <unistd.h> if available.
4346         Don't declare geteuid.
4347         (print_help_and_exit): Change return type to void.
4348         Forward declare it.
4349         * b2m.c: Include <stdlib.h> if available.
4350         (main): Explicitly declare return type.
4352 1998-04-03  Richard Stallman  <rms@psilocin.gnu.org>
4354         * etags.c (put_entries): Use %ld.
4356         * b2m.c (fatal): Declare the arg.
4358 1998-03-26  Richard Stallman  <rms@psilocin.gnu.org>
4360         * pop.c (pop_getline): Rename from getline.
4362 1998-03-05  Richard Stallman  <rms@psilocin.gnu.org>
4364         * Makefile.in (install): Use INSTALL_STRIP with INSTALL_PROGRAM
4365         for the utilities.
4367 1998-01-23  Dave Love  <d.love@dl.ac.uk>
4369         * etags.c (getit, Cobol_paragraphs, Pascal_functions,
4370         Postscript_functions, prolog_pred, erlang_func, erlang_attribute):
4371         Always make named tags.
4372         (Fortran_functions): Grok BLOCK DATA.
4374 1998-01-23  Andreas Schwab  <schwab@gnu.org>
4376         * movemail.c (main): Fix interwoven brace and cpp conditional
4377         nesting.
4379 1997-12-03  Paul Eggert  <eggert@delysid.gnu.org>
4381         * movemail.c (mbx_write) [MAIL_USE_POP]: Disable the code which quotes
4382         with a '>' any lines starting with "From " read from the POP server,
4383         but leave the code in place, wrapped in #ifdef
4384         MOVEMAIL_QUOTE_POP_FROM_LINES, in case we have to restore it later
4385         because it turns out that something is depending on it.
4386         Change suggested by Paul Eggert <eggert@twinsun.com>.
4387         Convert the character \037 (^_) at the beginning of a line into
4388         the character '^' followed by the character '_', because otherwise
4389         Emacs can't parse the resulting file as a valid BABYL file.
4390         Change suggested by Paul Eggert <eggert@twinsun.com>.
4392 1997-12-03  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4394         * movemail.c, pop.c, pop.h: Allow messages retrieved from the POP
4395         server to contain embedded nulls.
4397 1997-12-02  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4399         * movemail.c (mbx_write) [MAIL_USE_POP]: Disable the code which
4400         quotes with a '>' any lines starting with "From " read from the
4401         POP server, but leave the code in place, wrapped in #ifdef
4402         MOVEMAIL_QUOTE_POP_FROM_LINES, in case we have to restore it later
4403         because it turns out that something is depending on it.
4404         Change suggested by Paul Eggert <eggert@twinsun.com>.
4406         Convert the character \037 (^_) at the beginning of a line into
4407         the character '^' followed by the character '_', because otherwise
4408         Emacs can't parse the resulting file as a valid BABYL file.
4409         Change suggested by Paul Eggert <eggert@twinsun.com>.
4411 1997-11-22  Richard Stallman  <rms@gnu.org>
4413         * b2m.c: Include getopt.h.
4414         (main): Use getopt_long to handle --version and --help.
4416         * Makefile.in (b2m): Define VERSION.  Link with $(GETOPTOBJS).
4418 1997-10-31  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4420         * pop.c (fullwrite): Get rid of an extra call to write.
4421         Problem pointed out by Chiaki Ishikawa.
4423 1997-10-16  Dave Love  <d.love@dl.ac.uk>
4425         * etags.c (L_getit): Always make named tags so that Emacs
4426         completion on symbols containing `:' etc. works.
4427         (get_scheme): Likewise.
4429 1997-09-24  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4431         * pop.c: Use system header files instead of declaring C-library
4432         functions explicitly.
4434 1997-09-19  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4436         * Version 20.2 released.
4438 1997-09-15  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4440         * Version 20.1 released.
4442 1997-09-02  Andrew Innes  <andrewi@harlequin.co.uk>
4444         * makefile.nt (movemail.exe): Link wsock32.lib before LIBS.
4446         * ntlib.c (getpid): Delete function.
4448 1997-08-28  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4450         * make-docfile.c (scan_lisp_file): Handle custom-declare-variable.
4452 1997-08-26  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4454         * emacsclient.c [HAVE_SYSVIPC]: Include errno.h, as in the other case.
4455         (main) [!BSD_SYSTEM]: Fix error message for getcwd failure.
4457 1997-08-14  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4459         * emacsserver.c (main): Use SOCKLEN_TYPE for fromlen, if it is defined.
4461 1997-08-13  Kazushi (Jam) Marukawa  <jam@poboxes.com>
4463         * profile.c (get_time): Cast arg to fprintf.
4465         * hexl.c (main): Use %08lx instead of %08x in printf because the
4466         variable named addresses is long.
4468 1997-08-08  Geoff Voelker  <voelker@cs.washington.edu>
4470         * makefile.nt (lisp): Update paths to lisp files that have moved.
4472 1997-08-08  Andrew Innes  <andrewi@harlequin.co.uk>
4474         * makefile.nt (ctags.obj): New target.
4475         (etags.obj, getopt.obj, make-docfile.obj): Update dependencies.
4477         * ntlib.h: Add includes.
4478         Undo definitions of crt routines from config.h.
4480 1997-08-06  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4482         * etags.c (Yacc_suffixes, Asm_suffixes): Add some alternatives.
4484 1997-07-22  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4486         * pop.c: Support auto-configuration of both Kerberos V4 and
4487         Kerberos V5 for movemail, including detection of V4 and V5 header
4488         files and libraries.
4489         Include <string.h> when STDC_HEADERS is defined, to get
4490         declarations of string functions.
4491         [KERBEROS5] (socket_connection): Support the current MIT Kerberos
4492         V5 API rather than the old one.
4493         [KERBEROS] (socket_connection): Change a constant name from
4494         SOCKET_ERROR to POP_SOCKET_ERROR to avoid a namespace conflict
4495         with a constant in a header file.
4497         * Makefile.in: Support auto-configuration of both Kerberos V4 and
4498         Kerberos V5 for movemail, including detection of V4 and V5 header
4499         files and libraries.
4501 1997-07-17  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4503         * fakemail.c [HAVE_UNISTD_H]: Include unistd.h.
4505         * etags.c [HAVE_UNISTD_H]: Include unistd.h.
4507 1997-07-09  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4509         * emacsclient.c [C_ALLOCA] (xmalloc): New function.
4511 1997-07-04  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4513         * movemail.c (rindex): Add declaration.
4515 1997-07-01  Geoff Voelker  <voelker@cs.washington.edu>
4517         * makefile.nt (GETOPTOBJS, GETOPTDEFS, MOVEMAILOBJS): Define.
4518         (movemail.exe): Depend upon and link with getopt files.
4519         (obj): Include new source files.
4520         (FACE_SUPPORT, MOUSE_SUPPORT, FLOAT_SUPPORT, WINNT_SUPPORT): Define.
4521         (lisp): Include new and reorganized elisp files.
4523 1997-06-27  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4525         * Makefile.in (blessmail): Find blessmail.el in mail subdirectory.
4527 1997-06-25  Paul Eggert  <eggert@twinsun.com>
4529         * rcs2log: Don't assign to $0 in awk; some awks don't allow this.
4531 1997-06-14  Karl Heuer  <kwzh@gnu.ai.mit.edu>
4533         * b2m.c (readline): Terminate buffer properly when EOF seen.
4534         Test for valid pointer before dereferencing it.
4536 1997-05-30  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4538         * Makefile.in (etags): Remove -DETAGS_REGEXPS, because now it is
4539         defined inside etags.c if HAVE_CONFIG_H is defined.
4541 1997-05-29  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4543         * etags.c (logical): Type name changed to bool.
4544         (ETAGS_REGEXPS, LONG_OPTIONS) [HAVE_CONFIG_H]: #define them.
4545         (<getopt.h>) [LONG_OPTIONS]: Include conditionally.
4546         (getopt_long) [!LONG_OPTIONS]: Redefine as macro.
4547         (main): Accepted options depend on ETAGS_REGEXPS and LONG_OPTIONS.
4548         (longopts): New long options without short counterpart are
4549         globals, members, no-globals, no-members.  Regexp options are now
4550         defined  conditionally to ETAGS_REGEXPS.
4551         (print_help): Updated.
4553 1997-05-22  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4555         * etags.c (C_entries): Use "." instead of "::" for Java.
4556         (consider_token): is_func renamed to is_func_or_var.
4557         (C_entries): is_func renamed to funorvar.
4558         (C_entries): Initialise tok.named.
4559         (sym_type, C_stab_entry, consider_token): st_C_ignore is used to
4560         get rid of "import", "package" and "friend".
4561         (fvdef): Rename from funcdef.  Also some constants renamed.
4562         All users changed.
4563         (C_entries): Make separate tags for variables separated by comma.
4564         (globals, members): New flags.
4565         (main, C_entries): Use them.
4566         (make_C_tag, C_entries): Make tok a global variable.
4568 1997-05-16  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4570         * etags.c (funcdef): New vignore constant.
4571         (consider_token, C_entries): Use it to tag global variables.
4572         (print_help): Update for global variables.
4573         (consider_token, C_entries): Set the len member of token_name.
4574         (prolog_pred): Cleanup according to GNU coding standards.
4575         (Cobol_suffixes, lang_names, Cobol_paragraphs): Cobol support.
4576         (prolog_white, erlang_white): Rename to eat_white, callers changed.
4578 1997-05-15  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4580         * etags.c (CHARS, CHAR): New constant and macro.
4581         (iswhite, begtoken, intoken, endtoken): Use them.
4582         (notinname, _nin, nonam): New macro, array, string.
4583         (init): Cleanup and init _nin.
4584         (new_pfnote): New function.
4585         (make_C_tag) [traditional_tag_style]: Use it.
4586         (traditional_tag_style): Constant set to TRUE for now.
4588 1997-05-14  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4590         * etags.c (C_entries, Pascal_functions): Cleanup.
4591         (TeX_functions): NULL as a function arg needs a cast.
4592         (Erlang_functions, erlang_func, erlang_attribute): Cleanup.
4594 1997-05-13  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4596         * etags.c (TeX_functions): Cleaned up.
4597         (tex_getit): Removed.
4599 1997-05-13  Paul Eggert  <eggert@twinsun.com>
4601         * rcs2log (files): When computing arguments automatically, ignore
4602         non-files within the RCS subdirectory.
4604 1997-05-13  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4606         * etags.c (C_JAVA): New #define.
4607         (Cjava_suffixes): .java is Java.
4608         (Cjava_entries): New function.
4609         (lang_names): Add Java.
4610         (sym_type): Add st_C_javastruct for Java.
4611         (C_stab_entry): Add `extends' and `implements' keywords.
4612         (consider_token, C_entries): Recognise Java structures.
4614 1997-05-12  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4616         * etags.c (Cplusplus_suffixes): .pdb is Postscript with C syntax.
4617         (Postscript_suffixes): .ps is Postscript.
4618         (lang_names): Add Postscript.
4619         (Postscript_functions): New function.
4620         (TEX_decode_env): Close minor memory leak.
4621         (just_read_file): Correct the char number of the tag.
4623 1997-05-11  Paul Eggert  <eggert@twinsun.com>
4625         * rcs2log (loginFullnameMailaddrs, logins, rlog_options, files):
4626         Don't prepend $nl since this causes some shells to generate the
4627         empty string when IFS is $nl.
4628         (printlogline): Use SOH (octal code 1), not CR, since some
4629         PC-based shells mishandle CR.
4630         (initialize_fullname): Set NIS_PATH to the empty string before invoking
4631         nismatch, in case it's set to some nonstandard value.
4633 1997-05-06  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4635         * pop.c (getline): Don't miss CRLF pairs when the CR and LF are
4636         read in separate blocks.
4638 1997-04-30  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4640         * etags.c [TeX_named_tokens]: Set to FALSE if undefined.
4641         (struct linebuffer): New member `len' is the length of the string.
4642         (find_entries, Pascal_functions, TeX_functions, TEX_getit):
4643         Use it instead of strlen.
4644         (TEX_getit): Declare and define unconditionally as static.
4645         (TeX_functions): Use if instead of #if TeX_named_tokens.
4646         (add_regex): Set RE_INTERVALS flag for regex compilation.
4647         (substitute): Code cleanup.
4648         (readline_internal): Code cleanup, set new member `len'.
4649         (readline): Bug corrected.
4651 1997-04-23  Geoff Voelker  <voelker@cs.washington.edu>
4653         * makefile.nt: Change references of windowsnt.h to ms-w32.h.
4654         (obj): Change references of nt*.c files to w32*.c files.
4656 1997-04-15  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4658         * etags.c (xnew): Add support for debugging with chkmalloc.
4659         (error): Use this instead of printf whenever possible.
4660         (main): Only call xnew after having initialised progname.
4661         (substitute): Bad memory corruption error corrected.
4663 1997-04-08  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4665         * etags.c (add_regex): Undo previous change.
4666         (relative_filename): Small memory leak closed.
4667         (absolute_filename): Cleaned up the code, possibly closing a bug.
4668         (absolute_dirname): Always return a newly allocated string.
4670 1997-03-21  Paul Eggert  <eggert@twinsun.com>
4672         * rcs2log (files): Ignore files in RCS directory whose names are
4673         of the form ,*, or *_; they are probably RCS lock files.
4674         Also, ignore files named .rcsfreeze.log or .rcsfreeze.ver;
4675         they are used by rcsfreeze.
4677 1997-03-14  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4679         * etags.c (add_regex): Reset *putbuf before using it.
4681 1997-02-23  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4683         * movemail.c (popmail): Remove some unnecessary function
4684         declarations.
4685         (popmail, pop_retr): Since popmail always passes mbx_write and mbf
4686         into pop_retr, there's no reason to pass in mbx_write, and the
4687         file argument can be declared FILE * explicitly.  This fixes a
4688         compilation problem on systems with 64-bit pointers.
4690 1997-02-13  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
4692         * movemail.c: Delete duplicate inclusion of fcntl.h
4693         and duplicate #undefs of open, read, write, close.
4695 1997-01-20  Jonathan I. Kamens  <jik@kamens.brookline.ma.us>
4697         * movemail.c (main): Do not display "[POP-password]" in the usage
4698         message when movemail is compiled without POP support.
4699         (main, popmail): Add the optional "-p" argument, which causes
4700         movemail to leave mail in the inbox after copying it into the
4701         output file.
4703         * Makefile.in (movemail): Link with getopt.
4705 1997-01-20  Paul Eggert  <eggert@twinsun.com>
4707         * rcs2log (--help, --version): New options, per GNU coding standards.
4708         (Copyright, Help, Id): New variables, for above.
4709         (rlog): Use -q option with cvs log, to avoid useless chatter.
4711         Treat logs of "Initial revision" (RCS) or "file F was initially added
4712         on branch B." (CVS) as if they said "New file.", for consistency with
4713         change log entries.
4715 1997-01-01  Paul Eggert  <eggert@twinsun.com>
4717         * vcdiff (PATH): Add /usr/xpg4/bin,
4718         where XPG4 SCCS hangs out in Solaris 2.5.
4719         (sid1): Don't use bare -r, since XPG4 `get' does not allow it.
4721 1996-12-19  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4723         * etags.c (streq, strneq): Use == NULL rather than !.
4725 1996-12-18  Jonathan I. Kamens  <jik@annex-1-slip-jik.cam.ov.com>
4727         * Makefile.in (LIBMAIL): New macro.  Conditionally includes -lmail.
4728         (movemail): Use LIBMAIL, to link against -lmail.
4730         * movemail.c: Include maillock.h (conditionally).
4731         Remove a redundant inclusion of <stdio.h>.
4732         (MAIL_USE_MAILLOCK): New macro, conditionally defined.
4733         (main): Add variable spool_name.
4734         Support the usage of maillock and mailunlock to
4735         lock and unlock mailboxes.
4736         (mail_spool_name): New function.
4738         * movemail.c: Fix an uninitialized variable which could cause
4739         movemail to exit with an error status incorrectly on systems which
4740         use lock files rather than a system locking function to lock
4741         mailboxes.
4743 1996-12-16  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4745         * pop.c (socket_connection): Free realhost after using it.
4747 1996-12-04  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4749         * etags.c (C_entries): Test tok.valid.  This handles some
4750         particular cases involving function declarations that failed.
4752 1996-11-22  Charles Hannum  <mycroft@gnu.ai.mit.edu>
4754         * pop.c (socket_connection):
4755         gethostbyname may return a pointer to static data.
4756         krb_realmofhost can clobber it.  So copy it.
4758 1996-11-14  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4760         * etags.c (pfnote, fatal, error): Callers using a NULL pointer
4761         must cast it to (char *) because we have no prototypes.
4762         (make_C_tag): Macro deleted, new function.
4763         (C_entries): Calls to make_C_tag macro changed to call function.
4765 1996-11-13  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4767         * etags.c (grow_linebuffer): New function.
4768         (GROW_LINEBUFFER): Macro deleted.  All callers changed.
4769         (make_tag): Macro renamed to make_C_tag.  All callers changed.
4770         (<stdlib.h>, <string.h>) [STDC_HEADERS]: New #include's.
4771         (Prolog_functions): prolog_skip_comment was called with wrong
4772         number of arguments.
4773         (xrealloc): fatal was called with wrong number of arguments.
4775 1996-11-08  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4777         * etags.c (relative_filename): Bug corrected.
4778         (etags_getcwd): Avoid warning of unused variable.
4779         (C_entries, consider_token): Add support for enum labels.
4781 1996-11-03  Paul Eggert  <eggert@twinsun.com>
4783         * rcs2log: When processing cvs log output, remove `Attic/' from
4784         repository file names.
4786 1996-10-22  Karl Heuer  <kwzh@gnu.ai.mit.edu>
4788         * emacsserver.c: Fix 1996-09-02 change.
4790 1996-10-12  Paul Eggert  <eggert@twinsun.com>
4792         * rcs2log (rlog_options): Look for ' option' rather than 'unknown
4793         option', since CVS says 'invalid option'.
4794         (datearg): Use the empty string, not '-d>1970-01-01', to extract all
4795         revisions, since some hosts reject 1970-01-01 when east of UTC.
4796         (date): Remove.
4798 1996-10-06  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4800         * etags.c (etags_getcwd) [WINDOWSNT]: Convert backslashes to slashes.
4802 1996-10-02  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4804         * etags.c (print_version): Print copyright info.
4806         * etags.c (print_help): Print the bug reporting address.
4807         (main): Use return as the last instruction, instead of exit.
4809         * etags.c (main): Don't open the tags file in cxref mode.
4811 1996-09-29  Dave Love  <d.love@dl.ac.uk>
4813         * rcs2log (date): Make default format acceptable to CVS post v1.8
4814         as well as earlier CVSs and RCS.
4816 1996-09-29  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4818         * movemail.c (main): If the lock call fails with EBUSY or
4819         EAGAIN, retry a few times.
4821 1996-09-25  Paul Eggert  <eggert@twinsun.com>
4823         * rcs2log (rlog_options): Use $rlog, not rlog, when deciding
4824         whether to append -zLT.
4826 1996-09-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
4828         * fakemail.c: Replaced symbol BSD with BSD_SYSTEM.
4829         * emacsclient.c, movemail.c: Likewise.
4831 1996-09-09  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4833         * emacsclient.c (longopts): Change nowait to no-wait.
4834         (print_help_and_exit): Fix option name; upcase metavars.
4836 1996-09-06  Erik Naggum  <erik@naggum.no>
4838         * emacsserver.c (main): Declare `fromlen' as size_t.
4840 1996-09-02  Eli Zaretskii  <eliz@is.elta.co.il>
4842         * etags.c (etags_getcwd): Use getcwd if available even if MSDOS.
4844 1996-09-02  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4846         * emacsclient.c (quote_file_name): Quote with &, not \.
4847         Quote `-' only at start of file name.  Terminate the value string.
4849         * emacsserver.c: Include signal.h properly;
4850         delete the duplicate includes for it.
4852         * emacsserver.c: On fatal signal, delete socket-file:
4853         * emacsserver.c: Include signal.h.
4854         (xmalloc, fatal, error): New functions.
4855         (delete_socket, handle_signals): New functions.
4856         (progname, socket_name): New variables.
4857         [HAVE_SOCKETS] (main): Call handle_signals; set the new variables.
4859 1996-09-01  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4861         * emacsclient.c (quote_file_name): New function.
4862         (main, both versions): Use quote_file_name.
4863         (decode_options): Don't return a value.
4864         (main, both versions): Use optind.
4865         Don't check for -nowait here.
4867         * emacsclient.c (decode_options): New function.
4868         (main, both versions): Call decode_options.
4869         (print_help_and_exit): New function.
4870         (VERSION): New macro.
4872         * Makefile.in (emacsclient): Link with getopt.
4873         Add -DVERSION so emacsclient knows its version number.
4875 1996-08-31  Geoff Voelker  <voelker@cs.washington.edu>
4877         * makefile.nt (lisp): Include dos-nt.elc.
4879 1996-08-31  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4881         * Makefile.in (blessmail): Use $srcdir to find blessmail.el.
4883 1996-08-28  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4885         * emacsclient.c (both versions): Handle -nowait and --nowait
4886         by sending data to the server.
4888 1996-08-26  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4890         * Makefile.in (INSTALL_STRIP): New variable.
4891         (${archlibdir}): Use INSTALL_STRIP.
4893         * Makefile.in (MOVE_LIBS): Use conditionals on KERBEROS,
4894         HAVE_LIBKRB, HAVE_LIBDES, HAVE_LIBCOM_ERR to set it up.
4896         * pop.c: Reverse conditional in previous change.
4898 1996-08-24  Richard Stallman  <rms@ethanol.gnu.ai.mit.edu>
4900         * pop.c: Include des.h krb.h with no dir name if SOLARIS2.
4902 1996-08-24  Paul Eggert  <eggert@twinsun.com>
4904         * rcs2log: Use ISO 8601 date format, with time zone appended
4905         if change-log-time-zone-rule is non-nil, instead of
4906         traditional Unix date format.
4908         (datearg): When computing default from ChangeLog, handle ISO format
4909         dates in addition to old-fashioned dates from Emacs 19.31 and earlier.
4910         Don't worry about hh:mm:ss since the resolution is now by day.
4911         Use empty datearg, not empty rlog_options, to decide whether to pass
4912         "$datearg" option to $rlog.
4913         (logTZ): New variable, set to TZ specified by change-log-time-zone-rule.
4914         (month_data): Remove `mo'; no longer needed.
4915         (rlog_options): Use -zLT for localtime output, if `rlog' supports it.
4917         Match `revision' line of rlog output more accurately.
4919         Add -c, -v options.
4921 1996-08-23  Eli Zaretskii  <eliz@is.elta.co.il>
4923         * hexl.c: Include <config.h>, so DOS_NT is defined on MSDOS.
4925 1996-08-11  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4927         * Version 19.33 released.
4929 1996-07-31  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4931         * Version 19.32 released.
4933 1996-07-23  Andrew Innes  <andrewi@harlequin.co.uk>
4935         * etags.c (readline_internal) [DOS_NT]: Don't include CRs when
4936         computing character positions in source files.
4938 1996-07-16  Andrew Innes  <andrewi@harlequin.co.uk>
4940         * makefile.nt (clean): Use OBJDIR macro.
4942 1996-07-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
4944         * cvtmail.c, sorted-doc.c, yow.c, emacsserver.c: Undo previous change.
4946 1996-07-15  David Mosberger-Tang  <davidm@AZStarNet.com>
4948         * cvtmail.c, sorted-doc.c, yow.c [__GNU_LIBRARY__]: Use <string.h>.
4949         * emacsserver.c (main) [__GNU_LIBRARY__]: Use size_t for fromlen.
4950         * etags.c, fakemail.c, profile.c: Declare main as int, not void.
4952 1996-07-15  Andrew Innes  <andrewi@harlequin.co.uk>
4954         * ntlib.h: Correct return type of getwd.
4955         * ntlib.c (getwd): Correct return type.
4957 1996-07-02  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
4959         * emacsserver.c (main) [HAVE_SOCKETS]: Call rewind before writing
4960         to infile.
4962 1996-07-01  Andrew Innes  <andrewi@harlequin.co.uk>
4964         * makefile.nt: Remove all references to wakeup.
4966 1996-06-28  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4968         * etags.c (C_stab_entry): New keywords for C++ namespace, bool,
4969         explicit, mutable, typename.
4971 1996-06-29  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4973         * emacsclient.c (main) [HAVE_SOCKETS]: Use two separate stdio
4974         streams, one for sending and one for reading the reply.
4976 1996-06-21  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4978         * Makefile.in (timer, timer.o, getdate.o, $(srcdir)/getdate.c)
4979         (wakeup): Target deleted.
4980         (UTILITIES): Delete wakeup and timer.
4982         * wakeup.c, timer.c, getdate.y, getdate.c: Files deleted.
4984 1996-06-11  Geoff Voelker  <voelker@cs.washington.edu>
4986         * etags.c (etags_getcwd) [DOS_NT]: Change conditional to MSDOS only.
4987         * makefile.nt (ETAGS_CFLAGS): Define HAVE_GETCWD macro.
4989 1996-06-06  Richard Stallman  <rms@psilocin.gnu.ai.mit.edu>
4991         * etags.c (main): Copy cwd when appending slash.
4993 1996-05-25  Karl Heuer  <kwzh@gnu.ai.mit.edu>
4995         * Version 19.31 released.
4997 1996-05-17  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
4999         * etags.c (CNL_SAVE_DEFINEDEF): Set linecharno for use by readline.
5000         (Pascal_functions): Increase linecharno by the correct number of
5001         chars, inline the GET_NEW_LINE macro and delete its definition.
5003 1996-05-03  Andrew Innes  <andrewi@harlequin.co.uk>
5005         * makefile.nt (OBJDIR, BLD): Remove macro definitions.
5007 1996-05-03  Andrew Innes  <andrewi@harlequin.co.uk>
5009         * makefile.nt (LOCAL_FLAGS): Include path to NT shadow includes.
5010         (movemail.exe, fakemail.exe): Now built under Win32.o.
5012         * ntlib.c: Include ntlib.h.
5013         (nt_sleep): Rename to sleep.
5014         (getwd): Return directory.
5015         (getlogin, cuserid, getuid, setuid, getpwuid, getpass, fchown,
5016         sys_ctime, sys_fopen): New functions.
5018         * ntlib.h: New file.
5020 1996-04-29  Richard Stallman  <rms@delasyd.gnu.ai.mit.edu>
5022         * pop.c (SEND, RECV): Rename from send, recv.
5023         (pop_open, pop_trash): Make the trash_started code unconditional.
5024         (socket_connection): Delete casts to void.
5026 1996-04-28  Richard Stallman  <rms@delasyd.gnu.ai.mit.edu>
5028         * movemail.c (DIRECTORY_SEP, IS_DIRECTORY_SEP):
5029         Definitions copied from lisp.h.
5031 1996-04-22  Andrew Innes  <andrewi@harlequin.co.uk>
5033         * fakemail.c [WINDOWSNT]: Include ntlib.h.
5035         * hexl.c [DOSNT]: Include fcntl.h.
5036         [WINDOWSNT]: Include io.h.
5037         (main) [MSDOS]: Change conditional to DOS_NT.
5039         * movemail.c (access, unlink) [WINDOWSNT]: Macros undefined.
5040         (fork, syswait, DISABLE_DIRECT_ACCESS) [WINDOWSNT]: Macros defined.
5041         [WINDOWSNT]: Include locking.h.
5042         (main): Update usage message.  Use IS_DIRECTORY_SEP.
5043         (main) [DISABLE_DIRECT_ACCESS]: Don't check access if defined.
5044         (main) [WINDOWSNT]: Invoke locking instead of flock.
5045         (main) [MAIL_USE_SYSTEM_LOCK && WINDOWSNT]: Emulate ftruncate.
5046         (main) [MAIL_USE_POP]: Pass password to popmail if used.
5047         Include winsock.h; don't include unix inet headers.
5048         (popmail): Add password argument and pass it to pop_open.
5049         Open output file in binary mode.
5051         * pop.c [WINDOWSNT]: Include winsock.h and ntlib.h.
5052         Macro SOCKET_ERROR undefined.
5053         Don't declare h_errno.
5054         [!WINDOWSNT]: Define macros recv and send.
5055         [!WINDOWSNT] (POP_SERVICE): Change to pop3.
5056         (pop_open) [WINDOWSNT]: Initialize trash_started.
5057         (have_winsock) [WINDOWSNT]: New variable.
5058         (socket_connection) [WINDOWSNT]: Initialize winsock.
5059         (socket_connection): Use closesocket instead of close.
5060         (getline): Use recv instead of read.
5061         (fullwrite): Use send instead of write.
5062         (pop_trash): Use closesocket instead of close.
5063         (pop_trash) [WINDOWSNT]: Cleanup winsock.
5064         Check if being called recursively by sendline.
5066         * pop.h (struct _popserver): New field trash_started.
5068         * wakeup.c [HAVE_CONFIG_H]: Only include config.h when defined.
5070 1996-04-14  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5072         * hexl.c (main) [DJGPP v2]: Don't change to binary for a tty.
5074 1996-04-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5076         * etags.c [WINDOWSNT]: Include io.h.
5078 1996-04-10  Geoff Voelker  <voelker@cs.washington.edu>
5080         * makefile.nt (CTAGSOBJ): Compile with regexp support.
5082 1996-04-09  Eli Zaretskii  <eliz@is.elta.co.il>
5084         * hexl.c [DJGPP v2]: Include io.h.
5085         (main) [DJGPP v2]: Switch standard streams to binary with setmode.
5087         * b2m.c (main) [MSDOS]: Switch standard streams to binary under
5088         DJGPP v2.
5090 1996-04-02  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5092         * etags.c (absolute_filename): Use absolutefn.
5094 1996-03-31  Eli Zaretskii  <eliz@is.elta.co.il>
5096         * etags.c (absolutefn) [DOS_NT]: Support Novell drives whose drive
5097         letter isn't an alphabetic character.
5098         (main) [DOS_NT]: Use binary mode on redirected `stdout'.
5099         (process_file) [DOS_NT]: Convert all slashes to forward style.
5100         (absolute_filename) [DOS_NT]: Emit error message for relative
5101         paths with a drive letter.
5102         (absolute_filename) [DOS_NT]: Handle absolute pathnames with
5103         DOS/NT drive letters which try to reference the parent of the root.
5104         (absolute_dirname) [DOS_NT]: Convert all slashes to forward style.
5106 1996-03-27  Geoff Voelker  <voelker@cs.washington.edu>
5108         * makefile.nt: Change uses of del to $(DEL).
5110 1996-03-22  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
5112         * etags.c (just_read_file): Reset lineno and charno on entry.
5114 1996-03-15  Anders Lindgren  <andersl@csd.uu.se>
5116         * etags.c: Prolog language totaly rewritten.
5117         (Prolog_functions): Rewritten from scratch.
5118         (skip_comment, prolog_getit): Removed.
5119         (prolog_skip_comment): New function, like old skip_comment.
5120         (prolog_pred, prolog_atom, prolog_white): New functions.
5121         (erlang_func, erlang_attributes): Forward declarations added.
5122         (erlang_atom): Check if backslash ends line inside quoted atom.
5124 1996-03-14  Francesco Potortì  <F.Potorti@cnuce.cnr.it>
5126         * etags.c (absolutefn): DOS_NT version corrected.
5127         (main): Append "/" to the dir name only if not already there.
5128         (print_help): Explain the absolute/relative file name issue.
5130 1996-03-08  Anders Lindgren  <andersl@csd.uu.se>
5132         * etags.c: New Language Erlang added.
5133         (Erlang_functions, erlang_func, erlang_attribute, erlang_atom)
5134         (erlang_white): New functions.
5135         (Erlang_suffixes): New suffix list.
5136         (lang_names): Erlang entry added.
5137         (prolog_getit): Accepts headers spanning several lines.
5138         Always name tags.
5139         (Prolog_functions): Remove incorrect compensation for
5140         newline characters.
5141         (readline_internal): Zero-terminate last line.
5143 1996-03-20  Mike Long  <mike.long@analog.com>
5145         * b2m.c (main): Initialize progname variable before using it.
5146         Quote `username' in From_ header.
5148 1996-03-18  Geoff Voelker  <voelker@cs.washington.edu>
5150         * ntlib.c (getpid): New function.
5152 1996-02-21  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
5154         * emacsclient.c (main, both definitions):
5155         Print a newline for normal termination.
5157 1996-02-21  Noah Friedman  <friedman@prep.ai.mit.edu>
5159         * tcp.c (main): Convert port to network byte order.
5161 1996-01-20  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5163         * pop.c (pop_retrieve, getline): Avoid type clashes.
5165 1996-01-19  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5167         * etags.c (enum sym_type, anonymous enum): Delete final comma.
5169 1996-01-15  Paul Eggert  <eggert@twinsun.com>
5171         * rcs2log (initialize_fullname): Add support for NIS+.
5172         (hostname): Fully qualify the default hostname with the domainname
5173         if the hostname lacks a `.'.
5175 1996-01-10  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5177         * etags.c (consider_token): Fix typo in expression.
5179 1996-01-04  Paul Eggert  <eggert@twinsun.com>
5181         * etags.c (substitute): Fix spelling in message.
5183 1996-01-03  George V. Reilly  <georger@microcrafts.com>
5185         * makefile.nt (etags, ctags): Compile with regexp support.
5186         (make-docfile, wakeup, etags, ctags, hexl): Ensure build
5187         subdirectory exists before compiling.
5189 1996-01-02  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5191         * emacsserver.c (main): Do chmod based on existing permission.
5193 1995-12-27  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5195         * Makefile.in (install): Turn on read/execute permission.
5197 1995-12-03  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
5199         * Makefile.in (LIB_STANDARD_LIBSRC): Use this instead of LIB_STANDARD.
5200         (LOADLIBES): Use LIB_STANDARD_LIBSRC.
5202 1995-12-01  Richard Stallman  <rms@whiz-bang.gnu.ai.mit.edu>
5204         * Makefile.in (THIS_IS_MAKEFILE): Rename from THIS_IS_YMAKEFILE.
5206 1995-12-07  Francesco Potortì  <pot@cnuce.cnr.it>
5208         * etags.c (pfnote): Don't make a tag for ctags if there is no name.
5209         (getit, Asm_labels, Perl_functions, Pascal_functions, L_getit,
5210         get_scheme, prolog_getit): Name the tag in ctags mode.
5211         (pfnote): Truncate ctags lines to 50 chars, like it worked once.
5212         (Perl_interpreters): Accept "@PERL@" as an interpreter.
5213         (suggest_asking_for_help): New function.
5214         (main, get_language_from_name): Use suggest_asking_for_help.
5215         (main): Let get_language_from_name make language existence check.
5216         (streq, strneq): Check the arguments #if DEBUG.
5218 1995-12-06  Francesco Potortì  <pot@cnuce.cnr.it>
5220         * etags.c (Cplusplus_suffixes): Add .M suffix for Objective C++.
5221         (gperf): Add keywords for Objective C and GNU macros.
5222         (sym_type): Add values to account for Objective C and GNU macros.
5223         (begtk): The '@' character can start a token.
5224         (objdef, methodlen, objtag): New variables for Objective C.
5225         (consider_token, C_entries): Add code for Objective C.
5226         (plain_C_suffixes): Add .m and .lm for Objective C.
5227         (Yacc_suffixes): Add .ym for Objective yacc.
5228         (GROW_LINEBUFFER): New macro.
5229         (consider_token, C_entries, Pascal_functions): Use the new macro.
5230         (consider_token): Take one more argument.  Caller changed.
5231         (consider_token): Use the hashing function to spot GNU macros.
5232         (C_entries): Consider // as a comment start even in plain C for
5233         the sake of Objective C parsing.
5235 1995-12-04  Francesco Potortì  <pot@cnuce.cnr.it>
5237         * Makefile.in (ctags): Depend on etags only for simplicity;
5238         compile with regexp support enabled.
5240 1995-11-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5242         * Version 19.30 released.
5244 1995-11-22  Geoff Voelker  <voelker@cs.washington.edu>
5246         * makefile.nt (DOC, clean): Don't use switches to del not
5247         supported by Windows 95.
5249 1995-11-13  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5251         * Makefile.in (regex.o): Depend on ../src/config.h.
5253 1995-11-12  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5255         * Makefile.in (LIB_STANDARD): Extract this as in src/Makefile.in.
5256         (LOADLIBES): Use LIB_STANDARD.
5258 1995-11-07  Kevin Gallo  <kgallo@microsoft.com>
5260         * makefile.nt (DOC): Include strings from w32term.c, w32xfns.c,
5261         w32fns.c, w32faces.c, w32select.c, w32menu.c, w32reg.c; remove
5262         Windows 95 conditional.
5264 1995-11-06  Francesco Potortì  (pot@cnuce.cnr.it)
5266         * etags.c (get_lang_from_name, get_lang_from_interpreter)
5267         (get_lang_from_suffix): New functions.
5268         (get_language): Function deleted.
5269         (lang_entry): Two members added to struct.
5270         (lang_names): Reflect the new layout of lang_entry.
5271         (print_language_names, main, find_entries): Use the new functions.
5272         (find_entries): Look at the first line for #! if no language.
5273         (C_entries): Invalidate the token when funcdef is reset.
5274         (Perl_functions): New function.
5275         (lang_suffixes): .pl and .pm are Perl suffixes.
5277 1995-11-02  Francesco Potortì  (pot@cnuce.cnr.it)
5279         * etags.c (lowcase): Use the standard tolower function.
5280         (substitute): Remove some wrong and some useless code related with
5281         escape '\' character in regexp replacement string.
5282         (TEX_defenv): Add part, appendix, entry, index.  Remove typeout.
5283         (lang_suffixes): New suffixes: .hpp for C++; .f90 for Fortran;
5284         .bib, .ltx, .TeX for TeX (.bbl, .dtx removed); .ml for Lisp;
5285         .prolog for prolog (.pl removed).
5286         (massage_name, etags_getcwd): Use lowcase instead of tolower.
5287         (C_entries, find_entries): Add comments about memory leakage.
5288         (add_node): Dead code removed.
5290 1995-10-29  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5292         * Makefile.in (getdate.o, movemail.o): Specify -Demacs.
5293         (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Delete -Demacs.
5295 1995-08-30  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5297         * test-distrib.c: Add #undef for open, close, read, write.
5299 1995-08-23  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5301         * test-distrib.c [HAVE_CONFIG_H]: Include config.h.
5302         [! O_RDONLY]: Define it to zero.
5303         (main): Use O_RDONLY instead of explicit zero.
5305 1995-08-17  Francesco Potortì  (pot@cnuce.cnr.it)
5307         * etags.c (Pascal_functions): Close comment bug corrected.
5308         (add_node): Correctly compare node file names.
5309         (Pascal_functions): Correctly allocate and free memory for tline.
5310         (pfnote): Put the definition of fp in the innermost block.
5311         (NODE): `named' member removed.
5312         (pfnote, free_tree, put_entries, total_size_of_entries): Do not
5313         use the `named' member, check whether `name' is NULL instead.
5314         (pfnote): `named' argument removed, all callers changed.
5315         (getit, Asm_labels, Pascal_functions, L_getit, get_scheme,
5316         TeX_functions, TEX_getit, prolog_getit): Useless string allocation
5317         removed from pfnote call, some code cleanup.
5318         (relative_filename): Free temporary space allocated by concat.
5320 1995-08-16  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5322         * Makefile.in (getdate.c): New target.
5323         (getdate.o): Just compile getdate.c.
5325 1995-08-12  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5327         * fakemail.c (xrealloc): Change cast to match return type.
5329 1995-08-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5331         * fakemail.c (xmalloc, xrealloc): Use return-type long *.
5333 1995-08-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5335         * movemail.c (main): Fix previous change.
5336         Add error check for empty OUTNAME.
5338 1995-08-05  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5340         * movemail.c (main): Mention lock file name in error message.
5342 1995-07-30  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5344         * profile.c (gettimeofday): New function, defined if necessary.
5346 1995-07-18  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5348         * Makefile.in: Renamed from Makefile.in.in.
5349         (distclean): Delete Makefile.c, not Makefile.in.
5351 1995-07-17  Michael Shields  <shields@tembel.org>
5353         * Makefile.in.in (tags): Synonym for `TAGS'.
5355 1995-07-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5357         * Makefile.in.in (install, maybe-blessmail): Don't cd ..;
5358         configure has already set $(INSTALL) to the proper relative path.
5360 1995-07-08  Paul Eggert  <eggert@twinsun.com>
5362         * rcs2log (datearg): Separate date from time with comma, not space,
5363         to work around CVS 1.5 bug.
5364         (CVSROOT): Don't abort when unset if repository is absolute.
5366 1995-07-07  Paul Eggert  <eggert@twinsun.com>
5368         * rcs-checkin, rcs2log, vcdiff:
5369         Replace `#!/bin/sh' with `#! /bin/sh', for benefit of systems
5370         that interpret `#! /' as a 4-byte magic number.
5372 1995-06-29  Jonathan I. Kamens  <jik@cam.ov.com>
5374         * movemail.c (main) [MAIL_USE_POP]: When a user specifies a
5375         mailbox with "po:mailbox", the mailbox is everything after the
5376         "po:" prefix.
5378 1995-06-28  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5380         * emacsserver.c: Make all error messages start with `Error: '.
5381         (fatal_error, perror_1): New functions, use throughout.
5383 1995-06-28  Paul Eggert  <eggert@twinsun.com>
5385         * rcs2log (CVSROOT, repository):
5386         Allow remote repositories a la CVS 1.4.
5388 1995-06-27  Francesco Potortì  (pot@cnuce.cnr.it)
5390         * etags.c (plain_C_entries): New function.
5391         (lowcase): New macro.
5392         (tail, Fortran_functions, Pascal_functions): Use new macro lowcase.
5393         (lang_suffixes): New suffix ".pc" for Pro*C files.
5394         (consider_token): Don't tag all tokens beginning with DEFUN & Co..
5395         (tail): Look for the end of the token when comparing.
5396         (takeprec): Since now tail behaves differently, use strneq.
5398 1995-06-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5400         * movemail.c (main): Add newline in usage message.
5402 1995-06-21  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5404         * make-docfile.c (scan_file): Make sure it never looks at filename[-1].
5406 1995-06-21  Francesco Potortì  (pot@cnuce.cnr.it)
5408         * etags.c (find_entries): Rewind before rereading the input file.
5410 1995-06-20  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5412         * Version 19.29 released.
5414         * make-docfile.c (main) [MSDOS]: Do set _fmode.
5415         This undoes part of the previous change.
5417 1995-06-19  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5419         * make-docfile.c (main): On MSDOS, don't change stdout
5420         to binary, and insist on an -o option.
5422 1995-06-13  Geoff Voelker  <voelker@cs.washington.edu>
5424         * etags.c (process_file,absolute_filename): Handle filenames
5425         starting with a drive letter.
5427         * makefile.nt (install): Copy wakeup.exe properly.
5429 1995-06-08  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5431         * make-docfile.c [MSDOS]: #undef chdir.
5433 1995-06-04  Paul Eggert  <eggert@twinsun.com>
5435         * rcs2log (output_authors): Allow ':' in time zone,
5436         as per ISO 8601 and RCS 5.6.8 beta.
5438 1995-05-29  Francesco Potortì  (pot@cnuce.cnr.it)
5440         * etags.c (etags_getcwd): Undo the /bin/pwd change.  It may raise
5441         compatibility problems.
5443 1995-05-26  Richard Stallman  <rms@gnu.ai.mit.edu>
5445         * etags.c (etags_getcwd): Don't use #elif.
5446         Have just one function body.
5448 1995-05-25  Geoff Voelker  <voelker@cs.washington.edu>
5450         * makefile.nt (LIBS): Use BASE_LIBS.
5451         (make-docfile.exe,hexl.exe,wakeup.exe,etags.exe): Don't depend
5452         upon LIBS.
5453         (DOC): Use del instead of rm.
5454         (DOC) [WINDOWS95]: Use DOC.
5455         (clean): Handle MSVC aux files.
5456         (config.h,paths.h): Use $(CP) instead of cp.
5457         (config.h): Use $(CONFIG_H)
5458         (make-docfile.obj): Depend upon config.h.
5459         Clean up comments.
5461 1995-05-23  Francesco Potortì  (pot@cnuce.cnr.it)
5463         * etags.c (etags_getcwd): Use /bin/pwd instead of pwd because the
5464         former gives the true path even in the presence of simlinks.
5466 1995-05-07  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5468         * movemail.c (main): Increase lock timeout to five minutes.
5470 1995-05-06  Geoff Voelker  <voelker@cs.washington.edu>
5472         * makefile.nt (obj): Use .c files.
5474 1995-05-04  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5476         * make-docfile.c: Include config.h.
5477         (NO_SHORTNAMES): New definition.
5478         (xmalloc): Return long *.
5480         * etags.c (C_entries): Cast result of xrealloc.
5481         (xmalloc, xrealloc): Declare them to return long *.
5483         * b2m.c (xmalloc, xrealloc): Declare them long *.
5485         * movemail.c (xmalloc): Declare it to return long *.
5487 1995-04-30  Paul Eggert  <eggert@twinsun.com>
5489         * rcs2log (datearg): If rlog options are specified explicitly,
5490         omit the implicit '-d>DATE' option.
5491         (repository, rlog): Allow absolute paths to CVS repositories.
5492         Look only at the first line of CVS/Repository.
5494 1995-04-26  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5496         * Makefile.in.in (extraclean): Depend on maintainer-clean, not
5497         realclean.
5499 1995-04-24  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5501         * Makefile.in.in [REGEXP_IN_LIBC] (REGEXPOBJ, REGEXPDEPS):
5502         Alternative (empty) definitions.
5504 1995-04-18  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5506         * emacsclient.c (main): Add argv[0] to an error message.
5508 1995-04-13  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5510         * emacsclient.c (main): Improve error handling.
5511         * cvtmail.c (main, skip_to_lf): Improve error handling.
5512         (sysfail): New function.
5514         * b2m.c (main): Check for trailing ", " before trying to delete it.
5516 1995-04-12  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5518         * Makefile.in.in (all): Build test-distrib and make-docfile.
5520         * make-docfile.c (scan_c_file): At end, restore file name last char
5521         to its original value.
5523 1995-04-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5525         * emacsclient.c, emacsserver.c: Test NO_SOCKETS_IN_FILE_SYSTEM.
5527 1995-04-08  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5529         * Makefile.in.in (BASE_CFLAGS): Rename from ALLOCA_CFLAGS.
5530         (alloca.o, regex.o): Use BASE_CFLAGS.
5532 1995-04-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5534         * emacsclient.c [Berkeley sockets version] (main): Declare getcwd.
5536 1995-04-04  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5538         * Makefile.in.in (aixcc, aixcc.c): Targets deleted.
5539         (SOURCES, distclean): Remove obsolete references to aixcc.
5541 1995-04-02  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5543         * aixcc.lex: File deleted--surely obsolete now.
5545 1995-03-23  Paul Eggert  <eggert@twinsun.com>
5547         * rcs2log (output_authors): Replace /[/]/ by /[\/]/, for
5548         portability to mawk and nawk.
5550 1995-03-21  Paul Eggert  <eggert@twinsun.com>
5552         * rcs2log: Treat -u "login:fullname:mailaddr" as if it were
5553         -u "login<tab>fullname<tab>mailaddr".
5555 1995-03-21  Paul Eggert  <eggert@twinsun.com>
5557         * rcs2log: Add -u "login<tab>fullname<tab>mailaddr" option, which
5558         replaces the (now obsolescent) -n login fullname mailaddr option.
5559         Add -R option for recursive rlog.
5560         (AWK): New environment variable (default `awk') for awk program name.
5561         (output_authors, tab, loginFullnameMailaddrs, recursive): New vars.
5562         Quote authors and fullnames correctly.
5563         Don't omit path from repository root when logging CVS files.
5565 1995-03-15  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5567         * emacsclient.c, emacsserver.c: Use BSD sockets whenever available,
5568         even if HAVE_SYSVIPC.
5569         * emacsclient.c (main): Use getcwd if not BSD.
5571 1995-03-13  Francesco Potortì  (pot@cnuce.cnr.it)
5573         * etags.c (process_file): Free (filename) after using it.
5574         (readline_internal): Do not access the char before start of line.
5576 1995-02-22  Francesco Potortì  (pot@cnuce.cnr.it)
5578         * etags.c (C_entries): token_saved removed.  Initialise tok.valid and
5579         savetok.valid.  Mark token as valid when it is initialised.
5580         (make_tag): Make token only if token is valid and reset validity.
5581         (CNL_SAVE_DEFINEDEF): Test for savetok.valid instead of token_saved.
5582         (TOKEN): Add a new member: valid.
5584 1995-02-15  Francesco Potortì  (pot@cnuce.cnr.it)
5586         * etags.c (C_entries): Bug corrected in xrealloc of token_str.
5587         (main): Do not read twice the last filename in the stdin file list.
5589 1995-02-14  Francesco Potortì  (pot@cnuce.cnr.it)
5591         * etags.c (C_entries): Initialise the new members of TOKEN.
5592         (C_entries): Do not allocate a new space for each token found by
5593         consider_token.  Let make_tag do that instead.
5594         (make_tag): Since now TOKEN has memory of where it is taken from,
5595         this new macro substitutes both make_tag_from_new_lb and
5596         make_tag_from_oth_lb.  All callers changed.
5597         (TOKEN): Add linepos and buffer members.
5598         (main): Initialise token_str.
5599         (lang_extensions): Recognise .c++ and .h++ as C++ file suffixes.
5600         (token_str): New global variable used by C_entries.
5602 1995-02-07  Richard Stallman  <rms@pogo.gnu.ai.mit.edu>
5604         * Makefile.in.in (maintainer-clean): Rename from realclean.
5606 1995-02-01  Francesco Potortì  (pot@cnuce.cnr.it)
5608         * etags.c (pfnote): Initialise been_warned in the node.
5609         (C_entries): Remove a speed hack for the sake of clarity.
5611 1995-01-18  Francesco Potortì  (pot@cnuce.cnr.it)
5613         * etags.c (longopts, print_help, main): Use -I as abbreviation
5614         for the --ignore-indentation option.
5615         (main): Do not print an error message for unknown options.
5617 1995-01-12  Francesco Potortì  (pot@cnuce.cnr.it)
5619         * etags.c (FILEPOS, GET_CHARNO, GET_FILEPOS, max, LINENO): Deleted.
5620         (append_to_tagfile, typedefs, typedefs_and_cplusplus)
5621         (constantypedefs, update, vgrind_style, no_warnings)
5622         (cxref_style, cplusplus, noindentypedefs): Were int, now logical.
5623         (permit_duplicates): Was a var, now a #define.
5624         (filename_lb): Was global, now local to main.
5625         (main): Open the tag file when in cxref mode.
5626         Use a BUFSIZ size buffer for making the shell commands.
5627         Look at the return value from the system routine.
5628         Exit when cannot open the tag file.
5629         (process_file): Open the file and pass the FILE* to find_entries.
5630         (find_entries): Now void, because does not open the file itself.
5631         (pfnote): Recovering from lack of memory does not work.  Removed.
5632         Use savenstr and simplify the code.
5633         (free_tree): Only free the name space if node is named.
5634         (structtag): Now a pointer, not a fixed length array of chars.
5635         (consider_token): Don't take a token as argument.  Use savenstr
5636         when saving a tag in structtag.  Callers changed.
5637         (TOKEN): Structure changed.  Now used only in C_entries.
5638         (TOKEN_SAVED_P, SAVE_TOKEN, RESTORE_TOKEN): Deleted.
5639         (C_entries): nameb and savenameb deleted.  Use dinamic allocation.
5640         (pfcnt): Deleted.  Users updated.
5641         (getit, Asm_labels, Pascal_functions, L_getit, get_scheme)
5642         (TEX_getit, prolog_getit): Use dinamic allocation for storing
5643         the tag instead of a fixed size buffer.
5645 1995-01-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5647         * movemail.c (main): Skip past the colon in inname.
5649 1995-01-10  Francesco Potortì  (pot@cnuce.cnr.it)
5651         * etags.c (pfatal): New function.
5652         (main, etags_getcwd): Use pfatal.
5653         (etags_getcwd): Corrected another bug in the HAVE_GETCWD version.
5655 1995-01-10  Francesco Potortì  (pot@cnuce.cnr.it)
5657         * etags.c (Lang_function): Use void instead to declare the
5658         language functions, because many compilers are buggy.
5659         (etags_getcwd): Fix the previous fix on the #else branch.
5660         (readline_internal): Discard possible \r before \n here.
5661         (C_entries): Do not deal with \r here: undo previous fix.
5663 1995-01-09  Francesco Potortì  (pot@fly)
5665         * b2m.c (concat, xmalloc, xrealloc, readline, xnew): Four new
5666         functions and a macro that allow the program to work on input
5667         lines of whatever length.  Copied from etags.c.
5668         (fatal): Print a fatal error message and exit.
5669         (main): Use the new functions.  Fixed a bug that made a \037 char
5670         appear at the end of the output.
5672 1995-01-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5674         * etags.c (C_entries): Ignore carriage return at end of line.
5676 1994-12-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5678         * fakemail.c (xmalloc, xrealloc): Add casts.
5679         (add_field): Handle <...> and "..." syntax.
5680         (setup_files, get_keyword): Clean up parens and line breaks.
5681         (args_size): Likewise.
5683 1994-12-21  David J. MacKenzie  <djm@geech.gnu.ai.mit.edu>
5685         * yow.c: Include program name in error messages.
5687 1994-12-21  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5689         * make-docfile.c (scan_lisp_file): Handle dynamic doc strings.
5690         (xmalloc, fatal, error): New functions.
5691         (progname): New variable.
5692         (main): Set progname.
5694 1994-12-05  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5696         * emacsclient.c, emacsserver.c [HAVE_SYSVIPC]: Include sys/utsname.h.
5697         (main): If socket/mqueue name is in home dir, add in the host name.
5698         Rename .emacs_server to .emacs-server....
5700 1994-12-04  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5702         * emacsclient.c [!HAVE_SYSVIPC] (main): Fix error message diction.
5704 1994-11-22  Francesco Potortì  (pot@cnuce.cnr.it)
5706         * etags.c (print_help): Print --regex usage for ctags also.
5707         (main): Use -h in addition to -H as abbreviation for --help.
5709 1994-11-16  Francesco Potortì  (pot@cnuce.cnr.it)
5711         * etags.c [ETAGS_REGEXP]: All the new code that deals with regexps
5712         is compiled if this is defined.  The new functions and variables
5713         added #ifdef ETAGS_REGEXP are not listed in this ChangeLog.
5714         [VMS]: All VMS specific code previously contained in
5715         etags-vmslib.c is now included here, modified for dealing with
5716         language and regex options intermixed with filenames.
5717         (header_file): Global variable deleted.
5718         (Lang_Function): New typedef.  All language parser functions
5719         changed to this new type.
5720         (string_numeric_p, substr, prestr): Functions deleted.
5721         (readline_internal): Does the job that readline did previously.
5722         (longopts): --language and --regex options added.
5723         (lang_names, lang_extensions, lang_func, print_language_names):
5724         New structures, variables and functions for choosing languages.
5725         (print_help): Help strings updated.  Calls print_language_names.
5726         (argument_type, ARGUMENT): Typedefs for dealing with language and
5727         regex options intermixed with filenames.
5728         (main): Change the way of dealing with arguments on the command
5729         line to deal with language and regex options intermixed with
5730         filenames.
5731         (get_language, default_C_entries, Cplusplus_entries,
5732         Cstar_entries, Yacc_entries, just_read_file): New functions.
5733         (find_entries): Use the new method for choosing the language.
5734         (Pascal_functions): Allow intermixing of comment styles.
5735         (prolog_getit, skip_comment): Rewritten for speed.
5736         (readline): Rewritten to deal with regexps.
5738 1994-11-16  Francesco Potortì  (pot@cnuce.cnr.it)
5740         * etags.c (<errno.h>): #include added.
5741         (etags_getcwd): Check return value from getcwd.
5743 1994-11-10  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5745         * profile.c (TV1, TV2): Use EMACS_TIME as type.
5746         (get_time): Use EMACS_SUB_TIME.
5748 1994-10-30  Geoff Voelker  <voelker@cs.washington.edu>
5750         * ntlib.c: New file.
5751         * makefile.nt: New file.
5753         * make-docfile.c (main) [WINDOWSNT]: Set _fmode and stdout to O_BINARY.
5754         [WINDOWSNT]: Include the NT headers.
5755         (READ_TEXT, READ_BINARY): Test DOS_NT, not MSDOS.
5757         * etags.c (main, etags_getcwd): Test DOS_NT instead of MSDOS.
5758         [WINDOWSNT]: Include some NT headers.
5760 1994-10-24  Jonathan I. Kamens  (jik@cam.ov.com)
5762         * pop.c (getline): When a search of already-read input for CRLF
5763         fails, store the fact that we've searched it and don't search it
5764         again after reading more data.
5766         * pop.c (getline): When determining whether or not it's necessary
5767         to grow the input buffer, take into account the null that's stored
5768         at the end of already-read input in the buffer.
5770 1994-10-21  Francesco Potortì  (pot@cnuce.cnr.it)
5772         * etags.c (prestr, substr): Return a logical type.
5773         (consider_token): Comment out "EXFUN".  Use "DEFUN" instead of "DEF".
5774         (consider_token): Set funcdef to fignore when a DEFUN is met.
5775         (C_entries): Now we can use Tom Hageman patch for extern "C".
5777 1994-10-20  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5779         * movemail.c: PopServer renamed to popserver throughout.
5781 1994-10-20  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
5783         * etags.c: Don't declare malloc, since we include config.h.
5784         * fakemail.c: Likewise.
5786 1994-10-19  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5788         * movemail.c: Don't declare malloc.
5790 1994-10-19  David J. MacKenzie  <djm@duality.gnu.ai.mit.edu>
5792         * rcs-checkin: Use test -r instead of < to check readability, to
5793         avoid syntax error.
5795 1994-10-19  Jonathan I. Kamens  (jik@cam.ov.com)
5797         * pop.c: Only include ../src/config.h if HAVE_CONFIG_H is
5798         defined, and if HAVE_CONFIG_H isn't defined, define
5799         MAIL_USE_POP always (so that this file can be included in
5800         other programs besides emacs).
5802         * pop.c: Only declare h_errno if HAVE_H_ERRNO isn't defined or
5803         HAVE_CONFIG_H isn't defined.
5805         * pop.c (find_crlf, getline): Instead of using strstr, use a
5806         custom function for finding CRLF.
5807         (my_strstr): Function deleted.
5809 1994-10-17  Jonathan I. Kamens  (jik@cam.ov.com)
5811         * pop.c (getline): Fix a segfault because of passing a
5812         non-null-terminated string into strstr().  Fix from
5813         djm@va.pubnix.com (David J. MacKenzie).
5815         * pop.c: Don't include <string.h> and <strings.h>.
5817         * pop.c: Include <des.h> before <krb.h>, rather than after.
5818         They should be interchangeable, and indeed the inclusion is done in
5819         both orders in various files in the Kerberos 4 library sources,
5820         but djm@va.pubnix.com (David J. MacKenzie) reports that BSDI
5821         requires that <des.h> be included first, and I don't see any harm
5822         in changing the order.
5824         * pop.c: Include ../src/config.h, to get HAVE_STRING_H and
5825         STDC_HEADERS, if they're defined.  Undef open, read, write and
5826         close after including it.
5828 1994-10-18  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5830         * pop.c: Fix mismatch in conditionals.
5832         * make-docfile.c (main): Don't process one input file twice.
5833         Never use exit code > 1.
5835         * pop.c (open, close, read, write): Add #undefs.
5837         * pop.c: Don't declare malloc, realloc, free.
5838         Include ../src/config.h.
5839         Don't include string.h or strings.h.
5840         Include des.h before krb.h.
5841         Do declare my_strstr.
5842         (getline): Really use my_strstr.
5843         Leave one empty place in server->buffer,
5844         and put a null at the end of the data in it.
5846 1994-10-17  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5848         * emacsserver.c [SYSV_IPC] (main): Catch SIGHUP as well.
5849         Don't call kill with pid 0.  Handle EINTR when receiving messages.
5851 1994-10-17  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5853         * Makefile.in.in (regex.o): Use full path to find regex.c.
5855 1994-10-17  Francesco Potortì  (pot@fly.cnuce.cnr.it)
5857         * Makefile.in.in (etags): Add dependency on regex.o, link with it.
5858         (REGEXPOBJ, REGEXPDEPS, regex.o): Target and macros added.
5860 1994-10-12  David J. MacKenzie  (djm@duality.gnu.ai.mit.edu)
5862         * Makefile.in.in (DONT_INSTALL): Remove make-path.
5863         (${archlibdir}): Use mkinstalldirs instead.
5865         * movemail.c: Make functions that return nothing void, not
5866         implicitly int.
5867         (main): Improve usage message.
5868         (error): Write to stderr, not stdout.
5870         * b2m.c, cvtmail.c, digest-doc.c, emacsclient.c, emacsserver.c:
5871         * etags.c, fakemail.c, hexl.c, make-docfile.c, profile.c, sorted-doc.c:
5872         * test-distrib.c, timer.c, wakeup.c, yow.c: Eliminate some -Wall
5873         warnings from unused variables and implicitly declared functions.
5875 1994-10-11  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5877         * Makefile.in.in (clean): rm DOC* and *.tab.[ch].
5878         (distclean): Not here.
5880         * Makefile.in.in (libexecdir): Rename from libdir.
5882 1994-10-11  Francesco Potortì  (pot@cnuce.cnr.it)
5884         * etags.c (C_entries): Name the #define's that are macros.
5886 1994-10-10  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5888         * emacsserver.c [! SYSVIPC] (main): Fix uses of FD_* macros:
5889         fd_set arg is a pointer, descriptor arg comes first.
5891 1994-09-29  Francesco Potortì  (pot@cnuce.cnr.it)
5893         * etags.c (C_entries): Recognise typedef of ANSI style functions.
5894         (C_entries): Recognise #define inside a struct.
5895         (C_entries): ANSI tells that preprocessor commands do not have to
5896         start on the first column.
5897         (print_help): Documentation corrected for -d and -D.
5898         (white, endtk): ANSI tells the vertical tab is a separator.
5900 1994-09-24  Jonathan I. Kamens  (jik@gza-client1.aktis.com)
5902         * Makefile.in.in (MOVE_FLAGS, MOVE_LIBS): New variables.
5903         (pop.o, movemail.o): New targets.
5904         (movemail): Link in pop.o and movemail.o.  Use MOVE_LIBS, MOVE_FLAGS.
5906         * pop.c, pop.h: New files.
5908         * movemail.c: Improve POP code, move most of it into a separate file.
5909         (mbx_delimit_end, mbx_delimit_begin): Check for errors.
5910         (mbx_write): Check for errors and for From line.
5911         (pop_retr, popmail): Use subroutines in pop.c to do the real work.
5912         (get_errmsg, multiline, getline, putline, pop_stat, pop_command)
5913         (pop_init): Functions deleted.
5915 1994-09-23  Richard Stallman  <rms@churchy.gnu.ai.mit.edu>
5917         * make-path.c (touchy_mkdir): Make dir ugo+rx even if it isn't new.
5918         Rename path to dirname.
5920 1994-09-23  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5922         * Makefile.in.in (UTILITIES):
5923         Remove test-distrib, make-docfile, make-path.
5924         (DONT_INSTALL): New variable--list those files here.
5925         (clean): Delete the files in DONT_INSTALL.
5927 1994-09-20  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5929         * b2m.c (from, labels, data): Use MAX_DATA_LEN as length.
5930         (main): Use fgets, not gets.
5932 1994-09-17  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5934         * timer.c: Don't declare malloc.
5936 1994-09-16  Karl Heuer  <kwzh@gnu.ai.mit.edu>
5938         * emacsserver.c (FD_*) [HAVE_SOCKETS & !HAVE_SYSVIPC]: If not already
5939         defined, use simple 32-bit versions of these macros.
5940         (main) [HAVE_SOCKETS & !HAVE_SYSVIPC]: Use these macros.
5942 1994-09-16  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5944         * etags.c (etags_getcwd): Use getcwd if available.
5946 1994-09-11  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5948         * Version 19.27 released.
5950 1994-09-07  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5952         * Version 19.26 released.
5954 1994-08-15  Paul Eggert  <eggert@twinsun.com>
5956         * rcs2log: Add support for CVS.
5957         Work with `rlog's that output ISO 8601 dates.
5959 1994-08-09  Lawrence R. Dodd  <dodd@roebling.poly.edu>
5961         * rcs2log: Use <> to delimit email address.
5963 1994-08-06  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5965         * emacsserver.c [SYSV_IPC] (main): Make a separate process
5966         so we can listen for multiple requests.
5968 1994-08-04  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5970         * movemail.c: Include config.h first thing.
5972 1994-08-01  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5974         * emacsserver.c (main): Add casts to avoid warnings.
5976 1994-07-29  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5978         * Makefile.in.in (${archlibdir}): Compare the proper dir
5979         before installing the scripts.
5981 1994-07-27  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5983         * emacsclient.c (main): New local var progname saves argv[0].
5985 1994-07-26  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5987         * emacsclient.c (main): Don't actually modify argv[0].
5988         Modify a copy instead.
5990 1994-07-25  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5992         * profile.c (reset_watch, get_time): Use EMACS_GET_TIME.
5993         (tzp): Var deleted.
5995         * Makefile.in.in: Add #undef alloca.
5997 1994-07-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
5999         * timer.c (xmalloc): New function.
6001 1994-07-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6003         * Makefile.in.in (ALLOCA_CFLAGS): New variable.
6004         (alloca.o): New target.
6006 1994-07-08  Dave Love  (d.love@dl.ac.uk)
6008         * etags.c (takeprec): Recognise `character*(*) function'.
6010 1994-07-08  Francesco Potortì  (pot@cnuce.cnr.it)
6012         * etags.c (main): Don't barf on obsolete -t and -T switches.
6013         (main): Print an explicative message when a switch is not known.
6015 1994-06-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6017         * hexl.c: Don't declare exit or perror.
6019         * emacsserver.c (main): Don't declare geteuid.
6020         Don't declare getenv if convex.
6022 1994-06-07  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6024         * Makefile.in.in (test-distrib): Use ALL_CFLAGS.
6026 1994-06-03  Francesco Potortì  (pot@fly.cnuce.cnr.it)
6028         * etags.c (absolute_filename): Remove infinite loop bug when
6029         accessing files in directories whose name begins with a dot.
6031 1994-06-03  Francesco Potortì  (pot@fly.cnuce.cnr.it)
6033         * etags.c (etags_getcwd): Delete the trailing newline from cwd.
6035 1994-06-01  Morten Welinder  (terra@diku.dk)
6037         * yow.c (rootrelativepath) [MSDOS]: Define, expanding to dynamic
6038         location of data directory.
6040 1994-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6042         * Version 19.25 released.
6044 1994-05-28  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6046         * Makefile.in.in (distclean): Delete Makefile, Makefile.in, blessmail.
6048 1994-05-27  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6050         * Makefile.in.in (blessmail): Don't depend on ../src/emacs.
6052 1994-05-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6054         * Version 19.24 released.
6056 1994-05-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6058         * make-docfile.c (write_c_args): Put `default' in upper case.
6060 1994-05-17  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6062         * etags.c (etags_getcwd): Cast result of popen.
6063         (popen): Declaration deleted.
6065 1994-05-17  Karl Heuer  (kwzh@gnu.ai.mit.edu)
6067         * etags.c [!MSDOS]: Declare popen.
6069 1994-05-17  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6071         * b2m.c (main): Avoid crash if argc is 1.
6073 1994-05-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6075         * Version 19.23 released.
6077         * Makefile.in.in (blessmail): Specify directory for blessmail.el.
6079 1994-05-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6081         * Makefile.in.in (maybe-blessmail): Mention bless-mail is in lib-src.
6083 1994-05-05  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
6085         * Makefile.in.in: Fix out of date comment.
6087 1994-05-05  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6089         * Makefile.in.in: Put in a separator for where to start cpp procssing.
6090         Move all autoconf substitutions above that point.
6091         Above that point, use Make-style comments.
6092         This goes with changes in ../configure.in.
6094 1994-05-03  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6096         * Makefile.in.in (maybe-blessmail): New target to print the blessmail
6097         warning message.
6098         (${archlibdir}): Don't do it here.  Don't depend on blessmail.
6100 1994-05-02  Karl Heuer  (kwzh@gnu.ai.mit.edu)
6102         * Makefile.in.in (${archlibdir}): Be lenient about wc output format.
6104 1994-05-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6106         * Makefile.in.in (${archlibdir}): Don't run blessmail; instead
6107         print advice to run it, if it has anything significant to do.
6108         And only if MOVEMAIL_NEEDS_BLESSING.
6109         (blessmail): Use emacs, not temacs.
6110         (configuration): Rename from configname.
6112 1994-04-30  Morten Welinder  (terra@diku.dk)
6114         * etags.c (find_entries): Treat `*.cpp' as C++ files.
6116 1994-04-30  Morten Welinder  (terra@diku.dk)
6118         * etags.c [MSDOS]: #include <sys/param.h> for the following.
6119         [MSDOS] (etags_getcwd): Define simple MSDOS version without spawning
6120         a shell.
6122 1994-04-29  Morten Welinder  (terra@diku.dk)
6124         * hexl.c [MSDOS]: Don't define proto type for exit.
6126 1994-04-28  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6128         * b2m.c: Don't include string.h or strings.h.
6130 1994-04-27  Karl Heuer  (kwzh@gnu.ai.mit.edu)
6132         * Makefile.in.in: C_SWITCH_SYSTEM and C_SWITCH_MACHINE are now cpp
6133         symbols, not make variables.
6135 1994-04-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6137         * Makefile.in.in (etags, ctags): Make VERSION a string constant.
6138         * etags.c (print_version): Print VERSION as a string.
6140 1994-04-20  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6142         * fakemail.c (readline): Fix updating of p when buffer grows.
6144 1994-04-20  Karl Heuer  (kwzh@gnu.ai.mit.edu)
6146         * Makefile.in.in (blessmail): New target.
6147         ${archlibdir}: Use blessmail when installing movemail.
6149 1994-04-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6151         * fakemail.c (readline): When extending the buffer,
6152         calculate end afresh using the new size.
6154 1994-04-18  Francesco Potortì  (pot@fly.cnuce.cnr.it)
6156         * etags.c (main, print_help): Eliminate the -F option.
6158 1994-04-18  Francesco Potortì  (pot@fly.cnuce.cnr.it)
6160         * etags.c (absolute_filename): Compare against '\0' instead of NULL.
6162 1994-04-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6164         * Makefile.in.in: Renamed from Makefile.in.
6165         Makefile.in is now generated from it, and then preprocessed.
6166         Change comments to C syntax.
6167         Include config.h.
6168         (LIBS_SYSTEM, LIBS_MACHINE): Define as empty if not defined.
6169         (LOADLIBES): Define from LIBS_SYSTEM and LIBS_MACHINE.
6171 1994-04-13  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6173         * movemail.c [HAVE_UNISTD_H]: Include unistd.h.
6175 1994-04-12  Francesco Potortì  (pot@fly.cnuce.cnr.it)
6177         * etags.c (etags_getcwd): Initialize bufsize.
6179 1994-04-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6181         * profile.c (gettimeofday): If system doesn't have this, define it
6182         to give a fatal error.
6184 1994-04-11  Karl Heuer  (kwzh@gnu.ai.mit.edu)
6186         * movemail.c (main): Use setuid, not seteuid.
6188 1994-04-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6190         * etags.c: #undef static.
6192 1994-04-08  Francesco Potortì  (pot@fly.cnuce.cnr.it)
6194         * etags.c (outf, outfiledir): Rename to tagf, tagfiledir.
6195         (PF_funcs, Asm_funcs, L_funcs, PAS_funcs, TEX_funcs)
6196         (Scheme_funcs, prolog_funcs): Rename to Fortran_functions,
6197         Asm_labels, Lisp_functions, Pascal_functions, Scheme_functions,
6198         TeX_functions, Prolog_functions.
6199         (inf): No more a global variable.
6200         (C_entries): Take 2nd parameter `inf' instead of using the global one.
6201         (find_entries): Add the cp1 var for optimisation.
6202         (find_entries): Add more suffixes for assembler files.
6203         (Asm_funcs): Now finds labels even without an ending colon.
6205 1994-03-30  Francesco Potortì  (pot@fly.cnuce.cnr.it)
6207         * etags.c (main): Use etags_getcwd for compatibility.
6208         (etags_getcwd): New function.
6210 1994-03-25  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6212         * Makefile.in (etags, ctags): Pass -D for VERSION.
6214 1994-03-25  Francesco Potortì  (pot@cnuce.cnr.it)
6216         * etags.c (emacs_tags_format, ETAGS): Removed.  Use CTAGS instead.
6217         (main): Don't allow the use of -t and -T in etags mode.
6218         (print_help): Don't show options enabled by default.
6219         (print_version): Show the emacs version number if VERSION is #defined.
6220         (find_entries): Add "ss" as suffix for Chez Scheme.
6222 1994-03-23  Francesco Potortì  (pot@cnuce.cnr.it)
6224         * etags.c (cwd, outfiledir): Vars added.
6225         (relative_filename, absolute_filename, absolute_dirname):
6226         functions added to compute filenames in tags files.
6227         (process_file): Filenames in tags file are relative to the
6228         directory where the tags file is (useful with the -o option).
6229         (main): Initialise the outfiledir var.
6230         (TYPEDST): Add the `tignore' value.
6231         (C_entries): Corrected various small bugs.
6233 1994-03-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6235         * Makefile.in (UTILITIES): `env' deleted.
6236         (env): Target deleted.
6237         * env.c: File deleted.
6239 1994-03-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6241         * Makefile.in (install, ${archlibdir}): Switch back to ..
6242         before running INSTALL_PROGRAM.
6244 1994-03-14  Francesco Potortì  (pot@cnuce.cnr.it)
6246         * etags.c (TYPEDST): Add the `tignore' value.
6247         (C_entries): Corrected various bugs, now correctly parses the
6248         `extern "C" {' construction (patch by Tom R.Hageman).
6250 1994-03-05  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6252         * b2m.c: Use <...> to include config.h.
6253         Don't include stdlib.h.
6255 1994-03-03  Heiko Muenkel  (muenkel@tnt.uni-hannover.de)
6257         * b2m.c (main): Change delimiter from "^L" to "^_^L".
6258         Allow for text following "BABYL OPTIONS:".
6259         Add --help option.  Use argv[0] in error messages.
6261 1994-03-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6263         * emacsclient.c (main) [HAVE_SYSVIPC]:
6264         Make msgp->mtext longer if necessary.
6265         On HPUX, error if it's more than 512 chars.
6267 1994-02-26  David J. MacKenzie  (djm@geech.gnu.ai.mit.edu)
6269         * etags-vmslib.c: Use GPL.
6270         * emacstool.c: Use GPL.
6271         * fakemail.c: Update GPL.
6273         * make-path.c (main): Return 1 on error, not -1.
6274         Update GPL.
6276         * cvtmail.c: Declare malloc, realloc, xmalloc, xrealloc, getenv.
6277         (xmalloc, xrealloc): Return char *, not int.
6278         (error): Write to stderr, not stdout.
6279         Update GPL.
6281 1994-02-23  Karl Heuer  (kwzh@gnu.ai.mit.edu)
6283         * profile.c (main, get_time): Don't crash on invalid input.
6285 1994-02-22  Karl Heuer  (kwzh@gnu.ai.mit.edu)
6287         * profile.c (get_time): Simplify; avoid calling index.
6288         (main): Exit on EOF.
6290 1994-02-17  Francesco Potortì  (pot@cnuce.cnr.it)
6292         * etags.c (--absolute-pathnames): Option removed.
6294 1994-02-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6296         * fakemail.c (put_line): Don't break the line if it all fits.
6298 1994-02-14  Francesco Potortì  (pot@fly)
6300         * etags.c (absolute_pathnames, cwd): Add global vars.
6301         (longopts, print_help, main, process_file): Put absolute filenames
6302         in the tag file if the -A --absolute-pathnames option is used.
6303         (print_help): Alphabetically order the options.
6304         (malloc, realloc, strcpy, strncpy, strcmp): Remove extern declar.
6306 1994-02-09  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6308         * Makefile.in (C_SWITCH_MACHINE): Get this from autoconf.
6309         (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Use C_SWITCH_MACHINE.
6311 1994-02-07  Christian Lynbech  (lynbech@avignon)
6313         * emacsserver.c (main) [HAVE_SYSVIPC]: Reverse test of fork value.
6315 1994-02-04  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6317         * Makefile.in (UTILITIES): Mention profile.
6318         (profile): New target.
6320         * profile.c: New file.
6322 1994-01-16  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
6324         * make-docfile.c: Make the argument list output look more like the
6325         Lisp docstrings do.
6326         (write_c_args): Take new arg FUNC.  Make output
6327         look like lisp call prototypes: (function ARG1 ARG2), upcasing args.
6328         (scan_c_file): Pass BUF to write_c_args for FUNC arg.
6330 1994-01-14  Francesco Potortì  (pot@cnuce.cnr.it)
6332         * etags.c (stab_entry, stab_create, stab_find, stab_search,
6333         stab_type, add_keyword, C_reate_stab, C_create_stabs): Deleted.
6334         Use gperf generated hash table instead of linked list.
6335         (C_stab_entry, hash, in_word_set, get_C_stab, C_symtype): Added.
6336         Mostly code generated by gperf.
6337         (consider_token): Remove unused parameter `lp'.
6338         (PF_funcs, getit): Allow subroutine and similar declarations
6339         to span multiple lines.
6340         (C_entries): Check for newline if inchar to avoid bus errors.
6341         (process_file, find_entries): Distinguish among nonexistent
6342         and not regular file.
6344 1994-01-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6346         * timer.c: Include errno.h; don't include fasync.h.
6347         (schedule): Don't return a value.
6348         (sigcatch): Reestablish the handler first.
6349         (getevent): Always call notify at the end.
6350         (notify): Defer alarms around the whole body of function.
6352 1994-01-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6354         * timer.c (main): Don't request SIGIO, and don't handle it.
6355         Loop calling getevent.
6356         (sigcatch): Delete code to handle SIGIO.
6357         if defer_alarms is set, don't call notify, just set alarm_deferred.
6358         (getevent): Use read, not getchar.  Handle EINTR and EAGAIN.
6359         Set defer_alarms around realloc and schedule.
6360         If alarm_deferred gets set, call notify.
6361         Likewise if this event is the only pending event.
6362         Make buf and buf_size global variables.
6363         Don't malloc buf if it is already non-zero.
6364         (schedule): Just exit if run out of memory.
6365         Return the number of events.
6366         (signal) [_CX_UX]: Add #undef.
6368 1994-01-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6370         * timer.c [USG] (SIGIO): Define as SIGPOLL.
6371         (main) [USG]: Do ioctl to enable SIGPOLL.
6373 1994-01-08  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
6375         * timer.c: Don't declare sys_errlist; declare strerror instead.
6376         (schedule, main): Call strerror instead of using sys_errlist.
6377         * movemail.c (get_errmsg, pfatal_with_name, pfatal_and_delete):
6378         Call strerror instead of using sys_errlist.
6379         * env.c (main): Call strerror instead of using sys_errlist.
6380         * emacsclient.c: Don't declare sys_errlist; declare strerror instead.
6381         (main): Call strerror instead of using sys_errlist.
6382         * emacsclient.c [! HAVE_STRERROR] (strerror): Define the function.
6383         * env.c [! HAVE_STRERROR] (strerror): Likewise.
6384         * timer.c [! HAVE_STRERROR] (strerror): Likewise.
6385         * movemail.c [! HAVE_STRERROR] (strerror): Likewise.
6387 1994-01-05  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6389         * hexl.c: Fix up whitespace.  Get rid of spurious casts to void.
6391         * movemail.c (malloc): Don't declare it.
6392         (xmalloc): Cast result of malloc.
6393         (strcpy): Don't declare it.
6395 1993-11-14  Morten Welinder  (terra@diku.dk)
6397         * hexl.c [MSDOS]: Use binary file modes for non-text side of pipe.
6398         (main): Use fclose to close file opened by fopen.
6400         * fakemail.c (main) [MSDOS]: Dummy stub just to make the file compile.
6402         * movemail.c [MSDOS]: #undef `access'.
6404         * b2m.c (main) [MSDOS]: Open all files as binary.
6405         * etags.c (main) [MSDOS]: Open all files as binary.
6407         * make-docfile.c [MSDOS]: Use text/binary mode as appropriate.
6408         (scan_c_file, scan_lisp_file): Extra parameter for the mode to open
6409         with.
6411 1994-01-02  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6413         * Makefile.in (ALL_CFLAGS): Include LDFLAGS.
6414         Use ALL_CFLAGS in all the rules that compile and link with one cmd.
6415         (LINK_CFLAGS): New variable.
6416         (timer): Use LINK_CFLAGS.
6418 1993-12-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6420         * movemail.c: Include syswait.h.
6421         Fork a subprocess and use it to copy the mail file.
6423 1993-12-07  Richard Stallman  (rms@srarc2)
6425         * make-docfile.c (scan_lisp_file): Don't add newline at end of string.
6427 1993-12-04  Richard Stallman  (rms@srarc2)
6429         * movemail.c (main): When making tempname, cast result of xmalloc.
6430         Include room for EXXXXXX in the size.
6431         Don't use result of strcpy.
6433 1993-12-03  Paul Eggert  (eggert@twinsun.com)
6435         * vcdiff: Add --brief option.
6437 1993-12-02  Richard Stallman  (rms@srarc2)
6439         * Makefile.in (${archlibdir}, install): Use $(INSTALL_PROGRAM)
6440         for all executables and scripts.
6442 1993-11-27  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6444         * Version 19.22 released.
6446 1993-11-26  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6448         * Makefile.in (mostlyclean): Make it distinct from clean.
6450 1993-11-24  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6452         * Makefile.in (${archlibdir}): Don't do chown or chgrp.
6454 1993-11-16  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6456         * Version 19.21 released.
6458         * Makefile.in (install): Don't change mode or group when installing.
6460         * etags.c (FUNCST, TYPEDST, STRUCTST, DEFINEST): Delete excess commas.
6462 1993-11-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6464         * make-docfile.c (read_c_string): For "", concatenate the two strings.
6466         * movemail.c (main): Fix error message text.
6468 1993-11-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6470         * Version 19.20 released.
6472 1993-11-08  Tom Hageman  (tom@basil.icce.rug.nl)
6474         * etags.c (C_entries): Keep track of ()-parenthesis level so that
6475         functions returning a pointer to a function, a la `signal', can be
6476         parsed.  This also required new state `fstartlist' to `FUNCST'.
6477         (SAVE_TOKEN, RESTORE_TOKEN, TOKEN_SAVED_P): 1-deep token save stack.
6478         (C_entries, CNL): Use it to isolate preprocessor directive processing
6479         from the other state engines.
6480         (begtk): Add '~', for C++ class destructors.
6482 1993-11-02  Francesco Potortì  (pot@cnuce.cnr.it)
6484         * etags.c (consider_token): Remove unused variable firsttok.
6485         (prolog_getit): Call pfnote with the right number of arguments.
6487 1993-10-19  Paul Eggert  (eggert@twinsun.com)
6489         * rcs2log (printlogline): Don't generate lines containing only
6490         white space.
6492 1993-10-04  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
6494         * Makefile.in (${archlibdir}):
6495         Install ${SCRIPTS} from ${srcdir}, not cwd.
6497 1993-10-03  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
6499         * Makefile.in: Fixed typos or brainos of whoever thought `@' was
6500         the comment character.
6502 1993-10-01  Francesco Potortì  (pot@cnuce.cnr.it)
6504         * etags.c (process_file): Dead code removed.
6505         (S_ISREG): #define it using S_IFREG if not defined.
6506         (process_file): Regular files have nothing to do with symlinks.
6508 1993-09-28  Brian J. Fox  (bfox@ai.mit.edu)
6510         * Makefile.in (${archlibdir}): Install ${SCRIPTS} from ${srcdir}, not
6511         from current directory.  Only chmod and chgrp files that we
6512         installed, which excludes ${INSTALLABLE_SCRIPTS}.  They go in
6513         ${bindir}.
6514         (INSTALLFLAGS): Delete definition, since it is an unused variable
6515         now.
6517 1993-09-27  Brian J. Fox  (bfox@ai.mit.edu)
6519         * Makefile.in (INSTALL, INSTALL_PROGRAM, INSTALL_DATA):
6520         Let configure figure out the correct values for these variables.
6522 1993-09-14  Brian J. Fox  (bfox@ai.mit.edu)
6524         * Makefile.in (archlibdir): Only install executables internally
6525         used by emacs; don't install bindir binaries here.
6527 1993-09-24  Paul Eggert  (eggert@twinsun.com)
6529         * rcs2log: Add -h, -n, -r options.
6530         By default, look for *,v files as well as RCS/*,v files.
6531         Use $TMPDIR (default /tmp) instead of /tmp.
6533 1993-09-20  Francesco Potortì  (pot@fly)
6535         * etags.c (C_entries): is_func is initialised here instead of in
6536         consider_token for the sake of the yacc rules section.
6537         (C_entries): Now class, struct, enum, union and typedef produce
6538         named tags.
6540 1993-09-11  Roland McGrath  (roland@baalperazim.gnu.ai.mit.edu)
6542         * yow.c: Include <src/paths.h>, instead of "src/paths.h".
6544 1993-09-10  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
6546         * Makefile.in: Support configuring in a different directory when
6547         ${srcdir} has already been configured.
6548         (ALL_CFLAGS, CPP_CFLAGS): Put -I. -I../src before -I${srcdir}
6549         -I${srcdir}/../src.
6550         (b2m, movemail, fakemail, env, emacsserver, emacsclient,
6551         getdate.o, timer.o, timer): Remove `-I${srcdir}/../src', since it
6552         is already in CPP_FLAGS.
6553         * etags.c, emacsclient.c, wakeup.c, timer.c, b2m.c, fakemail.c,
6554         movemail.c, emacsserver.c: Include <config.h> instead of "config.h".
6556 1993-08-25  Paul Eggert  (eggert@twinsun.com)
6558         * rcs2log: Change /{/ to /\{/ for Posix ERE compatibility;
6559         otherwise, HP awk complains.
6561         * vcdiff: Append /usr/ccs/bin and /usr/sccs to PATH, since these
6562         are common hangouts for SCCS commands.
6564 1993-08-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6566         * Version 19.19 released.
6568 1993-08-12  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6570         * Makefile.in (make-path): Dep on config.h.
6572 1993-08-11  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6574         * b2m.c (TRUE, FALSE): Don't define if already defined.
6576 1993-08-09  Paul Eggert  (eggert@twinsun.com)
6578         * rcs2log (awkscript):
6579         Some sites put comma-separated junk after the fullname.
6580         Remove it, but leave "Bill Gates, Jr" alone.
6581         Remove the junk from fullnames like "0000-Admin(0000)".
6583 1993-08-08  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6585         * Version 19.18 released.
6587 1993-08-04  Francesco Potortì  (pot@spiff.gnu.ai.mit.edu)
6589         * etags.c (L_isdef, L_isquote, L_getit): Small optimisations.
6590         (L_funcs): The (foo::defmumble stuff now should work.
6591         (consider_token): Function returned random value--corrected.
6592         (C_entries): Corrected == versus = typo.
6594 1993-08-01  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
6596         * etags.c (put_entries): For NODE->rewritten, put pattern before
6597         \177 and name after, not vice versa.
6599 1993-08-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6601         * timer.c (main): Generate a SIGIO as soon as we've initialized.
6603 1993-07-30  Francesco Potortì  (pot@cnuce.cnr.it)
6605         * etags.c (FINCST): Add the fignore status.  Means we are
6606         after the parameter list and before the open curly brace.
6607         Allows correct parsing of C++ constructors.
6608         (C_entries, consider_token): Make use of fignore.
6609         (consider_token): Reset funcdef when next_token_is_func: when in
6610         ctags mode makes DEFVAR and others work better.
6611         (L_isquote): Function that recognises the "(quote" string.
6612         (L_getit): Ignore quoting via "'" or "(quote".  Useful for defalias.
6614 1993-07-29  Paul Eggert  (eggert@twinsun.com)
6616         * rcs-checkin: Don't check whether a file is readable until we have
6617         decided not to ignore it.
6619 1993-07-20  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6621         * Makefile.in (etags): Depend on ../src/config.h.
6623         * emacsserver.c: Include types.h before file.h.
6625 1993-07-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6627         * Makefile.in (install): Use .n, not .new, for temporary filenames.
6629 1993-07-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6631         * Version 19.17 released.
6633 1993-07-15  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
6635         * etags.c (print_help): Break up the very long strings containing
6636         the help message into shorter strings, to placate chintzy C
6637         compilers which can't handle strings that long.
6639         * wakeup.c: Use CPP tangle from autoconf manual to #include the
6640         correct combination of <time.h> and <sys/time.h>.
6642 1993-07-08  Francesco Potortì  (pot@cnuce.cnr.it)
6644         * etags.c (alloca): Remove all references to it.
6645         (main): Now calls xnew instead of alloca for portability.
6646         (../src/config.h): Included only if HAVE_CONFIG_H.
6647         (const): Void definition removed--config.h takes care of it.
6649 1993-07-08  Francesco Potortì  (pot@cnuce.cnr.it)
6651         * etags.c (consider_token): Was `==', now is `='.
6652         (consider_token): DEFUNs now treated like funcs in ctags mode.
6654         * etags.c (LEVEL_OK_FOR_FUNCDEF): Removed.
6655         (C_entries): Optimized the test that used LEVEL_OK_FOR_FUNCDEF.
6656         (C_entries): Remove a piece of useless code.
6657         (C_entries): Making typedef tags is delayed until a semicolon
6658         is met.  This handles "typedef int X, Y, Z;" correctly.
6660 1993-07-06  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6662         * Version 19.16 released.
6664         * b2m.c: #include <sys/types.h>.
6665         (ltoday): Declare this to be time_t.
6667 1993-06-30  Paul Eggert  (eggert@twinsun.com)
6669         * vcdiff: Add -q option.
6671 1993-06-29  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6673         * etags.c: #include "config.h" and the alloca CPP tangle before
6674         #including the system headers and getopt.h.  AIX requires the
6675         #pragma to come before any actual C code.
6677 1993-06-21  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6679         * Makefile.in (ctags): Depend on etags, so that parallel makes
6680         don't write etags.o files on top of each other.
6682 1993-06-19  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6684         * version 19.15 released.
6686 1993-06-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6688         * etags.c (add_node): Move var last_node to file scope.
6690 1993-06-17  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6692         * Version 19.14 released.
6694 1993-06-16  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6696         Bring mumbleclean targets into conformance with GNU coding standards.
6697         * Makefile.in (distclean): Call clean to do most of the work.
6698         Delete aixcc.c and TAGS.
6699         (realclean): Just call distclean.
6701         * Makefile.in: Remember, spaces are not tabs.
6703 1993-06-13  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6705         * Makefile.in (CPP_CFLAGS): New variable.
6706         Use it instead of ALL_CFLAGS when compiling a .c file.
6707         (getopt.o, getopt1.o): Add explicit compilation commands.
6709 1993-06-10  Mark D. Baushke  (mdb@cisco.com)
6711         * etags.c: Reinstate old -f option as an alias for -o for
6712         installed base uses.
6714 1993-06-09  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6716         * emacsserver.c (main): When we're passing a `struct sockaddr_un'
6717         to bind or accept, cast the pointer, to avoid warnings on systems
6718         which declare prototypes for this.
6719         * emacsclient.c (main): Same.
6721         * Makefile.in (YACC): New variable, to be set by top-level Makefile.
6723 1993-06-08  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6725         * Version 19.13 released.
6727         * wakeup.c: Include sys/types.h, too; I think that's where time_t
6728         comes from, not sys/time.h.
6730 1993-06-02  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6732         * wakeup.c: Include sys/time.h.
6734         * etags.c: #undef static.
6736         * Version 19.12 released.
6738         * Makefile.in (all): Exclude INSTALLABLE_SCRIPTS and SCRIPTS from deps.
6740 1993-06-01  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6742         * Version 19.11 released.
6744         * timer.c [LINUX]: #undef signal.
6745         * emacsserver.c: #undef signal.
6747 1993-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6749         * wakeup.c (main): Make when a time_t.
6751 1993-05-30  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6753         * Makefile.in (${archlibdir}): Use `(cd foo && pwd)' instead of
6754         `(cd foo ; pwd)' to get the canonical name of a directory; cd
6755         might fail, and have pwd print out the current directory.
6757         * movemail.c [MAIL_USE_POP] (main): Don't use non-portable
6758         string-handling functions.
6760 1993-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6762         * Version 19.10 released.
6764 1993-05-29  Paul Eggert  (eggert@twinsun.com)
6766         * rcs2log: When given no file arguments, inspect RCS/.* as well
6767         as RCS/*.  Don't report an error if RCS is empty or nonexistent.
6769 1993-05-29  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6771         * Makefile.in (timer): Link with $(LOADLIBES).
6773 1993-05-28  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6775         * fakemail.c (put_line): Don't output \n\t unless more text follows.
6777 1993-05-28  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6779         * etags.c: Replace the CPP tangle for alloca with the one from the
6780         autoconf documentation, since that's working elsewhere.
6782 1993-05-27  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6784         * Makefile.in (ALL_CFLAGS): Add "-I.", so the system and machine
6785         description files can find their ancestors.
6787 1993-05-27  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6789         * Makefile.in (install): Get the scripts from ${srcdir},
6790         unlike the executables.
6791         (ALL_CFLAGS): Add -I../src.
6793 1993-05-27  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6795         * Version 19.9 released.
6797 1993-05-26  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6799         * Makefile.in (install): Do install the programs listed in
6800         INSTALLABLE_SCRIPTS.  Make the renaming loop use INSTALLABLES and
6801         INSTALLABLE_SCRIPTS, instead of writing the programs out.
6803         * Makefile.in (ALL_CFLAGS): Include -I${srcdir}.
6804         (getopt.o, getopt1.c): Use ${srcdir} as appropriate.
6806 1993-05-25  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6808         * etags.c: Include ../src/config.h.
6810         * Makefile.in (install): Don't handle INSTALLABLE_SCRIPTS
6811         in first loop.  Delete files from bindir before installing new ones.
6812         (ALL_CFLAGS): Use ${srcdir} to find .../src dir.
6814 1993-05-24  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6816         * Version 19.8 released.
6818         * make-docfile.c: Doc fix.
6820 1993-05-24  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6822         * tcp.c: Fix comment syntax at top of file.
6823         (main): Don't call htons with the port number.
6825 1993-05-24  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6827         * Makefile.in (timer.o, sorted-doc.c): Link with alloca.o, if it's
6828         appropriate.
6830         * Makefile.in (install): Refer to the variables INSTALLABLES and
6831         INSTALLABLE_SCRIPTS, instead of writing them out.
6833 1993-05-23  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6835         * make-path.c (main): Return 0.
6837 1993-05-22  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6839         * Version 19.7 released.
6841 1993-05-22  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6843         * make-docfile.c (scan_lisp_file): Recognize defalias like fset.
6845 1993-05-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
6847         * tcp.c: New file.
6849 1993-05-18  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
6851         * Makefile.in (.c.o): Make the rule start with a tab, not spaces.
6853 1993-05-15  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6855         * timer.c (notify): Don't call sighold or sigrelse; they're USG
6856         only.  We should really fix this later, but let's just make it
6857         compile for now.
6859         Install patches from David J. Mackenzie to make the srcdir option
6860         work.
6861         * Makefile.in (srcdir, VPATH): Get this value from the top-level
6862         Makefile.
6863         (INSTALLABLES): Split this into two lists - INSTALLABLES and
6864         INSTALLABLE_SCRIPTS.
6865         (INSTALLABLE_SCRIPTS): New list.
6866         (EXECUTABLES): Include INSTALLABLE_SCRIPTS.
6867         (${archlibdir}): The scripts to be installed live in the source
6868         tree, not in the object tree.
6869         (test-distrib): Note that the data file lives in the source tree,
6870         not the object tree.
6871         (GETOPTDEPS): Note that getopt.h lives in the source tree.
6872         (all other targets): Change references to source files to use
6873         ${srcdir}, except for config.h, which lives in the object dir.
6874         (timer.o): Note that this depends on ../src/config.h.
6875         * make-docfile.c (main): Add a -d option, to tell it where to find
6876         the source files.
6877         * test-distrib.c (main): Take the name of the distribution file to
6878         test from the command line.
6880         * timer.c: Fix misspellings of get_date function's name.
6882 1993-05-12  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
6884         * etags.c (main):
6885         Don't require that there be input files if -i switches were given.
6887 1993-05-09  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
6889         The GNU coding standards specify that CFLAGS should be left for
6890         users to set.
6891         * Makefile.in (CFLAGS): Put this in the "things configure might
6892         edit" section, and have it default to -g.
6893         (ALL_CFLAGS): New variable, set to all the flags which should be
6894         passed to compilations.  Replace all other uses of CFLAGS with
6895         ALL_CFLAGS.
6896         (.c.o): New rule, to pass ALL_CFLAGS to compilations.
6898         * Makefile.in (DEFS): Remove this; it's always just going to be
6899         "-DHAVE_CONFIG_H -Demacs".
6901 1993-05-03  Paul Eggert  (eggert@twinsun.com)
6903         * rcs2log: mawk, SunOS 4.1.3 nawk, and Ultrix/MKS nawk all barf on
6904         /[/]/, so change it to /[\/]/.  This should work on all
6905         Posix-compliant awks.  It's slightly wrong with traditional awk,
6906         since it matches \ too, but that's a minor problem compared to awk
6907         syntax errors.
6909 1993-05-01  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6911         * Makefile.in (ALLOCA): New variable, whose value we should
6912         inherit from the top-level makefile.
6913         (etags, ctags): Include ALLOCA in the list of object files that
6914         these executables depend on and link.
6916 1993-04-09  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
6918         * Makefile.in (DEFS): Rename from CONFIG_CFLAGS.
6920 1993-04-07  Jim Blandy  (jimb@churchy.gnu.ai.mit.edu)
6922         * make-docfile.c (write_c_args): Print an argument named "defalt"
6923         as "default".
6925 1993-03-24  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
6927         * Makefile.in (C_SWITCH_SYSTEM): New variable.
6928         (CFLAGS): Include C_SWITCH_SYSTEM in the flags to pass to the
6929         compiler.
6931 1993-03-22  Francesco Potortì  (pot@cnuce.cnr.it)
6933         * etags.c (YACC): Flag added to c_ext.
6934         (c_ext): No more a synonim for c_ext&C_PLPL because of YACC.
6935         (find_entries): Consistently use streq when reasonable.
6936         (find_entries): A .y file is a yacc file.
6937         (get_C_stab): c_ext becomes c_ext&C_PLPL.
6938         (C_entries): Logical cplpl means c_ext&C_PLPL.
6939         (C_entries): Logical yacc_rules means we are after the first %%.
6940         (C_entries): Add logic for yacc files.
6942 1993-03-16  Francesco Potortì  (pot@cnuce.cnr.it)
6944         * etags.c (C_entries): ':' case moved to the second switch.
6945         (C_entries): Do not examine token if structdef==scolonseen.
6946         (consider_token): structtag set to null string for enum.
6948 1993-03-12  Francesco Potortì  (pot@cnuce.cnr.it)
6950         * etags.c (GET_COOKIE): And related macros removed.
6951         (logical): Is now int, no more a char.
6952         (reg): Define deleted.
6953         (isgood, _gd, notgd): Deleted.
6954         (gotone): Deleted.
6955         (TOKEN): Member linestart removed.
6956         (linepos, prev_linepos, lb1): Deleted.
6957         (main): Call initbuffer on lbs array instead of lb1.
6958         (init): Remove the initialisation of the logical _gd array.
6959         (find_entries): A .sa suffix means assembler file.
6960         (C_create_stab): "auto", "void", "extern", "static" are st_C_typespec.
6961         All C state machines rewritten.
6962         (C_entries): Complete rewrite.
6963         (condider_token): Complete rewrite.
6964         (getline): Deleted.
6966 1993-03-01  Francesco Potortì  (pot@fly.CNUCE.CNR.IT)
6968         * etags.c (C_entries): Add the quotednl logical variable.
6969         Used for parsing of #define's spanning multiple lines.
6971 1993-02-23  Francesco Potortì  (pot@fly.CNUCE.CNR.IT)
6973         * etags.c (C_entries): Save the definedef status even when a
6974         newline is met inside a string.
6976 1993-03-19  Eric S. Raymond  (eric@geech.gnu.ai.mit.edu)
6978         * Makefile.in (EXECUTABLES): Add rcs-checkin.
6980         * Makefile.in (unlock, relock): New productions.
6982 1993-03-16  Paul Eggert  (eggert@twinsun.com)
6984         * rcs2log: Some awks don't understand "\r".  Code around this.
6985         Unfortunately this requires putting a carriage return in the
6986         source code.  Don't assume that rlog will tolerate times like
6987         `10:10:60'; RCS 5.7 won't allow this.
6989 1993-03-10  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
6991         * timer.c (main): Set the ownership of the stdin file descriptor
6992         to the current process.  Print error messages if either of the
6993         fcntl's fails.
6995         * timer.c (sigcatch): Declare this to return SIGTYPE (defined in
6996         ../src/config.h), not void.
6998 1993-03-06  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
7000         * b2m.c (main): Don't exit upon reading a blank line.
7002 1993-03-01  Francesco Potortì  (pot@fly.CNUCE.CNR.IT)
7004         * etags.c (C_entries): New local variable quotednl.  Used for
7005         parsing of #define's spanning multiple lines.
7007         * etags.c (C_entries): Save the definedef status
7008         even when a newline is met inside a string.
7010 1993-02-26  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
7012         * timer.c (notify): Initialize waitfor properly.
7014 1993-02-22  Francesco Potortì  (pot@CNUCE.CNR.IT)
7016         * etags.c (C_entries): Don't reset definedef when a newline inside a
7017         comment is met.
7019 1993-01-14  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7021         * etags.c (find_entries): If filename ends in .f or .for,
7022         don't try anything but Fortran.
7024 1993-01-08  Michael I Bushnell  (mib@geech.gnu.ai.mit.edu)
7026         * timer.c (notify): Flush stdout after writing message to avoid lossage
7027         on terminals.
7029         (notify): Also, write a newline after the token.
7031 1992-12-12  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
7033         * Makefile.in (exec_prefix): New variable.
7034         (bindir, libdir): Use it instead of `prefix'.
7036         * Makefile.in (CFLAGS): #define HAVE_CONFIG_H, too.
7038         * Makefile.in (libdir): Default to ${prefix}/lib.
7039         (archlibdir): Adjust to match.
7041         * Makefile.in (distclean): Don't delete backup or autosave files.
7042         (extraclean): Like realclean, but does delete backup and autosave
7043         files.
7045         * Makefile.in (realclean): Ignore errors from rm.
7047         * Makefile.in (distclean): Don't bother to delete ../arch-lib;
7048         that doesn't exist anymore.
7050 1992-12-11  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
7052         * Makefile.in (prefix, bindir, libdir, srcdir): New variables, as
7053         described in the top-level Makefile.
7054         (UTILITIES): Add make-path to the list of utility programs.
7055         (../arch-lib): Replaced by the ${archlibdir} target, which places
7056         the executables in their permanent home.
7057         (install, install.sysv, install.xenix): Consolidated into one
7058         target which should work under all circumstances, modulo a few
7059         ignored error messages.
7061         * make-docfile.c (scan_c_file): Since DEFVAR_PER_BUFFER now takes
7062         a different number of arguments than other DEFVARs, recognize it
7063         specially, and expect the right number of commas.
7065 1992-12-04  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
7067         * make-path.c: New program, to help with the installation process.
7068         * Makefile.in (make-path): New target.
7070         * make-path.c (touchy_mkdir): Remove debugging output.
7072 1992-11-05  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
7074         * Makefile.in (getdate.o): Add explicit target for this, so we
7075         can indicate that it depends on ../src/config.h.
7077 1992-11-04  Jim Blandy  (jimb@totoro.cs.oberlin.edu)
7079         * Makefile.in (CONFIG_CFLAGS): Let the configure script edit this
7080         instead of CFLAGS.
7081         (CFLAGS): Add -Demacs and -I../src to CONFIG_CFLAGS to produce this.
7083 1992-09-30  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7085         * getdate.y: Correctly recognize Mt. Xinu BSD running on an HP
7086         9000/300 as BSD; don't include both <sys/time.h> and <time.h> on
7087         that system.
7089         * Makefile.in (arch-lib): Give rm the `-f' option.
7091 1992-09-28  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7093         * make-docfile.c (write_c_args): Rewritten to correctly print
7094         &optionals before the first identifier, but after the first paren.
7095         This code used to just wait for commas or spaces; now it notices
7096         identifier boundaries.
7098 1992-09-26  Roland McGrath  (roland@churchy.gnu.ai.mit.edu)
7100         * rcs2log: When getting date, use %02d instead of %.2d in awk printf.
7102 1992-09-23  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7104         * make-docfile.c (write_c_args): Print the argument lists properly
7105         when the first argument is optional.
7107 1992-09-19  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7109         * sorted-doc.c (main): Redefine special chars to use fonts tensy, teni.
7110         Redefine @item.  Set catcode of +.
7112 1992-08-22  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7114         * emacsclient.c (main): Set IPC_CREAT in msgget call.
7116 1992-08-20  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7118         * etags.c (TEX_funcs): Keep just 1 of two redundant nested loops.
7119         (TEX_decode_env): Make `tab' one element longer.
7121 1992-08-20  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7123         * etags.c (PF_funcs): Recognize the "entry" keyword.
7125 1992-08-18  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7127         * Makefile.in: Add rcs2log and vcdiff to the list of utilities.
7129 1992-08-14  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7131         * timer.c (events): Rather than having slots marked as in use or
7132         out of use by the `token' field, keep all pending events at the
7133         beginning of the array.  When we delete an event in the middle of
7134         the array, we move the last event into its place.
7135         (num_events): New variable.
7136         (schedule): It is now cheaper to find a free event slot;
7137         events[num_events] is the first free slot.
7138         (notify): Scan events[0 .. num_events-1], instead of the whole
7139         array.  When an event fires, move the last event in the array into
7140         its spot.  Use num_events to determine whether or not there are
7141         any pending events, not wait_for.
7142         (getevent): Delete unused variable `ep'.
7143         (sigcatch): It's now easier to find all the active events.
7144         (main): Initialize num_events.
7146         * etags.c: Rather than fret about which systems have index and
7147         which systems have strchr, and how to tell the difference between
7148         them, we just write out our own versions.  Big deal.
7149         (index, rindex): Extern declarations removed.
7150         (NEED_INDEX, NEED_RINDEX): Special hacks for hpux removed.
7151         (etags_index, etags_rindex): New declarations.
7152         (process_file, find_entries, pfnote, TEX_funcs, TEX_decode_env,
7153         TEX_getit, substr): Use the etags_*index functions, rather than
7154         the native *index functions.
7155         (rindex, index): Rename to etags_rindex and tags_rindex, and
7156         made them unconditionally defined, rather than having them depend
7157         on NEED_*INDEX.
7159         * etags.c (savenstr): Add declaration for this at top of file.
7160         (TEX_decode_env): Don't declare it local to this function.
7162         * b2m.c: #include "../src/config.h", so we can test for the USG
7163         macro, and decide whether to include <string.h> or <strings.h>.
7164         * Makefile.in: Note that b2m.c depends on ../src/config.h.
7166 1992-08-13  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7168         * timer.c: Reformatted according to the GNU coding standards.
7169         Removed arbitrary limits on the number of events queued and the
7170         length of the tokens used to identify them.
7171         Removed casts to (void).
7172         Removed debugging printfs; they clutter the code, and the need
7173         can be better filled using a real debugger.
7175 1992-08-07  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7177         * timer.c: Installed new version from Eric Raymond; this is more
7178         portable, since it doesn't try to use SIGIO.
7180 1992-07-17  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7182         * emacsclient.c (main): If we can't find the socket in this
7183         person's home directory, print a message which asks if they've
7184         started the server, instead of just printing the message from
7185         sys_errmsg; Cygnus finds that people are much less confused by
7186         this.
7188 1992-07-14  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7190         * etags.c: Rather than defining "notdef" when "hpux" is #defined,
7191         so that index and rindex get defined, why don't we actually
7192         control index and rindex using symbols called "NEED_INDEX" and
7193         "NEED_RINDEX", and define them if hpux is defined?  Isn't that a
7194         little more readable than defining something whose name implies
7195         that it's not?
7197 1992-07-08  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7199         * movemail.c: Merged changes from Jamie Zawinski's byte compiler
7200         distribution:
7201         Miscellaneous doc fixes.
7202         (skip_white, read_lisp_symbol): New functions.
7203         (scan_lisp_file): Instead of using long hairy strings of ifs, call
7204         read_lisp_symbol and then see what we got.  Call skip_white
7205         instead of writing out a loop to do its job.  Correctly extract
7206         docstrings from "defmacro" declarations.
7208 1992-06-25  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7210         * movemail.c (strcpy): Declare this to return char *.
7212 1992-06-18  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7214         * etags.c (C_entries): When we find a C++ comment, do actually
7215         skip to the end of the line; do a 'break' instead of a 'continue'.
7217 1992-06-11  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7219         * etags.c (getit): Add missing parenthesis to expression which
7220         decides if this token is an identifier.
7222 1992-06-04  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
7224         * etags.c (consider_token): Recognize `ENTRY' macro used in libc.
7226 1992-05-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7228         * etags.c (put_entries): Always put space between name and line num.
7230 1992-05-28  Ken Raeburn  (Raeburn@Cygnus.COM)
7232         * etags.c (getit): Parenthesize &&/|| expression to avoid gcc
7233         warning.
7234         (LEVEL_OK_FOR_FUNCDEF): Ditto.
7236 1992-05-19  Jim Blandy  (jimb@wookumz.gnu.ai.mit.edu)
7238         * make-docfile.c (write_c_args): Pass both arguments to putc.
7240 1992-05-10  Roland McGrath  (roland@albert.gnu.ai.mit.edu)
7242         * etags.c (C_entries): Fix reading of "..." strings.
7243         (consider_token): Recognize `SYSCALL' and `PSEUDO' macros, used in
7244         the C library source.
7246         * etags.c (C_entries): When we see a backslash inside a quoted
7247         string, skip to the next character.  This allows us to correctly
7248         deal with strings containing quotes.
7250 1992-05-08  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7252         * make-docfile.c (write_c_args): Print the C argument names as
7253         they would be written in Elisp; print '_' as '-'.
7255 1992-05-07  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7257         * movemail.c [POP]: Get user name via getpwuid.
7259 1992-05-04  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7261         * Makefile.in: Flags in CC invocations rearranged for no reason.
7263 1992-04-20  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7265         * etags.c (print_help): Remember not to embed raw newlines in
7266         strings - end the lines with `\n\'.
7268 1992-04-17  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7270         * timer.c (getevent): Remove declaration of memcpy; since
7271         different systems have different return types, and we're not even
7272         using the return type anyway, it wasn't doing us any good.
7274 1992-04-16  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7276         * emacsserver.c (msgcatch): Use the SIGTYPE macro to declare the
7277         type of this function.
7279 1992-04-14  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7281         * ChangeLog: Since the old etc contents have been split into etc
7282         and lib-src, the old etc's ChangeLog has been duplicated in the
7283         new etc and lib-src.  That means that each contains complete and
7284         coherent information, although each contains extraneous
7285         information.
7287 1992-04-08  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7289         * etags.c: "--no-warning" option renamed to "--no-warn",
7290         to be consistent with other GNU programs, like makeinfo.
7292         * Makefile: Renamed to Makefile.in; the configure script
7293         will edit this to produce Makefile.
7295 1992-04-07  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7297         * etags.c (print_help, print_version): New functions.
7298         (main): Options added to support them.
7300         * etags.c (longopts): New array of long names for the options.
7301         (main): Recognize them.
7303 1992-04-06  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7305         * etags.c (C_entries): Remove comment saying that \" in a string
7306         isn't recognized as magic, because it is correctly handled.
7308         * getopt.c, getopt.h: New files, from GNU C library.
7309         * etags.c: Rewritten to use getopt.
7310         #include "getopt.h".
7311         (file_num): Variable deleted; its role is now played by getopt's
7312         optind.
7313         (main): Argument processing loop rewritten to call getopt to get
7314         next option.  Options which take parameters (-o and -i) rewritten
7315         to get parameter from optarg instead of argv[1].
7316         Filename preprocessing loop and update command changed similarly.
7317         * Makefile (etags, ctags): Depend on and link with getopt.h,
7318         getopt.o, and getopt1.o.
7319         (getopt.o, getopt1.o): New targets for the GNU getopt routines.
7321         * etags.c (outfflag): Variable deleted; it is non-zero iff outfile
7322         is non-zero.
7324         (main): In the argument processing loop, the 'goto next_arg'
7325         statements are breaking out of the switch statement in exactly the
7326         same way that a simple 'break' statement would; replace the gotos
7327         with breaks, and remove the label.
7329 1992-04-06  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7331         * etags.c (C_entries): Clear tydef and next_token_is_func at start.
7332         (consider_token): Move next_token_is_func to global.
7334 1992-04-02  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7336         * Makefile: Conform with GNU coding standards:
7337         (mostlyclean): New target, synonymous with clean.
7338         (TAGS, check): New targets.
7339         (INSTALL, INSTALLFLAGS): New variables.
7341 1992-03-31  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7343         * lib-src/Makefile, etc/MACHINES, etc/NEWS: Changed references to
7344         `config.emacs' to `configure'.
7346         * lib-src/Makefile: Adjusted for renaming of share-lib to etc.
7347         * etc/MACHINES: Same.
7349 1992-03-30  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7351         * movemail.c (main): Allow tempname to be as long as necessary,
7352         instead of limiting it to 39 characters.
7354         * movemail.c (main): Move declaration of buf from top of function
7355         to local block surrounding the copy loop.  This makes it less
7356         likely to be confused with the buf used by the code which checks the
7357         permissions on outname's directory.
7359 1992-03-20  Jim Kingdon  (kingdon@albert.gnu.ai.mit.edu)
7361         * SERVICE: Remove my entry.
7363 1992-03-09  David J. MacKenzie  (djm@nutrimat.gnu.ai.mit.edu)
7365         * Makefile (emacstool, nemacstool, xvetool): Use ${CFLAGS}, not
7366         hardcoded -g.
7368         * movemail.c (xmalloc): Return char *, not int.
7369         (main) [!MAIL_USE_FLOCK]: Add a new conditional, MAIL_UNLINK_SPOOL,
7370         that is off by default -- normally don't unlink the mail spool
7371         file, just empty it.  Pass creat mode 0600, not 0666.
7373 1992-02-07  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7375         * Makefile (../arch-lib): Depend on ${EXECUTABLES}.
7376         (all): Instead of here.
7377         (install): Don't use the -s option, since people need symbols to
7378         debug code.
7380 1992-01-19  Eric Youngdale  (youngdale@v6550c.nrl.navy.mil)
7382         * etags-vmslib.c (fn_exp): Add type cast.
7384 1992-01-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7386         * movemail.c: Changes in comments.
7388 1992-01-13  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7390         * Makefile: Make the distclean target erase the DOC files from
7391         ../share-lib and the executables from ../arch-lib.
7393 1992-01-09  Jim Blandy  (jimb@pogo.cs.oberlin.edu)
7395         * emacsclient.c: #include <sys/stat.h>
7396         (main): Do declare statbfr.
7398 1991-12-21  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7400         * emacsserver.c, emacsclient.c [BSD]: Use either /tmp or ~
7401         for the socket, depending on SERVER_HOME_DIR.
7402         If using /tmp, put host name in the socket name.
7404         * movemail.c (pfatal_and_delete): New function.
7405         (main, popmail): Use it.
7406         (popmail): Close output before deleting messages.
7407         Check for error on close and on fsync.
7408         Use `fatal' where appropriate.
7409         (main): Remove (void).
7411         * aixcc.lex: New file.  Not officially part of Emacs.
7412         * Makefile: Rules for that.
7414 1991-12-04  Jim Blandy  (jimb@pogo.gnu.ai.mit.edu)
7416         * yow.c (main): Rename all references to PATH_EXEC to PATH_DATA.
7418         * etags.c (main): Properly cast call to alloca that initializes
7419         included_files.
7421 1991-08-17  Roland McGrath  (roland@geech.gnu.ai.mit.edu)
7423         * etags.c (files_are_tag_tables): Remove global var.
7424         (process_file): Don't test it.  Also remove hack checking for a
7425         file named "TAGS".
7426         (main): -i now takes an arg which is the name of a file to include.
7427         Collect these names and emit include tags for them after processing
7428         all the argument files.
7430 1991-07-30  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7432         * wakeup.c: Terminate if parent goes away.
7434 1991-07-18  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7436         * etags.c (C_entries): Process token before handling end of line.
7437         When inner loops reach end of line, just back up.
7438         Let the real end of line processing happen in just one place.
7439         (consider_token): Likewise.
7441 1991-04-11  Jim Blandy  (jimb@geech.gnu.ai.mit.edu)
7443         * etags.c (TEX_mode): Skip comments while scanning the text to see
7444         which escape character this file uses.
7446 1991-03-29  Richard Stallman  (rms@mole.gnu.ai.mit.edu)
7448         * emacsserver.c [USG]: Terminate if msgrcv fails.
7450 1991-03-03  Richard Stallman  (rms@mole.ai.mit.edu)
7452         * emacsserver.c [BSD]: Check for errors on stdin after scanf.
7454 1991-01-25  Jim Blandy  (jimb@churchy.ai.mit.edu)
7456         * make-docfile: Find the arguments to a C function correctly,
7457         by not ignoring the character that read_c_string returns.
7458         Don't even try to find argument names for functions that take MANY
7459         or UNEVALLED arguments, since they're a figment of the docstring's
7460         imagination.
7462 1991-01-14  Jim Blandy  (jimb@churchy.ai.mit.edu)
7464         * make-docfile: Read the .elc files generated by the new byte
7465         compiler.
7467 1990-12-31  Richard Stallman  (rms@mole.ai.mit.edu)
7469         * refcard.tex: Use cm fonts, not am, in multi-column mode.
7471 1990-11-29  Richard Stallman  (rms@mole.ai.mit.edu)
7473         * movemail.c (mbx_delimit_begin): Put space before `unseen'.
7475 1990-11-27  Richard Stallman  (rms@mole.ai.mit.edu)
7477         * Makefile (install*): No need to install wakeup.
7479 1990-11-26  Richard Stallman  (rms@mole.ai.mit.edu)
7481         * Makefile (install*): Install emacsclient like etags.
7483 1990-11-13  Richard Stallman  (rms@mole.ai.mit.edu)
7485         * movemail.c (error): Handle 3 args.
7486         (main): Don't check input access if using pop.
7488 1990-10-16  Richard Stallman  (rms@mole.ai.mit.edu)
7490         * etags.c (find_entries): Check for numbers after Scheme suffix.
7492 1990-10-14  Richard Stallman  (rms@mole.ai.mit.edu)
7494         * termcap.dat (vt200-80): Fix ke and ks to frob flag 1.
7496 1990-10-09  Richard Stallman  (rms@mole.ai.mit.edu)
7498         * Makefile (nemacstool, xvetool): New targets.
7500 1990-09-26  Richard Stallman  (rms@mole.ai.mit.edu)
7502         * emacsclient.c: Include errno.h and define related variables.
7504 1990-09-23  Richard Stallman  (rms@mole.ai.mit.edu)
7506         * emacsclient.c: Change usage message.
7508 1990-08-30  David Lawrence  (tale@pogo.ai.mit.edu)
7510         * emacs.1: Add break before -nw option.
7512 1990-08-19  David J. MacKenzie  (djm@apple-gunkies)
7514         * qsort.c: Replace with GNU version.
7516 1990-08-14  David J. MacKenzie  (djm@apple-gunkies)
7518         * wakeup.c: New program replacing loadst.c.
7520 1990-08-14  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7522         * emacsclient.c [USG]: Pass msgsnd only 4 args.
7524 1990-08-09  David J. MacKenzie  (djm@pogo.ai.mit.edu)
7526         * etags.c: Rename `flag' variables for what they do instead of
7527         which option character sets them.
7529 1990-05-28  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7531         * loadst.c (main): Conditional to get load average on Apollo.
7533 1990-05-22  Joseph Arceneaux  (jla@churchy.ai.mit.edu)
7535         * emacsserver.c: Set the permission on the socket to 0600.
7537 1990-03-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7539         * emacsclient.c [BSD]: Print clean message for failing getwd.
7541 1990-03-20  David Lawrence  (tale@pogo.ai.mit.edu)
7543         * getdate.y: Use the getdate.y from GNU tar for timer.
7545 1990-03-18  Jim Kingdon  (kingdon@pogo.ai.mit.edu)
7547         * emacsclient.c (main): Don't put brackets around "filename" in
7548         usage message.  It isn't optional.
7550 1990-03-14  Joseph Arceneaux  (jla@churchy.ai.mit.edu)
7552         * etags.c (getit): Recognize '$' as beginning identifiers.
7554 1990-02-22  David Lawrence  (tale@pogo.ai.mit.edu)
7556         * emacsserver.c: Renamed from server.c.
7557         * Makefile: Reference emacsserver rather than server.
7558         * MACHINES: Doc fix for new emacsserver name.
7560 1990-01-25  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7562         * emacsclient.c: Print program name in error messages.
7564 1990-01-19  David Lawrence  (tale@cocoa-puffs)
7566         * timer.c, getdate.y (new files) and Makefile:
7567         Sub-process support for run-at-time in timer.el.
7568         Doesn't yet work correctly for USG.
7570 1990-01-10  Jim Kingdon  (kingdon@pogo)
7572         * MACHINES: Add HP 300 running BSD.
7574 1990-01-02  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7576         * yow.c: Dynamically allocate buffer; skip header before random
7577         choice to avoid bias toward first item.
7579 1989-12-24  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7581         * etags.c (readline): Separate out init of `pend'.
7583 1989-12-17  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7585         * etags.c: Undo changes relating to isgoodhdr.
7587 1989-12-16  Mosur Mohan  (rms@sugar-bombs.ai.mit.edu)
7589         * etags.c (isgoodhdr): New macro.
7590         (_gdh, notgdh): New variable used by that.
7591         (init): Initialize _gdh.
7592         (find_entries): Set header_file.
7593         (consider_token): Use isgoodhdr if in header file.
7595         * etags.c (total_size_of_entries):
7596         Was miscalculating by 1 in rewritten case.
7598         * etags.c (PAS_funcs): One arg to pfnote was missing.
7600 1989-12-05  Joseph Arceneaux  (jla@spiff)
7602         * MACHINES: Change for the ULTRIX entry.
7604 1989-11-21  Joseph Arceneaux  (jla@spiff)
7606         * etags.c (process_file): If file is not regular, return.
7608 1989-11-06  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7610         * loadst.c (main): Handle FIXUP_KERNEL_SYMBOL_ADDR.
7612 1989-10-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7614         * loadst.c (load_average): If HAVE_GETLOADAVG, use getloadavg.
7615         (main): If HAVE_GETLOADAVG, don't call `nlist'.
7617 1989-10-25  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7619         * etags.c (consider_token): Allow any number of typespec keywords
7620         after `typedef', before new type name.
7621         (enum sym_type): Add st_C_typespec.
7622         (C_create_stab): Put typespec kwds in table.
7624 1989-08-27  Richard Stallman  (rms@apple-gunkies.ai.mit.edu)
7626         * etags.c (main): Don't depend on name invoked by.
7627         If CTAGS is not defined, assume it is ETAGS.
7629 1989-07-31  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7631         * etags.c (L_funcs): Allow package name in define construct,
7632         as in (foo::defmumble name-defined ...).
7634 1989-07-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7636         * etags.c (find_entries): Stupid bug testing for C filename suffixes.
7638         * Makefile (yow): Depends on ../src/paths.h.
7640 1989-07-04  Richard Stallman  (rms@apple-gunkies.ai.mit.edu)
7642         * etags.c: Fix compilation by moving Pascal after Fortran.
7644 1989-06-15  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7646         * movemail.c [USG]: Define F_OK, etc., if not found in header.
7648 1989-05-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7650         * hexl.c: New file, supports hexl-mode.
7652 1989-05-14  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7654         * movemail.c: New compilation flag MAIL_USE_MMDF.
7656 1989-05-08  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7658         * emacsclient.c: Use BSD code whenever HAVE_SOCKETS.
7659         * server.c: Likewise.
7661         * make-docfile.c (scan_c_file): Output argument names at end of string.
7662         (write_c_args): New subroutine.
7664 1989-04-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7666         * movemail.c: Report failure of flock.
7668 1989-04-19  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7670         * etags.c (find_entries): Allow multi-letter extensions for fortran.
7672 1989-04-18  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7674         * loadst.c: On bsd4.3, use gettimeofday instead of CPUSTATES.
7676 1989-03-15  Jeff Peck  (rms@sugar-bombs.ai.mit.edu)
7678         * emacstool.c: setenv IN_EMACSTOOL=t, TERM=sun, TERMCAP=.
7680         * emacstool.1: Update to document environment variables.
7682 1989-02-21  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7684         * etags.c (PAS_funcs): New function by Mosur Mohan.
7686         * movemail.c: On sysv, include unistd.h.
7688 1989-02-18  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7690         * b2m.c: New file.
7692 1989-02-15  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7694         * etags.c: Prolog support from Sunichirou Sugou.
7696 1989-02-03  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7698         * Makefile (clean): New target.
7700 1989-01-25  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7702         * fakemail.c (put_line): Break header lines at 79 cols.
7704 1989-01-19  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7706         * etags.c: Greatly rewritten by Sam Kendall for C++ support and for
7707         multiple tags per line.
7709 1989-01-03  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7711         * movemail.c: Check access before doing real work.
7712         Check that outfile is in a writable directory.
7713         On fatal error, delete the lock file.
7715 1988-12-31  Richard Mlynarik  (mly@rice-chex.ai.mit.edu)
7717         * env.c: Add decl for my-index
7718         * etags.c (file-entries): .oak => scheme.
7720 1988-12-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7722         * movemail.c: Use `access' to check input and output files.
7724 1988-12-28  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7726         * emacsclient.c (main): Ignore all of CWD before first slash.
7728 1988-12-27  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7730         * etags.c (readline): Double linebuffer->size outside the xrealloc.
7732 1988-12-22  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7734         * server.c, emacsclient.c: Don't try to use gid_t; it isn't defined.
7735         * server.c: chmod the socket to 0700.
7737 1988-12-09  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7739         * fakemail.c (main): Let env var FAKEMAILER override pgm to run.
7740         (add_field): Delete comments and turn `<', `>' to spaces
7741         in header lines.
7742         (USE_FAKEMAIL): New customization macro says to make fakemail
7743         not be a no-op even on a BSD system.
7745 1988-12-01  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7747         * etags.c (consider_token): Skip comments just like whitespace.
7748         Notice `struct', etc. and set strtag for those tokens.
7749         Return 1 for the token following `struct' if an open-brace follows it.
7750         (C_entries): Special handling of token following `struct'
7751         needed because we have probably advanced to the following line
7752         to find the `{'.
7753         (main): New option `T' sets tflag and strflag.
7754         Set both of them by default if eflags.
7756 1988-11-30  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7758         * movemail.c: Do fsync before closing output.
7760 1988-11-29  Richard Mlynarik  (mly@pickled-brain.ai.mit.edu)
7762         * movemail.c: Better error message when can't create tempname.
7763         This file needs a great deal of extra error-checking and lucid reporting...
7765 1988-11-16  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7767         * etags.c: Support assembler code for .s and .a files.
7768         (getit): Allow underscore in a tag.
7770 1988-11-15  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7772         * movemail.c: Close output and check errors before deleting input.
7774 1988-10-01  Richard Stallman  (rms@apple-gunkies.ai.mit.edu)
7776         * emacsclient.c [SYSVIPC]: Compute cwd only once; decide properly
7777         whether to prefix it.  Handle line number args.
7779 1988-09-24  Richard Stallman  (rms@gluteus.ai.mit.edu)
7781         * etags.c (main): Default setting of eflag was backwards.
7783 1988-09-23  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7785         * etags.c: New option -i.  -f renamed -o.
7786         `-' as input file means read input file names from stdin.
7787         -i spec'd or input file named TAGS means the input file is another
7788         tag table; output an "include" line for it.
7790 1988-09-19  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7792         * Makefile: New vars DESTDIR, BINDIR, LIBDIR, MANDIR, MANEXT.
7793         New targets install, install.sysv, install.xenix.
7794         This makefile is now responsible for installing executables
7795         and documentation from this directory into system directories.
7797 1988-09-16  Richard Stallman  (rms@corn-chex.ai.mit.edu)
7799         * server.c, emacsclient.c (main): Compute socket name from euid.
7801 1988-08-04  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7803         * emacsclient.c: Args like +DIGITS are passed through unchanged.
7805 1988-07-12  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7807         * server.c: If both BSD and HAVE_SYSVIPC, use the latter.
7808         * emacsclient.c: Likewise.
7809         In the HAVE_SYSVIPC alternative, if BSD, use getwd instead of getcwd.
7811 1988-06-23  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7813         * etags.c: Handle `typedef struct foo {' (price@mcc.com).
7814         (istoken): New string-comparison macro.
7815         (consider_token): New arg `level'.  New state `tag_ok' in `tydef'.
7817 1988-06-14  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7819         * etags.c: Changes for VMS.
7820         Always define ETAGS on VMS.
7821         Define macros GOOD and BAD for success and failure exit codes.
7822         (begtk, intk): Allow `$' in identifiers.
7823         (main): Don't support -B, -F or -u on VMS.
7824         Alternate loop for scanning filename arguments.
7825         (system): Delete definition of this function.
7827         * etags-vmslib.c (system): Undefine this; VMS now provides it.
7829 1988-06-08  Richard Stallman  (rms@sugar-bombs.ai.mit.edu)
7831         * loadst.c: Prevent multiple-def errors on BSD and BSD4_3
7832         around include of param.h.  (Like fns.c.)
7834 1988-05-16  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
7836         * loadst.c (load_average): Move load-average code to this new fn.
7837         Add conditionals to compute load ave on UMAX.
7839 1988-05-14  Richard Stallman  (rms@lucky-charms.ai.mit.edu)
7841         * loadst.c: Change DK_HEADER_FILE to DKSTAT_HEADER_FILE
7842         with opposite sense.
7844 1988-05-13  Chris Hanson  (cph@kleph)
7846         * emacsclient.c: Delete references to unused variable `out'.
7847         This caused a bus error when used under hp-ux.
7849 1988-05-06  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
7851         * loadst.c: Control dk.h conditional with DK_HEADER_FILE.
7853 1988-05-04  Richard Stallman  (rms@rice-krispies.ai.mit.edu)
7855         * etags.c (find_entries): `.t' or `.sch' means scheme code.
7857 1988-04-29  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
7859         * loadst.c: Add BSD4_3 conditional for file dk.h instead of dkstat.h.
7861 1988-04-28  Richard Stallman  (rms@frosted-flakes.ai.mit.edu)
7863         * movemail.c: #undef close, since config can #define it on V.3.
7864         * emacsclient.c, fakemail.c, loadst.c, server.c: Likewise.
7866 1988-04-26  Richard Stallman  (rms@lucky-charms.ai.mit.edu)
7868         * etags.c (TEX_mode, etc.): Remove superfluous backslashes from
7869         invalid escape sequences such as `\{'.
7871         * loadst.c: Add `sequent' conditional for file dk.h.
7873 1988-03-20  Richard M. Stallman  (rms@wilson)
7875         * server.c [not BSD and not HAVE_SYSVIPC]: Fix error message.
7877         * loadst.c (main) [XENIX]: Use /usr/spool/mail, not /usr/mail.
7879 ;; Local Variables:
7880 ;; coding: utf-8
7881 ;; End:
7883   Copyright (C) 1988-1999, 2001-2011 Free Software Foundation, Inc.
7885   This file is part of GNU Emacs.
7887   GNU Emacs is free software: you can redistribute it and/or modify
7888   it under the terms of the GNU General Public License as published by
7889   the Free Software Foundation, either version 3 of the License, or
7890   (at your option) any later version.
7892   GNU Emacs is distributed in the hope that it will be useful,
7893   but WITHOUT ANY WARRANTY; without even the implied warranty of
7894   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
7895   GNU General Public License for more details.
7897   You should have received a copy of the GNU General Public License
7898   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.