2014-06-26 Glenn Morris * Makefile.in (blessmail): Depend on lisp/mail/blessmail.el. Use $<, $@. (regex.o, etags${EXEEXT}, ctags${EXEEXT}, ebrowse${EXEEXT}) (profile${EXEEXT}, make-docfile${EXEEXT}, movemail${EXEEXT}) (pop.o, emacsclient${EXEEXT}, emacsclientw${EXEEXT}, ntlib.o) (hexl${EXEEXT}, update-game-score${EXEEXT}, emacsclient.res): Use $<. (ctags${EXEEXT}): Add $srcdir to dependency rather than using VPATH. 2014-06-17 Paul Eggert Omit redundant extern decls. * emacsclient.c (getenv): Remove decl. * make-docfile.c (write_globals): Add ATTRIBUTE_CONST for Fbyteorder, Ftool_bar_height, Fmax_char, Fidentity. 2014-06-15 Glenn Morris * Makefile.in (LDFLAGS): Explicitly set via configure. 2014-06-15 Eli Zaretskii * Makefile.in (CPPFLAGS): Define. 2014-06-15 Glenn Morris * Makefile.in (../lib/libgnu.a): Use `make -C' rather than `cd && make'. * Makefile.in (bootstrap-clean): New. 2014-06-13 Glenn Morris * Makefile.in (../lib/libgnu.a): GNU make automatically passes command-line arguments to sub-makes. 2014-05-26 Eli Zaretskii * ntlib.h (lseek): Don't redirect to _lseek. 2014-05-26 Paul Eggert Fix rcs2log problems with CVS. Problem reported by Glenn Morris in . Plus, fix some security and filename quoting problems. * rcs2log (logdir): Prefer mktemp if available. (logdir, llogdir): Work even if TMPDIR begins with '-' or has spaces. (output_authors, main awk script): Parse more-recent CVS output format. 2014-05-19 Paul Eggert Remove dependencies on getline and getdelim. Also, remove update-game-scores's limits on game scores and simplify its file-locking code. * update-game-score.c (struct score_entry): Unify the username and data members to a single user_data member, since they don't need to be changed independently and getdelim and getline aren't helpful. Make the score member char *, not intmax_t, so that scores are not limited to intmax_t. All uses changed. (lose_syserr): A zero errno stands for invalid data in score file. (normalize_integer): New function. (main): Use it. Check for invalid scores. Omit redundant stat check. (read_score): First arg is now a string, not a FILE *. All uses changed. Do not use getdelim or getline; that's way simpler. (read_scores): Read the whole file, and let read_score handle each line. (score_compare): Compare strings representing integers, not integers. (write_scores) [DOS_NT]: Eliminate unnecessary chmod. (lock_file): Simplify locking code, eliminating goto. Check for unlink failure. 2014-05-18 Paul Eggert Port ctags+etags build to Sun C 5.12. * Makefile.in (etags_args): Remove, replacing with ... (etags_cflags, etags_libs): New macros. All uses changed. (ctags${EXEEXT}): Don't compile etags.c, as compiling etags.c in parallel (once for ctags, once for etags) breaks parallel makes with compilers that use the source file name to name temporaries, such as Sun C 5.12. Instead, compile ctags.c. * ctags.c: New file. 2014-05-04 Paul Eggert Handle systems without WCONTINUED consistently. (Bug#15110, 17339) * emacsclient.c (WCONTINUED): Move to ../src/syswait.h. 2014-04-30 Glenn Morris * Makefile.in ($(DESTDIR)${archlibdir}): Avoid non-portable "`\" nesting. (Bug#17339) 2014-04-16 Eli Zaretskii * update-game-score.c (write_scores): Condition fchmod call on DOS_NT, not WINDOWSNT. 2014-03-22 Glenn Morris * Makefile.in (etags_deps, etags_args): New, to reduce duplication. (etags${EXEEXT}, ctags${EXEEXT}): Use etags_deps, etags_args. * Makefile.in (etags${EXEEXT}, ebrowse${EXEEXT}, ctags${EXEEXT}) (profile${EXEEXT}, make-docfile${EXEEXT}, movemail${EXEEXT}) (emacsclient${EXEEXT}, emacsclientw${EXEEXT}, hexl${EXEEXT}) (update-game-score${EXEEXT}, emacsclient.res): Use $@. * Makefile.in (../lib/libgnu.a): Explicitly pass MFLAGS. * Makefile.in (DONT_INSTALL): Remove test-distrib. (test-distrib${EXEEXT}): Remove rule. * test-distrib.c, testfile: Remove. 2014-03-10 Juanma Barranquero * emacsclient.c (main): #ifdef out previous change on Windows. 2014-03-09 Paul Eggert Fix emacsclient terminal corruption when in background (Bug#16892). * emacsclient.c (handle_sigcont): Check for tcgetpgrp failure. Cancel the continue only if tty. Send SIGTTIN to the process group, not SIGSTOP to self, as this is what the glibc manual recommends. (main): If tty, and if started in the background, send SIGTTIN to the process group. 2014-02-25 Andreas Amann (tiny change) Fix emacsclient's handling of SIGCONT (Bug#16883). * emacsclient.c (handle_sigcont): Cancel the continue only if tty. 2014-01-22 Eli Zaretskii * update-game-score.c (write_scores) [WINDOWSNT]: Use chmod instead of fchmod. 2014-01-22 Paul Eggert Fix miscellaneous update-game-score bugs. * update-game-score.c (difftime) [!HAVE_DIFFTIME]: Remove. (read_score) [HAVE_GETDELIM]: Don't access uninitialized storage, as that leads to undefined behavior, which is a bad thing particularly in a setuid program. (read_scores, write_scores): Check for fclose failure; on some systems, I/O errors are not reported by primitives like getc and putc, but instead are delayed until fclose, so fclose failures should be diagnosed like other read and write errors. (write_scores): Use fchmod, not chmod, to avoid a race. Otherwise, if the lock is broken by some other process, update-game-score might try to change the permission on someone else's file or on a nonexistent file, and incorrectly report an error when this fails. (lock_file): Fix test for out-of-date lock file; it was reversed. That is, it incorrectly broke locks when they were more than an hour into the future, instead of when they were more than an hour in the past. Use ordinary subtraction rather than difftime; since we're already assuming POSIX we don't need to worry about the possibility of time_t being a magic cookie, and since timestamps are positive we don't need to worry about integer overflow when subtracting them. Put two spaces, not just one, after a sentence end in a comment. 2014-01-19 Paul Eggert update-game-score fixes for -m and integer overflow (Bug#16428) * update-game-score.c: Include inttypes.h, stdbool.h. (min): New macro, if not already defined. (MAX_SCORES, main): Limit the maximum number of scores only from limits imposed by the underyling platform, instead of the arbitrary value 200. (struct score_entry, main, read_score, write_score): Scores are now intmax_t, not long. (get_user_id): Reject user names containing spaces or newlines, as they would mess up the score file. Allow uids that don't fit in 'long'. Increase the size of the buffer, to avoid overrun in weird cases. (get_prefix, main): Use bool for boolean. (main): Rewrite expr to avoid possibility of signed integer overflow. Don't allow newlines in data, as this would mess up the score file. Check for memory allocation failure when adding the new score, or when unlockint the file. Implement -m. (read_score): Check for integer overflow when reading a score. (read_score) [!HAVE_GETDELIM]: Check for integer overflow when data gets very long. Check only for space to delimit names, since that's what's done in the HAVE_GETDELIM case. (read_scores): New parameter ALLOC. Change counts to ptrdiff_t. All uses changed. Use push_score to add individual scores; that's simpler than repeating its contents. (score_compare_reverse): Simplify. (push_score): New parameter SIZE. Change counts to ptrdiff_t. All uses changed. Check for integer overflow of size calculation. (sort_scores, write_scores): Change counts to ptrdiff_t. (unlock_file): Preserve errno on success, so that storage exhaustion is diagnosed correctly. 2014-01-05 Paul Eggert Spelling fixes. * Makefile.in (regex.o): Remove reference to no-longer-used macros CONFIG_BROKETS and INHIBIT_STRING_HEADER. "BROKETS" was a misspelling anyway.... 2013-12-14 Paul Eggert Use bool for boolean, focusing on headers. * emacsclient.c, etags.c, hexl.c (FALSE, TRUE): Remove. All uses replaced with uncapitalized version. * emacsclient.c (message): * etags.c (make_tag, pfnote, consider_token, make_C_tag, lang_names): * hexl.c (un_flag, iso_flag, endian): * pop.c (pop_debug, pop_open, pop_multi_first, pop_multi_next) (pop_trash): Use bool for boolean. * etags.c (bool): Remove. * etags.c (globals, members, declarations, no_line_directive) (no_duplicates): Use 'int' for boolean values that getopt requires to be 'int'. Formerly, these were 'bool' and 'bool' was 'int', but we can no longer rely on this implementation. * pop.h (struct _popserver): Use bool_bf for boolean bit-fields. 2013-11-14 Paul Eggert * ebrowse.c (xstrdup): * etags.c (savenstr): Prefer tail calls. * etags.c (concat): Omit unnecessary assignment. 2013-10-24 Glenn Morris * Makefile.in ($(DESTDIR)${archlibdir}): Avoid non-portable "`\" nesting. * Makefile.in (abs_top_srcdir): New, set by configure. 2013-10-23 Glenn Morris * Makefile.in ($(DESTDIR)${archlibdir}, need-blessmail, install) (uninstall): Quote entities that might contain whitespace. 2013-10-10 Glenn Morris * make-docfile.c (search_lisp_doc_at_eol): Use int rather than char with getc. (Bug#15481) 2013-09-20 Paul Eggert A simpler, centralized INLINE. * profile.c (INLINE): New macro. (SYSTIME_INLINE): Remove. 2013-08-28 Paul Eggert * Makefile.in (SHELL): Now @SHELL@, not /bin/sh, for portability to hosts where /bin/sh has problems. 2013-08-10 Eli Zaretskii * update-game-score.exe.manifest: New file. * Makefile.in (UPDATE_MANIFEST): New variable. (SCRIPTS): Add $(UPDATE_MANIFEST). 2013-08-05 Stefan Monnier * makefile.w32-in (lisp2): Add nadvice.elc. 2013-08-05 Eli Zaretskii * update-game-score.c (read_score): Try reading a character before probing the stream for EOF. Initialize score->score to zero, before reading and accumulating the score. (read_scores): Fix logic that determines which value to return. Close the input stream when finished reading the scores (avoids failures in overwriting the file with a new one on MS-Windows, since a file that is open cannot be deleted). * ntlib.h (rename): Don't undefine. * ntlib.c (sys_rename): New function, needed for update-game-score. 2013-08-04 Eli Zaretskii * ntlib.h: Include fcntl.h. (mkostemp): Declare prototype. (mktemp): Don't redefine. * ntlib.c (mkostemp): New function. (Bug#15015) 2013-08-04 Paul Eggert Fix some minor races in hosts lacking mkostemp (Bug#15015). * movemail.c (main): * update-game-score.c (write_scores): Use mkostemp (which now works on all platforms, due to changes in the portability layer) rather than mktemp (which has a race) or mkstemp (which we no longer bother with). 2013-07-10 Paul Eggert Port to C89. * ebrowse.c (USAGE): Remove macro with too-long string literal ... (usage_message): ... and replace it with this new static constant containing multiple literals. All uses changed. * emacsclient.c (print_help_and_exit): Rewrite to avoid string literals longer than the C89 limits. (start_daemon_and_retry_set_socket): Rewrite to avoid non-constant array initializer. * make-docfile.c (enum global_type): Omit trailing comma. 2013-07-02 Paul Eggert Prefer plain 'static' to 'static inline' (Bug#12541). I missed these instances of 'static inline' in an earlier sweep. * ebrowse.c (putstr): * etags.c (hash): * make-docfile.c (put_char): No longer inline. * etags.c (hash): Prefer int to unsigned when either will do. 2013-06-21 Paul Eggert Use C99-style flexible array members if available. * ebrowse.c: Include , for offsetof. (struct member, struct alias, struct sym): Use FLEXIBLE_ARRAY_MEMBER. (add_sym, add_member, make_namespace, register_namespace_alias): Use offsetof (struct, flex_array_member), not sizeof (struct), as that ports better to pre-C99 non-GCC. 2013-05-29 Eli Zaretskii * Makefile.in (mostlyclean): Remove *.res files. 2013-05-18 Paul Eggert Port --enable-gcc-warnings to clang. * etags.c: Omit unnecessary forward decls. (print_version, print_help): Declare _Noreturn. * pop.c (socket_connection) [HAVE_GETADDRINFO]: Simplify. 2013-05-16 Eli Zaretskii * update-game-score.c [WINDOWSNT]: Include "ntlib.h". * ntlib.h (sleep): Update prototype. (geteuid): Add prototype. * ntlib.c (sleep): Now returns an unsigned value. (getgid): New function. * Makefile.in (CLIENTW, LIB_WSOCK32, LIBS_ECLIENT, NTLIB) (CLIENTRES, WINDRES, NTINC, NTDEPS): New variables. (INSTALLABLES): Add $(CLIENTW). (LIBS_MOVE): Use $(LIB_WSOCK32). ($(DESTDIR)${archlibdir}): Use $(EXEEXT) on update-game-score. (test-distrib${EXEEXT}): Use $(EXEEXT) on test-distrib. (etags${EXEEXT}, ebrowse${EXEEXT}, ctags${EXEEXT}) (profile${EXEEXT}, make-docfile${EXEEXT}, movemail${EXEEXT}) (emacsclient${EXEEXT}, hexl${EXEEXT}, update-game-score${EXEEXT}): Add $(NTLIB) to prerequisites. Use $(EXEEXT). (pop.o): Add pop.h to prerequisites. (emacsclientw${EXEEXT}, ntlib.o): New targets. (emacsclient.res): New target. 2013-05-15 Stefan Monnier * makefile.w32-in ($(DOC)): Use DOC rather than DOC-X. 2013-05-06 Paul Eggert * make-docfile.c (search_lisp_doc_at_eol) [DEBUG]: Fix typo, by removing references to no-longer-existing locals. 2013-03-26 Eli Zaretskii Fix incompatibilities between MinGW.org and MinGW64 headers. * ntlib.c (struct timespec) [!_TIMEZONE_DEFINED]: Define the struct only if _TIMEZONE_DEFINED is not defined. 2013-03-23 cg (tiny change) * makefile.w32-in (LIB_SRC): Move before first use. 2013-03-16 Paul Eggert * pop.c: Fix ERRMAX typo (Bug#13925). (socket_connection) [!HAVE_KRB5_ERROR_TEXT && HAVE_KRB5_ERROR_E_TEXT]: Use ERROR_MAX, not ERRMAX. 2013-03-13 Paul Eggert File synchronization fixes (Bug#13944). * Makefile.in (LIB_FDATASYNC): New macro. (emacsclient${EXEEXT}): Use it. * emacsclient.c (main): Use fdatasync, not fsync, since we don't care about metadata. Keep trying if interrupted. * movemail.c (main, popmail): Don't worry about BSD_SYSTEM, since fsync is available everywhere (or there is a substitute). Don't report an error if fsync returns EINVAL. Static checking by Sun C 5.12. * etags.c (analyse_regex): Omit unreachable code. * movemail.c (main): Call umask on all systems. This is OK since Emacs already assumes umask elsewhere. Don't grant more read permissions than necessary. The old 0333 dates back to before we called setuid, so it was needed back then to ensure user-readability, but 0377 should suffice now. 2013-02-08 Paul Eggert * movemail.c (getenv): Remove decl (unused since 1994). 2013-01-15 Paul Eggert * make-docfile.c (write_globals): Make it a bit clearer (Bug#13448). This pacifies GCC 4.7.2 when Emacs is configured with --enable-link-time-optimization and --enable-gcc-warnings. 2013-01-01 Juanma Barranquero * makefile.w32-in (lisp1): Add macroexp.elc (bug#13320). 2012-12-11 Juanma Barranquero * makefile.w32-in (SYSWAIT_H): Update dependencies. 2012-12-10 Eli Zaretskii * makefile.w32-in (obj): Add w32notify.o. Add missing X and Unix sources. 2012-12-02 Kevin Ryde * etags.c (Lisp_functions): Skip (defvar foo) declarations unless the --declarations flag is enabled (Bug#5600). (Lisp_help): Update. (skip_name): New function. 2012-12-01 Kevin Ryde * etags.c (Perl_functions): Support "use constant" (Bug#5055). 2012-11-27 Paul Eggert Assume POSIX 1003.1-1988 or later for errno.h (Bug#12968). * movemail.c (main): Assume EAGAIN and EBUSY. 2012-11-23 Paul Eggert movemail: treat EACCES etc. failures as permanent * movemail.c (main): Treat any link failure other than EEXIST as a permanent failure, not just EPERM. EACCES, for example. 2012-11-21 Paul Eggert Assume POSIX 1003.1-1988 or later for unistd.h (Bug#12945). * emacsclient.c (getcwd): Remove decl. (get_current_dir_name): Assume getcwd exists. * etags.c (HAVE_GETCWD): Remove. (getcwd): Remove decl. (NO_LONG_OPTIONS): Remove this. All uses removed. Emacs always has GNU getopt. (etags_getcwd): Assume getcwd exists. * movemail.c (F_OK, X_OK, W_OK, R_OK): Remove. 2012-11-20 Paul Eggert * emacsclient.c (handle_sigcont, handle_sigtstp): Use raise (sig) rather than kill (getpid (), sig), as it's simpler and safer. 2012-11-17 Juanma Barranquero * makefile.w32-in (SYSWAIT_H): New macro. ($(BLD)/movemail.$(O)): Update dependencies. 2012-11-17 Paul Eggert Assume POSIX 1003.1-1988 or later for fcntl.h (Bug#12881). * movemail.c, update-game-score.c: Assume exists. 2012-10-26 Glenn Morris * Makefile.in (uninstall): No INSTALLABLES live in archlibdir. * Makefile.in (install, uninstall): Transformations should not be applied to $EXEEXT. 2012-10-23 Eli Zaretskii * makefile.w32-in (lisp2): Add cp51932.el and eucjp-ms.el, to follow src/lisp.mk. 2012-10-21 Glenn Morris * make-docfile.c (scan_lisp_file): Add cp51932.el and eucjp-ms.el. 2012-10-20 Eli Zaretskii * make-docfile.c (IS_SLASH, DEF_ELISP_FILE): New macros. (scan_lisp_file): Only pass a .el file if its basename matches a known file in its entirety. Use IS_SLASH and DEF_ELISP_FILE. 2012-10-20 Andreas Schwab * make-docfile.c (scan_lisp_file): Add bounds checking. 2012-10-20 Eli Zaretskii Prevent silent omission of doc strings from uncompiled Lisp files. * make-docfile.c (scan_lisp_file): Barf if called with a .el file other than one of a small list of supported un-compiled files. * makefile.w32-in (lisp1, lisp2): Name .elc files wherever they exist. (Bug#12395) 2012-10-17 Eli Zaretskii * ntlib.c: Include , to avoid compiler warning about _mbspbrk. 2012-10-08 Eli Zaretskii * makefile.w32-in (obj): Add cygw32.o. 2012-10-08 Daniel Colascione * emacsclient.c: Include windows.h when HAVE_NTGUI. (alt_display): New variable. We send the display held by this variable when the primary display is either unsupported or not present. (longopts): Allow display everywhere. (w32_set_user_model_id): Move lower in file, inside HAVE_NTGUI section. (decode_options): Use alt_display. Explain why. (main): Retry connection with alt_display if connection with main display fails. 2012-10-01 Fabrice Popineau * make-docfile.c (write_globals): Special-case Fexit_recursive_edit and Fabort_recursive_edit as well, as functions that are _Noreturn, to be consistent with src/keyboard.c. 2012-09-30 Eli Zaretskii * ntlib.c (gettimeofday): Copy from src/w32.c. lib/gettime.c needs this function. 2012-09-26 Juanma Barranquero * makefile.w32-in (obj): Add profiler.o. 2012-09-17 Glenn Morris * ebrowse.c (version): * etags.c (print_version): Use COPYRIGHT. 2012-09-11 Paul Eggert * pop.c (socket_connection) [HAVE_GETADDRINFO]: Prefer assignment to memcpy when either will do. 2012-08-31 Andreas Schwab * etags.c (consider_token): Always zero-terminate token buffer. (Bug#12306) 2012-08-19 Paul Eggert Rely on + to declare 'environ'. * emacsclient.c (environ): Remove decl. 2012-08-17 Juanma Barranquero * makefile.w32-in ($(BLD)/regex.$(O)): Update dependencies. 2012-08-15 Paul Eggert * etags.c (Pascal_functions): Fix parenthesization typo. 2012-08-14 Paul Eggert * make-docfile.c (enum global_type): Sort values roughly in decreasing alignment, except put functions last. (compare_globals): Use this new property of enum global_type. (write_globals): Use bool, not int, for booleans. 2012-08-10 Glenn Morris * make-docfile.c (IF_LINT): * emacsclient.c (IF_LINT): Remove (in config.h now). * make-docfile.c (main) (fopen) [!WINDOWSNT]: (chdir) [!DOS_NT]: No more need to undef. * movemail.c (DIRECTORY_SEP, IS_DIRECTORY_SEP): * make-docfile.c (DIRECTORY_SEP, IS_DIRECTORY_SEP): * emacsclient.c (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP): Remove (they are in config.h now). * ebrowse.c (PATH_LIST_SEPARATOR): Remove, and replace with SEPCHAR from config.h. 2012-08-03 Juanma Barranquero * makefile.w32-in (LOCAL_FLAGS): Remove WINDOWSNT and DOS_NT, they are always defined in config.h. 2012-08-03 Eli Zaretskii * ntlib.c (lstat): New function, calls 'stat'. 2012-08-02 Paul Eggert Use C99-style 'extern inline' if available. * profile.c (SYSTIME_INLINE): Define. 2012-08-02 Glenn Morris * makefile.w32-in (MS_W32_H): Update for new ms-w32.h location. 2012-08-01 Glenn Morris * Makefile.in (config_h): New variable. Use throughout in place of ../src/config.h. 2012-08-01 Juanma Barranquero * makefile.w32-in (CONFIG_H): Update dependencies. (CONF_POST_H): New macro. 2012-07-30 Paul Eggert Update .PHONY listings in makefiles. * Makefile.in (.PHONY): Add all, need-blessmail, maybe-blessmail, install, uninstall, mostlyclean, clean, distclean, maintainer-clean, extraclean, check, tags. 2012-07-29 Eli Zaretskii * makefile.w32-in ($(BLD)/profile.$(O)): Depend on stamp_BLD. 2012-07-12 Paul Eggert * movemail.c: Add missing 'defined'. Suggested by Sven Joachim in . 2012-07-11 Paul Eggert Port 'movemail' again to Solaris and similar hosts. See Susan Cragin's report in . * movemail.c (xmalloc): Also define if !DISABLE_DIRECT_ACCESS && !MAIL_USE_MMDF && !MAIL_USE_SYSTEM_LOCK. Move up, so it doesn't need a forward declaration. (main): Rewrite to avoid no-longer-present function 'concat', if !DISABLE_DIRECT_ACCESS && !MAIL_USE_MMDF && !MAIL_USE_SYSTEM_LOCK. Assume strerror. * emacsclient.c, movemail.c, update-game-score.c (strerror) [!HAVE_STRERROR]: Remove. 2012-07-10 Paul Eggert EMACS_TIME simplification (Bug#11875). * profile.c (TV2): Remove no-longer-needed static var. Simplify by avoiding confusing use of strncpy etc. * etags.c (write_classname, C_entries): Use sprintf rather than strncpy or strncat. * etags.c (consider_token, C_entries, HTML_labels, Prolog_functions) (Erlang_functions, substitute, readline_internal, savenstr): * movemail.c (mail_spool_name): Use memcpy rather than strncpy or strncat when either will do. * make-docfile.c (write_c_args): Use memcmp rather than strncmp when either will do. * movemail.c (pop_retr): * pop.c (pop_stat, pop_list, pop_multi_first, pop_last) (socket_connection, pop_getline, sendline, getok): Use snprintf rather than strncpy or strncat. * movemail.c (concat): Remove; no longer needed. (xmalloc): Define only if needed, now that concat has gone away. Return void *. All uses changed. 2012-07-09 Paul Eggert Add GCC-style 'const' attribute to functions that can use it. * etags.c (number_len): Add ATTRIBUTE_CONST. 2012-07-09 Juanma Barranquero * emacsclient.c (w32_execvp): Declare execvp to silence the compiler. 2012-07-09 Juanma Barranquero * makefile.w32-in ($(BLD)/test-distrib.exe): Use LIB_SRC, not SRC. (LIB_SRC, NT_INC, GNU_LIB, MS_W32_H, CONFIG_H, INTTYPES_H, NTLIB_H) (SYSTIME_H): New macros. (SRC): Redefine to point to src/, not current directory. ($(BLD)/ctags.$(O), $(BLD)/ebrowse.$(O), $(BLD)/emacsclient.$(O)) ($(BLD)/etags.$(O), $(BLD)/hexl.$(O), $(BLD)/make-docfile.$(O)) ($(BLD)/movemail.$(O), $(BLD)/ntlib.$(O), $(BLD)/pop.$(O)) ($(BLD)/profile.$(O), $(BLD)/test-distrib.$(O)): Update dependencies. ($(BLD)/regex.$(O)): New dependency. 2012-07-09 Juanma Barranquero * makefile.w32-in (ALL): Add profile.exe. (PROFILEOBJS): New macro. ($(BLD)/profile.exe): New target. (install): Copy profile.exe. ($(BLD)/alloca.$(O), $(BLD)/tcp.$(O)): Remove, obsolete. 2012-07-07 Juanma Barranquero * makefile.w32-in ($(BLD)/ctags.$(O), $(BLD)/etags.$(O)): Update dependencies. 2012-07-06 Paul Eggert Use c_strcasecmp for ASCII case-insensitive comparison (Bug#11786). * etags.c: Include c-strcase.h. (etags_strcasecmp, etags_strncasecmp): Remove. All uses replaced with c_strcasecmp and c_strncasecmp. 2012-07-06 Andreas Schwab * make-docfile.c (write_globals): Warn about duplicate function definitions with differing signatures. 2012-07-03 Paul Eggert * make-docfile.c (scan_c_file): Suppress GCC warning. 2012-06-29 Tom Tromey * make-docfile.c (enum global_type) : New constant. (struct global) : New field. (add_global): Add 'value' argument. (compare_globals): Sort functions at the end. (close_emacs_globals): New function. (write_globals): Handle functions. (scan_c_file): Call add_global for DEFUN. 2012-06-30 Juanma Barranquero * makefile.w32-in (CTAGS_CFLAGS): Remove EMACS_NAME; already defined in ETAGS_CFLAGS. 2012-06-27 Glenn Morris * makefile.w32-in (lisp2): Remove paths.el. 2012-06-26 Paul Eggert Clean out last vestiges of the old HAVE_CONFIG_H stuff. * Makefile.in (BASE_CFLAGS): * makefile.w32-in (LOCAL_FLAGS): Remove -DHAVE_CONFIG_H. * etags.c, hexl.c, pop.c: Include unconditionally. * etags.c (DOS_NT): * pop.c (MAIL_USE_POP, h_errno): Remove code that was conditioned on !HAVE_CONFIG_H. 2012-06-25 Dmitry Antipov * etags.c (etags_strcasecmp, etags_strncasecmp): Define to library functions strcasecmp and strncasecmp if available. 2012-06-24 Paul Eggert Switch from NO_RETURN to C11's _Noreturn (Bug#11750). * ebrowse.c (usage, version): * emacsclient.c (print_help_and_exit, fail): * etags.c (suggest_asking_for_help, fatal, pfatal): * hexl.c (usage): * make-docfile.c (fatal): * movemail.c (fatal, pfatal_with_name, pfatal_and_delete): * update-game-score.c (usage): * ebrowse.c (usage, version): * emacsclient.c (print_help_and_exit, fail): Use _Noreturn rather than NO_RETURN. No need for separate decl merely because of _Noreturn. 2012-06-24 Samuel Bronson * emacsclient.c (set_local_socket): Fix compiler warning (Bug#7838). 2012-06-22 Paul Eggert Support higher-resolution time stamps (Bug#9000). * Makefile.in (LIB_CLOCK_GETTIME): New macro. (profile${EXEEXT}): Use it. * profile.c: Include inttypes.h, intprops.h. (time_string): Size conservatively; do not guess size. (get_time): Now prints nanoseconds. (gettimeofday): Remove replacement function; gnulib now does this. 2012-06-08 Andreas Schwab * make-docfile.c (search_lisp_doc_at_eol): Unget last read character. 2012-06-06 Glenn Morris * Makefile.in (STAMP_INST_SCRIPTS, STAMP_SCRIPTS, insrcdir) (stamp-rcs2log, stamp-grep-changelog): Remove. (all, clean): Remove references to stamps. * vcdiff: Remove file. * Makefile.in (SCRIPTS, STAMP_SCRIPTS): Remove vcdiff. (stamp-vcdiff): Remove. 2012-06-05 Glenn Morris * makefile.w32-in ($(BLD)/getdate.$(O), $(BLD)/leditcfns.$(O)) ($(BLD)/make-path.$(O), $(BLD)/qsort.$(O)) ($(BLD)/timer.$(O)): Remove cruft. 2012-06-03 Glenn Morris * rcs-checkin: Remove file. * Makefile.in (INSTALLABLE_SCRIPTS, STAMP_INST_SCRIPTS): Remove rcs-checkin. (stamp-rcs-checkin): Remove. 2012-05-31 Eli Zaretskii * makefile.w32-in ($(BLD)/emacsclientw.exe): Use $(MWINDOWS) instead of a literal -mwindows, which is not supported by MSVC. (Bug#11405) 2012-05-30 Stefan Monnier * make-docfile.c: Improve comment style. (search_lisp_doc_at_eol): New function. (scan_lisp_file): Use it. 2012-05-26 Glenn Morris * Makefile.in (INSTALL_DATA): Remove; unused. 2012-05-22 Paul Eggert Remove src/m/*. * makefile.w32-in: Remove dependencies on $(EMACS_ROOT)/src/m/intel386.h. 2012-05-22 Glenn Morris * Makefile.in (install): Remove unneeded chmods. 2012-05-21 Paul Eggert Assume C89 or later. * etags.c (static, const): Remove macros. (PTR): Remove; all uses replaced with void *. Omit needless casts. 2012-05-21 Glenn Morris * Makefile.in (insrcdir, $(DESTDIR)${archlibdir}): Scrap superfluous subshells. 2012-05-18 Glenn Morris * Makefile.in (install): Ensure $bindir exists. 2012-05-17 Glenn Morris * Makefile.in (ns_appbindir): New, set by configure. 2012-05-12 Glenn Morris * Makefile.in (MKDIR_P): New, set by configure. ($(DESTDIR)${archlibdir}): Use $MKDIR_P. 2012-05-10 Paul Eggert etags: pacify gcc -Wstack-protector on Ubuntu 12.04 x86 * etags.c: Include . (error): Declare as printf-style, as that's what it really is. All uses changed. (add_regex): Use single char rather than array-of-one char. 2012-05-05 Jim Meyering * pop.c (pop_stat, pop_list, pop_multi_first, pop_last): NUL-terminate the error buffer (Bug#11372). 2012-05-02 Juanma Barranquero * emacsclient.c (min): Undef before redefining it. 2012-05-02 Jim Meyering * emacsclient.c (send_to_emacs): Avoid invalid strcpy upon partial send (Bug#11374). 2012-04-29 Andreas Schwab * make-docfile.c (scan_lisp_file) [DEBUG]: Also skip if and byte-code forms. (Bug#11380) 2012-04-20 Chong Yidong * emacsclient.c (decode_options): Move -t -n corner case handling into server.el (Bug#11102). (main): Send -tty to Emacs under more circumstances (Bug#8314). 2012-04-18 Paul Eggert configure: new option --enable-gcc-warnings (Bug#11207) * Makefile.in (C_WARNINGS_SWITCH): Remove. (WARN_CFLAGS, WERROR_CFLAGS): New macros. (BASE_CFLAGS): Use new macros rather than old. 2012-04-16 Paul Eggert Assume less-ancient POSIX support. * update-game-score.c: Include rather than rolling our own decls for optarg, optind, opterr. See . 2012-04-14 Juanma Barranquero * emacsclient.c (decode_options) [WINDOWSNT]: Call ttyname instead of passing its address (typo in 2011-12-04T17:13:01Z!lekktu@gmail.com). 2012-04-07 Eli Zaretskii * makefile.w32-in (obj): Add xml.o. 2012-04-07 Eli Zaretskii * makefile.w32-in (ALL): Now the list of executables, not of phony targets. (.PHONY): Only make-docfile is its prerequisite now. (make-docfile): Don't depend on stamp_BLD. Add a comment about the need in this target. (ctags, etags, ebrowse, hexl, movemail, emacsclient) (test-distrib): Phony targets removed. ($(BLD)/test-distrib.exe): Run test-distrib as part of the recipe. (all): Don't depend on stamp_BLD. (ALL): Include $(BLD)/test-distrib.exe. 2012-03-11 Andreas Schwab * emacsclient.c (main): Handle -print-nonl command. * emacsclient.c (main): Handle multiple messages in a single datagram. * emacsclient.c (socket_name): Add const. (get_server_config): Add parameter config_file, use it instead of global server_file. (set_tcp_socket): Add parameter local_server_file, pass it down to get_server_config. (set_local_socket): Add parameter local_socket_name, use it instead of global socket_name. (set_socket): Adjust calls to set_local_socket and set_tcp_socket. Don't clobber global server_file or socket_name. (main): No longer reset server_file or socket_name. 2012-01-05 Glenn Morris * ebrowse.c (version) : * etags.c (print_version) : * rcs2log (Copyright): Update short copyright year to 2012. 2011-12-25 Andreas Schwab * etags.c (C_entries): Properly skip over string and character constants and comments inside brackets. (Bug#10357) 2011-12-04 Juanma Barranquero * emacsclient.c (decode_options) [WINDOWSNT]: Don't force tty = 0; instead, treat both -c and -t as always requesting a new "tty" frame, and let server.el decide which kind is actually required. Reported by Uwe Siart in this thread: http://lists.gnu.org/archive/html/emacs-devel/2011-11/msg00303.html 2011-11-30 Chong Yidong * emacsclient.c (main): Condition last change on WINDOWSNT (Bug#10155). 2011-11-27 Eli Zaretskii * makefile.w32-in (LOCAL_FLAGS): Add $(EMACS_EXTRA_C_FLAGS). * emacsclient.c (main) : Remove declaration, already pulled in by unistd.h on POSIX hosts and stdlib.h on MS-Windows. 2011-11-24 Glenn Morris * make-docfile.c (scan_lisp_file): Treat defcustom like defvar. 2011-11-14 Dan Nicolaescu * Makefile.in (all): Make sure "all" is the first target. 2011-10-27 Juanma Barranquero * emacsclient.c (w32_getenv): Silence compiler warnings. 2011-09-07 Glenn Morris * etags.c (Fortran_functions): Handle "elemental" functions. 2011-09-07 Dieter Schuster (tiny change) * etags.c (Fortran_functions): Handle "pure" functions. (Bug#9359) 2011-09-06 Paul Eggert * Makefile.in ($(DESTDIR)${archlibdir}): install-sh moved to build-aux (Bug#9169). 2011-09-04 Paul Eggert Integer and memory overflow issues (Bug#9397). * emacsclient.c (xmalloc): Accept size_t, not unsigned int, to avoid potential buffer overflow issues on typical 64-bit hosts. Return void *, not long *. (get_current_dir_name): Report a failure, instead of looping forever, if buffer size calculation overflows. Treat malloc failures like realloc failures, as that has better behavior and is more consistent. Do not check whether xmalloc returns NULL, as that's not possible. (message): Do not arbitrarily truncate message to 2048 bytes when sending it to stderr; use vfprintf instead. (get_server_config, set_local_socket) (start_daemon_and_retry_set_socket): Do not alloca arbitrarily-large buffers; that's not safe. (get_server_config, set_local_socket): Do not use sprintf when its result might not fit in 'int'. (set_local_socket): Do not assume uid fits in 'int'. * etags.c (xmalloc, xrealloc): Accept size_t, not unsigned int, to avoid potential buffer overflow issues on typical 64-bit hosts. (whatlen_max): New static var. (main): Avoid buffer overflow if subsidiary command length is greater than BUFSIZ or 2*BUFSIZ + 20. Do not use sprintf when its result might not fit in 'int'. * movemail.c (main): Do not use sprintf when its result might not fit in 'int'. Instead, put the possibly-long file name into the output of pfatal_with_name. * update-game-score.c: Include (get_user_id): Do not assume uid fits in 'int'. Simplify. 2011-07-28 Paul Eggert Assume freestanding C89 headers, string.h, stdlib.h. * ebrowse.c: Include stdlib.h unconditionally. * etags.c, update-game-score.c: Include string.h and stdlib.h unconditionally. * makefile.w32-in (LOCAL_CFLAGS): Don't define STDC_HEADERS. * movemail.c, pop.c: Include string.h unconditionally. * update-game-score.c: No need to include stdarg.h; not used. Assume support for memcmp, memcpy, memmove, memset. * etags.c (absolute_filename): Assume memmove exists. 2011-07-09 Andreas Schwab * update-game-score.c (usage): Update usage line. 2011-07-02 Jason Rumney * emacsclient.c (decode_options) [WINDOWSNT]: Avoid tty mode on Windows (Bug#5486). 2011-06-25 Glenn Morris * emacsclient.c (decode_options) : Add `F:'. (print_help_and_exit): Mention --frame-parameters. 2011-06-25 Andreas Rottmann * emacsclient.c (longopts, decode_options, main): Add frame-parameters. 2011-06-10 Paul Eggert * movemail.c: Fix race condition and related bugs (Bug#8836). (main) [!MAIL_USE_SYSTEM_LOCK]: Prefer mkstemp to mktemp, as this fixes some race conditions. Report mkstemp/mktemp errno rather than a possibly-garbage errno. Reinitialize the template each time through the loop, as earlier mkstemp/mktemp calls could have trashed it. Pass 0600 (not 0666) to mktemp, for consistency with mkstemp; the permissions don't matter anyway. 2011-06-01 Dan Nicolaescu * emacsclient.c (socket_status): Use constant pointer. 2011-05-28 Paul Eggert Use 'inline', not 'INLINE'. * etags.c (hash): Now inline unconditionally. * make-docfile.c (put_char): inline, not INLINE. 2011-05-25 Glenn Morris * Makefile.in (.c.o): Remove (every .o file has an explicit rule). (insrcdir): New. (stamp-rcs2log, stamp-rcs-checkin, stamp-grep-changelog, stamp-vcdiff): Use $insrcdir to suppress unaesthetic ignored errors. (clean): Simplify list of things to delete. (all, clean): Use $EXE_FILES. * Makefile.in (movemail${EXEEXT}): Build in one step, not via .o file. * Makefile.in (REGEXPOBJ, REGEXPDEPS): Remove. Replace by expansion. (etags${EXEEXT}): Just depend on regex.o, not regex.h as well. 2011-05-24 Glenn Morris * Makefile.in (update-game-score${EXEEXT}): Use a single rule. 2011-05-19 Glenn Morris * makefile.w32-in (echolisp): Remove rule that is no longer needed. (clean): No more echolisp.tmp. 2011-05-18 Glenn Morris * fakemail.c: Remove file. * makefile.w32-in ($(BLD)/fakemail.exe, fakemail) ($(BLD)/fakemail.$(O)): Remove. * Makefile.in (UTILITIES): Remove fakemail${EXEEXT}. (fakemail${EXEEXT}): Remove rule. 2011-04-24 Teodor Zlatanov * makefile.w32-in (obj): Add gnutls.o. 2011-04-16 Paul Eggert Static checks with GCC 4.6.0 and non-default toolkits. * movemail.c (mail_spool_name): Protoize. (main): Remove unused var. Mark var as initialized. Move locals to avoid shadowing, and use time_t for times. * fakemail.c (xmalloc, xreallc): Use standard C prototypes with void *. This avoids warnings about pointer casts. * emacsclient.c (main): Don't use uninitialized var. (IS_ANY_SEP): Remove; unused. (get_current_dir_name): Add an extern decl. 2011-04-06 Paul Eggert Fix more problems found by GCC 4.6.0's static checks. * emacsclient.c (message): Mark it as a printf-like function. * make-docfile.c (IF_LINT): New macro, copied from emacsclient.c. (write_c_args): Use it to suppress GCC warning. 2011-03-30 Paul Eggert Fix a problem found by GCC 4.6.0's static checks. * etags.c (just_read_file): Remove dummy variable and simplify. 2011-03-27 Glenn Morris * emacsclient.c: Replace SIGTYPE with void. 2011-03-23 Juanma Barranquero * ntlib.c: Include . 2011-03-23 Glenn Morris * Makefile.in ($(DESTDIR)${archlibdir}): Use `install-sh -d' rather than mkinstalldirs. 2011-03-23 Paul Eggert * ebrowse.c: Use size_t, not int, for sizes. This avoids a warning with gcc -Wstrict-overflow, and works better for very large objects. (inbuffer_size): Now size_t. All uses changed. (xmalloc, xrealloc, operator_name, process_file): Use size_t for sizes. Don't bother testing whether a size_t value can be negative. * etags.c (Ada_funcs): Redo slightly to avoid overflow warning. etags: In Prolog functions, don't assume int fits in size_t. This avoids a warning with gcc -Wstrict-overflow. * etags.c (Prolog_functions, prolog_pr, prolog_atom): Use size_t, not int, to store sizes. (prolog_atom): Return 0, not -1, on error. All callers changed. update-game-score: fix bug with -r * update-game-score.c (main): Don't set 'scores' to garbage when -r is specified and scorecount != MAX_SCORES (Bug#8310). This bug was introduced in the 2002-04-10 change, and was found with gcc -Wstrict-overflow (GCC 4.5.2, x86-64). fakemail: Remove dependency on ignore-value. This undoes some of the recent fakemail-related changes. It is made possible due to recent changes to gnulib's stdio module. * Makefile.in (fakemail${EXEEXT}): Do not depend on ignore-value.h. * fakemail.c: Do not include ignore-value.h. (put_line): Do not use ignore_value. 2011-03-07 Chong Yidong * Version 23.3 released. 2011-03-03 Drake Wilson (tiny change) * emacsclient.c (longopts): Add quiet. (decode_options): Handle q/quiet. (print_help_and_exit): Add q/quiet. (main): Suppress some messages if quiet option is used. 2011-02-26 Eli Zaretskii * Makefile.in (fakemail${EXEEXT}): Depend on lib/ignore-value.h. * emacsclient.c (xstrdup) [WINDOWSNT]: Function added back. (w32_getenv): Use xstrdup to return all values in malloc'ed storage. 2011-02-26 Paul Eggert * ebrowse.c (parse_qualified_param_ident_or_type): Make it clear to reader (and to the compiler) that the loop always executes at least once. This prevents a warning with recent GCC. (BROWSE_STRUCT): Remove unused macro. * fakemail.c: Include . (put_line): Explicitly ignore fwrite return value, for benefit of recent glibc + gcc. (close_the_streams): Diagnose output errors instead of merely exiting with nonzero status. (my_fclose, main): Diagnose input errors, and exit with nonzero status. Formerly, input errors were silently ignored. * ebrowse.c (putstr): Rename from PUTSTR and turn into a function. All callers changed. This is cleaner, and avoids GCC warnings about passing NULL to fputs. (insert_keyword): Rename parameter to avoid shadowing diagnostic. 2011-02-25 Paul Eggert * emacsclient.c (main): Avoid dangling 'if'. (xstrdup): Remove; no longer needed. (get_current_dir_name, w32_getenv, get_server_config, find_tty) (set_local_socket, main): Use const char *, not char *, for pointers that are not assigned through. (IF_LINT): New macro. (set_local_socket, main): Use it to suppress warnings with GCC -Wuninitialized. * emacsclient.c: Redo local variables to avoid shadowing problems. (message, socket_status, start_daemon_and_retry_set_socket): Rename locals. (main): Move decl of "i". * etags.c (ISUPPER): Move to inside the only #ifdef where it's used. This avoids an unused-macro warning with some GCC settings. * make-docfile.c (write_globals): Change char * to char const * to avoid a GCC "assignment discards qualifiers" diagnostic in some configurations. (scan_c_file): Refactor local variable decls to make their scope more accurate and to avoid a GCC -Wuninitialized diagnostic. 2011-02-22 Eli Zaretskii * etags.c (canonicalize_filename, ISUPPER): Fix last change. * makefile.w32-in ($(BLD)/ebrowse.$(O), $(BLD)/pop.$(O)): Depend on ../lib/min-max.h. 2011-02-22 Paul Eggert etags: Downcase drive letters, for consistency with Emacs proper. * etags.c (upcase): Remove; no longer used. (canonicalize_filename): Downcase drive letters. Assume S_ISLNK etc. work, since gnulib supports this. * etags.c (S_ISREG): Remove. 2011-02-22 Paul Eggert Assume S_ISLNK etc. work, since gnulib supports this. * etags.c (S_ISREG): Remove. 2011-02-22 Juanma Barranquero * makefile.w32-in (obj): Remove filemode.o. 2011-02-21 Paul Eggert New file "lib/min-max.h". * ebrowse.c (min, max): Define them by including instead of defining it ourselves. * pop.c (min): Likewise. * Makefile.in (ebrowse${EXEEXT}, pop.o): Depend on min-max.h. * movemail.c (popmail): Report fchown failure instead of ignoring it. But if the file already has the right ownership, don't worry about it. * make-docfile.c (input_buffer): Rename variables to avoid shadowing. * test-distrib.c (buf): Make this local, to avoid shadowing. * movemail.c (main, pop_retr): Rename locals to avoid shadowing. (progname, sfi, sfo, ibuffer, obuffer): Remove unused vars. (DONE): Remove unused macro. (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_FROM_LINE): Define these macros only in the contexts that need them. * pop.c (index): Remove unused macro. (KPOP_PORT): Define only if KERBEROS is defined. Declare file-scope functions and variables static if not exported. This is more consistent, and is nicer with gcc -Wstrict-prototypes. * ebrowse.c, emacsclient.c, fakemail.c, make-docfile.c, movemail.c: * profile.c, test-distrib.c, update-game-score.c: Declare non-'main' functions and variables to be static. * ebrowse.c: Omit redundant function prototypes. 2011-02-21 Eli Zaretskii * makefile.w32-in ($(BLD)/ctags.$(O), $(BLD)/emacsclient.$(O)) ($(BLD)/etags.$(O), $(BLD)/movemail.$(O), $(BLD)/ntlib.$(O)): Depend on $(EMACS_ROOT)/nt/inc/sys/stat.h. 2011-02-21 Ben Key * make-docfile.c (scan_c_file): Adapt DEFVAR_PER_BUFFER case to the new BVAR macro. 2011-02-20 Juanma Barranquero * makefile.w32-in (obj): Remove md5.o. 2011-02-18 Karl Chen * emacsclient.c (main): Loop while `recv' return EINTR. 2011-02-09 Paul Eggert * make-docfile.c (EMACS_INTEGER): Rename from EMACS_INT. This avoids collision with config.h's EMACS_INT on some configurations. All uses changed. 2011-02-08 Tom Tromey * make-docfile.c: Unconditionally include stdlib.h. (generate_globals): New global. (xrealloc): New function. (main): Handle '-g'. Call start_globals, write_globals. (scan_file): Conditionally call put_filename. (start_globals): New function. (struct global): New. (num_globals, globals): New globals. (add_global, compare_globals, write_globals): New functions. (scan_c_file): Update for "-g". (scan_lisp_file): Fail if "-g". 2011-02-05 Paul Eggert * emacsclient.c: Conform to C89 pointer rules. (file_name_absolute_p): Accept const char *, not const unsigned char *, to satisfy C89 rules. 2011-02-02 Eli Zaretskii * makefile.w32-in (ETAGS_CFLAGS, CTAGS_CFLAGS): Add ``-DEMACS_NAME="\"GNU Emacs\""''. (obj): Remove strftime.o. 2011-01-31 Eli Zaretskii * makefile.w32-in (VERSION): Don't define, defined on nt/config.nt. (ECLIENT_CFLAGS): Remove -DVERSION. ($(BLD)/emacsclient.$(O)): Don't depend on makefile.w32-in. 2011-01-31 Paul Eggert src/emacs.c now gets version number from configure.in * ebrowse.c: Adjust comment to say that. 2011-01-30 Jim Meyering * make-docfile.c: Don't corrupt heap for an invalid .elc file "printf '#@1a' > in.elc; ./make-docfile in.elc" would store 0 one byte before just-malloc'd saved_string buffer. * make-docfile.c (scan_lisp_file): Diagnose an invalid dynamic doc string length. Also fix an always-false while-loop test. 2011-01-29 Eli Zaretskii * makefile.w32-in (LOCAL_FLAGS): Add -I../lib. (GETOPTOBJS, GETOPTDEPS): Remove targets. (MOVEMAILOBJS): Replace $(GETOPTOBJS) with ../lib/$(BLD)/libgnu.$(A). ($(BLD)/movemail.exe): Depend on ../lib/getopt.h. (ECLIENTOBJS, ETAGSOBJ, CTAGSOBJ, EBROWSEOBJ): Replace getopt.o and getopt1.o with ../lib/$(BLD)/libgnu.$(A). (clean): Don't remove getopt.h. (getopt.h, $(BLD)/getopt.$(O), $(BLD)/getopt1.$(O)): Remove targets. ($(BLD)/ctags.$(O), $(BLD)/etags.$(O)): Replace getopt.h with $(EMACS_ROOT)/lib/getopt.h. 2011-01-28 Chong Yidong * ntlib.c (setregid): New stub, renamed from setegid. * ntlib.h: Update prototype. 2011-01-25 Chong Yidong * movemail.c (main): Use setregid instead of setegid, which is missing on older systems. Suggested by Peter O'Gorman (Bug#6811). 2011-01-23 Paul Eggert Check return values of some library calls. * hexl.c (main): Check fread result. * make-docfile.c (main): Check chdir result. (scan_c_file): Check fscanf result. * movemail.c (main): Check ftruncate result. 2011-01-17 Paul Eggert Include unilaterally. * emacsclient.c, etags.c, fakemail.c, make-docfile.c, movemail.c: * pop.c, test-distrib.c, update-game-score.c: Include without worrying about HAVE_UNISTD_H, since unistd.h is always present now, possibly supplied by gnulib. Include not "getopt.h". * ebrowse.c, emacsclient.c: Include , not "getopt.h". Since getopt.h is no longer in this directory, there's no point using the form with double-quotes. Remove unused files. * getopt.c, getopt1.c, getopt_.h, getopt_int.h: Remove. These files are now in ../lib, copied from gnulib. Use gnulib's getopt-gnu module. * Makefile.in (mostlyclean): Do not clean getopt.h or getopt.h-t, as these are now done by gnulib. (GETOPT_H, getopt.h, GETOPTOBJS, GETOPTDEPS, getopt.o, getopt1.o): Remove; now done by gnulib. All uses removed. Automate syncing from gnulib. * Makefile.in (EXE_FILES): New macro. (BASE_CFLAGS): Add -I../lib and -I${srcdir}/../lib, for gnulib's .h files. (LOADLIBES): Add ../lib/libgnu.a. ($(EXE_FILES)): Depend on ../lib/libgnu.a. (../lib/libgnu.a): New rule. 2011-01-08 Paul Eggert * Makefile.in (EXECUTABLES): Remove; macro unused since 1993. 2011-01-08 Glenn Morris * Makefile.in (EMACSOPT): Add --no-site-lisp. * Makefile.in (EMACSOPT): Remove --multibyte, it does nothing any more. 2011-01-02 Glenn Morris * ebrowse.c (version) : * etags.c (print_version) : * rcs2log (Copyright): Set short copyright year to 2011. 2010-11-27 Joe Matarazzo (tiny change) * ebrowse.c (yylex): If end of input buffer encountered while searching for a newline after "//", return YYEOF. (Bug#7446) 2010-11-18 YAMAMOTO Mitsuharu * emacsclient.c (set_local_socket) [DARWIN_OS]: Add fall-back definition of _CS_DARWIN_USER_TEMP_DIR for Mac OS X 10.4 and older. 2010-11-15 Dan Nicolaescu * test-distrib.c: Remove include guards for config.h and fcntl.h. (O_RDONLY): Do not define. (cool_read): Fix type for variable "sofar". 2010-10-25 Glenn Morris * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove easymenu.elc. 2010-10-23 Glenn Morris * digest-doc.c, sorted-doc.c: Remove files. * Makefile.in (UTILITIES): Remove digest-doc and sorted-doc. (digest-doc${EXEEXT}, sorted-doc${EXEEXT}): Remove rules. * makefile.w32-in (ALL): Remove digest-doc and sorted-doc. ($(BLD)/sorted-doc.exe, $(BLD)/digest-doc.exe, sorted-doc, digest-doc) ($(BLD)/digest-doc.$(O), $(BLD)/sorted-doc.$(O)): Remove rules. (install): Don't install digest-doc.exe or sorted-doc.exe. 2010-10-10 Dan Nicolaescu * Makefile.in (PROFILING_LDFLAGS): Remove, not needed. 2010-10-09 Glenn Morris * b2m.c, b2m.pl: Remove files. * Makefile.in (INSTALLABLES): Remove b2m. * makefile.w32-in ($(BLD)/b2m.$(O)): Remove. 2010-10-08 Glenn Morris * emacsclient.c (set_local_socket) [DARWIN_OS]: Try as a fall-back DARWIN_USER_TEMP_DIR. (Bug#3992) 2010-10-03 Dan Nicolaescu * test-distrib.c (cool_read): * movemail.c (main, concat): * make-docfile.c (scan_file, write_c_args): * emacsclient.c (get_server_config): Fix -Wconversion warning. (egetenv): Move conditional definition earlier. (progname): Use const. * sorted-doc.c (xstrdup): Use const. * Makefile.in: Remove ^L, old makes choke on it. 2010-10-02 Wolfgang Schnerring (tiny change) * emacsclient.c (main): Return EXIT_FAILURE if Emacs sends us an error string (Bug#6963). 2010-10-02 Juanma Barranquero * makefile.w32-in (tags): Remove target. 2010-10-01 Eli Zaretskii * makefile.w32-in (tags, TAGS): New targets. 2010-09-30 Juanma Barranquero * emacsclient.c (get_server_config): Don't read Emacs pid from the authentication file. 2010-09-29 Juanma Barranquero * makefile.w32-in (../src/config.h): Remove target, it is stale. * emacsclient.c (main): Remove unused variables. (start_daemon_and_retry_set_socket): Use EXIT_FAILURE. 2010-09-25 Ulrich Mueller * etags.c (compressors, print_language_names): Support xz compression. 2010-08-11 Jan Djärv * fakemail.c: Include stdlib.h for getenv. Remove declaration of popen, fclose and pclose. (my_name, fatal, error, put_line): Use const char*. (main): Remove extern getenv, mail_program_name is const char*. * update-game-score.c (get_prefix, write_scores, main): Use const char*. * sorted-doc.c (error, fatal, states): Use const char *. * pop.h (pop_multi_first): Use const char *. (_ARGS): Remove. * pop.c (pop_multi_first, socket_connection, sendline): Use const char*. * movemail.c (fatal, error, concat): Use const char *. * make-docfile.c (error, fatal, scan_c_file, scan_lisp_file): Use const char *. * etags.c (compressor, language, Ada_suffix, Ada_help, Asm_suffixes) (Asm_help, default_C_suffixes, default_C_help, Cplusplus_suffixes) (Cplusplus_help, Cjava_suffixes, Cobol_suffixes, Cstar_suffixes) (Erlang_suffixes, Erlang_help, Forth_suffixes, Forth_help) (Fortran_suffixes, Fortran_help, HTML_suffixes, HTML_help) (Lisp_suffixes, Lisp_help, Lua_suffixes, Lua_help) (Makefile_filenames, Makefile_help, Objc_suffixes, Objc_help) (Pascal_suffixes, Pascal_help, Perl_suffixes, Perl_interpreters) (Perl_help, PHP_suffixes, PHP_help, plain_C_suffixses, PS_suffixes) (PS_help, Prolog_suffixes, Prolog_help, Python_suffixes, Python_help) (Scheme_suffixes, Scheme_help, TeX_suffixes, TeX_help, Texinfo_suffixes) (Texinfo_help, Yacc_suffixes, Yacc_help, auto_help, none_help) (no_lang_help, print_language_names) (get_language_from_interpreter, get_language_from_filename) (init, make_tag, struct C_stab_entry, write_classname, TEX_defenv) (TEX_decode_env, nocase_tail, savestr, savenstr, fatal, pfatal) (concat): Use const char*. * emacsclient.c (message, sock_err_message, send_to_emacs) (quote_argument, set_local_socket) (start_daemon_and_retry_set_socket): Use const char*. * ebrowse.c (struct member): filename, def_filename is const. (struct sym): filename, sfilename is const. (struct kw): name is const. (add_sym, yyerror, token_string, insert_keyword, main): Use const char*. * b2m.c (concat, fatal): Use const char*. (main): Don't assign labels a string literal. 2010-08-07 Juanma Barranquero * ebrowse.c (usage, version, mark_virtual): Remove duplicate declarations. 2010-08-06 Dan Nicolaescu * emacsclient.c: Move socket related #includes together with the rest of the #includes. Move WINDOWSNT includes closer together. (HAVE_CONFIG_H): Remove. (NO_RETURN): Remove, defined in config.h. (main): Convert definition to standard C. 2010-07-29 Juanma Barranquero * make-docfile.c (write_c_args): Warn for old-style empty arglist (). 2010-07-25 Juanma Barranquero * emacsclient.c (getcwd): Fix previous change: make getcwd conditional on HAVE_GETCWD and declare with the correct POSIX profile (for some reason MinGW headers define its 2nd arg as int, not size_t; but getcwd is not used on Windows nonetheless). 2010-07-25 Juanma Barranquero * emacsclient.c (getcwd, w32_getenv): * ntlib.h (getlogin, getuid, getegid, getgid): Fix prototypes. 2010-07-24 Dan Nicolaescu * update-game-score.c (usage): Add NO_RETURN specifier. * movemail.c (fatal, pfatal_with_name, pfatal_and_delete): * make-docfile.c (fatal): * hexl.c (usage): * fakemail.c (fatal): * etags.c (fatal, suggest_asking_for_help, pfatal): * emacsclient.c (fatal): * b2m.c (fatal): Likewise. 2010-07-23 Juanma Barranquero * make-docfile.c (write_c_args): Correctly handle prefixes of "defalt". 2010-07-20 Juanma Barranquero * emacsclient.c (get_current_dir_name, w32_get_resource) (w32_getenv, w32_set_user_model_id, w32_window_app, w32_execvp) (close_winsock, initialize_sockets, w32_find_emacs_process) (w32_give_focus): * ntlib.c (getlogin, getuid, getgid, getegid): Convert definitions to standard C. 2010-07-12 Andreas Schwab * Makefile.in (C_WARNINGS_SWITCH, PROFILING_CFLAGS) (PROFILING_LDFLAGS): Set from substitution. (BASE_CFLAGS): Add ${C_WARNINGS_SWITCH}. (ALL_CFLAGS, CPP_CFLAGS): Add ${PROFILING_CFLAGS}. (LINK_CFLAGS): Add ${PROFILING_LDFLAGS}. 2010-07-12 Eli Zaretskii * makefile.w32-in (lisp2): Change hebrew.el to hebrew.elc (see 2010-07-12T05:25:46Z!handa@etlken). 2010-07-11 Andreas Schwab * emacsclient.c (set_local_socket): Use strchr, strrchr instead of index, rindex. * movemail.c (mail_spool_name, popmail): Likewise. * pop.c (pop_list): Likewise. 2010-07-11 Eli Zaretskii * makefile.w32-in (obj): Add menu.o, bidi.o, w32uniscribe.o, and unexw32.o. (Bug#6603) 2010-07-10 Eli Zaretskii * Makefile.in ($(DESTDIR)${archlibdir}): Convert spaces to TABs. 2010-07-09 Andreas Schwab * make-docfile.c (write_c_args): Restructure scanning loop. 2010-07-09 Dan Nicolaescu * make-docfile.c (write_c_args): Deal with type names in DEFUN arguments. 2010-07-08 Dan Nicolaescu * update-game-score.c (P_): Remove macro. * ebrowse.c: Remove include guards. (P_): Remove macro. 2010-07-07 Andreas Schwab * ebrowse.c (add_sym, make_namespace): Replace bcopy, bzero by memcpy, memmove, memset. * pop.c (pop_retrieve, socket_connection, pop_getline): Likewise. 2010-07-06 Andreas Schwab * movemail.c: Add MAIL_USE_POP around prototypes. Include if HAVE_STRING_H. (strerror): Only declare if !HAVE_STRERROR. (fatal): Make static. (error): Likewise. (pfatal_with_name): Likewise. (pfatal_and_delete): Likewise. (concat): Likewise. (xmalloc): Likewise. (popmail): Likewise. (pop_retr): Likewise. (mbx_write): Likewise. (mbx_delimit_begin): Likewise. (mbx_delimit_end): Likewise. 2010-07-04 Dan Nicolaescu * fakemail.c (action): Convert function definitions to standard C. (add_a_stream): * test-distrib.c (cool_read, main): Likewise. 2010-07-03 Andreas Schwab * sorted-doc.c (cmpdoc): Fix signature. (qsort_compare): Delete. (main): Remove cast. 2010-07-03 Juanma Barranquero * ebrowse.c (match_qualified_namespace_alias): Check for null pointer. 2010-07-03 Juanma Barranquero Fix prototype warnings. * ebrowse.c (match_qualified_namespace_alias): Pass sym* to find_namespace, not link*. * emacsclient.c (send_to_emacs, quote_argument): Arg s is HSOCKET. * sorted-doc.c (qsort_compare): New typedef. (main): Use it to cast cmpdoc. 2010-07-03 Dan Nicolaescu * update-game-score.c: Convert function definitions to standard C. * sorted-doc.c: * profile.c: * pop.c: * movemail.c: * make-docfile.c: * hexl.c: * fakemail.c: * etags.c: * ebrowse.c: * digest-doc.c: * b2m.c: Likewise. 2010-07-02 Dan Nicolaescu * make-docfile.c (xmalloc, xrealloc, concat, readline, fatal): * b2m.c (scan_file, scan_lisp_file, scan_c_file): Convert to standard C prototypes. 2010-07-02 Jan Djärv * ebrowse.c: Remove P_ and __P. * etags.c: * movemail.c: * pop.c: * update-game-score.c: Likewise. 2010-06-24 Juanma Barranquero * movemail.c (error): Avoid warning when there are no args. 2010-06-11 Juanma Barranquero * makefile.w32-in (lisp2): Fix references to vc/vc-hooks.elc and vc/ediff-hook.elc. 2010-06-06 Dan Nicolaescu * ntlib.h: Remove code dealing with BSTRING. 2010-05-29 Chong Yidong * emacsclient.c (longopts, decode_options, print_help_and_exit): New arg `-parent-id'. (main): Send parent-id to Emacs. 2010-05-27 Glenn Morris * Makefile.in (distclean): No more Makefile.c. 2010-05-22 Jan Djärv * Makefile.in (STAMP_INST_SCRIPTS, STAMP_SCRIPS): New (Bug #6246). (all): Depend onSTAMP_INST_SCRIPTS, STAMP_SCRIPS (Bug #6246). (stamp-rcs2log, stamp-rcs-checkin, stamp-grep-changelog, stamp-vcdiff): New rules (Bug #6246). (clean): Remove stamp-* (Bug #6246). 2010-05-12 Glenn Morris * Makefile.in (INSTALLABLES): Remove @LIB_SRC_EXTRA_INSTALLABLES@. 2010-05-11 Glenn Morris * Makefile.in (.m.o): Remove, there are no .m files. (BASE_CFLAGS): New variable. (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Use $BASE_CFLAGS. (check): Update the message. (update-game-score${EXEEXT}): Do not use $MOVE_FLAGS. * Makefile.in: Convert comments to makefile format. * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset. (config.h) [MSDOS]: Do not include. 2010-05-10 Glenn Morris * Makefile.in (LIBS_SYSTEM): Set with configure, not cpp. (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM. (NOT_C_CODE): Remove, no longer used. (config.h) [!MSDOS]: No longer include. (LOADLIBES): Use LIBS_SYSTEM as a variable. * Makefile.in (BLESSMAIL_TARGET): Set with configure, not cpp. 2010-05-08 Glenn Morris * Makefile.in (THIS_IS_MAKEFILE): Remove, unused. 2010-05-07 Chong Yidong * Version 23.2 released. 2010-05-06 Glenn Morris * Makefile.in: Minimize blessmail-related cpp usage. (BLESSMAIL_TARGET): New variable. (MOVEMAIL_NEEDS_BLESSING): Remove, replace by above variable. (blessmail): Always define this rule. (need-blessmail): New rule, split out from maybe-blessmail. (maybe-blessmail): Use BLESSMAIL_TARGET. 2010-05-04 Glenn Morris * Makefile.in: Use @C_SWITCH_SYSTEM@, @C_SWITCH_MACHINE@ rather than @c_switch_system@, @c_switch_machine@. 2010-04-26 Dan Nicolaescu * Makefile.in (LIBS_MACHINE): Remove all uses, unused. 2010-04-12 Dan Nicolaescu * Makefile.in (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Move to the non-cpp section. 2010-04-11 Dan Nicolaescu * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE): Define using autoconf, not cpp. (ALL_CFLAGS): Use them as make variables. 2010-04-07 Christoph Scholtes * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Use parenthesis for macros for nmake compatibility. 2010-04-03 Juanma Barranquero Add stubs for Windows, required after CVE-2010-0825 change. * ntlib.c (getgid, getegid, setegid): New stubs. * ntlib.h (getgid, getegid, setegid): Declare them. 2010-04-02 Dan Rosenberg (tiny change) * movemail.c (main): Check return values of setuid. Avoid possibility of symlink attack when movemail is setgid mail (CVE-2010-0825). 2010-04-02 Dan Nicolaescu Remove extern errno declarations. * movemail.c: * etags.c: * emacsclient.c: Remove extern errno declarations. 2010-03-20 Glenn Morris * Makefile.in (KRB4LIB, DESLIB, KRB5LIB, CRYPTOLIB, COM_ERRLIB) (LIBHESIOD, LIBRESOLV): Make previous change a bit more friendly by defining these as Makefile variables. (LIBS_MOVE): Add LIBS_MAIL into this. (movemail${EXEEXT}): Just use LIBS_MOVE, not LIBS_MAIL as well. 2010-03-18 Glenn Morris * Makefile.in (KRB4LIB, DESLIB, KRB5LIB, CRYPTOLIB, COM_ERRLIB) (HESIODLIB, LIBS_MAIL): Set using autoconf rather than cpp. (BASE_CFLAGS): Remove (identical to CPP_CFLAGS). 2010-03-18 Tetsurou Okazaki (tiny change) * Makefile.in (uninstall): Handle the case where archlibdir does not exist. (Bug#5720) 2010-03-10 Chong Yidong * Branch for 23.2. 2010-02-20 Kevin Ryde * etags.c (Scheme_functions): Don't loop past a null character (Bug#5601). 2010-01-29 Kester Habermann (tiny change) * etags.c (Fortran_functions): Handle recursive keyword (Bug#5484). 2010-01-11 Glenn Morris * ebrowse.c (version): * etags.c (print_version): * rcs2log (Copyright): Set copyright year to 2010. 2009-12-09 David Robinow (tiny change) * makefile.w32-in: Use parenthesis for macros for nmake compatibility. 2009-11-23 Tobias Ringström (tiny change) * etags.c (absolute_filename): Use memmove if we have it for overlapping copy. 2009-11-04 Dan Nicolaescu * make-docfile.c (scan_lisp_file): Also look for `defvaralias'. 2009-10-15 Juanma Barranquero * .gitignore: Add echolisp.tmp. 2009-10-15 Glenn Morris * emacsclient.c (print_help_and_exit): Fix bug report instructions. * makefile.w32-in (echolisp): New rule. (clean): Delete echolisp.tmp. 2009-09-27 Eli Zaretskii * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Add term/internal.elc, term/pc-win.elc, emacs-lisp/easymenu.elc, and term/ns-win.elc, to be consistent with src/Makefile.in. 2009-09-11 Stefan Monnier * update-game-score.c (main): Sort scores before trimming them, reported by Jason Feng (bug#4397). 2009-09-09 Glenn Morris * Makefile.in ($(DESTDIR)${archlibdir}): Set umask to world-readable before creating directories and game score files. 2009-08-19 Glenn Morris * cvtmail.c: Remove file. * Makefile.in (UTILITIES): Remove cvtmail. (cvtmail${EXEEXT}): Remove. 2009-07-08 E. Jay Berkenbilt (tiny change) * b2m.c (main): Ensure that each message ends in two newlines. 2009-07-03 Jason Rumney * emacsclient.c (w32_set_user_model_id): Use standard types. 2009-07-03 Eli Zaretskii * makefile.w32-in (WINNT_SUPPORT): Add common-win.elc, like src/Makefile.in did. 2009-06-30 Jason Rumney * emacsclient.c (w32_give_focus): Use GetModuleHandle for library that is already loaded. (w32_set_user_model_id): New function. (main): Use it to associate emacsclient with emacs (bug#1849). 2009-06-29 Jim Meyering Remove useless if-before-free test. * make-docfile.c (scan_lisp_file): Remove useless test. 2009-06-23 Dan Nicolaescu * Makefile.in (movemail.o): Don't pass -Demacs, unused. 2009-06-21 Chong Yidong * Branch for 23.1. 2006-06-09 Adrian Robert * mac-fix-env.m: * Makefile.in (mac-fix-env): Remove. 2006-06-06 David Reitter * Makefile.in (mac-fix-env): Compile it using ALL_CFLAGS. 2009-04-20 Juanma Barranquero * emacsclient.c (print_help_and_exit): Fix typo and tabify (careful spacing is required in the message output, as the comment suggests). 2009-04-20 Chong Yidong * emacsclient.c (print_help_and_exit): Clarify argument placement for short option names. 2009-04-02 Dan Nicolaescu * emacsclient.c (print_help_and_exit): Fix typo. 2009-03-21 Eli Zaretskii * ntlib.c (setuid): Argument is now unsigned. (getuid): Return value is now unsigned. (getpwuid): Argument is now unsigned. (fchown): UID and GID arguments are now unsigned. * ntlib.h (fchown): UID and GID arguments are now unsigned. (getuid): Return value is now unsigned. (setuid): Argument is now unsigned. (getpwuid): Remove prototype (it's declared in nt/inc/pwd.h). 2009-03-11 Stefan Monnier * emacsclient.c (main): Revert part of last change, so drive-relative file names again work on Windows. 2009-03-10 Stefan Monnier * emacsclient.c (main): Always pass cwd via "-dir". Pass the file names without prepending cwd to them, so Emacs uses its customary rules to determine how to interpret the file name. 2009-03-04 Glenn Morris * movemail.c (main) [MAIL_USE_POP]: Add -r to usage message. 2009-02-13 Sven Joachim * movemail.c: Include time.h unconditionally. (main): Use time_t for time variables. 2009-02-11 Glenn Morris * movemail.c (mbx_delimit_begin): Also write the current time. 2009-02-10 Glenn Morris * movemail.c (mbx_delimit_begin, mbx_delimit_end): Write mbox rather than Babyl format. (Bug#2196) 2009-01-23 Adrian Robert * emacsclient.c (decode_options): Use a dummy display name under NS/Cocoa. 2009-01-14 Lars Rasmusson (tiny change) * ebrowse.c (matching_regexp): Fix OB1 error. 2009-01-05 Glenn Morris * ebrowse.c (version): * etags.c (print_version): * rcs2log (Copyright): Update copyright for 2009. 2009-01-01 Chong Yidong * movemail.c (main): Fatal if hard links cannot be created. 2008-12-18 Dan Nicolaescu * emacsclient.c (start_daemon_and_retry_set_socket): Improve error checking. 2008-12-14 Dan Nicolaescu * emacsclient.c: Include syswait.h instead of sys/types.h. 2008-12-11 Dhruva Krishnamurthy (tiny change) * emacsclient.c (WCONTINUED): New compatibility define for older systems. 2008-12-10 Dan Nicolaescu * emacsclient.c (main): Fix previous change. 2008-12-10 Juanma Barranquero * emacsclient.c (main): Fix mindless breakage where emacsclient does not work *at all* on Windows, even if it *can* connect. 2008-12-10 Dan Nicolaescu * emacsclient.c (EMACS_DAEMON): Remove definition. (decode_options): Do not allow an empty alternate_editor on WINDOWSNT. (print_help_and_exit): Replace EMACS_DAEMON with WINDOWSNT. (start_daemon_and_retry_set_socket): Likewise. (main): Fail in case of not being able to connect. 2008-12-10 Juanma Barranquero * emacsclient.c [!WINDOWSNT] (EMACS_DAEMON): New define. Changes when EMACS_DAEMON is not defined: (print_help_and_exit): Don't add daemon information to help. (start_daemon_and_retry_set_socket): Make a no-op. (main): Don't set `start_daemon_if_needed' (which is initialized to 0). 2008-12-10 Dan Nicolaescu * emacsclient.c (print_help_and_exit): Describe what an empty string argument does for --alternate-editor. (set_socket): Make it possible to not exit in case of an error. (start_daemon_and_retry_set_socket): New function. (main): Use it. Restore the NULL value for socket_name and server_file after the set_socket call. 2008-12-03 Dan Nicolaescu * emacsclient.c: Include . 2008-12-01 Dan Nicolaescu * make-docfile.c (scan_lisp_file): Use xmalloc instead of malloc. 2008-11-22 Derek Peschel (tiny change) * etags.c (add_regex): Pass correct length to re_compile_pattern. 2008-11-02 Chong Yidong * emacsclient.c (window_system): Delete redundant variable. (decode_options): Don't use it. (find_tty): New function. (main): Use find_tty, and don't use window_system. 2008-11-01 Eli Zaretskii * emacsclient.c (main) [WINDOWSNT]: Don't ifdef away the call to `ttyname'. (w32_getenv): Treat $TERM specially: if not found in the environment and in the Registry, return "w32console". (ttyname) [WINDOWSNT]: New function. 2008-10-31 Andreas Schwab * emacsclient.c (main): Don't force sending tty when in eval mode. 2008-10-30 Chong Yidong * emacsclient.c (main): If using the current frame, send tty information to Emacs in case daemon mode needs to occupy this tty. 2008-10-29 Juanma Barranquero * emacsclient.c (EXTRA_SPACE): New macro. (get_server_config, set_local_socket): Use it. * makefile.w32-in ($(BLD)/sorted-doc.$(O)): Remove spurious backslash. Reported by Guillaume Conjat . 2008-10-29 Ulrich Mueller * emacsclient.c (set_local_socket): Use TMPDIR (default /tmp) instead of hardcoded /tmp. 2008-10-13 Dan Nicolaescu * emacsclient.c (longopts, print_help_and_exit): Add -nw. (decode_options): Use getopt_long_only. 2008-09-30 Eli Zaretskii * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove ccl.elc and codepage.elc. 2008-09-19 Dan Nicolaescu * emacsclient.c (main): Use stdout rather than stdin to obtain the terminal (bug#427). 2008-08-25 Francesco Potortì * etags.c (main): Do not use static space for the tagfile string. 2008-08-17 Francesco Potortì * etags.c (main): Use canonicalize_filename on tags file name. (relative_filename): Revert 3.85: do not collapse slashes here. (absolute_dirname): Remove useless call to canonicalize_filename. (canonicalize_filename): Collapse multiple slashes here. 2008-08-07 Dan Nicolaescu * Makefile.in (INSTALLABLES): Add LIB_SRC_EXTRA_INSTALLABLES. Do not special case for NS_IMPL_COCOA. 2008-08-06 Adrian Robert * Makefile.in (CFLAGS): Drop -universal under NS_IMPL_COCOA. (.m.o): Dispense with GNUstep-specific flags. 2008-08-05 Ulrich Mueller * pop.c (socket_connection): Add conditionals for HAVE_KRB5_ERROR_TEXT and HAVE_KRB5_ERROR_E_TEXT to support compilation with MIT Kerberos and Heimdal, respectively. 2008-07-31 Dan Nicolaescu * etags.c: * emacsclient.c: Remove VMS support. 2008-07-27 Dan Nicolaescu Remove support for Mac Carbon. * makefile.w32-in: * emacsclient.c: Remove code for Carbon. 2008-07-21 Dan Nicolaescu * Makefile.in (mac-fix-env): Remove #ifdef around rule. 2008-07-17 Andreas Schwab * Makefile.in (INSTALL_SCRIPT): Remove duplicate definition. (LIB_STANDARD_LIBSRC): Don't define. (LOADLIBES): Remove LIB_STANDARD_LIBSRC. 2008-07-16 Adrian Robert * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to NS_IMPL_COCOA. 2008-07-16 Dan Nicolaescu * ntlib.h (fcloseall, fgetchar, flushall, fputchar, putw): Remove, unused. 2008-07-15 Adrian Robert * .cvsignore: Add mac-fix-env. * mac-fix-env.m: New file, automatically update ~/.MacOSX/environment.plist on OS X systems to expose environment variables inside Emacs started from icon. * Makefile.in: Add -universal to CFLAGS on OS X, add mac-fix-env to programs to build. * make-docfile.c: Add .m to list of file extensions. 2008-07-12 Dan Nicolaescu * movemail.c (main): Use int instead of WAITTYPE. 2008-07-05 Juanma Barranquero * makefile.w32-in (OTHER_PLATFORM_SUPPORT): Remove vmsproc.el and vms-patch.el. 2008-06-26 Juanma Barranquero * makefile.w32-in (obj): Remove w32bdf.o. 2008-06-26 Dan Nicolaescu * fakemail.c: Remove references to obsolete variables. 2008-06-02 Jim Meyering * ebrowse.c (xfree): Remove definition; s/xfree/free/. Remove useless if-before-free tests. * ebrowse.c (xfree): Likewise. * etags.c (process_file_name, free_tree, free_fdesc): Likewise. (popclass_above, Prolog_functions, Erlang_functions): Likewise. * pop.c (pop_quit): Likewise. 2008-05-30 Juanma Barranquero * makefile.w32-in (lisp2): Add minibuffer.elc. 2008-05-29 Tom Tromey * etags.c (relative_filename): Treat "///" like "/" in filenames. 2008-05-09 Eli Zaretskii * ntlib.c: Include sys/types.h, sys/stat.h, and errno.h. (IS_DIRECTORY_SEP): New macro. (convert_time, is_exec, stat): New functions. 2008-05-08 Eli Zaretskii * makefile.w32-in (lisp2): Rename epa-file-hook.elc to epa-hook.elc. 2008-05-03 Eli Zaretskii * makefile.w32-in (lisp2): Add epa-file-hook.elc, to track the corresponding change in src/Makefile.in. 2008-04-24 Adam Gołębiowski (tiny change) * Makefile.in (etags${EXEEXT}, ctags${EXEEXT}): Fix quote typo. 2008-04-10 Jason Rumney * makefile.w32-in (CLIENTRES): New variable and target. (TRES): Remove. ($(BLD)/emacsclientw.exe): Use $(CLIENTRES) instead of $(TRES). 2008-04-19 Stefan Monnier * vcdiff: Use "sccs get" rather than "get"; leave PATH alone. 2008-04-18 Steve Grubb (tiny change) * vcdiff: Use mktemp (CVE-2008-1694). 2008-04-09 Jason Rumney * makefile.w32-in (distclean, maintainer-clean): New targets. 2008-03-13 Glenn Morris * makefile.w32-in (VERSION): Set to 23.0.60. 2008-03-04 Juanma Barranquero * .cvsignore: Add oo. 2008-02-27 Yuri Shtil (tiny change) * etags.c (Perl_functions): Fix call to skip_spaces. 2008-02-24 Dan Nicolaescu * Makefile.in (NO_SHORTNAMES): * emacsclient.c (NO_SHORTNAMES): * fakemail.c (NO_SHORTNAMES): * make-docfile.c (NO_SHORTNAMES): * movemail.c (NO_SHORTNAMES): * pop.c (NO_SHORTNAMES): Remove references to obsolete variable. 2008-02-23 Jason Rumney * makefile.w32-in (MOUSE_SUPPORT): Remove duplicate tooltip.elc. (MSDOS_SUPPORT, VMS_SUPPORT): Remove. (OTHER_PLATFORM_SUPPORT): Replace above. Add X specific files too. (lisp2): Add new languages. ($(DOC)): Use OTHER_PLATFORM_SUPPORT. 2008-02-22 Juanma Barranquero * makefile.w32-in (lisp2): Remove devanagari.el, kannada.el, malayalam.el, and tamil.el. Add sinhala.el. 2008-02-20 Juanma Barranquero * emacsclient.c (main) [WINDOWSNT]: Understand DRIVE:NAME, where NAME is relative to DRIVE'S current directory. 2008-02-15 Juanma Barranquero * emacsclient.c (print_help_and_exit): Show -d option on Windows. 2008-02-10 Dan Nicolaescu * fakemail.c: Undo previous change. 2008-02-09 Dan Nicolaescu * fakemail.c (MAIL_PROGRAM_NAME): Remove unused conditional. (main): Replace MAIL_PROGRAM_NAME with its value. * Makefile.in (REGEXP_IN_LIBC): Remove reference to obsolete variable. 2008-02-08 Stefan Monnier * emacsclient.c (decode_options): Pass --display implicitly if -c is specified. Only set tty if -t or -c is specified. 2008-02-04 Jason Rumney * makefile.w32-in (lisp1): Use (), not {}. 2008-02-04 Tom Tromey * etags.c: Add "GTY" as synonym for __attribute__. Update gperf output. 2008-02-01 Jason Rumney * makefile.w32-in (obj): Sync with src/Makefile.in. (TOOLTIP_SUPPORT, WINDOW_SUPPORT): New definitions. (WINNT_SUPPORT): Add term/w32-win.elc. (lisp1, lisp2): Sync with lisp in src/Makefile.in. 2008-02-01 Jason Rumney * makefile.w32-in (obj): Add font.o and w32font.o. 2008-02-01 Zhang Wei (tiny change) * makefile.w32-in (lisp1): Delete ucs-tables.elc, utf-8.elc, and latin-*.el. 2008-01-26 Stefan Monnier * emacsclient.c (decode_options): Default to NULL display, as Emacs-22. Allow the -d option under w32 again, for those rare cases where it actually does make sense. 2008-01-25 Juanma Barranquero * emacsclient.c (set_tcp_socket): Don't send "\n" after the authentication string; there's no need to haste. 2008-01-22 Chong Yidong * pop.c (pop_stat, pop_last): Fix last fix. 2008-01-18 Dan Nicolaescu * movemail.c: Remove references to XENIX. 2008-01-13 Dan Nicolaescu * movemail.c: * make-docfile.c: Remove reference to symbols defined by systems not supported anymore: MAC_OS8, XENIX and STRIDE. 2008-01-12 Eli Zaretskii * emacsclient.c (decode_options) [WINDOWSNT]: Don't use the value of DISPLAY in the environment. Don't support -d. (print_help_and_exit) [WINDOWSNT]: Don't show the --display option. (longopts) [WINDOWSNT]: Remove --display. 2008-01-10 Chong Yidong * pop.c (pop_stat, pop_last): Check validity of string-to-integer conversion. Mistakes spotted by Nico Golde. 2008-01-09 Glenn Morris * emacsclient.c: Add missing final newlines to message calls. 2008-01-09 Daniel Hackney (tiny change) * emacsclient.c (set_socket): Add final newline to socket error message. 2008-01-04 Glenn Morris * ebrowse.c (version) : New variable. Just use current year for copyright. * etags.c (print_version): * rcs2log (Copyright): Update to 2008. 2007-11-28 Jason Rumney * makefile.w32-in (VMS_SUPPORT): No longer byte-compiled. 2007-11-27 Jan Djärv * pop.c (socket_connection): Remove AI_ADDRCONFIG. 2007-11-19 Jan Djärv * pop.c (socket_connection): Move realhost out of #ifdefs. Set realhost both for HAVE_GETADDRINFO and !HAVE_GETADDRINFO. 2007-11-18 Jan Djärv * pop.c (socket_connection): Use getaddrinfo if available. 2007-11-22 Francesco Potortì * etags.c (default_C_help) [CTAGS]: Differentiate the help string, as the defaults in ctags are different from etags. 2007-11-15 Francesco Potortì * etags.c: Make prototypes for extern definitions, and add all that are needed to quench warnings on 64-bit. (main): Use the same defaults for ctags as for etags: find typedefs, structure tags, macro constants, enum constants, struct members and global variables. (make_C_tag) [DEBUG]: Add debugging printout. (C_entries): In case '}' decrement bracelev before testing it. 2007-11-15 Masatake YAMATO * etags.c (C_entries): In case '}', set fvdef to fvnone unconditioned to (!ignoreindent && lp == newlb.buffer + 1). 2007-11-01 Dan Nicolaescu * makefile.w32-in (obj): Remove sunfns.o. 2007-10-28 Juanma Barranquero * makefile.w32-in (obj): Remove abbrev.o. 2007-10-26 Juanma Barranquero * emacsclient.c: Add a wrapper for getenv so it also checks the registry on Windows. Suggestion and algorithm by Eli Zaretskii. Code partially based on w32_get_resource and init_environment (w32.c). (egetenv): New wrapper for getenv. (get_current_dir_name, decode_options, get_server_config) (set_local_socket, set_socket, main): Use egetenv, not getenv. (w32_get_resource, w32_getenv) [WINDOWSNT]: New functions. 2007-10-25 Jason Rumney * emacsclient.c (sock_err_message): New function. (set_tcp_socket): Use it. 2007-10-09 Juanma Barranquero * emacsclient.c (print_help_and_exit): Fix space to improve alignment in output messages. 2007-09-27 Jason Rumney * makefile.w32-in (emacsclient, emacsclientw): Link to COMCTL32. * emacsclient.c (w32_window_app): Init common controls when windowed. 2007-09-21 Glenn Morris * emacstool.c: Remove file. * Makefile.in (emacstool, nemacstool, xvetool, xveterm): Delete targets built from emacstool. 2007-09-21 Stefan Monnier * emacsclient.c (decode_options): -t implies -c. 2007-09-20 Stefan Monnier * emacsclient.c (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP) (IS_ANY_SEP): Only define if !defined(HAVE_GET_CURRENT_DIR_NAME). (main_argc): Remove. (strprefix): Use strncmp. 2007-09-20 Jason Rumney * emacsclient.c (main) [SIGSTOP]: Change conditional from WINDOWSNT. 2007-09-20 Stefan Monnier * emacsclient.c (current_frame): Change the default. (longopts): Replace --current-frame by --create-frame. (decode_options): Reverse the meaning of -c. (print_help_and_exit): Update help text accordingly. (main): Remove the -version and -good-version messages. 2007-09-12 Glenn Morris * Makefile.in (SOURCES, unlock, relock): Delete. 2007-08-29 Glenn Morris * makefile.w32-in (VERSION): Increase to 23.0.50. 2007-08-29 Dan Nicolaescu * emacsclient.c (w32_execvp): Move definition before use. (decode_options): Don't use a tty on mac carbon or windows. 2007-08-29 Jason Rumney * emacsclient.c (SEND_STRING, SEND_QUOTED): Remove obfuscation macros. (quote_argument, set_tcp_socket, handle_sigcont, handle_sigtstp) (main): Expand removed macros inline. (main) [WINDOWSNT]: Don't call ttyname. Don't recognize -suspend option. (main) [NO_SOCKETS_IN_FILE_SYSTEM]: Don't call init_signals. 2007-08-29 Károly Lőrentey * emacsclient.c (signal.h): New include. (sys/stat.h, errno.h): Always include, even on WINDOWSNT. (DIRECTORY_SEP, IS_DIRECTORY_SEP, IS_DEVICE_SEP, IS_ANY_SEP): Copy definitions here from src/lisp.h. (main_argc, main_argv, current_frame, window_system, tty): New vars. (longopts): Add tty, current-frame. (xmalloc, xstrdup): New functions. (get_current_dir_name): New function, copied from src/sysdep.c. (decode_options): Set display from environment. Add tty and current_frame options. Make --no-wait imply --current-frame, except when it is the only option given. Make sure no frame is opened when --current-frame is set. (print_help_and_exit): Document tty and current-frame options. (fail): Change arguments to void. (main): When sockets are not defined, set main_argc, main_argv, and call fail() with no arguments. (emacs_socket): New variable (moved out from main `s'). (quote_file_name): Rename to quote_argument. (quote_argument): New name for old quote_file_name. (unquote_argument, strprefix, pass_signal_to_emacs) (handle_sigcont, handle_sigtstp, init_signals): New functions. (set_local_socket): Initialize saved_errno to 0. If socket-name is too long, call `fail' rather than `exit'. (main): Doc update. Set main_argc, main_argv. New var `str'. Don't need a filename or argument if tty or window_system set. Call fail with no arguments. Use get_current_dir_name to send over the current directory. Send version number to Emacs for verification. If tty is set, check TERM, and pass name and type to Emacs. Pass window_system to Emacs. Move sending of eval to optind loop. Send -position, -file to Emacs. Call fsync after fflush. Check for a client/server version match. Handle -emacs-pid, -window-system-unsupported, -print, -error, and -suspend commands. Don't exit prematurely on --no-wait, let Emacs close the connection for us. When creating a new frame, send environment and pwd to Emacs. Send current-frame to Emacs. 2007-08-25 Eli Zaretskii * Makefile.in (rcs2log, rcs-checkin, grep-changelog, vcdiff): Prepend "-" to the command, in case srcdir=. and file is copied into itself. 2007-07-25 Glenn Morris * Relicense all FSF files to GPLv3 or later. * COPYING: Switch to GPLv3. 2007-07-17 Francesco Potortì * etags.c (C_entries): Reset the fvdef machine when out of function. (PRINT_UNDOCUMENTED_OPTIONS_HELP): #define as FALSE if undefined. (print_help): Use it in if() rather than #if. (print_help): Conditionally print help about --no-line-directive. 2007-07-16 Eli Zaretskii * makefile.w32-in (clean): Don't delete *~. 2007-06-07 Glenn Morris * etags.c (print_version): Add `emacs_copyright' string, for easier automatic updating. 2007-05-18 Francesco Potortì * etags.c: Extern definitions of some more pointer functions for standalone compilation, especially important for 64bit platforms. (main, print_help): --members is now the default for etags. (C_entries): Parse start of C comment as a space == end of token. This is not necessary for C++ comment, already parsed as newline. 2007-04-26 Glenn Morris * makefile.w32-in (VERSION): Increase to 22.1.50. 2007-06-02 Chong Yidong * Version 22.1 released. 2007-02-26 Francesco Potortì * Makefile.in (etags, ctags): Define EMACS_NAME as "GNU Emacs". 2007-02-20 Ulrich Mueller (tiny change) * Makefile.in (EMACS, EMACSOPT): New variables. (blessmail): Use `--no-site-file' when compiling. 2007-02-05 Francesco Potortì * etags.c (default_C_help, Cplusplus_help, PHP_help, print_help) (main): Now --members is the default for etags, not for ctags yet. 2007-02-04 Per Cederqvist (tiny change) * etags.c (gperf, in_word_set): Change attribute for Java to (C_JAVA & ~C_PLPL). The previous change introduced 2004-09-13 was broken, as (C_JAVA & !C_PLPL) always evaluates to 0. This caused import, package, extends, implements and interface to be treated specially for all kinds of C-style files, not just Java files. 2007-01-02 Francesco Potortì * etags.c (longopts): New undocumented option --no-duplicates. (no_duplicates): Static variables for the above option. (print_help): Do not print help for --no-warn, now undocumented. (add_node): Allow duplicate tags in ctags mode unless --no-duplicates. (main): Pass the -u option to sort in ctags mode. 2006-12-28 Francesco Potortì * etags.c (readline): When creating a relative file name from a #line directive, leave the file name alone. The previous behavior was to make it relative to the tags file directory, under the hypothesis that the #line directive file name was relative to the directory of the tagged file. That hypothesis is wrong with Cpp and Lex. (Makefile_targets): Do not include spaces in tag names. 2006-12-22 Eli Zaretskii * makefile.w32-in (make-docfile, ctags, etags, ebrowse, hexl) (movemail, fakemail, sorted-doc, digest-doc, emacsclient) (test-distrib, $(DOC), all): Depend on stamp_BLD instead of $(BLD). ($(BLD)/make-docfile.$(O) $(BLD)/hexl.$(O) $(BLD)/fakemail.$(O)) ($(BLD)/sorted-doc.$(O) $(BLD)/digest-doc.$(O)) ($(BLD)/test-distrib.$(O) $(GETOPTOBJS) $(MOVEMAILOBJS)) ($(BLD)/emacsclient.$(O) $(BLD)/etags.$(O) $(BLD)/regex.$(O)) ($(BLD)/ebrowse.$(O) $(BLD)/ctags.$(O)): Depend on stamp_BLD. (clean): Delete stamp_BLD. 2006-12-20 Francesco Potortì * etags.c (C_entries): DEFUN names were longer by one: corrected. 2006-12-18 Juanma Barranquero * emacsclient.c [WINDOWSNT] (set_fg, get_wc): New variables. [WINDOWSNT] (w32_find_emacs_process, w32_give_focus): New functions. (main) [WINDOWSNT]: Remove code to release the focus; call w32_give_focus instead. 2006-12-15 Juanma Barranquero * emacsclient.c (w32_execvp): New function; wrapper for `execvp'. (execvp) [WINDOWSNT]: Redefine to `w32_execvp'. (fail): Remove Windows-specific fix (subsumed into w32_execvp). Suggestions and comment by Eli Zaretskii. 2006-12-06 Christoph Conrad * makefile.w32-in ($(BLD)/emacsclient.exe, $(BLD)/emacsclientw.exe): Use $(USER32) for compatibility with Visual Studio .NET 2003. 2006-11-30 Juanma Barranquero * emacsclient.c (emacs_pid): New variable. (message): Remove leftover code. (get_server_config): Set emacs_pid. Don't allow Emacs to grab the focus yet; emacsclient can still display an informational message before sending requests to Emacs. (main): Allow Emacs to grab the focus. Simplify message() call. 2006-11-30 Michael Mauger * emacsclient.c (message): Make sure the message is properly written even if it contains printf escapes, and flush the result. (set_tcp_socket): Make the message for non-local connections informational rather than an error. 2006-11-28 Kevin Ryde * etags.c (readline): Check for double quote after #line. 2006-11-28 Jan Djärv * etags.c (readline): sscanf could in principle return 2. 2006-11-28 Francesco Potortì * etags.c (readline): lno is unsigned. (TeX_commands): Use p++ (rather than *p++) to increment p. (Lua_functions): Explicitly discard LOOKING_AT's return value. 2006-11-27 Juanma Barranquero * makefile.w32-in (TRES): New macro (copied from nt/makefile.w32-in). ($(TRES)): New rule (copied from nt/makefile.w32-in). ($(BLD)/emacsclientw.exe): Add dependency. 2006-11-27 Eli Zaretskii * makefile.w32-in ($(BLD)/emacsclient.$(O)): Depend on makefile.w32-in. 2006-11-25 Juanma Barranquero * makefile.w32-in (VERSION): New macro. (ECLIENT_CFLAGS): Add -DVERSION. 2006-11-25 Jason Rumney * emacsclient.c (file_name_absolute_p) [WINDOWSNT]: Use isalpha(). 2006-11-24 Michael Mauger * emacsclient.c (file_name_absolute_p) [WINDOWSNT]: Support absolute file names with forward slashes. 2006-11-23 Juanma Barranquero * emacsclient.c (print_help_and_exit): Tweak message contents and tabs/spaces to improve alignment in message boxes. 2006-11-22 Lennart Borgman * emacsclient.c: Include . [WINDOWSNT]: Include . (w32_check_console_app): New function. (message): New function. (decode_options, print_help_and_exit, fail, main) (initialize_sockets, get_server_config, set_tcp_socket) (set_local_socket, set_socket): Use message(). 2006-11-13 Jason Rumney * emacsclient.c [WINDOWSNT]: Let config.h define HAVE_SOCKETS and HAVE_INET_SOCKETS. 2006-11-13 Juanma Barranquero * makefile.w32-in (emacsclient): Depend also on emacsclientw.exe. ($(BLD)/emacsclientw.exe): New target. (install): Install emacsclientw.exe. ($(BLD)/cvtmail.$(O), $(BLD)/emacstool.$(O)): Remove obsolete targets. (ECLIENT_CFLAGS): Remove redundant flags. * emacsclient.c [WINDOWSNT]: Undef _WINSOCKAPI_ and _WINSOCK_H. 2006-11-13 Jason Rumney * makefile.w32-in ($(BLD)/emacsclient.$(O)): Use CFLAGS. 2006-11-10 David Reitter * emacsclient.c [!WINDOWSNT]: Include . 2006-11-08 Juanma Barranquero * emacsclient.c (get_server_config) [WINDOWSNT]: Declare set_fg as FARPROC to avoid a compiler warning. 2006-11-07 Juanma Barranquero * emacsclient.c (get_server_config) [WINDOWSNT]: Look for the server file on APPDATA if it doesn't exist on HOME, even if HOME is defined. * emacsclient.c (get_server_config): Extract also the Emacs pid from the server file. On Windows, try to force the Emacs frame to the foreground. 2006-11-06 Juanma Barranquero * emacsclient.c (longopts) [!NO_SOCKETS_IN_FILE_SYSTEM]: Don't show option --socket-name. (decode_options): Don't get EMACS_SERVER_FILE here, it could override command line options. (decode_options) [!NO_SOCKETS_IN_FILE_SYSTEM]: Don't parse "-s" option. (fail): Don't check for missing arguments, it is now done in set_socket. (file_name_absolute_p): New function (loosely based on the one in fileio.c). (initialize_sockets): Don't check for duplicate loading of Winsock. (get_server_config): Only try relative paths in the default directory locations. (set_tcp_socket): Don't call INITIALIZE(). Warn when connecting to a remote server. (set_socket): Call INITIALIZE(). Search explicit command-line arguments, then environment variable EMACS_SERVER_FILE, then implicit socket paths, before trying the alternate editor. (main): Use file_name_absolute_p. 2006-11-04 Eli Zaretskii * makefile.w32-in (../src/$(BLD)/temacs.exe): Create as temporary file if it doesn't already exist. 2006-11-03 Juanma Barranquero * emacsclient.c (initialize_sockets): Don't initialize Winsock more than once. 2006-11-03 Mark Davies * Makefile.in (INSTALL_SCRIPT): New macro. ($(DESTDIR)${archlibdir}, install): Use it, instead of INSTALL_PROGRAM. 2006-11-02 Juanma Barranquero * grep-changelog: When called with no arguments (not even a filter), show help instead of blindingly dumping every single ChangeLog available. Doc fix. Update version. 2006-11-02 Tim Van Holder (tiny change) * emacsclient.c [WINDOWSNT]: Define HAVE_INET_SOCKETS. [!WINDOWSNT]: Include if available. [HAVE_SOCKETS]: Also require HAVE_INET_SOCKETS. (IOCTL, IOCTL_BOOL_ARG): Remove. (set_tcp_socket): Don't set the socket in blocking mode. Remove c_arg. 2006-11-01 Juanma Barranquero * emacsclient.c (fail) [WINDOWSNT]: Force the first argv passed to execvp to point to alternate_editor (otherwise .BAT scripts can't run). 2006-10-31 Óscar Fuentes (tiny change) * emacsclient.c [WINDOWSNT]: Include and . (close_winsock): Declare as __cdecl. 2006-10-31 Jan Djärv * emacsclient.c [!WINDOWSNT]: Include if available. (set_tcp_socket): Prefer O_NONBLOCK, then O_NDELAY, then FIONBIO to set the socket in non-blocking mode. 2006-10-31 Tim Van Holder (tiny change) * emacsclient.c [!WINDOWSNT]: Include and . (INVALID_SOCKET): Define. (initialize_sockets): Put #endif at the right place. (set_local_socket): Use progname, not argv[0]. 2006-10-31 Juanma Barranquero * makefile.w32-in (ALL): Add emacsclient. (ECLIENT_CFLAGS, ECLIENTOBJS): New macros. (emacsclient, $(BLD)/emacsclient.exe): New targets. (install): Install emacsclient. * emacsclient.c: Add support for TCP sockets. (SEND_STRING, SEND_QUOTED, HSOCKET, CLOSE_SOCKET, IOCTL) (INITIALIZE): New macros. (IOCTL_BOOL_ARG): New typedef. (server_file): New global variable. (longopts): New option --server-file. (decode_options): Process new option --server-file and environment variable EMACS_SERVER_FILE. (print_help_and_exit): Document new option. (fail): If no connection available and no alternate editor, suggest using options to make them explicit. (AUTH_KEY_LENGTH, SEND_BUFFER_SIZE): New constants. (send_buffer, sblen): New variables. (send_to_emacs): New function to buffer output and send it with `send'. (quote_file_name): Use SEND_STRING. (close_winsock, initialize_sockets): New functions to load and unload Winsock. (get_server_config, set_tcp_socket): New functions to create and set up TCP sockets. (set_local_socket): New function to create and set up Unix socket (code moved from previous implementation). (set_socket): New function to choose between TCP and Unix sockets. (main): Use SEND_STRING and SEND_QUOTED. Most code moved to set_local_socket. Use set_socket. Get answers from server.el with recv(), not file stream functions. 2006-10-09 Eli Zaretskii * makefile.w32-in (../src/config.h): Fix error message. 2006-09-30 Eli Zaretskii * .cvsignore: Add blessmail. 2006-09-15 Jay Belanger * COPYING: Replace "Library Public License" by "Lesser Public License" throughout. 2006-08-09 Jan Djärv * etags.c (readline): Expect sscanf returns >= 1. (readline): Change position on %n and \" in sscanf. 2006-08-07 Masatake YAMATO * etags.c (readline): Expect sscanf returns 2, not 1. 2006-08-07 Masatake YAMATO * etags.c (TEX_mode): Check getc returns EOF. File ended without newline causes infinite loop. 2006-07-30 Adrian Aichner (tiny change) * etags.c: It's XEmacs, not Xemacs: change all the occurrences. 2006-07-30 Francesco Potortì * etags.c [ETAGS_REGEXPS]: Now is unconditionally defined. [LONG_OPTIONS]: Changed to NO_LONG_OPTIONS, which is undefined. (Objc_suffixes): Suggest using --lang=c for full help. (C_entries): Initialize savetoken to 0 to shut up the compiler. 2006-07-20 Andreas Schwab * fakemail.c (fatal): Drop second parameter and treat first parameter as a plain string. Callers changed. 2006-07-18 Dan Nicolaescu * ebrowse.c (usage, version): Mark as NO_RETURN. * emacsclient.c (print_help_and_exit): Likewise. 2006-07-10 Francesco Potortì * etags.c (absolute_filename): Free unused space (cosmetic change). (in_word_set): In C, also tag #undef symbols. 2006-06-09 Eli Zaretskii * yow.c: Remove file. * makefile.w32-in ($(BLD)/yow.$(O)): Remove target. * Makefile.in (UTILITIES): Remove yow${EXEEXT}. yow${EXEEXT}: Remove target. 2006-06-04 Masatake YAMATO * ebrowse.c (main): Exit with EXIT_FAILURE if BROWSE file doesn't exist, is not seekable, not is failed in ftall. 2006-06-03 Eli Zaretskii * makefile.w32-in (ALL): Add sorted-doc and digest-doc. ($(BLD)/sorted-doc.exe, $(BLD)/digest-doc.exe) ($(BLD)/test-distrib.exe): New targets. (sorted-doc, digest-doc, test-distrib): New targets. (install): Install sorted-doc.exe and digest-doc.exe. ($(BLD)/sorted-doc.$(O)): Update dependencies. * digest-doc.c [DOS_NT] : Include fcntl.h and io.h. (main) [DOS_NT]: Switch stdin to binary mode, if it is not a terminal device. * sorted-doc.c [DOS_NT] : Include fcntl.h and io.h. [WINDOWSNT] : Don't redeclare malloc. (main) [DOS_NT]: Switch stdin to binary mode, if it is not a terminal device. (main): Initialize bp, to avoid compiler warnings. * makefile.w32-in: Delete traces of leditcfns.c. * leditcfns.c: Remove file. 2006-05-23 Francesco Potortì * pop.c (pop_open, socket_connection, KPOP_SERVICE): Add comments explaining why the "kpop" service is never used. 2006-05-13 Eli Zaretskii * makefile.w32-in (lisp1): Add fringe.elc. 2006-05-02 Francesco Potortì * etags.c (Perl_functions): Free space allocated for var package. (Erlang_functions): Possibly free space allocated for var last. (Prolog_functions): Possibly free space allocated for var last. 2006-04-29 Dan Nicolaescu * sorted-doc.c (main): Initialize docs to NULL. * yow.c (yow): Free buf. * etags.c: Delete c-indentation-style local variable. 2006-04-29 Richard Stallman * movemail.c (main): Check for negative value from `read'. * fakemail.c (read_header): Give fatal error if input has no header. 2006-04-02 Paul Eggert * b2m.c (main): Don't include . (TM_YEAR_BASE): New macro. (TM_YEAR_IN_ASCTIME_RANGE): Don't define if already defined, so that s/ files can override this. Use the more-conservative range 1000-9999. (main): Check for asctime returning NULL. * fakemail.c: Likewise. 2006-03-27 Paul Eggert * b2m.c: Include . (TM_YEAR_IN_ASCTIME_RANGE): New macro. (main): Check for out-of-range time stamps. * fakemail.c: Likewise. 2006-03-18 Andre Spiegel * vcdiff: Use "echo" as a default for $echo, otherwise we'll execute $DIFF twice, and once with the wrong options. 2006-02-23 Claudio Fontana * Makefile.in (install, uninstall): Add DESTDIR variable to support staged installations. 2005-12-30 Eli Zaretskii * makefile.w32-in (MOUSE_SUPPORT): Add tooltip.elc. (lisp1): Add rfn-eshadow.elc, international/utf-16.elc, image.elc, international/fontset.elc, dnd.elc, mwheel.elc, and tool-bar.elc. Rearrange the list to be similar to $(shortlisp) in src/Makefile.in. (lisp2): Add language/kannada.el, emacs-lisp/syntax.elc, emacs-lisp/timer.elc, jka-cmpr-hook.elc, font-lock.elc, jit-lock.elc. Rearrange the list to be similar to $(shortlisp) in src/Makefile.in. 2005-12-22 Richard M. Stallman * Makefile.in (update-game-score.o): Delete spurious final `\'. 2005-11-18 Hideki IWAMOTO (tiny change) * etags.c (main): Cxref mode writes to stdout: do not close tagf, which was never opened. 2005-10-20 Olli Savia (tiny change) * etags.c: Undef STDIN if defined. (LynxOS defines it in system header files.) 2005-09-27 Francesco Potortì * etags.c: Preliminary Forth support. (prolog_pr): Cast strlen to int before comparison. (LOOKING_AT, LOOKING_AT_NOCASE): Let the preprocessor check that the second argument is indeed a literal string. (main): In append mode, sort the tags file after writing it. 2005-09-27 Emanuele Giaquinta (tiny change) * etags.c (longopts, print_help, main): The -a (--append) option can be used in ctags also; for one, the Linux make file uses it. 2005-09-20 Chong Yidong * ebrowse.c (add_sym): Compare namespace names instead of namespace objects. This prevents the parser from incorrectly treating classes whose superclass is in another namespace. 2005-09-15 Richard M. Stallman * Makefile.in (update-game-score.o): New target. Compile and link this program separately. (update-game-score${EXEEXT}): Use GETOPTDEPTS. 2005-09-11 Jason Rumney * makefile.w32-in (../src/config.h): Don't overwrite. Print a message instead. (../src/paths.h): Remove. 2005-07-27 Juanma Barranquero * .cvsignore: Don't ignore fns-* and fns.el, which are no longer generated. Ignore also ctags.c and getopt.h. * makefile.w32-in (clean): Delete getopt.h. (getopt.h): New rule. 2005-07-26 Paul Eggert Merge gnulib getopt implementation into Emacs. * Makefile.in (mostlyclean): Remove getopt.h, getopt.h-t. (GETOPT_H): New macro, from gnulib. (getopt.h): New rule, from gnulib. (GETOPTOBJS): Now autoconfigured. (GETOPTDEPS): getopt.h is now autoconfigured. (getopt.o, getopt1.o): Depend on $(GETOPT_H), not ${srcdir}/getopt.h. (getopt.o): Depend on ${srcdir}/gettext.h. (movemail.o): Depend on $(GETOPT_H). * getopt.c, getopt1.c: Sync from gnulib. * getopt_.h, getopt_int.h, gettext.h: New files, from gnulib. * getopt.h: Removed (now is getopt_.h). 2005-07-13 Ken Raeburn * pop.c: Don't include des.h (or variants thereof); krb.h will do it. (sendline): Add the \r\n to the line in a temporary buffer, and write it all at once. 2005-07-04 Lute Kamstra Update FSF's address in GPL notices. 2005-06-13 Eli Zaretskii * makefile.w32-in ($(DOC)): Fix last change. 2005-06-12 Eli Zaretskii * makefile.w32-in ($(DOC)): Depend on make-docfile.exe, temacs.exe, and the preloaded *.elc files. This avoids unnecessary dumping and DOC rebuilding. 2005-06-04 Eli Zaretskii * ntlib.h (fileno): Don't define if already defined. 2005-05-25 Thien-Thi Nguyen * yow.c (setup_yow): Use EXIT_FAILURE in case no separators found. (yow): Use EXIT_FAILURE in case of memory error. 2005-05-13 YAMAMOTO Mitsuharu * make-docfile.c (DIRECTORY_SEP): New macro. (IS_DIRECTORY_SEP): Use it. 2005-03-18 Jan Djärv * emacsclient.c: Avoid expansion of getcwd when defined as a macro. 2005-03-04 YAMAMOTO Mitsuharu * make-docfile.c: Undo previous change. 2005-02-04 Andreas Schwab * movemail.c (fatal): Accept third parameter and pass down to error. (pfatal_with_name): Pass error string as format parameter instead of as part of format string. (pfatal_and_delete): Likewise. (main): Adjust call to fatal. (xmalloc): Likewise. 2005-01-29 Richard M. Stallman * movemail.c (popmail): Don't use Errmsg as format string. 2004-12-26 YAMAMOTO Mitsuharu * make-docfile.c: Include stdlib.h even if WINDOWSNT is not defined. 2004-12-15 Andreas Schwab * etags.c (main): Fix typo in conversion of LONG_OPTIONS from preprocessing to compile time constant. 2004-11-17 Kim F. Storm * etags.c: Undo last change. 2004-11-09 Kim F. Storm * make-docfile.c (scan_c_file): Set defvarperbufferflag to silence compiler. * hexl.c (main): Init local var c to silence compiler. * etags.c (main, consider_token, C_entries): Add misc switch default targets to silence compiler. 2004-11-09 Jan Djärv * makefile.w32-in (obj): Add all files (X and Mac) to doc so the resulting DOC file can be used on Unix/Mac also. 2004-09-13 Francesco Potortì * etags.c (main): When relative file names are given as argument, make them relative to the current working dir, rather than relative to the output tags file, if the latter is in /dev. 2004-09-13 Francesco Potortì * etags.c [EXIT_SUCCESS, EXIT_FAILURE]: Define them when no is available. (enum sym_type): New st_C_attribute value for parsing gcc's __attribute__. Deleted st_C_typespec value. (gperf, in_word_set): Use gperf 3, options changed. Added the __attribute__ keyword, removed all the st_C_typespec keywords, changed attribute for Java to (C_JAVA & !C_PLPL). (inattribute): New global bool, part of the C state machine. (cblev): Identifier renamed to bracelev throughout. (consider_token, C_entries): Numerous changes for making the parser more robust and adding support for __attribute__. 2004-09-13 David A. Capello (tiny change) * etags.c (Lua_suffixes, Lua_help, lang_names, Lua_functions): Support the Lua scripting language . 2004-09-08 Francesco Potortì * etags.c [LONG_OPTIONS]: Make it TRUE (ifdef) or FALSE (ifndef) for ease of use. 2004-07-17 Richard M. Stallman * emacsclient.c (quote_file_name): Pass COPY thru %s to output it. 2004-06-01 Juanma Barranquero * makefile.w32-in (obj): Add image.c. 2004-05-10 Thien-Thi Nguyen * test-distrib.c (main): For failing cases, exit with `EXIT_FAILURE'. 2004-05-08 Jason Rumney * makefile.w32-in (lisp1, lisp2): Split lisp to avoid long command-lines. 2004-05-08 Thien-Thi Nguyen * cvtmail.c: Throughout, replace 0 destined for `exit' arg with `EXIT_SUCCESS'. Likewise, replace 1 with `EXIT_FAILURE'. (main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value. * ebrowse.c, emacsclient.c, fakemail.c, hexl.c, * make-docfile.c, movemail.c, profile.c, sorted-doc.c, * test-distrib.c, update-game-score.c, yow.c: Likewise. 2004-05-08 Thien-Thi Nguyen * Makefile.in (emacsclient${EXEEXT}): Use makefile var `version'. 2004-05-07 Thien-Thi Nguyen * b2m.c (GOOD, BAD): Delete macros. Throughout, replace w/ `EXIT_SUCCESS' and `EXIT_FAILURE', respectively. (main): Use `EXIT_SUCCESS' or `EXIT_FAILURE' for return value. * etags.c: Likewise. 2004-05-03 Jason Rumney * makefile.nt: Remove. 2004-04-26 Eli Zaretskii * make-docfile.c (IS_DIRECTORY_SEP): New macro. (put_filename): Remove unused variable len. Use IS_DIRECTORY_SEP instead of a literal '/'. 2004-04-23 Juanma Barranquero * makefile.w32-in: Add "-*- makefile -*-" mode tag. 2004-04-17 Paul Eggert * rcs2log (Help): Clarify wording of the usage message. Problem reported by Alan Mackenzie in . 2004-04-07 Stefan Monnier * make-docfile.c (xmalloc): Fix return type. (put_filename): New fun. (scan_file): Use it. 2004-03-09 Juanma Barranquero * grep-changelog: Changes to support ChangeLog.10+. (main): Tidy up usage string. Fix "Use of uninitialized value" warning. Set version to 0.2. Parse the directory listing to get any ChangeLog.n file, not just 1..9. (header_match_p, entry_match_p, print_log, parse_changelog): Remove Perl prototypes (their purpose is to help the parser, which isn't needed here, not declare arguments). (parse_changelog): Make --reverse faster on big batches by not modifying the entries list. 2004-03-01 Juanma Barranquero * makefile.w32-in (obj): Add fringe.c. 2004-02-14 Paul Eggert * rcs2log: Work correctly if CVSROOT specifies :fork: or :local: methods, or omits the colon between the hostname and the path. Allow :/ in repository path, since CVS does. Fix typo: "pository" should be set from $CVSROOT, not $repository. This fixes a bug reported by Wolfgang Scherer in , along with some related bugs I discovered by inspecting how CVS itself parses $CVSROOT. 2004-02-04 Jérôme Marant (tiny change) * emacsclient.c (decode_options): Fix handling of alternate editor. 2004-01-27 Stefan Monnier * emacsclient.c (main): Don't use the hostname in the socket name. Look for relative socket names in the /tmp dir rather than in cwd. 2004-01-24 Richard M. Stallman * emacsclient.c (main): Restore errno from saved_errno, so the error message comes from socket_status. 2004-01-20 Stefan Monnier * emacsclient.c (main): Stop if socket name too long. Only try su-fallback if the socket name was not explicit. Check socket name length in su-fallback case as well. 2004-01-08 Andreas Schwab * emacsclient.c (main): Save errno from socket_status. 2004-01-04 Andreas Schwab * emacsclient.c (main): Fix socket name when using another user. 2003-12-27 Paul Eggert * rcs2log (rlog_options): Append -rbranchtag if CVS/Tag indicates a tag, and if the user has not specified an rlog option. Adapted from a suggestion by Martin Stjernholm in . (Copyright): Update to 2003. 2003-12-24 Thien-Thi Nguyen * make-docfile.c (main): For return code, no longer special-case VMS. Instead, use `EXIT_SUCCESS' and `EXIT_FAILURE' from stdlib.h. 2003-09-28 Andreas Büsching (tiny change) * emacsclient.c (quote_file_name): Print the result instead of returning it. Fix the return type accordingly. (main): With --eval, if no file name, read from stdin. Quote file names. 2003-09-10 Richard M. Stallman * emacsclient.c (main): Use socket_name. 2003-09-10 Andreas Büsching (tiny change) * emacsclient.c (socket_name): New variable. (longopts, decode_options, print_help_and_exit): Handle --socket-name argument. 2003-08-25 Takaaki Ota (tiny change) * etags.c (consider_token): Check C++ `operator' only when the token len is long enough. 2003-08-20 Dave Love * Makefile.in: Remove obsolete references to alloca. 2003-07-29 Ken Brush * emacsclient.c (main) * etags.c (suggest_asking_for_help) * movemail.c (main): Fix having macros in a printf statement. 2003-05-31 Juanma Barranquero * makefile.w32-in (lisp): Fix references to byte-run.el, float-sup.el and map-ynp.el, which are now in emacs-lisp. 2003-05-22 Dave Love * update-game-score.c (difftime) [!HAVE_DIFFTIME]: Define. (strerror) [!HAVE_STRERROR && !WINDOWSNT]: New. 2003-05-20 Dave Love * movemail.c: Check HAVE_LIBLOCKFILE like HAVE_LIBMAIL. * Makefile.in [HAVE_LIBLOCKFILE]: Define LIBS_MAIL=-llockfile. 2003-04-27 Oliver Scholz * update-game-score.c (read_scores): Fix corruption of scores on read. 2003-04-12 Stefan Monnier * emacsclient.c (main): Use new safe location for socket. 2003-03-12 Tom Tromey * emacsclient.c (print_help_and_exit): Print to stdout. Exit successfully. Added some blank lines for readability. (decode_options): Don't call print_help_and_exit in default case. Print version information to stdout. (main): Don't call print_help_and_exit. 2003-02-15 Richard M. Stallman * cvtmail.c: Cast result of malloc and realloc. Don't include stdlib.h, because config.h does. (malloc, realloc): Declarations deleted. * yow.c (yow): Cast result of malloc and realloc. (malloc, realloc): Declarations deleted. 2003-02-11 Juanma Barranquero * makefile.w32-in (lisp): Add malayalam.el and tamil.el. 2003-02-08 Andreas Schwab * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable instead of the substitution. 2003-02-04 Richard M. Stallman * update-game-score.c (push_score, read_scores): Cast values of malloc and realloc. (main, lock_file): Avoid assignment inside if. 2003-01-31 Joe Buehler * Makefile.in: Use @EXEEXT@ for Cygwin. 2003-01-21 Dave Love * etags.c (Cplusplus_help, Cjava_help): Re-phrase and avoid column-0 `('. * yow.c: Don't include string.h. 2003-01-20 Richard M. Stallman * Makefile.in (rcs2log, rcs-checkin, grep-changelog, vcdiff): New targets. 2003-01-06 Kim F. Storm * pop.c (__P): Rename from _P to avoid problems on Cygwin. All uses changed. 2002-12-18 Andrew Innes * makefile.w32-in ($(DOC)): Use -o and -a options to make-docfile, because GNU make doesn't append when using >> redirection. 2002-12-12 Jonathan I. Kamens * b2m.pl: Make sure every message ends with a blank line, because some mbox parsers require a blank line before "From " lines. 2002-12-08 Richard M. Stallman * getopt.c: Do include libintl.h if HAVE_LIBINTL_H. (_): Test only HAVE_LIBINTL_H to decide what to do. 2002-12-05 Richard M. Stallman * getopt.c: Comment out include of libintl.h or gettext.h. 2002-12-04 Richard M. Stallman * Update getopt from gnulib version; changes described below. * getopt1.c: Conditionally find getopt.h. [_LIBC] (getopt_long, getopt_long_only): Do libc_hidden_def. * getopt.c (const): Move outside !HAVE_CONFIG_H conditional. (libintl.h): Include this if _LIBC. Otherwise include gettext.h. (wchar.h): Include, maybe. (attribute_hidden): Define if not defined. (__getopt_initialized): Use attribute_hidden. (__libc_argc, __libc_argv): Rename from original_argc, etc. (__getopt_nonoption_flags, nonoption_flags_max_len) (nonoption_flags_len): Conditional on USE_NONOPTION_FLAGS. (SWAP_FLAGS): New definitions. (exchange): Test USE_NONOPTION_FLAGS. (_getopt_initialize): Test USE_NONOPTION_FLAGS. (_getopt_internal): Error if argc < 1. New local var print_errors. Improve test for ambiguous long option. Add LIBIO support for error message output. (NONOPTION_P): Test USE_NONOPTION_FLAGS. * getopt.h: Maybe include ctype.h. Treat __cplusplus like __STDC__. (decls): Use __ in arg names. 2002-12-02 Stephen Eglen * emacsclient.c (main): Tell user how to start server within Emacs if socket could not be found. 2002-12-02 Richard M. Stallman * emacsclient.c (main): Test HAVE_GETCWD rather than BSD_SYSTEM. 2002-11-19 Ben Key * makefile.w32-in: Fixed a bug that caused the documentation for the built in function play-sound-internal not to be included in /etc/DOC. 2002-11-18 Dave Love * update-game-score.c: Include unistd.h, string.h, stdlib.h, fcntl.h, stdarg.h conditionally. (_GNU_SOURCE, __attribute__): Don't define. (optarg, optind, opterr): Declare. (lose, lose_syserr): Use NO_RETURN. (get_user_id): Use P_. 2002-11-17 Richard M. Stallman * Makefile.in (${archlibdir}): Ignore errors operating on $(gamedir). 2002-11-14 Dave Love * movemail.c (pop_retr): Declare comment. * make-docfile.c (read_c_string_or_comment): Declare msgno. * Makefile.in (YACC): Delete. 2002-10-19 Andreas Schwab * Makefile.in (${archlibdir}): Always create $(gamedir). (update-game-score): Pass $(gamedir) as HAVE_SHARED_GAME_DIR. 2002-10-04 Juanma Barranquero * makefile.w32-in (lisp): Load devanagari.el, not .elc. 2002-09-30 Markus Rost * emacsclient.c (main): Remove reference to SERVER_HOME_DIR completely. 2002-09-27 Stefan Monnier * emacsclient.c: Remove SYSV support. (eval, display): New vars. (longopts): Add --eval and --display. (decode_options): Add -e and -d processing. (print_help_and_exit): Update the usage string. (main): Add support for --eval and --display. (main): Always use /tmp and non-qualified hostname. 2002-09-25 Stefan Monnier * emacsserver.c: Remove. 2002-09-17 Stefan Monnier * emacsclient.c (quote_file_name): Quote \n. (main): Print a final \n when needed. 2002-09-03 Francesco Potortì * etags.c (regex_tag_multiline, readline): Never pass pfnote a string that cannot be freed. 2002-08-30 Francesco Potortì * etags.c (consider_token, C_entries): Switch to C++ parsing when auto-detection is enabled and the `::' qualifier is met. (consider_token, C_entries): Several bugs corrected that tagged some declarations even though --declarations was not used. (plainc): New macro. (C_entries): Use it. (C_entries): Several cosmetic changes. (C_entries): Invalidate the token is some cases. 2002-08-29 Francesco Potortì * etags.c (C_entries): Correct a problem with const C++ funcs. (ignoreindent): Rename from noindentypedefs. (cjava, cplpl): They are now macros instead of local vars. 2002-08-28 Francesco Potortì * etags.c (HTML_labels): Tag ID= also. 2002-08-27 Francesco Potortì * etags.c (Ada_funcs): Do not tag "use type Xxxx;". * etags.c (HTML_labels): New language HTML. (etags_strcasecmp): Like BSD's, for compatibility. (strcaseeq): Make it into a macro. * etags.c (make_tag): Never generate null length tag names. (linebuffer_init): Rename from initbuffer. All callers changed. (pattern): Structure renamed to `regexp', member regex renamed to pattern. (node_st): Member pat renamed to regex. (pattern); New member force_explicit_name, for future use. Now always set to true, cannot be reset. (add_regex, regex_tag_multiline, readline): Use it. (main): Free some global structures. (fdesc): New member `written'. (readline, process_file): Initialize it. (put_entries): Set it. (main): Use it to create entries for files without tags. (total_size_of_entries): Do not count invalid tags. 2002-08-19 Stefan Monnier * make-docfile.c (scan_keyword_or_put_char, write_c_args): Use `fn' for the function name in the usage info. 2002-07-31 Colin Walters * update-game-score.c (P_): New macro. Use it for all prototypes. (lose): Don't use varargs. (lose_syserr): New function. * update-game-score.c: Change all functions to K&R style. 2002-07-30 Andreas Schwab * Makefile.in (localstatedir): New variable. 2002-07-29 Jonathan I. Kamens * b2m.pl: Fix regexp for finding return address fields. 2002-07-15 Stefan Monnier * make-docfile.c (scan_c_file): Warn about missing `usage' info. 2002-07-05 Jonathan I. Kamens * b2m.pl: Obey the rmail file and use the unpruned header properly. 2002-06-26 Pavel Janík * b2m.pl: New file. 2002-06-21 Francesco Potortì * etags.c (F_getit, Fortran_functions, Ada_getit, Asm_labels) (Python_functions, PHP_functions, PHP_functions, PHP_functions) (PHP_functions, PHP_functions, Cobol_paragraphs) (Makefile_targets, Postscript_functions, Texinfo_nodes) (prolog_pr, erlang_func, erlang_attribute) (Perl_functions, Perl_functions, Pascal_functions) (TeX_commands, get_tag): Use make_tag instead of pfnote. (get_tag): Prototype changed, all callers changed. 2002-06-20 Francesco Potortì * etags.c: Implement implicit tag names, that is, unnamed tags whose name is automatically deduced by etags.el. The advantage is that there is no explicit tag name in most tags, so the size of the tags file is reduced, yet find-tag is able to do a match as accurate as with named tags. See the comment in make_tag for details. (make_tag): New function (was the disabled function new_pfnote). (make_C_tag): Use it. 2002-06-19 Francesco Potortì * etags.c (add_regex): Invalid regexp modifiers are ignored. (Makefile_targets): Tag variables unless --no-globals. (LOOP_ON_INPUT_LINES): Serious bug corrected. 2002-06-13 Francesco Potortì * etags.c (erlang_atom, erlang_attribute): Bugs corrected. (invalidate_nodes): Bug corrected. (print_help): Better help for regexps. 2002-06-13 Juanma Barranquero * makefile.w32-in (lisp): Add international/ucs-tables.elc and font-core.elc. 2002-06-12 Francesco Potortì * etags.c: New multi-line regexp and new regexp syntax. (arg_type): at_icregexp label removed (obsolete). (pattern): New member multi_line for multi-line regexps. (filebuf): A global buffer containing the whole file as a string for multi-line regexp matching. (need_filebuf): Global flag raised if multi-line regexps used. (print_help): Document new regexp modifiers, remove references to obsolete option --ignore-case-regexp. (main): Do not set regexp syntax and translation table here. (main): Treat -c option as a backward compatibility hack. (main, find_entries): Init and free filebuf. (find_entries): Call regex_tag_multiline after the regular parser. (scan_separators): Check for unterminated regexp and return NULL. (analyse_regex, add_regex): Remove the ignore_case argument, which is now a modifier to the regexp. All callers changed. (add_regex): Manage the regexp modifiers. (regex_tag_multiline): New function. Reads from filebuf. (readline_internal): If necessary, copy the whole file into filebuf. (readline): Skip multi-line regexps, leave them to regex_tag_multiline. 2002-06-11 Francesco Potortì * etags.c (add_regex): Better check for null regexps. (readline): Check for regex matching null string. (find_entries): Reorganization. 2002-06-07 Francesco Potortì * etags.c (scan_separators): Support all character escape sequences supported by Gcc. (find_entries): Rewind unconditionally. (find_entries): Do not call language functions directly, now calls itself. (find_entries): Do general initializations here. (CNL_SAVE_DEFINEDEF, C_entries, LOOP_ON_INPUT_LINES, F_getit) (Ada_getit, Pascal_functions, Pascal_functions) (prolog_skip_comment): Do not do them here. (readline_internal): Increment lineno here. (readline): Conditionally undo readline_internal increment. (readline): Do not return a value. 2002-06-06 Francesco Potortì * etags.c: New option --parse-stdin=FILE. (enum arg_type): New label at_stdin. (STDIN): New constant. (parsing_stdin): New flag. (longopts): New option --parse-stdin=NAME. (print_help): Document it. (main): Handle it. (process_file): Split into process_file and process_file_name. (process_file_name): New function. * etags.c: Improvements and bug squashing in TeX handling. (TeX_commands): Skip comments. (TEX_defenv): Now contains more constructs. (TEX_cmt): Make it a static char and move it before TeX_commands. (TeX_commands): Shorten the tag to the brace after the name. (TeX_commands): Names now include the initial backslash. (TeX_commands): Names do not include numeric args #n. (TeX_commands): Correct line char number in tags. (TEX_tabent, TEX_token): Delete. (TeX_commands, TEX_decode_env): Streamlined. 2002-06-05 Francesco Potortì * etags.c (main): Avoid a buffer overrun with sprintf. 2002-05-30 Richard M. Stallman * Makefile.in (LIBS_MAIL): Rename from LIB_MAIL. (LIBS_MOVE): Rename from MOVE_LIBS. 2002-05-26 Paul Eggert Reinstate the following change from 2002-03-22, which was inadvertently lost on 2002-04-13. * etags.c (main): Use `sort -o TAGFILE TAGFILE' instead of `sort TAGFILE -o TAGFILE', as POSIX 1003.1-2001 disallows the latter usage. 2002-05-17 Eli Zaretskii * pop.c (socket_connection): Move the code to resolve the POP host right before trying to connect with it. 2002-05-05 Eli Zaretskii * tcp.c: Delete file since the TCP emulation is no longer in use on any platform. 2002-04-28 Colin Walters * Makefile.in (${archlibdir}): Don't conditionalize on HAVE_SHARED_GAME_DIR. Instead, test at installation time whether or not we have access to the specified game user. * update-game-score.c (SCORE_FILE_PREFIX): Delete. (main): New argument -d, for specifying directory. (usage): Document. (get_user_id): Compute. (get_home_dir): Delete. (get_prefix): New function, taken from main. (main): Check whether or not we are running setuid. Move prefix computation to get_prefix. Don't call getpwent; we don't need to any more. Instead, move it to get_user_id(). 2002-04-24 Pavel Janík * ebrowse.c (skip_initializer): Return void. 2002-04-23 Colin Walters * update-game-score.c (read_score) [HAVE_GETDELIM]: Trim trailing space. 2002-04-22 Francesco Potortì * etags.c (last_node): Make it a global variable. (process_file): Print the tags from the nodes as soon as possible, and delete the nodes. This brings down the memory occupancy as etags to almost the same level as when the #line directives were not parsed. (free_fdesc): New function. (find_entries): Use it. (invalidate_nodes): In etags mode, do not just mark the nodes as invalid, do delete them. 2002-04-21 Gerd Moellmann * ebrowse.c (add_declarator): Test *CLS instead of CLS. 2002-04-16 Eli Zaretskii * update-game-score.c: Move config.h before the other headers, to avoid compiler warnings. 2002-04-16 Francesco Potortì * etags.c (find_entries): Bug fix in list management. 2002-04-15 Francesco Potortì * etags.c (get_language_from_filename): Add one argument. (strcaseeq): New function. (get_language_from_filename): Use it to do a case insensitive comparison if called with appropriate args. (find_entries): Try with case insensitive match. (process_file): Bug fixed. 2002-04-13 Francesco Potortì * etags.c (find_entries): Delete tags previously obtained from file xxx.c's #line directives when parsing file xxx.y. This is generally done for automatically generated files containing #line directives. This handles the case when xxx.y is tagged before xxx.c, and the entries of xxx.c pointing to xxx.y should be discarded. (language): Add the metasource member. Initializers changed. (invalidate_nodes): New function. (readline): Discard lines after having found a #line directive pointing to an already tagged file. This handles the case when xxx.y is tagged before xxx.c, and the entries of xxx.c pointing to xxx.y should be discarded. (fdesc): New structure for keeping track of input files. (fdesc): Remove `file' member (a string) and use instead a pointer to a file description structure. (curfile, curfiledir, curtagfname, curlang, nocharno) (forced_lang): Global variables removed in favor of fdhead and curfdp, pointers to file description structures. (longopts, main, print_help): Use the CTAGS conditional to include or exclude options that work on etags or ctags only. (process_file, find_entries, pfnote, add_node, put_entries) (readline): Use fdhead and curfdp. (process_file, find_entries): Do not take an arg string, all callers changed. * etags.c (longopts, print_help, main): Test CTAGS to disallow options that are not right for either etags or ctags. * etags.c (number_len, total_size_of_entries): Define them also in CTAGS mode, because gcc does not compile all refs away. 2002-04-14 Colin Walters * update-game-score.c (lock_file): If the lock file is older than an hour, delete it. Reset attempts to zero if we have to break the lock. 2002-04-14 Andreas Schwab * update-game-score.c (read_score): Fix type of second parameter of getdelim to be of type size_t instead of int. Use 0 instead of ESUCCES. 2002-04-10 Colin Walters * update-game-score.c (toplevel): Include stdarg.h. (MAX_DATA_LEN, MAX_SCORES): New. (SCORE_FILE_PREFIX): If HAVE_SHARED_GAME_DIR is not defined, default to ~/.emacs.d/games. (get_user_id): Don't zero uid in the case where we can't get the username. (lose): New function. (main): Actually use `max', and default it to MAX_SCORES. Correctly handle new default for SCORE_FILE_PREFIX. Use `lose' function. (read_score): Handle the case of reading unamelen characters, then finishing. Use mktemp if mkstemp isn't available. (lock_file, unlock_file): Delete unused versions. (lock_file): Always sleep, even if we unlinked the lock file. * Makefile.in (gamedir, gameuser): New variables. (toplevel, UTILITIES): Add update-game-score. (${archlibdir}): Handle HAVE_SHARED_GAME_DIR. 2002-04-07 Colin Walters * update-game-score.c (SCORE_FILE_PREFIX): Don't hardcode. (get_user_id): Take struct passwd as an argument. (get_home_dir): New function. (main): Read in user information here. Discover home directory if necessary. (read_score): Trim newline only in `getline' case. 2002-04-05 Colin Walters * update-game-score.c (toplevel): Include pwd.h. (struct score_entry): Add username field. (push_score): Use it. (get_user_id): New function. (main): Don't malloc excessively. (main): Use username field. (read_score): Read it. (push_score): Handle it. (write_scores): Write it. (read_score): Handle arbitrary length data. 2002-03-30 Eli Zaretskii * ebrowse.c (add_declarator): Fix the first call to add_member_defn. 2002-03-29 Gerd Moellmann * ebrowse.c (add_declarator, skip_initializer): New functions. (declaration): Use them. 2002-03-28 Jason Rumney * makefile.w32-in (lisp): Move backquote.elc into emacs-lisp. 2002-03-27 Colin Walters * update-game-score.c: New file. 2002-03-22 Paul Eggert * etags.c (main): Use `sort -o TAGFILE TAGFILE' instead of `sort TAGFILE -o TAGFILE', as POSIX 1003.1-2001 disallows the latter usage. 2002-03-12 Francesco Potortì * etags.c (Python_functions): Skip spaces at beginning of lines. (Python_functions, PHP_functions): Name tags, for ctags' sake. (TeX_commands): Name tags. Correction of old disabled code. * etags.c (curfiledir, curtagfname): New global variables. (process_file): Initialize them. (readline): Canonicalize the name found in #line directive. 2002-03-06 Jason Rumney * etags.c (put_entries): Use #if !CTAGS, to fix link error on compilers that don't optimize out dead code. 2002-03-05 Francesco Potortì * etags.c: Honor #line directives. (no_line_directive): New global var; set it for old behavior. (main): Remove some #ifdef in the getopt switch. (add_node, put_entries): Code added to merge different chunks of nodes referring to the same file. Currently the tags are just appended, without any check for duplicates. (Perl_functions): Do not special case ctags. (readline): Identify #line directives and do the right thing. (nocharno, invalidcharno): New global vars. (process_file): Reset nocharno. (readline): Set nocharno. (pfnote): Read nocharno and maybe put invalidcharno in node. (total_size_of_entries, put_entries): Use invalidcharno. * etags.c: Keep the whole tag table in memory, even in etags mode. (main): Call put_entries here even in CTAGS mode. (main, process_file): Check the return values of fclose and pclose. (process_file): Do not call put_entries after parsing each file. (process_file): Canonicalize file names even for ctags. (process_file): Set curfile here... (find_entries): ... not here any more. (add_node): In etags mode, build a linked list of entries (on right pointer) for each file, and link the first entry of each file on left nodes. (put_entries): Print here the name of the file. (put_entries): Print the entries starting from the first file. (number_len, total_size_of_entries): Define these only in etags mode, make the second work only on the right nodes. * etags.c: Make all global variables static. 2002-02-25 Juanma Barranquero * makefile.w32-in (lisp): Add missing backslash. 2002-02-24 Jason Rumney * makefile.w32-in (WINNT_SUPPORT, MOUSE_SUPPORT, lisp): Revert to using .elc files. (lisp): Sync with list in src/Makefile.in. (VMS_SUPPORT, MSDOS_SUPPORT): Define, so DOC files can be shared. 2002-02-10 Paul Eggert * rcs-checkin: Use `sort -k 2', not `sort +1', as POSIX 1003.1-2001 disallows the old syntax. 2002-02-03 Paul Eggert * rcs2log (Copyright): Update to 2002. (AWK, TMPDIR): Work around portability problem in broken shells that don't understand `: ${VAR=val}'. (SORT_K_OPTIONS): New var, for hosts that conform to POSIX 1003.1-2001. Prefer the new -k option to the traditional +M -N option. 2002-01-01 Pavel Janík * b2m.c (main): Parenthesize assignment when used as truth value to prevent gcc warnings. * fakemail.c: Include . 2001-12-29 Pavel Janík * cvtmail.c, emacsclient.c, emacsserver.c, pop.c, sorted-doc.c, * yow.c: Include . 2001-12-21 Francesco Potortì * etags.c (Perl_functions): Tag packages and use them in sub tags. (get_tag): Return a pointer to the tag that is found. * etags.c (LOOKING_AT): Use !intoken instead of iswhite. (F_takeprec): Rename from takeprec. All callers changed. (F_getit): Rename from getit. All callers changed. (nocase_tail): Rename from tail. All callers changed. (Ada_getit): Rename from adagetit. All callers changed. (L_getit): Simplify by using get_tag. (Perl_functions, Postscript_functions, erlang_attribute): Use the modified LOOKING_AT. (notinname): Remove '[' and added ')' to the recognized chars. (LOOKING_AT, get_tag, PHP_functions): Use notinname. (Ada_getit, Ada_funcs, Python_functions, Scheme_functions): Clarified, using strneq or notinname. (L_isdef, L_isquote): Remove. (Lisp_functions, L_getit): Clarified. * etags.c (P_): Rename to __P for consistency with config.h. [HAVE_CONFIG_H]: Let config.h deal with __P. [__STDC__] [!HAVE_CONFIG_H]: Define PTR as in config.h. [!__STDC__] [!HAVE_CONFIG_H]: Do not undefine static, because gperf code needs it. [HAVE_CONFIG_H] [!PTR]: Define PTR (for use with XEmacs). [HAVE_CONFIG_H] [!__P]: Define __P (for use with XEmacs). (xmalloc, xrealloc): Use PTR instead of long *. (bool): Make it a define, not a typedef, for C++ compilers. (pattern): Members renamed to avoid name clash in some C++ compilers. (get_language_from_langname): Use const argument. 2001-12-22 Pavel Janík * makefile.nt, makefile.w32-in: Remove mocklisp files. 2001-12-19 Pavel Janík * emacsserver.c: Conditionally include config.h. * fakemail.c: Likewise. * emacsclient.c: Include "config.h", not <../src/config.h>. (main): Parenthesize assignment when used as truth value to prevent gcc warnings. * ebrowse.c: Include stdlib.h and string.h conditionally. 2001-12-18 Eli Zaretskii * yow.c (main): Use time_t, not long, to avoid a compiler warning. 2001-12-18 Pavel Janík * test-distrib.c: Fix previous change. 2001-12-18 Dave Love * test-distrib.c: Conditionally include fcntl.h. * fakemail.c: Include "config.h", not <../src/config.h>. (_XOPEN_SOURCE): Define as 500. * emacsserver.c: Include "config.h", not <../src/config.h>. * cvtmail.c: Include config.h, stdlib.h. (xmalloc, xrealloc, skip_to_lf sysfail): Prototype. * yow.c: Conditionally include various headers. Use "epaths.h", not <../src/epaths.h>. (malloc, realloc) [!HAVE_STDLIB_H]: Prototype. 2001-12-12 Francesco Potortì * etags.c (PHP_functions): New function for parsing PHP. (LOOKING_AT): New macro. (Perl_functions, Python_functions, PHP_functions) (Scheme_functions, Texinfo_nodes): Use it. (Perl_functions): Use strneq. (prolog_pred): Rename to prolog_pr. (prolog_pr): Recognize Prolog rules in addition to predicates. [ETAGS_REGEXPS] [!HAVE_CONFIG_H] [__CYGWIN__]: Prevent unmodified compile, as Cygwin's regex.h is incompatible with us. [!HAVE_CONFIG_H] [!__STDC__]: #define const as the empty string. 2001-12-11 Richard M. Stallman * Makefile.in (clean): Don't delete ../etc/DOC*. 2001-12-11 Pavel Janík * COPYING: Moved back. 2001-11-30 Andrew Innes * makefile.w32-in (FACE_SUPPORT, MOUSE_SUPPORT, FLOAT_SUPPORT) (WINNT_SUPPORT, lisp): Reference .el files instead of .elc files, to simplify bootstrapping. ($(DOC)): Change dependency to just `make-docfile'. 2001-11-29 Pavel Janík * COPYING: Removed. 2001-11-28 Paul Eggert * rcs2log (Copyright): Add '(C)' as per coding guidelines. The following changes are derived from suggestions by Bob Chapman . * rcs2log (printlogline): Also allow tab and newline to separate '(function):' from the rest of a comment. (reformat the sorted log entries): Require date and author to match the clumpname. 2001-11-16 Gerd Moellmann * ebrowse.c (matching_regexp): Escape '\\'. 2001-11-15 Pavel Janík * Makefile.in: Add support for --program-prefix, --program-suffix and --program-transform-name options. 2001-11-03 Richard M. Stallman * cvtmail.c (xrealloc): Always pass two args to `fatal'. * movemail.c (popmail): Always pass two args to `error'. 2001-10-24 Ken Raeburn * Makefile.in (HESIODLIB) [HAVE_LIBHESIOD]: Set to include -lhesiod and maybe -lresolv. (CRYPTOLIB) [HAVE_LIBK5CRYPTO]: Use -lk5crypto for Kerberos support if it's available. 2001-10-21 Miles Bader * make-docfile.c (struct rcsoc_state): New type. (read_c_string_or_comment): Add SAW_USAGE parameter, and implement scanning for a `usage:' keyword. Use a variable of type `rcsoc_state' to hold most of our state. (put_char): Add STATE parameter, and remove all other parameters except CH. Use STATE to get access to all needed state. (scan_keyword_or_put_char): New function. (scan_c_file): Pass SAW_USAGE argument to read_c_string_or_comment. Don't output a usage-string if there was one in the doc-string. 2001-10-20 Gerd Moellmann * (Version 21.1 released.) 2001-10-19 Pavel Janík * b2m.c: Properly spell the name of Emacs. 2001-10-17 Miles Bader * make-docfile.c (put_char): New function. (read_c_string_or_comment): Strip trailing spaces and newlines. 2001-10-16 Miles Bader * make-docfile.c (scan_c_file): Handle `new style' doc strings in comments [with `doc:' keyword prefix]. 2001-10-15 Gerd Moellmann * make-docfile.c (read_c_string_or_comment): Don't drop a '*' in a C doc comment. 2001-10-13 Gerd Moellmann * make-docfile.c (read_c_string_or_comment): Rename from read_c_string. Add parameter COMMENT. Read C-style comments. (scan_c_file): Handle doc strings in C comments. 2001-10-12 Andrew Innes * makefile.nt (ALL): Do not include fakemail. * makefile.w32-in (install): Do not copy fakemail. 2001-10-10 Jason Rumney * makefile.w32-in (ALL): Do not include fakemail. * makefile.nt (install): Ditto. 2001-10-09 Gerd Moellmann * emacsserver.c (main): Cast geteuid in sprintf to int. * emacsclient.c (main): Cast isdigit argument to unsigned char. 2001-10-07 Pavel Janík * profile.c: Include config.h, not ../src/config.h. Include systime.h, not ../src/systime.h. 2001-10-05 Gerd Moellmann * Branch for 21.1. 2001-10-01 Alexander Zhuckov * ebrowse.c (struct alias): Add two new struct members: NAMESP and ALIASEE to help work with namespace aliases. (struct sym): Remove struct member NAMESP_ALIASES. (namespace_alias_table): New variable. (make_namespace): Add parameter CONTEXT. (check_namespace): New function. (find_namespace): Add parameter CONTEXT. (check_namespace_alias): New function. (register_namespace_alias): Change type of parameter OLD_NAME. Search for already defined alias in NAMESPACE_ALIAS_TABLE. (check_namespace): New function. (enter_namespace): Call find_namespace with CONTEXT parameter. (match_qualified_namespace_alias): New function. (parse_qualified_ident_or_type): Fix typo in comment. While parsing qualified ident or type update namespace context and restore it on exit. (parse_qualified_param_ident_or_type): Fix typo in comment. (globals): Change handling of namespace aliases. (version): Add year 2001. 2001-09-15 Eli Zaretskii * etags.c (analyse_regex): If regex_arg is NULL, return immediately after a call to free_patterns. 2001-09-05 Paul Eggert * rcs2log (Help, mainline code): Add new option -L FILE. (Copyright): Update year. (LANG, LANGUAGE, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES) (LC_NUMERIC, LC_TIME): New shell vars, to make sure we live in the C locale. (mainline code): Handle nonstandard -u option differently, by transforming it to standard form. Check for "Working file: ", not "Working file:". Allow file names with spaces. (SOH, rlogfile): New shell vars. (rlogout): Remove. Its old functionality is mostly migrated to rlogfile. Append ';;' to the last arm of every case statement, for portability to ancient broken BSD shells. (logins): Fix bug; was not being computed at all, lowering performance. (pository): New var. This fixes some bugs where repositories are remote, or have trailing slashes. (authors): $llogout is never an empty shell var, so don't worry about that possibility. (printlogline, mainline code): Fix bug with SOH's being put into the output. 2001-09-01 Eli Zaretskii * ebrowse.c (SEEK_END): #define if not defined by system headers. Suggested by Dave Love . 2001-08-29 Eli Zaretskii * makefile.nt (lisp): Synchronize with src/Makefile.in. * makefile.w32-in (lisp): Ditto. 2001-07-25 Juanma Barranquero * grep-changelog (parse_changelog): Remove unused local variable. * grep-changelog (main): Add new option --reverse. (print_log): Use it. (parse_changelog): Use it. 2001-07-20 Gerd Moellmann * grep-changelog: Remove RCS Id keyword. 2001-07-20 Juanma Barranquero * grep-changelog (parse_changelog): Add tests for defined values to quiet warning from Perl 5.005 or above. (entry_match_p, header_match_p): Fix handling of null or empty argument to prevent duplicate headers. * grep-changelog (main, parse_changelog): Make "use strict"-clean. 2001-07-17 Jan Nieuwenhuizen * emacsclient.c (print_help_and_exit): Fix help message for +LINE:COLUMN option. 2000-07-17 Han-Wen Nienhuys * emacsclient.c (main): Add support for +LINE:COLUMN command line argument. 2001-07-16 Gerd Moellmann * ebrowse.c (main): Check that the output file exists and is non-empty if invoked with `--append'. 2001-05-14 Francesco Potortì * etags.c (add_regex): Reset the whole newly allocated pattern buffer instead of the individual members. It's safer and works with XEmacs. * etags.1: Markups corrected. 2001-05-08 Gerd Moellmann * ebrowse.c (enter_namespace): Fix reallocation of namespace_stack. 2001-05-03 Gerd Moellmann * ebrowse.c (globals): Fix handling of namespace aliases. 2001-04-27 Eli Zaretskii * etags.c (print_help): Enclose the regexp in the help text example in quotes. 2001-04-05 Dave Love * emacsclient.c (fail): Don't return a value. (main): Cast uid values for sprintf. 2001-04-03 Gerd Moellmann * emacsclient.c (fail, main): Don't use implicit int return type. * b2m.c (main): Always return a value. 2001-03-02 Gerd Moellmann * ebrowse.c (parse_qualified_param_ident_or_type): Return a freshly allocated object in *LAST_ID. (read_line): Accept \r\n line endings. 2001-02-24 Andrew Innes * makefile.w32-in: Fix copyright notice. 2001-02-23 Francesco Potortì * etags.c (enum sym_type): New label st_C_template. (gperf input): Use it for switching to C++ from C. (consider_token): Do it. (C_entries): Initialize typdefcblev to quiet compilers. [!HAVE_CONFIG_H] [!__STDC__]: #define static as nothing. 2001-02-22 Andrew Innes * makefile.nt ($(BLD)\movemail.obj): Remove reference to VMS header files. ($(BLD)\profile.obj): Ditto. * makefile.w32-in ($(BLD)/movemail.$(O)): Remove reference to VMS header files. ($(BLD)/profile.$(O)): Ditto. 2001-02-05 Andrew Innes * makefile.w32-in ($(DOC)): Use $(THISDIR) instead of . in invocation of make-docfile, to work with Windows 2000. 2001-01-31 Dave Love * etags.c (in_word_set): Use `static' in definition (for pcc). 2001-01-31 Francesco Potortì * etags.c [NDEBUG]: #undef assert and #define it as ((void)0), for the sake of some buggy assert.h (e.g. in MinGW and sunos4 pcc). (C_entries): Tag token renamed to still_in_token because sunos4 pcc wants to expand it as the token() macro even though it has no arguments. 2001-01-30 Andrew Innes * etags.c (assert) [__MINGW32__]: Redefine assert to work around a bug in the Mingw32 assert.h header file. 2001-01-30 Francesco Potortì * etags.c [WIN32-NATIVE]: #undef MSDOS, #undef WINDOWSNT and #define it for the sake of XEmacs. [WINDOWSNT]: #undef HAVE_NTGUI even if built without HAVE_CONFIG_H. This change only affects a standalone etags. [WINDOWSNT]: #undef DOS_NT and #define it even if built with HAVE_CONFIG_H. This change does nothing in Emacs, as DOS_NT is always defined when HAVE_CONFIG_H and WINDOWS are both defined. [!HAVE_UNISTD_H]: Use defined(WINDOWSNT) instead of the bare WINDOWSNT, as this is the correct way to use it. 2001-01-28 Francesco Potortì * etags.c: Be capable to parse nested struct-like structures. (structdef, structtag): Struct state machine revisited. (struct tok): Revisited. (cstack, nestlev, instruct): New struct and macros. (pushclass_above, popclass_above, write_classname): New functions for dealing with nested class names. (consider_token, make_C_tag, C_entries): Many changes for dealing with arbitrarily nested structures. (etags_getcwd): #if MSDOS, not #ifdef MSDOS! (C_entries): Consider templates in C++. (sym_type): New constant st_C_class for detecting "class" also in C mode. (C_AUTO): New macro for automatic detection of C++. (consider_token): Automatic set C++ mode. (C_entries): New security check for yacc. (print_language_names, print_help): Mention the autodetect feature, do not show help for the -C option, now mostly useless. (C_entries): Tag C++ forward declarations if --declarations. (C_entries): Don't be fooled by things like XDEFUN. (consider_token): Discard asm pseudo function. 2001-01-27 Eli Zaretskii * etags.c: Add a coding: tag. 2001-01-26 Gerd Moellmann * ebrowse.c (matching_regexp_buffer, matching_regexp_end_buf): New variables. (matching_regexp): Use them instead of static variables in function scope. 2001-01-25 Francesco Potortì * etags.c (struct tok): Rename from struct token. (token): Rename from tok. (structtype): Make it a local variable. [DEBUG]: Use assert. (xrnew): Change the synopsis. (typedefs_or_cplusplus): Rename from typedefs_and_cplusplus. (grow_linebuffer): Don't call xrnew when not needed. (token): Buffer renamed to line. (C_entries): Three calls to inibuffer moved here from main. (C_entries): Remove all references to var methodlen, delete it. (linebuffer_setlen): Was grow_buffer, now also sets len. (consider_token, C_entries, Pascal_functions): Use it. (C_entries): Preventing problems relative to extern "C". (C_entries): Can tag more than one variable or func separated by comma when --declarations is used. (C_entries): More accurate tagging of members and declarations. (yacc_rules): Was global, made local to C_entries. (next_token_is_func): Remove. (fvdef): New constants fdefunkey, fdefunname. (consider_token, C_entries): Use them. (C_entries): Build proper lisp names for Emacs DEFUNs. 2001-01-22 Gerd Moellmann * ebrowse.c (xfree): New function. (member, declaration, globals): Use xmalloc instead of alloca. 2001-01-15 Francesco Potortì * etags.c (print_language_names): Print filenames in addition to suffixes. 2001-01-14 Francesco Potortì * etags.c (get_language_from_langname): Rename from get_language_from_name. (get_language_from_filename): Rename from get_language_from_suffix. Now first looks for the complete file name. (language): New member char **filenames. (Makefile_filenames): List of possible filenames for makefiles. (lang_names): Add a NULL member for every entry, added an entry for makefiles. (Makefile_targets): New function. (Texinfo_nodes): Rename from Texinfo_functions and made it conformant to the style of the rest of the code. 2001-01-13 Gerd Moellmann * make-docfile.c (write_c_args): Print newlines as spaces. 2001-01-06 Andrew Innes * makefile.w32-in (clean): Delete $(COMPILER_TEMP_FILES) instead of *.pdb. 2001-01-03 Paul Eggert * rcs2log: Avoid security hole allowing attacker to cause user of rcs2log to overwrite arbitrary files, fixing a bug reported by Morten Welinder. Don't put "exit 1" at the end of the exit trap; it's ineffective in POSIX shells. 2001-01-02 Gerd Moellmann * ebrowse.c (yyerror): Change to take two arguments. Add prototype. Change callers. 2001-01-02 Eli Zaretskii * ebrowse.c (enter_namespace, main): Cast variables to shut up compiler warnings. (yyerror): Change parameter declarations to be of type long, so that they can take pointers on 64-bit platforms. * emacsclient.c (main): Remove unused local variable statbfr. (main) : Make its declaration conditional on SERVER_HOME_DIR, to avoid compiler warnings. * emacsserver.c (main) : Make its declaration conditional on SERVER_HOME_DIR, to avoid compiler warnings. * fakemail.c (readline): Cast buffer to "long *" to pacify over-zealous compilers. 2000-12-16 Eli Zaretskii * etags.c (canonicalize_filename) [DOS_NT]: Fix last change. 2000-12-15 Gerd Moellmann * ebrowse.c (operator_name): Cast argument of isalpha to unsigned char. * etags.c (ISALNUM, ISALPHA, ISDIGIT, ISLOWER): New macros. Use them throughout instead of ctype functions/macros. (lowcase): Cast to unsigned char. (UPCASE): New macro. (canonicalize_filename): Use UPCASE instead toupper. * fakemail.c (get_keyword): Make sure that isspace and similar aren't called with a negative argument. 2000-12-13 Dave Love * ebrowse.c (ensure_scope_buffer_room): Fix xrealloc call. 2000-12-06 Andrew Innes * makefile.w32-in (LOCAL_FLAGS): Remove -DVERSION flag, since we don't know the real version, and I can't seem to get the quoting right in all circumstances. * ebrowse.c (VERSION): Provide default definition, like etags.c does, because Windows build can't snarf this from version.el. 2000-11-30 Andrew Innes * makefile.w32-in ($(BLD)/ebrowse.exe): Use tabs not spaces. (install): Ditto. 2000-11-23 Jason Rumney * makefile.w32-in: Add targets for ebrowse.exe. (LOCAL_FLAGS): Add -DVERSION flag. 2000-09-25 Dave Love * sorted-doc.c: Include config.h. [!HAVE_STDLIB_H]: Declare malloc. 2000-09-14 Andrew Innes * makefile.w32-in: Revert to Unix line endings. 2000-09-04 Dave Love * movemail.c (index, rindex): Prototype conditionally. 2000-09-03 Andrew Innes * makefile.w32-in: Change to DOS line endings. 2000-09-01 Eli Zaretskii * movemail.c (toplevel): Remove redundant fcntl.h. [!F_OK]: Provide default definitions only after including both fcntl.h and unistd.h. 2000-08-29 Dave Love * movemail.c: Revert previous change. 2000-08-29 Eli Zaretskii * Makefile.in (profile, make-docfile, hexl): Depend on config.h. 2000-08-28 Dave Love * movemail.c (toplevel) [HAVE_STRING_H]: Include string.h. (toplevel) [HAVE_STRINGS_H]: Include strings.h. 2000-08-22 Andrew Innes * ntlib.h (WIN32): Remove unnecessary definition. (sleep): Make argument unsigned long. (_WINSOCK_H): Undefine so normal winsock definitions can be used. * ntlib.c (sleep): Make argument unsigned long. * movemail.c (main) [WINDOWSNT]: Force binary mode for fileio. * makefile.w32-in: New file. 2000-08-20 Eli Zaretskii * etags.c (canonicalize_filename) [DOS_NT]: Upcase the first letter only if it is a drive letter. 2000-07-14 Gerd Moellmann * ebrowse.c (xrealloc, xmalloc): Rename from yrealloc and ymalloc. * etags.c (xmalloc, xrealloc): Make externally visible, for use by alloca.o. * Makefile.in (alloca.o): Add -Demacs so that alloca will use xmalloc. 2000-07-10 Gerd Moellmann * ebrowse.c (yylex): Accept string literals with newlines in them. (process_pp_line): Handle case of string literal with newline in it in replacement text, which counts as continuing the replacement text in GNU C. 2000-07-02 Gerd Moellmann * ebrowse.c (token_string): Add missing tokens. (parm_list): Handle case of qualified pointers. 2000-06-23 Dave Love * ebrowse.c: Move config.h before other includes (which may use feature tests). 2000-06-14 Jim Meyering * grep-changelog: Fix typos in comments. Remove trailing blanks. 2000-06-11 Jason Rumney * makefile.nt: Add targets for ebrowse. * ebrowse.c [WINDOWS_NT]: Use stricmp instead of strcasecmp to compare filenames. 2000-06-06 Gerd Moellmann * ebrowse.c (ymalloc): Rename from xmalloc. (yrealloc): Rename from xrealloc. 2000-05-21 Dave Love * movemail.c: Include config.h, not ../src/config.h. (Errmsg): Bump length. * pop.c (ERROR_MAX): Increase to 160. 2000-05-04 Gerd Moellmann * ebrowse.c (DEFAULT_OUTFILE): Set to `BROWSE'. 2000-05-02 Eli Zaretskii * ebrowse.c (PATH_LIST_SEPARATOR) [__MSDOS__ || WINDOWSNT]: Define to semi-colon. (FILENAME_EQ): New macro, for comparing file names. (add_member_decl, add_global_decl, add_member_defn): Use FILENAME_EQ. (process_file): Don't assume that fread always reads as many bytes as it was told to (DOS-style CR-LF text files fail this logic). (open_file): Allocate enough space for path->path plus the file name and the slash. 2000-04-19 Dave Love * etags.c (Texinfo_functions): New function. (lang_names): Install it. (Texinfo_suffixes): New variable. 2000-04-19 Gerd Moellmann * ebrowse.c (xmalloc, xrealloc): Rewritten. (declaration): Remove parameter IS_EXTERN. (class_definition): Remove unused variable. 2000-04-09 Gerd Moellmann * Makefile.in (INSTALLABLES): Add ebrowse. (ebrowse): New target. * ebrowse.c: New file. 2000-03-29 Andreas Schwab * make-docfile.c (scan_lisp_file): Also look for `defsubst'. 2000-03-02 Gerd Moellmann * etags.c (lisp_suffixes): Add `LSP'. 2000-02-10 Francesco Potortì * etags.c (iswhite): Redefine not to consider '\0' as white space, and use it throughout in place of isspace, thus preventing a potential signed char to int conversion problem. (MSDOS): #undefine before redefining. 2000-02-04 Francesco Potortì * etags.c (many functions): Add prototypes. 2000-02-10 Dave Love * etags.c (pfnote, new_pfnote, C_entries, prolog_pred) (erlang_func): Add `static' to definitions to keep pcc happy. 2000-01-31 Francesco Potortì * etags.c [MSDOS]: Set MSDOS to 1 if #defined, 0 otherwise. (get_compressor_from_suffix, process_file): Use MSDOS in if clause. (etags_strchr, etags_strrchr): Use const char * and int as arguments. (getenv, getcwd): Only declare them if necessary. (EMACS_NAME): New constant macro. (print_version): Use it. (P_) [__STDC__]: Macro for defining function prototypes. 2000-01-18 Fabrice Popineau * etags.c [WINDOWSNT]: #include 2000-01-18 Martin Buchholz * etags.c (all functions): Made them static. (all functions): Write prototypes. 2000-01-29 Richard M. Stallman * movemail.c (main): Improve error message if can't create lock file. 2000-01-28 Eric Hanchrow * emacsclient.c (socket_status): New function. (main): If $LOGNAME or $USER exist and differ from our euid, look for a socket based on the UID associated with the name. 2000-01-12 Han-Wen Nienhuys * emacsclient.c: Add option -a EDITOR and environment variable ALTERNATE_EDITOR. Exec this editor if we fail to contact Emacs. 1999-12-10 Jonathan I. Kamens * movemail.c (popmail): Allow mailbox specifications of the form `po:username:hostname'. 1999-11-19 Francesco Potortì * etags.c (_GNU_SOURCE): Define only if undefined. (get_scheme): Declaration deleted. (main): Error was called with an integer as second arg, instead of a char pointer. (canonicalize_filename): Bug removed. 1999-11-18 Dave Love * etags.c (C_entries): Rename label `intoken', avoiding K&R lossage from name clash with macro. 1999-11-13 Gerd Moellmann * Makefile.in (b2m): Add dependency on GETOPTDEPS. 1999-11-03 Gerd Moellmann * etags.c (print_help): Change email address to send bugs to. 1999-11-01 Francesco Potortì * etags.c: Add suffix psw for PSWrap. (L_getit): Generalize a "cp!=' '" into "!isspace(*cp)". (Postscript_functions): Add code for PSWrap. (Scheme_functions): Use local pointer and new get_tag function. (get_tag): New name for old get_scheme. (process_file): Do not free NULL when file does not exist. (typdef): ttypedefseen renamed to tkeyseen, new label ttypeseen. (C_entries): Modifications that make --members tag even inside typedefs and C nested structs (one level only). (consider_token): Correct a bug which prevented tagging of enum constants. (C_stab_entry): Add if, for, while, switch, return as st_C_ignore. This makes it simpler to work when cblev!=0. * etags.c (C_entries): Tag member function declarations when --declarations is used. * etags.c (C_entries, consider_token): C++ `operator' now is tagged in most cases. As before, :: is not recognized if surrounded by spaces. * etags.c (relative_filename): Account for DOS file names such that is impossible to make one relative to another. * etags.c (sym_type): New st_C_extern tag. (gperf input): Use it for spotting external declarations. (print_help): Document the new behavior of --declarations. (fvextern): New global variable. (consider_token, C_entries): Use it. * etags.c (HAVE_GETCWD) [WINDOWSNT]: Define if undefined. (etags_getcwd): Remove test for WINDOWSNT. * etags.c (process_file) [MSDOS]: If foo.c.gz is not found, try foo.cgz, foo.cz, etc. * etags.c (declarations): New global switch. (longopts): Describe it. (print_help): Document it. (C_entries): Use it. (process_file): Don't process a file twice. * etags.c (Fortran_functions): No tags for "procedure". 1999-11-01 Eli Zaretskii * etags.c (get_compressor_from_suffix): Second argument EXTPTR, if non-zero, returns a pointer to where the extension begins; callers changed. [MSDOS]: Support DOS file names by handling e.g. foo.cgz as if it were foo.c.gz. 1999-11-01 Francesco Potortì * etags.c (sym_type, C_stab_entry): New constant st_C_operator. (fvdev): New constant foperator. (consider_token): Use it to get "operator" in C++. (C_entries): Extend length of operator@ function name. (C_entries): Use foperator when necessary. * etags.c (main) [!ETAGS_REGEXPS]: Do not call free_patterns. * etags.c (compressor): New struct for compressed files. (get_compressor_from_suffix): New function. (get_language_from_suffix): Use it. Also, semantics changed. (process_file): Consider compressed files, close file. (find_entries): Use different call arg for get_language_from_suffix, don't close file. * etags.c (main): Call free_tree. (find_entries): Do not free curfile. (pfnote): Cosmetic change: NULL and '\0' where appropriate. (prolog_pred, erlang_func, substitute): Cast strlen to int when comparing. (canonicalize_filename): Shut up compiler warning. (Perl_functions): Make tag significant. 1999-11-01 Dave Love * etags.c (longopts, optstring): New option --ignore-case-regex (-c). (argument_type): New member at_icregexp. (lc_trans): New global. (main): Fill lc_trans. Process -c args. (add_regex): New arg determining whether to use translation table. (analyse_regex): New arg. Use it for add_regex. 1999-11-01 Francesco Potortì * etags.c (init): Cosmetic change: NULL --> '\0'. (erlang_attribute): Bug corrected (uninitialized variable). (filename_is_absolute): New function replaces absolutefn macro and corrects a bug. All callers changed. (canonicalize_filename): New function. (process_file, etags_getcwd, absolute_dirname): Use it. (relative_filename, absolute_filename): Remove var shadowing. (C_entries, Pascal_functions): Add fake initializations to keep compilers quiet. (TeX_functions, Prolog_functions, Erlang_functions): Cleanup. * etags.c (xrnew): New macro. All callers of xrealloc changed. (language): New typedef (was struct lang_entry). (curlang): New global variable. (node): Typedef renamed from NODE. (linebuffer): New typedef (was struct linebuffer). (pattern): New typedef (was struct pattern). Some members added. Now used as element of a linked list. (patterns, num_patterns): Global variables deleted. (p_head): New global variable. (forced_lang): New global variable (replaces lang_func). (get_language_from_name, get_language_from_interpreter) (get_language_from_suffix): Semantics changed. All callers changed. (last_node): New global variable. (free_tree, add_node, put_entries, total_size_of_entries): Change name of local vars to avoid clashes with typedef node. (number_len): Rewritten for elegance. (token): New typedef replaces TOKEN. (analyse_regex, add_regex): Rewritten for new functionality. (free_patterns): New function called from main and add_regex. (initbuffer, readline_internal, readline, grow_linebuffer): Change name of local vars to avoid clashes with typedef linebuffer. (readline): Rewritten for new functionality. * etags.c (Scheme_suffixes): New suffix ".ss". (print_help): --globals is now used for more than C-type languages. (Perl_functions): Tag global variables ("my" and "local"). * etags.c (print_help): Some messages clarified. (LOOP_ON_INPUT_LINES): New macro. (just_read_file, Fortran_functions, Asm_labels, Perl_functions) (Python_functions, Cobol_paragraphs, Pascal_functions) (Lisp_functions, Postscript_functions, Scheme_functions) (TeX_functions, Prolog_functions, Erlang_functions): Use it. (Cobol_paragraphs, Postscript_functions, TeX_functions) (Prolog_functions, Erlang_functions): Use a local variable instead of the global variable dbp. (Pascal_functions, L_isquote, Scheme_functions): Use GNU coding standard indentation. * etags.c (Python_suffixes, lang_names, Python_functions): Python support. (skip_spaces, skip_non_spaces): Utility functions. (find_entries, takeprec, getit, Fortran_functions, Perl_functions) (Python_functions, L_getit, Lisp_functions, Scheme_functions) (prolog_pred, erlanf_func, erlang_attribute): Use them. (eat_white): Delete. * etags.c (CHAR, init): Keep into account non US-ASCII characters and compilers with default signed chars. (L_getit): Tag "(defstruct (foo", "(defun (operator" and similar constructs. (C_stab_entry): "interface" in Java behaves like "class". * etags.c (HAVE_NTGUI) [WINDOWSNT]: #undef if HAVE_CONFIG_H. (main): Put interval syntax here. (add_regex): And remove it from here. * etags.c (suggest_asking_for_help): Provide a meaningful help message with and without LONG_OPTIONS. * etags.c () [MSDOS]: Include it, don't include string.h. : Don't test MSDOS when including them. (white, nonam, endtk): Like elsewhere, use \r instead of \013. (put_entries): Correctly use %ld instead of %d in printf. * etags.c () [HAVE_UNISTD_H]: Include conditionally, else declare getcwd if HAVE_GETCWD. (consider_token): Dead break instruction removed. 1999-10-19 Paul Eggert Add support for large files. Merge glibc 2.1.2. * b2m.c, emacsclient.c, emacsserver.c, fakemail.c, make-docfile.c, * movemail.c, pop.c: Do not include , as does this now. * b2m.c, emacsserver.c, etags.c, profile.c: Include before any system include files. * emacsclient.c, emacsserver.c, fakemail.c, movemail.c, pop.c, * test-distrib.c: (read, write, open, close): Do not undef. * getopt.c, getopt1.c: Adopt glibc 2.1.2, with the following fix: (const): Do not define if HAVE_CONFIG_H; that's config.h's job. * getopt.h: Adopt glibc 2.1.2. 1999-10-15 Dave Love * Makefile.in (pop.o): Depend on config.h. 1999-10-11 Jonathan I. Kamens * pop.c: Use "pop3" as the POP service name on all platforms, instead of using "pop" on Unix and "pop3" on Windows NT. "pop3" has been the standard service name since RFC 1340 was published in July 1992, so I think it's safe to start using it by default. 1999-09-27 Dave Love * make-docfile.c (scan_lisp_file): Fix typo causing infloop. 1999-09-19 Richard M. Stallman * make-docfile.c (scan_lisp_file): Fix previous changes; swallow CRLF like just CR or just LF. 1999-09-03 Richard Stallman * make-docfile.c: Include config.h not ../src/config.h. (main, fopen, chdir): Add #undef. (read_c_string, scan_c_file, skip_white, read_lisp_symbol) (scan_lisp_file): Handle \r like \n. 1999-08-30 Andreas Schwab * make-docfile.c, fakemail.c: Include if available. * emacsserver.c: Include if available. Don't declare errno if it's a macro. * test-distrib.c: Include if available. 1999-08-29 Richard Stallman * emacsclient.c (print_help_and_exit): Mention --version. 1999-08-25 Richard M. Stallman * emacsclient.c (decode_options): Update version output. (print_help_and_exit): Update bug report address. 1999-08-13 Richard M. Stallman * emacsclient.c (main): Move the dynamic allocation of system_name outside of the SERVER_HOME_DIR conditional. * emacsserver.c (main): Likewise. 1999-08-10 Gerd Moellmann * grep-changelog: New. * Makefile.in (INSTALLABLE_SCRIPTS): Add it. 1999-07-12 Richard Stallman * Version 20.4 released. 1999-06-30 Markus Rost * Makefile.in (clean): Remove fns*.el. 1999-06-23 Dave Love * etags.c (erlang_attribute): Fix undefined variable usage (after Potortì). 1999-05-02 Andrew Innes * movemail.c (main) [WINDOWSNT]: Call ftruncate, which is now mapped to _chsize. 1999-04-29 Richard M. Stallman * emacsclient.c (main, both versions): Use quote_file_name on cwd. 1999-03-30 Dave Love * sorted-doc.c (main): Split up tables. Modify the preamble somewhat. 1999-03-05 Geoff Voelker * makefile.nt: Remove common multiple file compilation commands. 1999-02-26 Richard Stallman * Makefile.in (yow): Depend on epaths.h, not paths.h. * yow.c: Refer to epaths.h. 1999-02-22 Simon Josefsson * emacsserver.c (perror_1, fatal_error): Don't compile unless needed. 1999-01-27 Andrew Innes * makefile.nt: Do make version comparison as strings. 1999-01-25 Richard Stallman * emacsclient.c (xmalloc): Fix previous change. 1999-01-24 Richard M. Stallman * emacsclient.c (xmalloc): Declare to return long. 1999-01-22 Geoff Voelker * etags.c (etags_getcwd, absolute_filename) [DOS_NT]: Canonicalize the case of the drive letter. 1999-01-15 Richard Stallman * emacsserver.c (main): Eliminate arbitrary limit on length of system_name. * emacsclient.c (main): Eliminate arbitrary limit on length of system_name. (xmalloc): Define unconditionally. 1999-01-12 Darrin B. Jewell * etags.c (relative_filename): Stop backward search at beginning of string, since non-Unix systems can have absolute paths with no initial slash. 1998-12-08 Geoff Voelker * makefile.nt: Do string comparison of _NMAKE_VER. 1998-11-03 Theodore Jump * makefile.nt: Compile multiple source files when possible. 1998-10-13 Richard Stallman * Makefile.in: Replace tabs with spaces when they might confuse some Make versions. 1998-10-10 Richard Stallman * emacsclient.c (main): Null-terminate system_name. * emacsserver.c (main): Null-terminate system_name. 1998-09-21 Jonathan I. Kamens * movemail.c (popmail, pop_retr) [MAIL_USE_POP]: When displaying an error message from POP, mention that it's from POP, to distinguish it from local error messages. 1998-09-04 Jonathan I. Kamens * movemail.c [MAIL_USE_POP]: Add the "-r" flag to reverse the order of messages downloaded from a POP server (e.g., if the server stores messages in mailboxes in reverse order). 1998-08-19 Richard Stallman * Version 20.3 released. 1998-08-11 Paul Eggert * rcs2log: Update copyright date and bug report address. (initialize_fullname): Prefer getent if available. 1998-07-30 Paul Eggert * Makefile.in (REGEXPDEPS, regex.o): Prepend $(srcdir)/ to rule dependencies outside this dir. 1998-06-09 Andrew Innes * etags.c (etags_getcwd) [WINDOWSNT]: Use getcwd on Windows. 1998-06-06 Richard Stallman * Makefile.in: Properly terminate a comment. 1998-06-01 Andrew Innes * movemail.c (sys_wait): Rename to wait. * ntlib.h: Undefine _WINSOCKAPI_. * makefile.nt (LOCAL_FLAGS): Define HAVE_CONFIG_H. 1998-05-30 Geoff Voelker * ntlib.c (getppid): Look for EM_PARENT_PROCESS_ID. 1998-05-01 Andrew Innes * movemail.c [WINDOWSNT]: Undefine DISABLE_DIRECT_ACCESS. Force all file i/o to be in binary mode. Include ntlib.h. 1998-04-27 Andreas Schwab * make-docfile.c: Include for chdir. 1998-04-25 Richard Stallman * etags.c (TEX_decode_env): Don't free the value getenv returns. 1998-04-17 Geoff Voelker * makefile.nt (obj): Update with new files in src. (clean): Delete patch scratch files, optimized compilation dir. 1998-04-08 Dave Love * emacsclient.c: Move inclusion of unistd.h to top, else fails on Irix6, at least. 1998-04-06 Andreas Schwab Silence -Wimplicit: * movemail.c: Move cancelations up. Include if available. * fakemail.c (_XOPEN_SOURCE): Define for declaration of cuserid. (parse_header): Explicitly declare return type. * emacsserver.c: Include if available. (main, handle_signals, perror_1, fatal_error): Explicitly declare return types. Add forward declarations. * emacsclient.c: Include and if available. Don't declare geteuid. (print_help_and_exit): Change return type to void. Forward declare it. * b2m.c: Include if available. (main): Explicitly declare return type. 1998-04-03 Richard Stallman * etags.c (put_entries): Use %ld. * b2m.c (fatal): Declare the arg. 1998-03-26 Richard Stallman * pop.c (pop_getline): Rename from getline. 1998-03-05 Richard Stallman * Makefile.in (install): Use INSTALL_STRIP with INSTALL_PROGRAM for the utilities. 1998-01-23 Dave Love * etags.c (getit, Cobol_paragraphs, Pascal_functions, Postscript_functions, prolog_pred, erlang_func, erlang_attribute): Always make named tags. (Fortran_functions): Grok BLOCK DATA. 1998-01-23 Andreas Schwab * movemail.c (main): Fix interwoven brace and cpp conditional nesting. 1997-12-03 Paul Eggert * movemail.c (mbx_write) [MAIL_USE_POP]: Disable the code which quotes with a '>' any lines starting with "From " read from the POP server, but leave the code in place, wrapped in #ifdef MOVEMAIL_QUOTE_POP_FROM_LINES, in case we have to restore it later because it turns out that something is depending on it. Change suggested by Paul Eggert . Convert the character \037 (^_) at the beginning of a line into the character '^' followed by the character '_', because otherwise Emacs can't parse the resulting file as a valid BABYL file. Change suggested by Paul Eggert . 1997-12-03 Jonathan I. Kamens * movemail.c, pop.c, pop.h: Allow messages retrieved from the POP server to contain embedded nulls. 1997-12-02 Jonathan I. Kamens * movemail.c (mbx_write) [MAIL_USE_POP]: Disable the code which quotes with a '>' any lines starting with "From " read from the POP server, but leave the code in place, wrapped in #ifdef MOVEMAIL_QUOTE_POP_FROM_LINES, in case we have to restore it later because it turns out that something is depending on it. Change suggested by Paul Eggert . Convert the character \037 (^_) at the beginning of a line into the character '^' followed by the character '_', because otherwise Emacs can't parse the resulting file as a valid BABYL file. Change suggested by Paul Eggert . 1997-11-22 Richard Stallman * b2m.c: Include getopt.h. (main): Use getopt_long to handle --version and --help. * Makefile.in (b2m): Define VERSION. Link with $(GETOPTOBJS). 1997-10-31 Jonathan I. Kamens * pop.c (fullwrite): Get rid of an extra call to write. Problem pointed out by Chiaki Ishikawa. 1997-10-16 Dave Love * etags.c (L_getit): Always make named tags so that Emacs completion on symbols containing `:' etc. works. (get_scheme): Likewise. 1997-09-24 Jonathan I. Kamens * pop.c: Use system header files instead of declaring C-library functions explicitly. 1997-09-19 Richard Stallman * Version 20.2 released. 1997-09-15 Richard Stallman * Version 20.1 released. 1997-09-02 Andrew Innes * makefile.nt (movemail.exe): Link wsock32.lib before LIBS. * ntlib.c (getpid): Delete function. 1997-08-28 Andreas Schwab * make-docfile.c (scan_lisp_file): Handle custom-declare-variable. 1997-08-26 Andreas Schwab * emacsclient.c [HAVE_SYSVIPC]: Include errno.h, as in the other case. (main) [!BSD_SYSTEM]: Fix error message for getcwd failure. 1997-08-14 Richard Stallman * emacsserver.c (main): Use SOCKLEN_TYPE for fromlen, if it is defined. 1997-08-13 Kazushi (Jam) Marukawa * profile.c (get_time): Cast arg to fprintf. * hexl.c (main): Use %08lx instead of %08x in printf because the variable named addresses is long. 1997-08-08 Geoff Voelker * makefile.nt (lisp): Update paths to lisp files that have moved. 1997-08-08 Andrew Innes * makefile.nt (ctags.obj): New target. (etags.obj, getopt.obj, make-docfile.obj): Update dependencies. * ntlib.h: Add includes. Undo definitions of crt routines from config.h. 1997-08-06 Richard Stallman * etags.c (Yacc_suffixes, Asm_suffixes): Add some alternatives. 1997-07-22 Jonathan I. Kamens * pop.c: Support auto-configuration of both Kerberos V4 and Kerberos V5 for movemail, including detection of V4 and V5 header files and libraries. Include when STDC_HEADERS is defined, to get declarations of string functions. [KERBEROS5] (socket_connection): Support the current MIT Kerberos V5 API rather than the old one. [KERBEROS] (socket_connection): Change a constant name from SOCKET_ERROR to POP_SOCKET_ERROR to avoid a namespace conflict with a constant in a header file. * Makefile.in: Support auto-configuration of both Kerberos V4 and Kerberos V5 for movemail, including detection of V4 and V5 header files and libraries. 1997-07-17 Richard Stallman * fakemail.c [HAVE_UNISTD_H]: Include unistd.h. * etags.c [HAVE_UNISTD_H]: Include unistd.h. 1997-07-09 Richard Stallman * emacsclient.c [C_ALLOCA] (xmalloc): New function. 1997-07-04 Richard Stallman * movemail.c (rindex): Add declaration. 1997-07-01 Geoff Voelker * makefile.nt (GETOPTOBJS, GETOPTDEFS, MOVEMAILOBJS): Define. (movemail.exe): Depend upon and link with getopt files. (obj): Include new source files. (FACE_SUPPORT, MOUSE_SUPPORT, FLOAT_SUPPORT, WINNT_SUPPORT): Define. (lisp): Include new and reorganized elisp files. 1997-06-27 Richard Stallman * Makefile.in (blessmail): Find blessmail.el in mail subdirectory. 1997-06-25 Paul Eggert * rcs2log: Don't assign to $0 in awk; some awks don't allow this. 1997-06-14 Karl Heuer * b2m.c (readline): Terminate buffer properly when EOF seen. Test for valid pointer before dereferencing it. 1997-05-30 Francesco Potortì * Makefile.in (etags): Remove -DETAGS_REGEXPS, because now it is defined inside etags.c if HAVE_CONFIG_H is defined. 1997-05-29 Francesco Potortì * etags.c (logical): Type name changed to bool. (ETAGS_REGEXPS, LONG_OPTIONS) [HAVE_CONFIG_H]: #define them. () [LONG_OPTIONS]: Include conditionally. (getopt_long) [!LONG_OPTIONS]: Redefine as macro. (main): Accepted options depend on ETAGS_REGEXPS and LONG_OPTIONS. (longopts): New long options without short counterpart are globals, members, no-globals, no-members. Regexp options are now defined conditionally to ETAGS_REGEXPS. (print_help): Update. 1997-05-22 Francesco Potortì * etags.c (C_entries): Use "." instead of "::" for Java. (consider_token): is_func renamed to is_func_or_var. (C_entries): is_func renamed to funorvar. (C_entries): Initialize tok.named. (sym_type, C_stab_entry, consider_token): st_C_ignore is used to get rid of "import", "package" and "friend". (fvdef): Rename from funcdef. Also some constants renamed. All users changed. (C_entries): Make separate tags for variables separated by comma. (globals, members): New flags. (main, C_entries): Use them. (make_C_tag, C_entries): Make tok a global variable. 1997-05-16 Francesco Potortì * etags.c (funcdef): New vignore constant. (consider_token, C_entries): Use it to tag global variables. (print_help): Update for global variables. (consider_token, C_entries): Set the len member of token_name. (prolog_pred): Cleanup according to GNU coding standards. (Cobol_suffixes, lang_names, Cobol_paragraphs): Cobol support. (prolog_white, erlang_white): Rename to eat_white, callers changed. 1997-05-15 Francesco Potortì * etags.c (CHARS, CHAR): New constant and macro. (iswhite, begtoken, intoken, endtoken): Use them. (notinname, _nin, nonam): New macro, array, string. (init): Cleanup and init _nin. (new_pfnote): New function. (make_C_tag) [traditional_tag_style]: Use it. (traditional_tag_style): Constant set to TRUE for now. 1997-05-14 Francesco Potortì * etags.c (C_entries, Pascal_functions): Cleanup. (TeX_functions): NULL as a function arg needs a cast. (Erlang_functions, erlang_func, erlang_attribute): Cleanup. 1997-05-13 Francesco Potortì * etags.c (TeX_functions): Cleaned up. (tex_getit): Remove. 1997-05-13 Paul Eggert * rcs2log (files): When computing arguments automatically, ignore non-files within the RCS subdirectory. 1997-05-13 Francesco Potortì * etags.c (C_JAVA): New #define. (Cjava_suffixes): .java is Java. (Cjava_entries): New function. (lang_names): Add Java. (sym_type): Add st_C_javastruct for Java. (C_stab_entry): Add `extends' and `implements' keywords. (consider_token, C_entries): Recognize Java structures. 1997-05-12 Francesco Potortì * etags.c (Cplusplus_suffixes): .pdb is PostScript with C syntax. (Postscript_suffixes): .ps is PostScript. (lang_names): Add postscript. (Postscript_functions): New function. (TEX_decode_env): Close minor memory leak. (just_read_file): Correct the char number of the tag. 1997-05-11 Paul Eggert * rcs2log (loginFullnameMailaddrs, logins, rlog_options, files): Don't prepend $nl since this causes some shells to generate the empty string when IFS is $nl. (printlogline): Use SOH (octal code 1), not CR, since some PC-based shells mishandle CR. (initialize_fullname): Set NIS_PATH to the empty string before invoking nismatch, in case it's set to some nonstandard value. 1997-05-06 Jonathan I. Kamens * pop.c (getline): Don't miss CRLF pairs when the CR and LF are read in separate blocks. 1997-04-30 Francesco Potortì * etags.c [TeX_named_tokens]: Set to FALSE if undefined. (struct linebuffer): New member `len' is the length of the string. (find_entries, Pascal_functions, TeX_functions, TEX_getit): Use it instead of strlen. (TEX_getit): Declare and define unconditionally as static. (TeX_functions): Use if instead of #if TeX_named_tokens. (add_regex): Set RE_INTERVALS flag for regex compilation. (substitute): Code cleanup. (readline_internal): Code cleanup, set new member `len'. (readline): Bug corrected. 1997-04-23 Geoff Voelker * makefile.nt: Change references of windowsnt.h to ms-w32.h. (obj): Change references of nt*.c files to w32*.c files. 1997-04-15 Francesco Potortì * etags.c (xnew): Add support for debugging with chkmalloc. (error): Use this instead of printf whenever possible. (main): Only call xnew after having initialized progname. (substitute): Bad memory corruption error corrected. 1997-04-08 Francesco Potortì * etags.c (add_regex): Undo previous change. (relative_filename): Small memory leak closed. (absolute_filename): Cleaned up the code, possibly closing a bug. (absolute_dirname): Always return a newly allocated string. 1997-03-21 Paul Eggert * rcs2log (files): Ignore files in RCS directory whose names are of the form ,*, or *_; they are probably RCS lock files. Also, ignore files named .rcsfreeze.log or .rcsfreeze.ver; they are used by rcsfreeze. 1997-03-14 Francesco Potortì * etags.c (add_regex): Reset *putbuf before using it. 1997-02-23 Jonathan I. Kamens * movemail.c (popmail): Remove some unnecessary function declarations. (popmail, pop_retr): Since popmail always passes mbx_write and mbf into pop_retr, there's no reason to pass in mbx_write, and the file argument can be declared FILE * explicitly. This fixes a compilation problem on systems with 64-bit pointers. 1997-02-13 Richard Stallman * movemail.c: Delete duplicate inclusion of fcntl.h and duplicate #undefs of open, read, write, close. 1997-01-20 Jonathan I. Kamens * movemail.c (main): Do not display "[POP-password]" in the usage message when movemail is compiled without POP support. (main, popmail): Add the optional "-p" argument, which causes movemail to leave mail in the inbox after copying it into the output file. * Makefile.in (movemail): Link with getopt. 1997-01-20 Paul Eggert * rcs2log (--help, --version): New options, per GNU coding standards. (Copyright, Help, Id): New variables, for above. (rlog): Use -q option with cvs log, to avoid useless chatter. Treat logs of "Initial revision" (RCS) or "file F was initially added on branch B." (CVS) as if they said "New file.", for consistency with change log entries. 1997-01-01 Paul Eggert * vcdiff (PATH): Add /usr/xpg4/bin, where XPG4 SCCS hangs out in Solaris 2.5. (sid1): Don't use bare -r, since XPG4 `get' does not allow it. 1996-12-19 Richard Stallman * etags.c (streq, strneq): Use == NULL rather than !. 1996-12-18 Jonathan I. Kamens * Makefile.in (LIBMAIL): New macro. Conditionally includes -lmail. (movemail): Use LIBMAIL, to link against -lmail. * movemail.c: Include maillock.h (conditionally). Remove a redundant inclusion of . (MAIL_USE_MAILLOCK): New macro, conditionally defined. (main): Add variable spool_name. Support the usage of maillock and mailunlock to lock and unlock mailboxes. (mail_spool_name): New function. * movemail.c: Fix an uninitialized variable which could cause movemail to exit with an error status incorrectly on systems which use lock files rather than a system locking function to lock mailboxes. 1996-12-16 Richard Stallman * pop.c (socket_connection): Free realhost after using it. 1996-12-04 Francesco Potortì * etags.c (C_entries): Test tok.valid. This handles some particular cases involving function declarations that failed. 1996-11-22 Charles Hannum * pop.c (socket_connection): gethostbyname may return a pointer to static data. krb_realmofhost can clobber it. So copy it. 1996-11-14 Francesco Potortì * etags.c (pfnote, fatal, error): Callers using a NULL pointer must cast it to (char *) because we have no prototypes. (make_C_tag): Macro deleted, new function. (C_entries): Calls to make_C_tag macro changed to call function. 1996-11-13 Francesco Potortì * etags.c (grow_linebuffer): New function. (GROW_LINEBUFFER): Macro deleted. All callers changed. (make_tag): Macro renamed to make_C_tag. All callers changed. (, ) [STDC_HEADERS]: New #include's. (Prolog_functions): prolog_skip_comment was called with wrong number of arguments. (xrealloc): fatal was called with wrong number of arguments. 1996-11-08 Francesco Potortì * etags.c (relative_filename): Bug corrected. (etags_getcwd): Avoid warning of unused variable. (C_entries, consider_token): Add support for enum labels. 1996-11-03 Paul Eggert * rcs2log: When processing cvs log output, remove `Attic/' from repository file names. 1996-10-22 Karl Heuer * emacsserver.c: Fix 1996-09-02 change. 1996-10-12 Paul Eggert * rcs2log (rlog_options): Look for ' option' rather than 'unknown option', since CVS says 'invalid option'. (datearg): Use the empty string, not '-d>1970-01-01', to extract all revisions, since some hosts reject 1970-01-01 when east of UTC. (date): Remove. 1996-10-06 Richard Stallman * etags.c (etags_getcwd) [WINDOWSNT]: Convert backslashes to slashes. 1996-10-02 Francesco Potortì * etags.c (print_version): Print copyright info. * etags.c (print_help): Print the bug reporting address. (main): Use return as the last instruction, instead of exit. * etags.c (main): Don't open the tags file in cxref mode. 1996-09-29 Dave Love * rcs2log (date): Make default format acceptable to CVS post v1.8 as well as earlier CVSs and RCS. 1996-09-29 Richard Stallman * movemail.c (main): If the lock call fails with EBUSY or EAGAIN, retry a few times. 1996-09-25 Paul Eggert * rcs2log (rlog_options): Use $rlog, not rlog, when deciding whether to append -zLT. 1996-09-16 Karl Heuer * fakemail.c: Replaced symbol BSD with BSD_SYSTEM. * emacsclient.c, movemail.c: Likewise. 1996-09-09 Richard Stallman * emacsclient.c (longopts): Change nowait to no-wait. (print_help_and_exit): Fix option name; upcase metavars. 1996-09-06 Erik Naggum * emacsserver.c (main): Declare `fromlen' as size_t. 1996-09-02 Eli Zaretskii * etags.c (etags_getcwd): Use getcwd if available even if MSDOS. 1996-09-02 Richard Stallman * emacsclient.c (quote_file_name): Quote with &, not \. Quote `-' only at start of file name. Terminate the value string. * emacsserver.c: Include signal.h properly; delete the duplicate includes for it. * emacsserver.c: On fatal signal, delete socket-file: * emacsserver.c: Include signal.h. (xmalloc, fatal, error): New functions. (delete_socket, handle_signals): New functions. (progname, socket_name): New variables. [HAVE_SOCKETS] (main): Call handle_signals; set the new variables. 1996-09-01 Richard Stallman * emacsclient.c (quote_file_name): New function. (main, both versions): Use quote_file_name. (decode_options): Don't return a value. (main, both versions): Use optind. Don't check for -nowait here. * emacsclient.c (decode_options): New function. (main, both versions): Call decode_options. (print_help_and_exit): New function. (VERSION): New macro. * Makefile.in (emacsclient): Link with getopt. Add -DVERSION so emacsclient knows its version number. 1996-08-31 Geoff Voelker * makefile.nt (lisp): Include dos-nt.elc. 1996-08-31 Richard Stallman * Makefile.in (blessmail): Use $srcdir to find blessmail.el. 1996-08-28 Richard Stallman * emacsclient.c (both versions): Handle -nowait and --nowait by sending data to the server. 1996-08-26 Richard Stallman * Makefile.in (INSTALL_STRIP): New variable. (${archlibdir}): Use INSTALL_STRIP. * Makefile.in (MOVE_LIBS): Use conditionals on KERBEROS, HAVE_LIBKRB, HAVE_LIBDES, HAVE_LIBCOM_ERR to set it up. * pop.c: Reverse conditional in previous change. 1996-08-24 Richard Stallman * pop.c: Include des.h krb.h with no dir name if SOLARIS2. 1996-08-24 Paul Eggert * rcs2log: Use ISO 8601 date format, with time zone appended if change-log-time-zone-rule is non-nil, instead of traditional Unix date format. (datearg): When computing default from ChangeLog, handle ISO format dates in addition to old-fashioned dates from Emacs 19.31 and earlier. Don't worry about hh:mm:ss since the resolution is now by day. Use empty datearg, not empty rlog_options, to decide whether to pass "$datearg" option to $rlog. (logTZ): New variable, set to TZ specified by change-log-time-zone-rule. (month_data): Remove `mo'; no longer needed. (rlog_options): Use -zLT for localtime output, if `rlog' supports it. Match `revision' line of rlog output more accurately. Add -c, -v options. 1996-08-23 Eli Zaretskii * hexl.c: Include , so DOS_NT is defined on MSDOS. 1996-08-11 Richard Stallman * Version 19.33 released. 1996-07-31 Richard Stallman * Version 19.32 released. 1996-07-23 Andrew Innes * etags.c (readline_internal) [DOS_NT]: Don't include CRs when computing character positions in source files. 1996-07-16 Andrew Innes * makefile.nt (clean): Use OBJDIR macro. 1996-07-16 Karl Heuer * cvtmail.c, sorted-doc.c, yow.c, emacsserver.c: Undo previous change. 1996-07-15 David Mosberger-Tang * cvtmail.c, sorted-doc.c, yow.c [__GNU_LIBRARY__]: Use . * emacsserver.c (main) [__GNU_LIBRARY__]: Use size_t for fromlen. * etags.c, fakemail.c, profile.c: Declare main as int, not void. 1996-07-15 Andrew Innes * ntlib.h: Correct return type of getwd. * ntlib.c (getwd): Correct return type. 1996-07-02 Richard Stallman * emacsserver.c (main) [HAVE_SOCKETS]: Call rewind before writing to infile. 1996-07-01 Andrew Innes * makefile.nt: Remove all references to wakeup. 1996-06-28 Francesco Potortì * etags.c (C_stab_entry): New keywords for C++ namespace, bool, explicit, mutable, typename. 1996-06-29 Richard Stallman * emacsclient.c (main) [HAVE_SOCKETS]: Use two separate stdio streams, one for sending and one for reading the reply. 1996-06-21 Richard Stallman * Makefile.in (timer, timer.o, getdate.o, $(srcdir)/getdate.c) (wakeup): Target deleted. (UTILITIES): Delete wakeup and timer. * wakeup.c, timer.c, getdate.y, getdate.c: Files deleted. 1996-06-11 Geoff Voelker * etags.c (etags_getcwd) [DOS_NT]: Change conditional to MSDOS only. * makefile.nt (ETAGS_CFLAGS): Define HAVE_GETCWD macro. 1996-06-06 Richard Stallman * etags.c (main): Copy cwd when appending slash. 1996-05-25 Karl Heuer * Version 19.31 released. 1996-05-17 Francesco Potortì * etags.c (CNL_SAVE_DEFINEDEF): Set linecharno for use by readline. (Pascal_functions): Increase linecharno by the correct number of chars, inline the GET_NEW_LINE macro and delete its definition. 1996-05-03 Andrew Innes * makefile.nt (OBJDIR, BLD): Remove macro definitions. 1996-05-03 Andrew Innes * makefile.nt (LOCAL_FLAGS): Include path to NT shadow includes. (movemail.exe, fakemail.exe): Now built under Win32.o. * ntlib.c: Include ntlib.h. (nt_sleep): Rename to sleep. (getwd): Return directory. (getlogin, cuserid, getuid, setuid, getpwuid, getpass, fchown, sys_ctime, sys_fopen): New functions. * ntlib.h: New file. 1996-04-29 Richard Stallman * pop.c (SEND, RECV): Rename from send, recv. (pop_open, pop_trash): Make the trash_started code unconditional. (socket_connection): Delete casts to void. 1996-04-28 Richard Stallman * movemail.c (DIRECTORY_SEP, IS_DIRECTORY_SEP): Definitions copied from lisp.h. 1996-04-22 Andrew Innes * fakemail.c [WINDOWSNT]: Include ntlib.h. * hexl.c [DOSNT]: Include fcntl.h. [WINDOWSNT]: Include io.h. (main) [MSDOS]: Change conditional to DOS_NT. * movemail.c (access, unlink) [WINDOWSNT]: Macros undefined. (fork, syswait, DISABLE_DIRECT_ACCESS) [WINDOWSNT]: Macros defined. [WINDOWSNT]: Include locking.h. (main): Update usage message. Use IS_DIRECTORY_SEP. (main) [DISABLE_DIRECT_ACCESS]: Don't check access if defined. (main) [WINDOWSNT]: Invoke locking instead of flock. (main) [MAIL_USE_SYSTEM_LOCK && WINDOWSNT]: Emulate ftruncate. (main) [MAIL_USE_POP]: Pass password to popmail if used. Include winsock.h; don't include unix inet headers. (popmail): Add password argument and pass it to pop_open. Open output file in binary mode. * pop.c [WINDOWSNT]: Include winsock.h and ntlib.h. Macro SOCKET_ERROR undefined. Don't declare h_errno. [!WINDOWSNT]: Define macros recv and send. [!WINDOWSNT] (POP_SERVICE): Change to pop3. (pop_open) [WINDOWSNT]: Initialize trash_started. (have_winsock) [WINDOWSNT]: New variable. (socket_connection) [WINDOWSNT]: Initialize winsock. (socket_connection): Use closesocket instead of close. (getline): Use recv instead of read. (fullwrite): Use send instead of write. (pop_trash): Use closesocket instead of close. (pop_trash) [WINDOWSNT]: Cleanup winsock. Check if being called recursively by sendline. * pop.h (struct _popserver): New field trash_started. * wakeup.c [HAVE_CONFIG_H]: Only include config.h when defined. 1996-04-14 Richard Stallman * hexl.c (main) [DJGPP v2]: Don't change to binary for a tty. 1996-04-10 Richard Stallman * etags.c [WINDOWSNT]: Include io.h. 1996-04-10 Geoff Voelker * makefile.nt (CTAGSOBJ): Compile with regexp support. 1996-04-09 Eli Zaretskii * hexl.c [DJGPP v2]: Include io.h. (main) [DJGPP v2]: Switch standard streams to binary with setmode. * b2m.c (main) [MSDOS]: Switch standard streams to binary under DJGPP v2. 1996-04-02 Richard Stallman * etags.c (absolute_filename): Use absolutefn. 1996-03-31 Eli Zaretskii * etags.c (absolutefn) [DOS_NT]: Support Novell drives whose drive letter isn't an alphabetic character. (main) [DOS_NT]: Use binary mode on redirected `stdout'. (process_file) [DOS_NT]: Convert all slashes to forward style. (absolute_filename) [DOS_NT]: Emit error message for relative paths with a drive letter. (absolute_filename) [DOS_NT]: Handle absolute pathnames with DOS/NT drive letters which try to reference the parent of the root. (absolute_dirname) [DOS_NT]: Convert all slashes to forward style. 1996-03-27 Geoff Voelker * makefile.nt: Change uses of del to $(DEL). 1996-03-22 Francesco Potortì * etags.c (just_read_file): Reset lineno and charno on entry. 1996-03-15 Anders Lindgren * etags.c: Prolog language totally rewritten. (Prolog_functions): Rewritten from scratch. (skip_comment, prolog_getit): Remove. (prolog_skip_comment): New function, like old skip_comment. (prolog_pred, prolog_atom, prolog_white): New functions. (erlang_func, erlang_attributes): Forward declarations added. (erlang_atom): Check if backslash ends line inside quoted atom. 1996-03-14 Francesco Potortì * etags.c (absolutefn): DOS_NT version corrected. (main): Append "/" to the dir name only if not already there. (print_help): Explain the absolute/relative file name issue. 1996-03-08 Anders Lindgren * etags.c: New Language Erlang added. (Erlang_functions, erlang_func, erlang_attribute, erlang_atom) (erlang_white): New functions. (Erlang_suffixes): New suffix list. (lang_names): Erlang entry added. (prolog_getit): Accepts headers spanning several lines. Always name tags. (Prolog_functions): Remove incorrect compensation for newline characters. (readline_internal): Zero-terminate last line. 1996-03-20 Mike Long * b2m.c (main): Initialize progname variable before using it. Quote `username' in From_ header. 1996-03-18 Geoff Voelker * ntlib.c (getpid): New function. 1996-02-21 Richard Stallman * emacsclient.c (main, both definitions): Print a newline for normal termination. 1996-02-21 Noah Friedman * tcp.c (main): Convert port to network byte order. 1996-01-20 Karl Heuer * pop.c (pop_retrieve, getline): Avoid type clashes. 1996-01-19 Karl Heuer * etags.c (enum sym_type, anonymous enum): Delete final comma. 1996-01-15 Paul Eggert * rcs2log (initialize_fullname): Add support for NIS+. (hostname): Fully qualify the default hostname with the domainname if the hostname lacks a `.'. 1996-01-10 Karl Heuer * etags.c (consider_token): Fix typo in expression. 1996-01-04 Paul Eggert * etags.c (substitute): Fix spelling in message. 1996-01-03 George V. Reilly * makefile.nt (etags, ctags): Compile with regexp support. (make-docfile, wakeup, etags, ctags, hexl): Ensure build subdirectory exists before compiling. 1996-01-02 Karl Heuer * emacsserver.c (main): Do chmod based on existing permission. 1995-12-27 Richard Stallman * Makefile.in (install): Turn on read/execute permission. 1995-12-03 Richard Stallman * Makefile.in (LIB_STANDARD_LIBSRC): Use this instead of LIB_STANDARD. (LOADLIBES): Use LIB_STANDARD_LIBSRC. 1995-12-01 Richard Stallman * Makefile.in (THIS_IS_MAKEFILE): Rename from THIS_IS_YMAKEFILE. 1995-12-07 Francesco Potortì * etags.c (pfnote): Don't make a tag for ctags if there is no name. (getit, Asm_labels, Perl_functions, Pascal_functions, L_getit, get_scheme, prolog_getit): Name the tag in ctags mode. (pfnote): Truncate ctags lines to 50 chars, like it worked once. (Perl_interpreters): Accept "@PERL@" as an interpreter. (suggest_asking_for_help): New function. (main, get_language_from_name): Use suggest_asking_for_help. (main): Let get_language_from_name make language existence check. (streq, strneq): Check the arguments #if DEBUG. 1995-12-06 Francesco Potortì * etags.c (Cplusplus_suffixes): Add .M suffix for Objective C++. (gperf): Add keywords for Objective C and GNU macros. (sym_type): Add values to account for Objective C and GNU macros. (begtk): The '@' character can start a token. (objdef, methodlen, objtag): New variables for Objective C. (consider_token, C_entries): Add code for Objective C. (plain_C_suffixes): Add .m and .lm for Objective C. (Yacc_suffixes): Add .ym for Objective yacc. (GROW_LINEBUFFER): New macro. (consider_token, C_entries, Pascal_functions): Use the new macro. (consider_token): Take one more argument. Caller changed. (consider_token): Use the hashing function to spot GNU macros. (C_entries): Consider // as a comment start even in plain C for the sake of Objective C parsing. 1995-12-04 Francesco Potortì * Makefile.in (ctags): Depend on etags only for simplicity; compile with regexp support enabled. 1995-11-24 Richard Stallman * Version 19.30 released. 1995-11-22 Geoff Voelker * makefile.nt (DOC, clean): Don't use switches to del not supported by Windows 95. 1995-11-13 Richard Stallman * Makefile.in (regex.o): Depend on ../src/config.h. 1995-11-12 Richard Stallman * Makefile.in (LIB_STANDARD): Extract this as in src/Makefile.in. (LOADLIBES): Use LIB_STANDARD. 1995-11-07 Kevin Gallo * makefile.nt (DOC): Include strings from w32term.c, w32xfns.c, w32fns.c, w32faces.c, w32select.c, w32menu.c, w32reg.c; remove Windows 95 conditional. 1995-11-06 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (get_lang_from_name, get_lang_from_interpreter) (get_lang_from_suffix): New functions. (get_language): Function deleted. (lang_entry): Two members added to struct. (lang_names): Reflect the new layout of lang_entry. (print_language_names, main, find_entries): Use the new functions. (find_entries): Look at the first line for #! if no language. (C_entries): Invalidate the token when funcdef is reset. (Perl_functions): New function. (lang_suffixes): .pl and .pm are Perl suffixes. 1995-11-02 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (lowcase): Use the standard tolower function. (substitute): Remove some wrong and some useless code related with escape '\' character in regexp replacement string. (TEX_defenv): Add part, appendix, entry, index. Remove typeout. (lang_suffixes): New suffixes: .hpp for C++; .f90 for Fortran; .bib, .ltx, .TeX for TeX (.bbl, .dtx removed); .ml for Lisp; .prolog for prolog (.pl removed). (massage_name, etags_getcwd): Use lowcase instead of tolower. (C_entries, find_entries): Add comments about memory leakage. (add_node): Dead code removed. 1995-10-29 Richard Stallman * Makefile.in (getdate.o, movemail.o): Specify -Demacs. (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Delete -Demacs. 1995-08-30 Richard Stallman * test-distrib.c: Add #undef for open, close, read, write. 1995-08-23 Roland McGrath * test-distrib.c [HAVE_CONFIG_H]: Include config.h. [! O_RDONLY]: Define it to zero. (main): Use O_RDONLY instead of explicit zero. 1995-08-17 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (Pascal_functions): Close comment bug corrected. (add_node): Correctly compare node file names. (Pascal_functions): Correctly allocate and free memory for tline. (pfnote): Put the definition of fp in the innermost block. (NODE): `named' member removed. (pfnote, free_tree, put_entries, total_size_of_entries): Do not use the `named' member, check whether `name' is NULL instead. (pfnote): `named' argument removed, all callers changed. (getit, Asm_labels, Pascal_functions, L_getit, get_scheme, TeX_functions, TEX_getit, prolog_getit): Useless string allocation removed from pfnote call, some code cleanup. (relative_filename): Free temporary space allocated by concat. 1995-08-16 Richard Stallman * Makefile.in (getdate.c): New target. (getdate.o): Just compile getdate.c. 1995-08-12 Karl Heuer * fakemail.c (xrealloc): Change cast to match return type. 1995-08-10 Richard Stallman * fakemail.c (xmalloc, xrealloc): Use return-type long *. 1995-08-06 Richard Stallman * movemail.c (main): Fix previous change. Add error check for empty OUTNAME. 1995-08-05 Richard Stallman * movemail.c (main): Mention lock file name in error message. 1995-07-30 Richard Stallman * profile.c (gettimeofday): New function, defined if necessary. 1995-07-18 Richard Stallman * Makefile.in: Renamed from Makefile.in.in. (distclean): Delete Makefile.c, not Makefile.in. 1995-07-17 Michael Shields * Makefile.in.in (tags): Synonym for `TAGS'. 1995-07-16 Karl Heuer * Makefile.in.in (install, maybe-blessmail): Don't cd ..; configure has already set $(INSTALL) to the proper relative path. 1995-07-08 Paul Eggert * rcs2log (datearg): Separate date from time with comma, not space, to work around CVS 1.5 bug. (CVSROOT): Don't abort when unset if repository is absolute. 1995-07-07 Paul Eggert * rcs-checkin, rcs2log, vcdiff: Replace `#!/bin/sh' with `#! /bin/sh', for benefit of systems that interpret `#! /' as a 4-byte magic number. 1995-06-29 Jonathan I. Kamens * movemail.c (main) [MAIL_USE_POP]: When a user specifies a mailbox with "po:mailbox", the mailbox is everything after the "po:" prefix. 1995-06-28 Richard Stallman * emacsserver.c: Make all error messages start with `Error: '. (fatal_error, perror_1): New functions, use throughout. 1995-06-28 Paul Eggert * rcs2log (CVSROOT, repository): Allow remote repositories a la CVS 1.4. 1995-06-27 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (plain_C_entries): New function. (lowcase): New macro. (tail, Fortran_functions, Pascal_functions): Use new macro lowcase. (lang_suffixes): New suffix ".pc" for Pro*C files. (consider_token): Don't tag all tokens beginning with DEFUN & Co.. (tail): Look for the end of the token when comparing. (takeprec): Since now tail behaves differently, use strneq. 1995-06-26 Richard Stallman * movemail.c (main): Add newline in usage message. 1995-06-21 Richard Stallman * make-docfile.c (scan_file): Make sure it never looks at filename[-1]. 1995-06-21 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (find_entries): Rewind before rereading the input file. 1995-06-20 Richard Stallman * Version 19.29 released. * make-docfile.c (main) [MSDOS]: Do set _fmode. This undoes part of the previous change. 1995-06-19 Richard Stallman * make-docfile.c (main): On MSDOS, don't change stdout to binary, and insist on an -o option. 1995-06-13 Geoff Voelker * etags.c (process_file, absolute_filename): Handle filenames starting with a drive letter. * makefile.nt (install): Copy wakeup.exe properly. 1995-06-08 Karl Heuer * make-docfile.c [MSDOS]: #undef chdir. 1995-06-04 Paul Eggert * rcs2log (output_authors): Allow ':' in time zone, as per ISO 8601 and RCS 5.6.8 beta. 1995-05-29 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (etags_getcwd): Undo the /bin/pwd change. It may raise compatibility problems. 1995-05-26 Richard Stallman * etags.c (etags_getcwd): Don't use #elif. Have just one function body. 1995-05-25 Geoff Voelker * makefile.nt (LIBS): Use BASE_LIBS. (make-docfile.exe, hexl.exe, wakeup.exe, etags.exe): Don't depend upon LIBS. (DOC): Use del instead of rm. (DOC) [WINDOWS95]: Use DOC. (clean): Handle MSVC aux files. (config.h, paths.h): Use $(CP) instead of cp. (config.h): Use $(CONFIG_H) (make-docfile.obj): Depend upon config.h. Clean up comments. 1995-05-23 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (etags_getcwd): Use /bin/pwd instead of pwd because the former gives the true path even in the presence of simlinks. 1995-05-07 Richard Stallman * movemail.c (main): Increase lock timeout to five minutes. 1995-05-06 Geoff Voelker * makefile.nt (obj): Use .c files. 1995-05-04 Richard Stallman * make-docfile.c: Include config.h. (NO_SHORTNAMES): New definition. (xmalloc): Return long *. * etags.c (C_entries): Cast result of xrealloc. (xmalloc, xrealloc): Declare them to return long *. * b2m.c (xmalloc, xrealloc): Declare them long *. * movemail.c (xmalloc): Declare it to return long *. 1995-04-30 Paul Eggert * rcs2log (datearg): If rlog options are specified explicitly, omit the implicit '-d>DATE' option. (repository, rlog): Allow absolute paths to CVS repositories. Look only at the first line of CVS/Repository. 1995-04-26 Karl Heuer * Makefile.in.in (extraclean): Depend on maintainer-clean, not realclean. 1995-04-24 Richard Stallman * Makefile.in.in [REGEXP_IN_LIBC] (REGEXPOBJ, REGEXPDEPS): Alternative (empty) definitions. 1995-04-18 Richard Stallman * emacsclient.c (main): Add argv[0] to an error message. 1995-04-13 Karl Heuer * emacsclient.c (main): Improve error handling. * cvtmail.c (main, skip_to_lf): Improve error handling. (sysfail): New function. * b2m.c (main): Check for trailing ", " before trying to delete it. 1995-04-12 Andreas Schwab * Makefile.in.in (all): Build test-distrib and make-docfile. * make-docfile.c (scan_c_file): At end, restore file name last char to its original value. 1995-04-10 Richard Stallman * emacsclient.c, emacsserver.c: Test NO_SOCKETS_IN_FILE_SYSTEM. 1995-04-08 Richard Stallman * Makefile.in.in (BASE_CFLAGS): Rename from ALLOCA_CFLAGS. (alloca.o, regex.o): Use BASE_CFLAGS. 1995-04-06 Richard Stallman * emacsclient.c [Berkeley sockets version] (main): Declare getcwd. 1995-04-04 Karl Heuer * Makefile.in.in (aixcc, aixcc.c): Targets deleted. (SOURCES, distclean): Remove obsolete references to aixcc. 1995-04-02 Richard Stallman * aixcc.lex: File deleted--surely obsolete now. 1995-03-23 Paul Eggert * rcs2log (output_authors): Replace /[/]/ by /[\/]/, for portability to mawk and nawk. 1995-03-21 Paul Eggert * rcs2log: Treat -u "login:fullname:mailaddr" as if it were -u "loginfullnamemailaddr". 1995-03-21 Paul Eggert * rcs2log: Add -u "loginfullnamemailaddr" option, which replaces the (now obsolescent) -n login fullname mailaddr option. Add -R option for recursive rlog. (AWK): New environment variable (default `awk') for awk program name. (output_authors, tab, loginFullnameMailaddrs, recursive): New vars. Quote authors and fullnames correctly. Don't omit path from repository root when logging CVS files. 1995-03-15 Richard Stallman * emacsclient.c, emacsserver.c: Use BSD sockets whenever available, even if HAVE_SYSVIPC. * emacsclient.c (main): Use getcwd if not BSD. 1995-03-13 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (process_file): Free (filename) after using it. (readline_internal): Do not access the char before start of line. 1995-02-22 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (C_entries): token_saved removed. Initialize tok.valid and savetok.valid. Mark token as valid when it is initialized. (make_tag): Make token only if token is valid and reset validity. (CNL_SAVE_DEFINEDEF): Test for savetok.valid instead of token_saved. (TOKEN): Add a new member: valid. 1995-02-15 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (C_entries): Bug corrected in xrealloc of token_str. (main): Do not read twice the last filename in the stdin file list. 1995-02-14 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (C_entries): Initialize the new members of TOKEN. (C_entries): Do not allocate a new space for each token found by consider_token. Let make_tag do that instead. (make_tag): Since now TOKEN has memory of where it is taken from, this new macro substitutes both make_tag_from_new_lb and make_tag_from_oth_lb. All callers changed. (TOKEN): Add linepos and buffer members. (main): Initialize token_str. (lang_extensions): Recognize .c++ and .h++ as C++ file suffixes. (token_str): New global variable used by C_entries. 1995-02-07 Richard Stallman * Makefile.in.in (maintainer-clean): Rename from realclean. 1995-02-01 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (pfnote): Initialize been_warned in the node. (C_entries): Remove a speed hack for the sake of clarity. 1995-01-18 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (longopts, print_help, main): Use -I as abbreviation for the --ignore-indentation option. (main): Do not print an error message for unknown options. 1995-01-12 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (FILEPOS, GET_CHARNO, GET_FILEPOS, max, LINENO): Delete. (append_to_tagfile, typedefs, typedefs_and_cplusplus) (constantypedefs, update, vgrind_style, no_warnings) (cxref_style, cplusplus, noindentypedefs): Were int, now logical. (permit_duplicates): Was a var, now a #define. (filename_lb): Was global, now local to main. (main): Open the tag file when in cxref mode. Use a BUFSIZ size buffer for making the shell commands. Look at the return value from the system routine. Exit when cannot open the tag file. (process_file): Open the file and pass the FILE* to find_entries. (find_entries): Now void, because does not open the file itself. (pfnote): Recovering from lack of memory does not work. Removed. Use savenstr and simplify the code. (free_tree): Only free the name space if node is named. (structtag): Now a pointer, not a fixed length array of chars. (consider_token): Don't take a token as argument. Use savenstr when saving a tag in structtag. Callers changed. (TOKEN): Structure changed. Now used only in C_entries. (TOKEN_SAVED_P, SAVE_TOKEN, RESTORE_TOKEN): Delete. (C_entries): nameb and savenameb deleted. Use dinamic allocation. (pfcnt): Delete. Users updated. (getit, Asm_labels, Pascal_functions, L_getit, get_scheme) (TEX_getit, prolog_getit): Use dinamic allocation for storing the tag instead of a fixed size buffer. 1995-01-10 Richard Stallman * movemail.c (main): Skip past the colon in inname. 1995-01-10 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (pfatal): New function. (main, etags_getcwd): Use pfatal. (etags_getcwd): Corrected another bug in the HAVE_GETCWD version. 1995-01-10 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (Lang_function): Use void instead to declare the language functions, because many compilers are buggy. (etags_getcwd): Fix the previous fix on the #else branch. (readline_internal): Discard possible \r before \n here. (C_entries): Do not deal with \r here: undo previous fix. 1995-01-09 Francesco Potortì (pot@fly) * b2m.c (concat, xmalloc, xrealloc, readline, xnew): Four new functions and a macro that allow the program to work on input lines of whatever length. Copied from etags.c. (fatal): Print a fatal error message and exit. (main): Use the new functions. Fixed a bug that made a \037 char appear at the end of the output. 1995-01-06 Richard Stallman * etags.c (C_entries): Ignore carriage return at end of line. 1994-12-26 Richard Stallman * fakemail.c (xmalloc, xrealloc): Add casts. (add_field): Handle <...> and "..." syntax. (setup_files, get_keyword): Clean up parens and line breaks. (args_size): Likewise. 1994-12-21 David J. MacKenzie * yow.c: Include program name in error messages. 1994-12-21 Richard Stallman * make-docfile.c (scan_lisp_file): Handle dynamic doc strings. (xmalloc, fatal, error): New functions. (progname): New variable. (main): Set progname. 1994-12-05 Richard Stallman * emacsclient.c, emacsserver.c [HAVE_SYSVIPC]: Include sys/utsname.h. (main): If socket/mqueue name is in home dir, add in the host name. Rename .emacs_server to .emacs-server.... 1994-12-04 Richard Stallman * emacsclient.c [!HAVE_SYSVIPC] (main): Fix error message diction. 1994-11-22 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (print_help): Print --regex usage for ctags also. (main): Use -h in addition to -H as abbreviation for --help. 1994-11-16 Francesco Potortì (pot@cnuce.cnr.it) * etags.c [ETAGS_REGEXP]: All the new code that deals with regexps is compiled if this is defined. The new functions and variables added #ifdef ETAGS_REGEXP are not listed in this ChangeLog. [VMS]: All VMS specific code previously contained in etags-vmslib.c is now included here, modified for dealing with language and regex options intermixed with filenames. (header_file): Global variable deleted. (Lang_Function): New typedef. All language parser functions changed to this new type. (string_numeric_p, substr, prestr): Functions deleted. (readline_internal): Does the job that readline did previously. (longopts): --language and --regex options added. (lang_names, lang_extensions, lang_func, print_language_names): New structures, variables and functions for choosing languages. (print_help): Help strings updated. Calls print_language_names. (argument_type, ARGUMENT): Typedefs for dealing with language and regex options intermixed with filenames. (main): Change the way of dealing with arguments on the command line to deal with language and regex options intermixed with filenames. (get_language, default_C_entries, Cplusplus_entries, Cstar_entries, Yacc_entries, just_read_file): New functions. (find_entries): Use the new method for choosing the language. (Pascal_functions): Allow intermixing of comment styles. (prolog_getit, skip_comment): Rewritten for speed. (readline): Rewritten to deal with regexps. 1994-11-16 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (): #include added. (etags_getcwd): Check return value from getcwd. 1994-11-10 Richard Stallman * profile.c (TV1, TV2): Use EMACS_TIME as type. (get_time): Use EMACS_SUB_TIME. 1994-10-30 Geoff Voelker * ntlib.c: New file. * makefile.nt: New file. * make-docfile.c (main) [WINDOWSNT]: Set _fmode and stdout to O_BINARY. [WINDOWSNT]: Include the NT headers. (READ_TEXT, READ_BINARY): Test DOS_NT, not MSDOS. * etags.c (main, etags_getcwd): Test DOS_NT instead of MSDOS. [WINDOWSNT]: Include some NT headers. 1994-10-24 Jonathan I. Kamens (jik@cam.ov.com) * pop.c (getline): When a search of already-read input for CRLF fails, store the fact that we've searched it and don't search it again after reading more data. * pop.c (getline): When determining whether or not it's necessary to grow the input buffer, take into account the null that's stored at the end of already-read input in the buffer. 1994-10-21 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (prestr, substr): Return a logical type. (consider_token): Comment out "EXFUN". Use "DEFUN" instead of "DEF". (consider_token): Set funcdef to fignore when a DEFUN is met. (C_entries): Now we can use Tom Hageman patch for extern "C". 1994-10-20 Richard Stallman * movemail.c: PopServer renamed to popserver throughout. 1994-10-20 David J. MacKenzie * etags.c: Don't declare malloc, since we include config.h. * fakemail.c: Likewise. 1994-10-19 Richard Stallman * movemail.c: Don't declare malloc. 1994-10-19 David J. MacKenzie * rcs-checkin: Use test -r instead of < to check readability, to avoid syntax error. 1994-10-19 Jonathan I. Kamens (jik@cam.ov.com) * pop.c: Only include ../src/config.h if HAVE_CONFIG_H is defined, and if HAVE_CONFIG_H isn't defined, define MAIL_USE_POP always (so that this file can be included in other programs besides emacs). * pop.c: Only declare h_errno if HAVE_H_ERRNO isn't defined or HAVE_CONFIG_H isn't defined. * pop.c (find_crlf, getline): Instead of using strstr, use a custom function for finding CRLF. (my_strstr): Function deleted. 1994-10-17 Jonathan I. Kamens (jik@cam.ov.com) * pop.c (getline): Fix a segfault because of passing a non-null-terminated string into strstr(). Fix from djm@va.pubnix.com (David J. MacKenzie). * pop.c: Don't include and . * pop.c: Include before , rather than after. They should be interchangeable, and indeed the inclusion is done in both orders in various files in the Kerberos 4 library sources, but djm@va.pubnix.com (David J. MacKenzie) reports that BSDI requires that be included first, and I don't see any harm in changing the order. * pop.c: Include ../src/config.h, to get HAVE_STRING_H and STDC_HEADERS, if they're defined. Undef open, read, write and close after including it. 1994-10-18 Richard Stallman * pop.c: Fix mismatch in conditionals. * make-docfile.c (main): Don't process one input file twice. Never use exit code > 1. * pop.c (open, close, read, write): Add #undefs. * pop.c: Don't declare malloc, realloc, free. Include ../src/config.h. Don't include string.h or strings.h. Include des.h before krb.h. Do declare my_strstr. (getline): Really use my_strstr. Leave one empty place in server->buffer, and put a null at the end of the data in it. 1994-10-17 Andreas Schwab * emacsserver.c [SYSV_IPC] (main): Catch SIGHUP as well. Don't call kill with pid 0. Handle EINTR when receiving messages. 1994-10-17 Karl Heuer * Makefile.in.in (regex.o): Use full path to find regex.c. 1994-10-17 Francesco Potortì (pot@fly.cnuce.cnr.it) * Makefile.in.in (etags): Add dependency on regex.o, link with it. (REGEXPOBJ, REGEXPDEPS, regex.o): Target and macros added. 1994-10-12 David J. MacKenzie (djm@duality.gnu.ai.mit.edu) * Makefile.in.in (DONT_INSTALL): Remove make-path. (${archlibdir}): Use mkinstalldirs instead. * movemail.c: Make functions that return nothing void, not implicitly int. (main): Improve usage message. (error): Write to stderr, not stdout. * b2m.c, cvtmail.c, digest-doc.c, emacsclient.c, emacsserver.c: * etags.c, fakemail.c, hexl.c, make-docfile.c, profile.c, sorted-doc.c: * test-distrib.c, timer.c, wakeup.c, yow.c: Eliminate some -Wall warnings from unused variables and implicitly declared functions. 1994-10-11 Richard Stallman * Makefile.in.in (clean): rm DOC* and *.tab.[ch]. (distclean): Not here. * Makefile.in.in (libexecdir): Rename from libdir. 1994-10-11 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (C_entries): Name the #define's that are macros. 1994-10-10 Roland McGrath * emacsserver.c [! SYSVIPC] (main): Fix uses of FD_* macros: fd_set arg is a pointer, descriptor arg comes first. 1994-09-29 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (C_entries): Recognize typedef of ANSI style functions. (C_entries): Recognize #define inside a struct. (C_entries): ANSI tells that preprocessor commands do not have to start on the first column. (print_help): Documentation corrected for -d and -D. (white, endtk): ANSI tells the vertical tab is a separator. 1994-09-24 Jonathan I. Kamens (jik@gza-client1.aktis.com) * Makefile.in.in (MOVE_FLAGS, MOVE_LIBS): New variables. (pop.o, movemail.o): New targets. (movemail): Link in pop.o and movemail.o. Use MOVE_LIBS, MOVE_FLAGS. * pop.c, pop.h: New files. * movemail.c: Improve POP code, move most of it into a separate file. (mbx_delimit_end, mbx_delimit_begin): Check for errors. (mbx_write): Check for errors and for From line. (pop_retr, popmail): Use subroutines in pop.c to do the real work. (get_errmsg, multiline, getline, putline, pop_stat, pop_command) (pop_init): Functions deleted. 1994-09-23 Richard Stallman * make-path.c (touchy_mkdir): Make dir ugo+rx even if it isn't new. Rename path to dirname. 1994-09-23 Richard Stallman * Makefile.in.in (UTILITIES): Remove test-distrib, make-docfile, make-path. (DONT_INSTALL): New variable--list those files here. (clean): Delete the files in DONT_INSTALL. 1994-09-20 Richard Stallman * b2m.c (from, labels, data): Use MAX_DATA_LEN as length. (main): Use fgets, not gets. 1994-09-17 Richard Stallman * timer.c: Don't declare malloc. 1994-09-16 Karl Heuer * emacsserver.c (FD_*) [HAVE_SOCKETS & !HAVE_SYSVIPC]: If not already defined, use simple 32-bit versions of these macros. (main) [HAVE_SOCKETS & !HAVE_SYSVIPC]: Use these macros. 1994-09-16 Andreas Schwab * etags.c (etags_getcwd): Use getcwd if available. 1994-09-11 Richard Stallman * Version 19.27 released. 1994-09-07 Richard Stallman * Version 19.26 released. 1994-08-15 Paul Eggert * rcs2log: Add support for CVS. Work with `rlog's that output ISO 8601 dates. 1994-08-09 Lawrence R. Dodd * rcs2log: Use <> to delimit email address. 1994-08-06 Richard Stallman * emacsserver.c [SYSV_IPC] (main): Make a separate process so we can listen for multiple requests. 1994-08-04 Richard Stallman * movemail.c: Include config.h first thing. 1994-08-01 Richard Stallman * emacsserver.c (main): Add casts to avoid warnings. 1994-07-29 Richard Stallman * Makefile.in.in (${archlibdir}): Compare the proper dir before installing the scripts. 1994-07-27 Richard Stallman * emacsclient.c (main): New local var progname saves argv[0]. 1994-07-26 Richard Stallman * emacsclient.c (main): Don't actually modify argv[0]. Modify a copy instead. 1994-07-25 Richard Stallman * profile.c (reset_watch, get_time): Use EMACS_GET_TIME. (tzp): Var deleted. * Makefile.in.in: Add #undef alloca. 1994-07-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) * timer.c (xmalloc): New function. 1994-07-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (ALLOCA_CFLAGS): New variable. (alloca.o): New target. 1994-07-08 Dave Love (d.love@dl.ac.uk) * etags.c (takeprec): Recognize `character*(*) function'. 1994-07-08 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (main): Don't barf on obsolete -t and -T switches. (main): Print an explicative message when a switch is not known. 1994-06-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) * hexl.c: Don't declare exit or perror. * emacsserver.c (main): Don't declare geteuid. Don't declare getenv if convex. 1994-06-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (test-distrib): Use ALL_CFLAGS. 1994-06-03 Francesco Potortì (pot@fly.cnuce.cnr.it) * etags.c (absolute_filename): Remove infinite loop bug when accessing files in directories whose name begins with a dot. 1994-06-03 Francesco Potortì (pot@fly.cnuce.cnr.it) * etags.c (etags_getcwd): Delete the trailing newline from cwd. 1994-06-01 Morten Welinder (terra@diku.dk) * yow.c (rootrelativepath) [MSDOS]: Define, expanding to dynamic location of data directory. 1994-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.25 released. 1994-05-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (distclean): Delete Makefile, Makefile.in, blessmail. 1994-05-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (blessmail): Don't depend on ../src/emacs. 1994-05-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.24 released. 1994-05-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) * make-docfile.c (write_c_args): Put `default' in upper case. 1994-05-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) * etags.c (etags_getcwd): Cast result of popen. (popen): Declaration deleted. 1994-05-17 Karl Heuer (kwzh@gnu.ai.mit.edu) * etags.c [!MSDOS]: Declare popen. 1994-05-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) * b2m.c (main): Avoid crash if argc is 1. 1994-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.23 released. * Makefile.in.in (blessmail): Specify directory for blessmail.el. 1994-05-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (maybe-blessmail): Mention bless-mail is in lib-src. 1994-05-05 David J. MacKenzie (djm@nutrimat.gnu.ai.mit.edu) * Makefile.in.in: Fix out of date comment. 1994-05-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in: Put in a separator for where to start cpp procssing. Move all autoconf substitutions above that point. Above that point, use Make-style comments. This goes with changes in ../configure.in. 1994-05-03 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (maybe-blessmail): New target to print the blessmail warning message. (${archlibdir}): Don't do it here. Don't depend on blessmail. 1994-05-02 Karl Heuer (kwzh@gnu.ai.mit.edu) * Makefile.in.in (${archlibdir}): Be lenient about wc output format. 1994-05-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (${archlibdir}): Don't run blessmail; instead print advice to run it, if it has anything significant to do. And only if MOVEMAIL_NEEDS_BLESSING. (blessmail): Use emacs, not temacs. (configuration): Rename from configname. 1994-04-30 Morten Welinder (terra@diku.dk) * etags.c (find_entries): Treat `*.cpp' as C++ files. 1994-04-30 Morten Welinder (terra@diku.dk) * etags.c [MSDOS]: #include for the following. [MSDOS] (etags_getcwd): Define simple MSDOS version without spawning a shell. 1994-04-29 Morten Welinder (terra@diku.dk) * hexl.c [MSDOS]: Don't define proto type for exit. 1994-04-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) * b2m.c: Don't include string.h or strings.h. 1994-04-27 Karl Heuer (kwzh@gnu.ai.mit.edu) * Makefile.in.in: C_SWITCH_SYSTEM and C_SWITCH_MACHINE are now cpp symbols, not make variables. 1994-04-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in (etags, ctags): Make VERSION a string constant. * etags.c (print_version): Print VERSION as a string. 1994-04-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) * fakemail.c (readline): Fix updating of p when buffer grows. 1994-04-20 Karl Heuer (kwzh@gnu.ai.mit.edu) * Makefile.in.in (blessmail): New target. ${archlibdir}: Use blessmail when installing movemail. 1994-04-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) * fakemail.c (readline): When extending the buffer, calculate end afresh using the new size. 1994-04-18 Francesco Potortì (pot@fly.cnuce.cnr.it) * etags.c (main, print_help): Eliminate the -F option. 1994-04-18 Francesco Potortì (pot@fly.cnuce.cnr.it) * etags.c (absolute_filename): Compare against '\0' instead of NULL. 1994-04-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in.in: Renamed from Makefile.in. Makefile.in is now generated from it, and then preprocessed. Change comments to C syntax. Include config.h. (LIBS_SYSTEM, LIBS_MACHINE): Define as empty if not defined. (LOADLIBES): Define from LIBS_SYSTEM and LIBS_MACHINE. 1994-04-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) * movemail.c [HAVE_UNISTD_H]: Include unistd.h. 1994-04-12 Francesco Potortì (pot@fly.cnuce.cnr.it) * etags.c (etags_getcwd): Initialize bufsize. 1994-04-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) * profile.c (gettimeofday): If system doesn't have this, define it to give a fatal error. 1994-04-11 Karl Heuer (kwzh@gnu.ai.mit.edu) * movemail.c (main): Use setuid, not seteuid. 1994-04-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) * etags.c: #undef static. 1994-04-08 Francesco Potortì (pot@fly.cnuce.cnr.it) * etags.c (outf, outfiledir): Rename to tagf, tagfiledir. (PF_funcs, Asm_funcs, L_funcs, PAS_funcs, TEX_funcs) (Scheme_funcs, prolog_funcs): Rename to Fortran_functions, Asm_labels, Lisp_functions, Pascal_functions, Scheme_functions, TeX_functions, Prolog_functions. (inf): No more a global variable. (C_entries): Take 2nd parameter `inf' instead of using the global one. (find_entries): Add the cp1 var for optimization. (find_entries): Add more suffixes for assembler files. (Asm_funcs): Now finds labels even without an ending colon. 1994-03-30 Francesco Potortì (pot@fly.cnuce.cnr.it) * etags.c (main): Use etags_getcwd for compatibility. (etags_getcwd): New function. 1994-03-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (etags, ctags): Pass -D for VERSION. 1994-03-25 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (emacs_tags_format, ETAGS): Remove. Use CTAGS instead. (main): Don't allow the use of -t and -T in etags mode. (print_help): Don't show options enabled by default. (print_version): Show the emacs version number if VERSION is #defined. (find_entries): Add "ss" as suffix for Chez Scheme. 1994-03-23 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (cwd, outfiledir): Vars added. (relative_filename, absolute_filename, absolute_dirname): functions added to compute filenames in tags files. (process_file): Filenames in tags file are relative to the directory where the tags file is (useful with the -o option). (main): Initialize the outfiledir var. (TYPEDST): Add the `tignore' value. (C_entries): Corrected various small bugs. 1994-03-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (UTILITIES): `env' deleted. (env): Target deleted. * env.c: File deleted. 1994-03-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (install, ${archlibdir}): Switch back to .. before running INSTALL_PROGRAM. 1994-03-14 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (TYPEDST): Add the `tignore' value. (C_entries): Corrected various bugs, now correctly parses the `extern "C" {' construction (patch by Tom R.Hageman). 1994-03-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) * b2m.c: Use <...> to include config.h. Don't include stdlib.h. 1994-03-03 Heiko Muenkel (muenkel@tnt.uni-hannover.de) * b2m.c (main): Change delimiter from "^L" to "^_^L". Allow for text following "BABYL OPTIONS:". Add --help option. Use argv[0] in error messages. 1994-03-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) * emacsclient.c (main) [HAVE_SYSVIPC]: Make msgp->mtext longer if necessary. On HPUX, error if it's more than 512 chars. 1994-02-26 David J. MacKenzie (djm@geech.gnu.ai.mit.edu) * etags-vmslib.c: Use GPL. * emacstool.c: Use GPL. * fakemail.c: Update GPL. * make-path.c (main): Return 1 on error, not -1. Update GPL. * cvtmail.c: Declare malloc, realloc, xmalloc, xrealloc, getenv. (xmalloc, xrealloc): Return char *, not int. (error): Write to stderr, not stdout. Update GPL. 1994-02-23 Karl Heuer (kwzh@gnu.ai.mit.edu) * profile.c (main, get_time): Don't crash on invalid input. 1994-02-22 Karl Heuer (kwzh@gnu.ai.mit.edu) * profile.c (get_time): Simplify; avoid calling index. (main): Exit on EOF. 1994-02-17 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (--absolute-pathnames): Option removed. 1994-02-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) * fakemail.c (put_line): Don't break the line if it all fits. 1994-02-14 Francesco Potortì (pot@fly) * etags.c (absolute_pathnames, cwd): Add global vars. (longopts, print_help, main, process_file): Put absolute filenames in the tag file if the -A --absolute-pathnames option is used. (print_help): Alphabetically order the options. (malloc, realloc, strcpy, strncpy, strcmp): Remove extern declar. 1994-02-09 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (C_SWITCH_MACHINE): Get this from autoconf. (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Use C_SWITCH_MACHINE. 1994-02-07 Christian Lynbech (lynbech@avignon) * emacsserver.c (main) [HAVE_SYSVIPC]: Reverse test of fork value. 1994-02-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (UTILITIES): Mention profile. (profile): New target. * profile.c: New file. 1994-01-16 Roland McGrath (roland@churchy.gnu.ai.mit.edu) * make-docfile.c: Make the argument list output look more like the Lisp docstrings do. (write_c_args): Take new arg FUNC. Make output look like lisp call prototypes: (function ARG1 ARG2), upcasing args. (scan_c_file): Pass BUF to write_c_args for FUNC arg. 1994-01-14 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (stab_entry, stab_create, stab_find, stab_search, stab_type, add_keyword, C_reate_stab, C_create_stabs): Delete. Use gperf generated hash table instead of linked list. (C_stab_entry, hash, in_word_set, get_C_stab, C_symtype): Add. Mostly code generated by gperf. (consider_token): Remove unused parameter `lp'. (PF_funcs, getit): Allow subroutine and similar declarations to span multiple lines. (C_entries): Check for newline if inchar to avoid bus errors. (process_file, find_entries): Distinguish among nonexistent and not regular file. 1994-01-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) * timer.c: Include errno.h; don't include fasync.h. (schedule): Don't return a value. (sigcatch): Reestablish the handler first. (getevent): Always call notify at the end. (notify): Defer alarms around the whole body of function. 1994-01-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) * timer.c (main): Don't request SIGIO, and don't handle it. Loop calling getevent. (sigcatch): Delete code to handle SIGIO. if defer_alarms is set, don't call notify, just set alarm_deferred. (getevent): Use read, not getchar. Handle EINTR and EAGAIN. Set defer_alarms around realloc and schedule. If alarm_deferred gets set, call notify. Likewise if this event is the only pending event. Make buf and buf_size global variables. Don't malloc buf if it is already non-zero. (schedule): Just exit if run out of memory. Return the number of events. (signal) [_CX_UX]: Add #undef. 1994-01-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) * timer.c [USG] (SIGIO): Define as SIGPOLL. (main) [USG]: Do ioctl to enable SIGPOLL. 1994-01-08 Roland McGrath (roland@churchy.gnu.ai.mit.edu) * timer.c: Don't declare sys_errlist; declare strerror instead. (schedule, main): Call strerror instead of using sys_errlist. * movemail.c (get_errmsg, pfatal_with_name, pfatal_and_delete): Call strerror instead of using sys_errlist. * env.c (main): Call strerror instead of using sys_errlist. * emacsclient.c: Don't declare sys_errlist; declare strerror instead. (main): Call strerror instead of using sys_errlist. * emacsclient.c [! HAVE_STRERROR] (strerror): Define the function. * env.c [! HAVE_STRERROR] (strerror): Likewise. * timer.c [! HAVE_STRERROR] (strerror): Likewise. * movemail.c [! HAVE_STRERROR] (strerror): Likewise. 1994-01-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) * hexl.c: Fix up whitespace. Get rid of spurious casts to void. * movemail.c (malloc): Don't declare it. (xmalloc): Cast result of malloc. (strcpy): Don't declare it. 1993-11-14 Morten Welinder (terra@diku.dk) * hexl.c [MSDOS]: Use binary file modes for non-text side of pipe. (main): Use fclose to close file opened by fopen. * fakemail.c (main) [MSDOS]: Dummy stub just to make the file compile. * movemail.c [MSDOS]: #undef `access'. * b2m.c (main) [MSDOS]: Open all files as binary. * etags.c (main) [MSDOS]: Open all files as binary. * make-docfile.c [MSDOS]: Use text/binary mode as appropriate. (scan_c_file, scan_lisp_file): Extra parameter for the mode to open with. 1994-01-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (ALL_CFLAGS): Include LDFLAGS. Use ALL_CFLAGS in all the rules that compile and link with one cmd. (LINK_CFLAGS): New variable. (timer): Use LINK_CFLAGS. 1993-12-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) * movemail.c: Include syswait.h. Fork a subprocess and use it to copy the mail file. 1993-12-07 Richard Stallman (rms@srarc2) * make-docfile.c (scan_lisp_file): Don't add newline at end of string. 1993-12-04 Richard Stallman (rms@srarc2) * movemail.c (main): When making tempname, cast result of xmalloc. Include room for EXXXXXX in the size. Don't use result of strcpy. 1993-12-03 Paul Eggert (eggert@twinsun.com) * vcdiff: Add --brief option. 1993-12-02 Richard Stallman (rms@srarc2) * Makefile.in (${archlibdir}, install): Use $(INSTALL_PROGRAM) for all executables and scripts. 1993-11-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.22 released. 1993-11-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (mostlyclean): Make it distinct from clean. 1993-11-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (${archlibdir}): Don't do chown or chgrp. 1993-11-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.21 released. * Makefile.in (install): Don't change mode or group when installing. * etags.c (FUNCST, TYPEDST, STRUCTST, DEFINEST): Delete excess commas. 1993-11-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) * make-docfile.c (read_c_string): For "", concatenate the two strings. * movemail.c (main): Fix error message text. 1993-11-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.20 released. 1993-11-08 Tom Hageman (tom@basil.icce.rug.nl) * etags.c (C_entries): Keep track of ()-parenthesis level so that functions returning a pointer to a function, a la `signal', can be parsed. This also required new state `fstartlist' to `FUNCST'. (SAVE_TOKEN, RESTORE_TOKEN, TOKEN_SAVED_P): 1-deep token save stack. (C_entries, CNL): Use it to isolate preprocessor directive processing from the other state engines. (begtk): Add '~', for C++ class destructors. 1993-11-02 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (consider_token): Remove unused variable firsttok. (prolog_getit): Call pfnote with the right number of arguments. 1993-10-19 Paul Eggert (eggert@twinsun.com) * rcs2log (printlogline): Don't generate lines containing only white space. 1993-10-04 Roland McGrath (roland@churchy.gnu.ai.mit.edu) * Makefile.in (${archlibdir}): Install ${SCRIPTS} from ${srcdir}, not cwd. 1993-10-03 Roland McGrath (roland@churchy.gnu.ai.mit.edu) * Makefile.in: Fixed typos or brainos of whoever thought `@' was the comment character. 1993-10-01 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (process_file): Dead code removed. (S_ISREG): #define it using S_IFREG if not defined. (process_file): Regular files have nothing to do with symlinks. 1993-09-28 Brian J. Fox (bfox@ai.mit.edu) * Makefile.in (${archlibdir}): Install ${SCRIPTS} from ${srcdir}, not from current directory. Only chmod and chgrp files that we installed, which excludes ${INSTALLABLE_SCRIPTS}. They go in ${bindir}. (INSTALLFLAGS): Delete definition, since it is an unused variable now. 1993-09-27 Brian J. Fox (bfox@ai.mit.edu) * Makefile.in (INSTALL, INSTALL_PROGRAM, INSTALL_DATA): Let configure figure out the correct values for these variables. 1993-09-14 Brian J. Fox (bfox@ai.mit.edu) * Makefile.in (archlibdir): Only install executables internally used by emacs; don't install bindir binaries here. 1993-09-24 Paul Eggert (eggert@twinsun.com) * rcs2log: Add -h, -n, -r options. By default, look for *,v files as well as RCS/*,v files. Use $TMPDIR (default /tmp) instead of /tmp. 1993-09-20 Francesco Potortì (pot@fly) * etags.c (C_entries): is_func is initialized here instead of in consider_token for the sake of the yacc rules section. (C_entries): Now class, struct, enum, union and typedef produce named tags. 1993-09-11 Roland McGrath (roland@baalperazim.gnu.ai.mit.edu) * yow.c: Include , instead of "src/paths.h". 1993-09-10 Roland McGrath (roland@churchy.gnu.ai.mit.edu) * Makefile.in: Support configuring in a different directory when ${srcdir} has already been configured. (ALL_CFLAGS, CPP_CFLAGS): Put -I. -I../src before -I${srcdir} -I${srcdir}/../src. (b2m, movemail, fakemail, env, emacsserver, emacsclient, getdate.o, timer.o, timer): Remove `-I${srcdir}/../src', since it is already in CPP_FLAGS. * etags.c, emacsclient.c, wakeup.c, timer.c, b2m.c, fakemail.c, movemail.c, emacsserver.c: Include instead of "config.h". 1993-08-25 Paul Eggert (eggert@twinsun.com) * rcs2log: Change /{/ to /\{/ for POSIX ERE compatibility; otherwise, HP awk complains. * vcdiff: Append /usr/ccs/bin and /usr/sccs to PATH, since these are common hangouts for SCCS commands. 1993-08-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.19 released. 1993-08-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (make-path): Dep on config.h. 1993-08-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) * b2m.c (TRUE, FALSE): Don't define if already defined. 1993-08-09 Paul Eggert (eggert@twinsun.com) * rcs2log (awkscript): Some sites put comma-separated junk after the fullname. Remove it, but leave "Bill Gates, Jr" alone. Remove the junk from fullnames like "0000-Admin(0000)". 1993-08-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.18 released. 1993-08-04 Francesco Potortì (pot@spiff.gnu.ai.mit.edu) * etags.c (L_isdef, L_isquote, L_getit): Small optimizations. (L_funcs): The (foo::defmumble stuff now should work. (consider_token): Function returned random value--corrected. (C_entries): Corrected == versus = typo. 1993-08-01 Roland McGrath (roland@churchy.gnu.ai.mit.edu) * etags.c (put_entries): For NODE->rewritten, put pattern before \177 and name after, not vice versa. 1993-08-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) * timer.c (main): Generate a SIGIO as soon as we've initialized. 1993-07-30 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (FINCST): Add the fignore status. Means we are after the parameter list and before the open curly brace. Allows correct parsing of C++ constructors. (C_entries, consider_token): Make use of fignore. (consider_token): Reset funcdef when next_token_is_func: when in ctags mode makes DEFVAR and others work better. (L_isquote): Function that recognizes the "(quote" string. (L_getit): Ignore quoting via "'" or "(quote". Useful for defalias. 1993-07-29 Paul Eggert (eggert@twinsun.com) * rcs-checkin: Don't check whether a file is readable until we have decided not to ignore it. 1993-07-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (etags): Depend on ../src/config.h. * emacsserver.c: Include types.h before file.h. 1993-07-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (install): Use .n, not .new, for temporary filenames. 1993-07-18 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.17 released. 1993-07-15 Jim Blandy (jimb@totoro.cs.oberlin.edu) * etags.c (print_help): Break up the very long strings containing the help message into shorter strings, to placate chintzy C compilers which can't handle strings that long. * wakeup.c: Use CPP tangle from autoconf manual to #include the correct combination of and . 1993-07-08 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (alloca): Remove all references to it. (main): Now calls xnew instead of alloca for portability. (../src/config.h): Included only if HAVE_CONFIG_H. (const): Void definition removed--config.h takes care of it. 1993-07-08 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (consider_token): Was `==', now is `='. (consider_token): DEFUNs now treated like funcs in ctags mode. * etags.c (LEVEL_OK_FOR_FUNCDEF): Remove. (C_entries): Optimized the test that used LEVEL_OK_FOR_FUNCDEF. (C_entries): Remove a piece of useless code. (C_entries): Making typedef tags is delayed until a semicolon is met. This handles "typedef int X, Y, Z;" correctly. 1993-07-06 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * Version 19.16 released. * b2m.c: #include . (ltoday): Declare this to be time_t. 1993-06-30 Paul Eggert (eggert@twinsun.com) * vcdiff: Add -q option. 1993-06-29 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * etags.c: #include "config.h" and the alloca CPP tangle before #including the system headers and getopt.h. AIX requires the #pragma to come before any actual C code. 1993-06-21 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Makefile.in (ctags): Depend on etags, so that parallel makes don't write etags.o files on top of each other. 1993-06-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * version 19.15 released. 1993-06-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) * etags.c (add_node): Move var last_node to file scope. 1993-06-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Version 19.14 released. 1993-06-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) Bring mumbleclean targets into conformance with GNU coding standards. * Makefile.in (distclean): Call clean to do most of the work. Delete aixcc.c and TAGS. (realclean): Just call distclean. * Makefile.in: Remember, spaces are not tabs. 1993-06-13 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (CPP_CFLAGS): New variable. Use it instead of ALL_CFLAGS when compiling a .c file. (getopt.o, getopt1.o): Add explicit compilation commands. 1993-06-10 Mark D. Baushke (mdb@cisco.com) * etags.c: Reinstate old -f option as an alias for -o for installed base uses. 1993-06-09 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * emacsserver.c (main): When we're passing a `struct sockaddr_un' to bind or accept, cast the pointer, to avoid warnings on systems which declare prototypes for this. * emacsclient.c (main): Same. * Makefile.in (YACC): New variable, to be set by top-level Makefile. 1993-06-08 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Version 19.13 released. * wakeup.c: Include sys/types.h, too; I think that's where time_t comes from, not sys/time.h. 1993-06-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) * wakeup.c: Include sys/time.h. * etags.c: #undef static. * Version 19.12 released. * Makefile.in (all): Exclude INSTALLABLE_SCRIPTS and SCRIPTS from deps. 1993-06-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.11 released. * timer.c [LINUX]: #undef signal. * emacsserver.c: #undef signal. 1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) * wakeup.c (main): Make when a time_t. 1993-05-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Makefile.in (${archlibdir}): Use `(cd foo && pwd)' instead of `(cd foo ; pwd)' to get the canonical name of a directory; cd might fail, and have pwd print out the current directory. * movemail.c [MAIL_USE_POP] (main): Don't use non-portable string-handling functions. 1993-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Version 19.10 released. 1993-05-29 Paul Eggert (eggert@twinsun.com) * rcs2log: When given no file arguments, inspect RCS/.* as well as RCS/*. Don't report an error if RCS is empty or nonexistent. 1993-05-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (timer): Link with $(LOADLIBES). 1993-05-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) * fakemail.c (put_line): Don't output \n\t unless more text follows. 1993-05-28 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * etags.c: Replace the CPP tangle for alloca with the one from the autoconf documentation, since that's working elsewhere. 1993-05-27 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * Makefile.in (ALL_CFLAGS): Add "-I.", so the system and machine description files can find their ancestors. 1993-05-27 Richard Stallman (rms@mole.gnu.ai.mit.edu) * Makefile.in (install): Get the scripts from ${srcdir}, unlike the executables. (ALL_CFLAGS): Add -I../src. 1993-05-27 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * Version 19.9 released. 1993-05-26 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Makefile.in (install): Do install the programs listed in INSTALLABLE_SCRIPTS. Make the renaming loop use INSTALLABLES and INSTALLABLE_SCRIPTS, instead of writing the programs out. * Makefile.in (ALL_CFLAGS): Include -I${srcdir}. (getopt.o, getopt1.c): Use ${srcdir} as appropriate. 1993-05-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) * etags.c: Include ../src/config.h. * Makefile.in (install): Don't handle INSTALLABLE_SCRIPTS in first loop. Delete files from bindir before installing new ones. (ALL_CFLAGS): Use ${srcdir} to find .../src dir. 1993-05-24 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Version 19.8 released. * make-docfile.c: Doc fix. 1993-05-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) * tcp.c: Fix comment syntax at top of file. (main): Don't call htons with the port number. 1993-05-24 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Makefile.in (timer.o, sorted-doc.c): Link with alloca.o, if it's appropriate. * Makefile.in (install): Refer to the variables INSTALLABLES and INSTALLABLE_SCRIPTS, instead of writing them out. 1993-05-23 Richard Stallman (rms@mole.gnu.ai.mit.edu) * make-path.c (main): Return 0. 1993-05-22 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * Version 19.7 released. 1993-05-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) * make-docfile.c (scan_lisp_file): Recognize defalias like fset. 1993-05-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) * tcp.c: New file. 1993-05-18 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Makefile.in (.c.o): Make the rule start with a tab, not spaces. 1993-05-15 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * timer.c (notify): Don't call sighold or sigrelse; they're USG only. We should really fix this later, but let's just make it compile for now. Install patches from David J. Mackenzie to make the srcdir option work. * Makefile.in (srcdir, VPATH): Get this value from the top-level Makefile. (INSTALLABLES): Split this into two lists - INSTALLABLES and INSTALLABLE_SCRIPTS. (INSTALLABLE_SCRIPTS): New list. (EXECUTABLES): Include INSTALLABLE_SCRIPTS. (${archlibdir}): The scripts to be installed live in the source tree, not in the object tree. (test-distrib): Note that the data file lives in the source tree, not the object tree. (GETOPTDEPS): Note that getopt.h lives in the source tree. (all other targets): Change references to source files to use ${srcdir}, except for config.h, which lives in the object dir. (timer.o): Note that this depends on ../src/config.h. * make-docfile.c (main): Add a -d option, to tell it where to find the source files. * test-distrib.c (main): Take the name of the distribution file to test from the command line. * timer.c: Fix misspellings of get_date function's name. 1993-05-12 Roland McGrath (roland@geech.gnu.ai.mit.edu) * etags.c (main): Don't require that there be input files if -i switches were given. 1993-05-09 Jim Blandy (jimb@totoro.cs.oberlin.edu) The GNU coding standards specify that CFLAGS should be left for users to set. * Makefile.in (CFLAGS): Put this in the "things configure might edit" section, and have it default to -g. (ALL_CFLAGS): New variable, set to all the flags which should be passed to compilations. Replace all other uses of CFLAGS with ALL_CFLAGS. (.c.o): New rule, to pass ALL_CFLAGS to compilations. * Makefile.in (DEFS): Remove this; it's always just going to be "-DHAVE_CONFIG_H -Demacs". 1993-05-03 Paul Eggert (eggert@twinsun.com) * rcs2log: mawk, SunOS 4.1.3 nawk, and Ultrix/MKS nawk all barf on /[/]/, so change it to /[\/]/. This should work on all POSIX-compliant awks. It's slightly wrong with traditional awk, since it matches \ too, but that's a minor problem compared to awk syntax errors. 1993-05-01 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * Makefile.in (ALLOCA): New variable, whose value we should inherit from the top-level makefile. (etags, ctags): Include ALLOCA in the list of object files that these executables depend on and link. 1993-04-09 Jim Blandy (jimb@totoro.cs.oberlin.edu) * Makefile.in (DEFS): Rename from CONFIG_CFLAGS. 1993-04-07 Jim Blandy (jimb@churchy.gnu.ai.mit.edu) * make-docfile.c (write_c_args): Print an argument named "defalt" as "default". 1993-03-24 Jim Blandy (jimb@geech.gnu.ai.mit.edu) * Makefile.in (C_SWITCH_SYSTEM): New variable. (CFLAGS): Include C_SWITCH_SYSTEM in the flags to pass to the compiler. 1993-03-22 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (YACC): Flag added to c_ext. (c_ext): No more a synonim for c_ext&C_PLPL because of YACC. (find_entries): Consistently use streq when reasonable. (find_entries): A .y file is a yacc file. (get_C_stab): c_ext becomes c_ext&C_PLPL. (C_entries): Logical cplpl means c_ext&C_PLPL. (C_entries): Logical yacc_rules means we are after the first %%. (C_entries): Add logic for yacc files. 1993-03-16 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (C_entries): ':' case moved to the second switch. (C_entries): Do not examine token if structdef==scolonseen. (consider_token): structtag set to null string for enum. 1993-03-12 Francesco Potortì (pot@cnuce.cnr.it) * etags.c (GET_COOKIE): And related macros removed. (logical): Is now int, no more a char. (reg): Define deleted. (isgood, _gd, notgd): Delete. (gotone): Delete. (TOKEN): Member linestart removed. (linepos, prev_linepos, lb1): Delete. (main): Call initbuffer on lbs array instead of lb1. (init): Remove the initialization of the logical _gd array. (find_entries): A .sa suffix means assembler file. (C_create_stab): "auto", "void", "extern", "static" are st_C_typespec. All C state machines rewritten. (C_entries): Complete rewrite. (condider_token): Complete rewrite. (getline): Delete. 1993-03-01 Francesco Potortì (pot@fly.CNUCE.CNR.IT) * etags.c (C_entries): Add the quotednl logical variable. Used for parsing of #define's spanning multiple lines. 1993-02-23 Francesco Potortì (pot@fly.CNUCE.CNR.IT) * etags.c (C_entries): Save the definedef status even when a newline is met inside a string. 1993-03-19 Eric S. Raymond (eric@geech.gnu.ai.mit.edu) * Makefile.in (EXECUTABLES): Add rcs-checkin. * Makefile.in (unlock, relock): New productions. 1993-03-16 Paul Eggert (eggert@twinsun.com) * rcs2log: Some awks don't understand "\r". Code around this. Unfortunately this requires putting a carriage return in the source code. Don't assume that rlog will tolerate times like `10:10:60'; RCS 5.7 won't allow this. 1993-03-10 Jim Blandy (jimb@totoro.cs.oberlin.edu) * timer.c (main): Set the ownership of the stdin file descriptor to the current process. Print error messages if either of the fcntl's fails. * timer.c (sigcatch): Declare this to return SIGTYPE (defined in ../src/config.h), not void. 1993-03-06 Jim Blandy (jimb@totoro.cs.oberlin.edu) * b2m.c (main): Don't exit upon reading a blank line. 1993-03-01 Francesco Potortì (pot@fly.CNUCE.CNR.IT) * etags.c (C_entries): New local variable quotednl. Used for parsing of #define's spanning multiple lines. * etags.c (C_entries): Save the definedef status even when a newline is met inside a string. 1993-02-26 Jim Blandy (jimb@totoro.cs.oberlin.edu) * timer.c (notify): Initialize waitfor properly. 1993-02-22 Francesco Potortì (pot@CNUCE.CNR.IT) * etags.c (C_entries): Don't reset definedef when a newline inside a comment is met. 1993-01-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) * etags.c (find_entries): If filename ends in .f or .for, don't try anything but Fortran. 1993-01-08 Michael I Bushnell (mib@geech.gnu.ai.mit.edu) * timer.c (notify): Flush stdout after writing message to avoid lossage on terminals. (notify): Also, write a newline after the token. 1992-12-12 Jim Blandy (jimb@totoro.cs.oberlin.edu) * Makefile.in (exec_prefix): New variable. (bindir, libdir): Use it instead of `prefix'. * Makefile.in (CFLAGS): #define HAVE_CONFIG_H, too. * Makefile.in (libdir): Default to ${prefix}/lib. (archlibdir): Adjust to match. * Makefile.in (distclean): Don't delete backup or autosave files. (extraclean): Like realclean, but does delete backup and autosave files. * Makefile.in (realclean): Ignore errors from rm. * Makefile.in (distclean): Don't bother to delete ../arch-lib; that doesn't exist anymore. 1992-12-11 Jim Blandy (jimb@totoro.cs.oberlin.edu) * Makefile.in (prefix, bindir, libdir, srcdir): New variables, as described in the top-level Makefile. (UTILITIES): Add make-path to the list of utility programs. (../arch-lib): Replaced by the ${archlibdir} target, which places the executables in their permanent home. (install, install.sysv, install.xenix): Consolidated into one target which should work under all circumstances, modulo a few ignored error messages. * make-docfile.c (scan_c_file): Since DEFVAR_PER_BUFFER now takes a different number of arguments than other DEFVARs, recognize it specially, and expect the right number of commas. 1992-12-04 Jim Blandy (jimb@totoro.cs.oberlin.edu) * make-path.c: New program, to help with the installation process. * Makefile.in (make-path): New target. * make-path.c (touchy_mkdir): Remove debugging output. 1992-11-05 Jim Blandy (jimb@totoro.cs.oberlin.edu) * Makefile.in (getdate.o): Add explicit target for this, so we can indicate that it depends on ../src/config.h. 1992-11-04 Jim Blandy (jimb@totoro.cs.oberlin.edu) * Makefile.in (CONFIG_CFLAGS): Let the configure script edit this instead of CFLAGS. (CFLAGS): Add -Demacs and -I../src to CONFIG_CFLAGS to produce this. 1992-09-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * getdate.y: Correctly recognize Mt. Xinu BSD running on an HP 9000/300 as BSD; don't include both and on that system. * Makefile.in (arch-lib): Give rm the `-f' option. 1992-09-28 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * make-docfile.c (write_c_args): Rewritten to correctly print &optionals before the first identifier, but after the first paren. This code used to just wait for commas or spaces; now it notices identifier boundaries. 1992-09-26 Roland McGrath (roland@churchy.gnu.ai.mit.edu) * rcs2log: When getting date, use %02d instead of %.2d in awk printf. 1992-09-23 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * make-docfile.c (write_c_args): Print the argument lists properly when the first argument is optional. 1992-09-19 Richard Stallman (rms@mole.gnu.ai.mit.edu) * sorted-doc.c (main): Redefine special chars to use fonts tensy, teni. Redefine @item. Set catcode of +. 1992-08-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) * emacsclient.c (main): Set IPC_CREAT in msgget call. 1992-08-20 Richard Stallman (rms@mole.gnu.ai.mit.edu) * etags.c (TEX_funcs): Keep just 1 of two redundant nested loops. (TEX_decode_env): Make `tab' one element longer. 1992-08-20 Jim Blandy (jimb@pogo.cs.oberlin.edu) * etags.c (PF_funcs): Recognize the "entry" keyword. 1992-08-18 Jim Blandy (jimb@pogo.cs.oberlin.edu) * Makefile.in: Add rcs2log and vcdiff to the list of utilities. 1992-08-14 Jim Blandy (jimb@pogo.cs.oberlin.edu) * timer.c (events): Rather than having slots marked as in use or out of use by the `token' field, keep all pending events at the beginning of the array. When we delete an event in the middle of the array, we move the last event into its place. (num_events): New variable. (schedule): It is now cheaper to find a free event slot; events[num_events] is the first free slot. (notify): Scan events[0 .. num_events-1], instead of the whole array. When an event fires, move the last event in the array into its spot. Use num_events to determine whether or not there are any pending events, not wait_for. (getevent): Delete unused variable `ep'. (sigcatch): It's now easier to find all the active events. (main): Initialize num_events. * etags.c: Rather than fret about which systems have index and which systems have strchr, and how to tell the difference between them, we just write out our own versions. Big deal. (index, rindex): Extern declarations removed. (NEED_INDEX, NEED_RINDEX): Special hacks for hpux removed. (etags_index, etags_rindex): New declarations. (process_file, find_entries, pfnote, TEX_funcs, TEX_decode_env, TEX_getit, substr): Use the etags_*index functions, rather than the native *index functions. (rindex, index): Rename to etags_rindex and tags_rindex, and made them unconditionally defined, rather than having them depend on NEED_*INDEX. * etags.c (savenstr): Add declaration for this at top of file. (TEX_decode_env): Don't declare it local to this function. * b2m.c: #include "../src/config.h", so we can test for the USG macro, and decide whether to include or . * Makefile.in: Note that b2m.c depends on ../src/config.h. 1992-08-13 Jim Blandy (jimb@pogo.cs.oberlin.edu) * timer.c: Reformatted according to the GNU coding standards. Removed arbitrary limits on the number of events queued and the length of the tokens used to identify them. Removed casts to (void). Removed debugging printfs; they clutter the code, and the need can be better filled using a real debugger. 1992-08-07 Jim Blandy (jimb@pogo.cs.oberlin.edu) * timer.c: Installed new version from Eric Raymond; this is more portable, since it doesn't try to use SIGIO. 1992-07-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * emacsclient.c (main): If we can't find the socket in this person's home directory, print a message which asks if they've started the server, instead of just printing the message from sys_errmsg; Cygnus finds that people are much less confused by this. 1992-07-14 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * etags.c: Rather than defining "notdef" when "hpux" is #defined, so that index and rindex get defined, why don't we actually control index and rindex using symbols called "NEED_INDEX" and "NEED_RINDEX", and define them if hpux is defined? Isn't that a little more readable than defining something whose name implies that it's not? 1992-07-08 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * movemail.c: Merged changes from Jamie Zawinski's byte compiler distribution: Miscellaneous doc fixes. (skip_white, read_lisp_symbol): New functions. (scan_lisp_file): Instead of using long hairy strings of ifs, call read_lisp_symbol and then see what we got. Call skip_white instead of writing out a loop to do its job. Correctly extract docstrings from "defmacro" declarations. 1992-06-25 Jim Blandy (jimb@pogo.cs.oberlin.edu) * movemail.c (strcpy): Declare this to return char *. 1992-06-18 Jim Blandy (jimb@pogo.cs.oberlin.edu) * etags.c (C_entries): When we find a C++ comment, do actually skip to the end of the line; do a 'break' instead of a 'continue'. 1992-06-11 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * etags.c (getit): Add missing parenthesis to expression which decides if this token is an identifier. 1992-06-04 Roland McGrath (roland@geech.gnu.ai.mit.edu) * etags.c (consider_token): Recognize `ENTRY' macro used in libc. 1992-05-30 Richard Stallman (rms@mole.gnu.ai.mit.edu) * etags.c (put_entries): Always put space between name and line num. 1992-05-28 Ken Raeburn (Raeburn@Cygnus.COM) * etags.c (getit): Parenthesize &&/|| expression to avoid gcc warning. (LEVEL_OK_FOR_FUNCDEF): Ditto. 1992-05-19 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * make-docfile.c (write_c_args): Pass both arguments to putc. 1992-05-10 Roland McGrath (roland@albert.gnu.ai.mit.edu) * etags.c (C_entries): Fix reading of "..." strings. (consider_token): Recognize `SYSCALL' and `PSEUDO' macros, used in the C library source. * etags.c (C_entries): When we see a backslash inside a quoted string, skip to the next character. This allows us to correctly deal with strings containing quotes. 1992-05-08 Jim Blandy (jimb@pogo.cs.oberlin.edu) * make-docfile.c (write_c_args): Print the C argument names as they would be written in Elisp; print '_' as '-'. 1992-05-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) * movemail.c [POP]: Get user name via getpwuid. 1992-05-04 Jim Blandy (jimb@pogo.cs.oberlin.edu) * Makefile.in: Flags in CC invocations rearranged for no reason. 1992-04-20 Jim Blandy (jimb@pogo.cs.oberlin.edu) * etags.c (print_help): Remember not to embed raw newlines in strings - end the lines with `\n\'. 1992-04-17 Jim Blandy (jimb@pogo.cs.oberlin.edu) * timer.c (getevent): Remove declaration of memcpy; since different systems have different return types, and we're not even using the return type anyway, it wasn't doing us any good. 1992-04-16 Jim Blandy (jimb@pogo.cs.oberlin.edu) * emacsserver.c (msgcatch): Use the SIGTYPE macro to declare the type of this function. 1992-04-08 Jim Blandy (jimb@pogo.cs.oberlin.edu) * etags.c: "--no-warning" option renamed to "--no-warn", to be consistent with other GNU programs, like makeinfo. * Makefile: Renamed to Makefile.in; the configure script will edit this to produce Makefile. 1992-04-08 Jim Blandy (jimb@pogo.cs.oberlin.edu) New directory, with files previously in ../etc. [approximate date] * README: New file. * Makefile: Copy here from ../etc/Makefile. * aixcc.lex, b2m.c, cvtmail.c, digest-doc.c: * emacsclient.c, emacsserver.c, emacstool.c, env.c: * etags-vmslib.c, etags.c, fakemail.c, getdate.c, getdate.y: * getopt.c, getopt.h, getopt1.c, hexl.c, leditcfns.c: * make-docfile.c, movemail.c, qsort.c, sorted-doc.c: * test-distrib.c, testfile, timer.c, wakeup.c, yow.c: Move here from ../etc. ;; Local Variables: ;; coding: utf-8 ;; End: Copyright (C) 1988-1999, 2001-2014 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see .