# HG changeset patch # User Katsumi Yamaoka # Date 1273150300 0 # Node ID 00dd71f829e6904106b425140deabb783e097e63 # Parent 1d1025faed5fe0b41f7cf014dfe9dc65ce9cbf64# Parent d9345841fefd7ad7ae12e6564a145e04be9d4d62 Merge from mainline. diff -r 1d1025faed5f -r 00dd71f829e6 ChangeLog --- a/ChangeLog Wed May 05 10:17:53 2010 +0000 +++ b/ChangeLog Thu May 06 12:51:40 2010 +0000 @@ -1,3 +1,10 @@ +2010-05-06 Glenn Morris + + * configure.in (AC_PROG_LN_S): Remove test, nothing uses @LN_S@. + + * Makefile.in (CPP, C_SWITCH_SYSTEM, ALLOCA, LN_S, C_SWITCH_X_SITE) + (LD_SWITCH_X_SITE): Remove unused variables. + 2010-05-04 Glenn Morris * configure.in (LD_SWITCH_X_SITE_AUX): Use AC_SUBST only, not AC_DEFINE diff -r 1d1025faed5f -r 00dd71f829e6 Makefile.in --- a/Makefile.in Wed May 05 10:17:53 2010 +0000 +++ b/Makefile.in Thu May 06 12:51:40 2010 +0000 @@ -69,15 +69,9 @@ # ==================== Things `configure' Might Edit ==================== CC=@CC@ -CPP=@CPP@ -C_SWITCH_SYSTEM=@C_SWITCH_SYSTEM@ -ALLOCA=@ALLOCA@ -LN_S=@LN_S@ CFLAGS=@CFLAGS@ LDFLAGS=@LDFLAGS@ CPPFLAGS=@CPPFLAGS@ -C_SWITCH_X_SITE=@C_SWITCH_X_SITE@ -LD_SWITCH_X_SITE=@LD_SWITCH_X_SITE@ EXEEXT=@EXEEXT@ MAKEINFO=@MAKEINFO@ diff -r 1d1025faed5f -r 00dd71f829e6 configure --- a/configure Wed May 05 10:17:53 2010 +0000 +++ b/configure Thu May 06 12:51:40 2010 +0000 @@ -694,7 +694,6 @@ CPP GREP EGREP -LN_S INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA @@ -5026,17 +5025,6 @@ #### Some other nice autoconf tests. -{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5 -$as_echo_n "checking whether ln -s works... " >&6; } -LN_S=$as_ln_s -if test "$LN_S" = "ln -s"; then - { $as_echo "$as_me:$LINENO: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5 -$as_echo "no, using $LN_S" >&6; } -fi - ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -6021,7 +6009,7 @@ ## Some programs in src produce warnings saying certain subprograms ## are too complex and need a MAXMEM value greater than 2000 for ## additional optimization. --nils@exp-math.uni-essen.de -test "$opsys" = "aix4.2" && test "x$GCC" = "xyes" && \ +test "$opsys" = "aix4.2" && test "x$GCC" != "xyes" && \ C_SWITCH_SYSTEM="-ma -qmaxmem=4000" ## gnu-linux might need -D_BSD_SOURCE on old libc5 systems. ## It is redundant in glibc2, since we define _GNU_SOURCE. diff -r 1d1025faed5f -r 00dd71f829e6 configure.in --- a/configure.in Wed May 05 10:17:53 2010 +0000 +++ b/configure.in Thu May 06 12:51:40 2010 +0000 @@ -755,7 +755,6 @@ #### Some other nice autoconf tests. dnl checks for programs -AC_PROG_LN_S AC_PROG_CPP AC_PROG_INSTALL if test "x$RANLIB" = x; then diff -r 1d1025faed5f -r 00dd71f829e6 lib-src/ChangeLog --- a/lib-src/ChangeLog Wed May 05 10:17:53 2010 +0000 +++ b/lib-src/ChangeLog Thu May 06 12:51:40 2010 +0000 @@ -1,3 +1,12 @@ +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 @@ -7,12 +16,6 @@ * Makefile.in (LIBS_MACHINE): Remove all uses, unused. -2010-04-18 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-12 Dan Nicolaescu * Makefile.in (ALL_CFLAGS, LINK_CFLAGS, CPP_CFLAGS): Move to the @@ -3003,7 +3006,7 @@ 2000-03-02 Gerd Moellmann - * etags.c (lisp_suffixes) Add `LSP'. + * etags.c (lisp_suffixes): Add `LSP'. 2000-02-10 Francesco Potortì diff -r 1d1025faed5f -r 00dd71f829e6 lib-src/Makefile.in --- a/lib-src/Makefile.in Wed May 05 10:17:53 2010 +0000 +++ b/lib-src/Makefile.in Thu May 06 12:51:40 2010 +0000 @@ -1,7 +1,6 @@ # Makefile for lib-src subdirectory in GNU Emacs. # Copyright (C) 1985, 1987, 1988, 1993, 1994, 2001, 2002, 2003, 2004, -# 2005, 2006, 2007, 2008, 2009, 2010 -# Free Software Foundation, Inc. +# 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -132,6 +131,9 @@ # If neither flag is set, blessmail is used. MOVE_FLAGS= +## May be reset below by cpp. +BLESSMAIL_TARGET= + ## -lkrb if HAVE_LIBKRB or -lkrb4 if HAVE_LIBKRB4 KRB4LIB=@KRB4LIB@ ## -ldes if HAVE_LIBDES or -ldes425 if HAVE_LIBDES425 @@ -170,22 +172,14 @@ #ifndef LIBS_SYSTEM #define LIBS_SYSTEM #endif +LOADLIBES=LIBS_SYSTEM -#undef MOVEMAIL_NEEDS_BLESSING #ifndef MAIL_USE_FLOCK #ifndef MAIL_USE_LOCKF -#define MOVEMAIL_NEEDS_BLESSING +BLESSMAIL_TARGET = need-blessmail #endif #endif -#ifdef MOVEMAIL_NEEDS_BLESSING -#define BLESSMAIL blessmail -#else -#define BLESSMAIL -#endif - -LOADLIBES=LIBS_SYSTEM - .SUFFIXES: .m @@ -218,14 +212,14 @@ vcdiff: $(srcdir)/vcdiff -cp -p $(srcdir)/vcdiff vcdiff -#ifdef MOVEMAIL_NEEDS_BLESSING +/* Only used if we need blessmail, but no harm in always defining. + This makes the actual blessmail executable. */ blessmail: $(EMACS) $(EMACSOPT) -l $(srcdir)/../lisp/mail/blessmail.el chmod +x blessmail -#endif -maybe-blessmail: BLESSMAIL -#ifdef MOVEMAIL_NEEDS_BLESSING +/* This checks if we need to run blessmail. */ +need-blessmail: blessmail /* Don\'t charge ahead and do it! Let the installer decide. ./blessmail $(DESTDIR)${archlibdir}/movemail${EXEEXT} */ @if [ `wc -l + + * net/tramp.el (top, with-progress-reporter): Use + `symbol-function' inside `funcall'. + + * net/tramp-compat.el (tramp-compat-file-attributes) + (tramp-compat-delete-file, tramp-compat-delete-directory): Handle + only `wrong-number-of-arguments' error. + + * net/tramp-gvfs.el (tramp-gvfs-handle-copy-file): Fix typo. + (tramp-gvfs-handle-file-selinux-context): Use `symbol-function' + inside `funcall'. + +2010-05-06 Stefan Monnier + + * minibuffer.el (completion--sreverse, completion--common-suffix): + New functions. + (completion-pcm--merge-completions): Extract common suffix when safe. + + * emacs-lisp/easy-mmode.el (define-minor-mode): + Make :variable more flexible. + * files.el (auto-save-mode): Use it to define using define-minor-mode. + +2010-05-05 Juri Linkov + + Add `slow' and `history' tags to the desktop data. + + * info.el (Info-virtual-nodes) [*Index*]: Add `slow' tag. + (Info-virtual-files) [*Apropos*]: Add `slow' tag. + (Info-finder-find-node): Require `finder.el' to be able + to restore node from the desktop. + (Info-desktop-buffer-misc-data): Save all nodes. Save additional + data `Info-history' and `slow' tag in the assoc list. + (Info-restore-desktop-buffer): Don't restore nodes with the + `slow' tag. Restore `Info-history'. + +2010-05-05 Michael Albinus + + Add FORCE argument to `delete-file'. + + * net/ange-ftp.el (ange-ftp-del-tmp-name): Make it a defun, + forcing to delete the temporary file. + (ange-ftp-delete-file): Add FORCE arg. + (ange-ftp-rename-remote-to-remote) + (ange-ftp-rename-local-to-remote, ange-ftp-rename-remote-to-local) + (ange-ftp-load, ange-ftp-compress, ange-ftp-uncompress): + Force file deletion. + + * net/tramp-compat.el (tramp-compat-delete-file): New defun. + + * net/tramp.el (tramp-handle-delete-file): Add FORCE arg. + (tramp-handle-make-symbolic-link, tramp-handle-load) + (tramp-do-copy-or-rename-file-via-buffer) + (tramp-do-copy-or-rename-file-directly) + (tramp-do-copy-or-rename-file-out-of-band) + (tramp-handle-process-file, tramp-handle-call-process-region) + (tramp-handle-shell-command, tramp-handle-file-local-copy) + (tramp-handle-insert-file-contents, tramp-handle-write-region) + (tramp-delete-temp-file-function): Use `tramp-compat-delete-file'. + + * net/tramp-fish.el (tramp-fish-handle-delete-file): Add FORCE arg. + (tramp-fish-handle-make-symbolic-link) + (tramp-fish-handle-process-file): Use `tramp-compat-delete-file'. + + * net/tramp-ftp.el (tramp-ftp-file-name-handler): + Use `tramp-compat-delete-file'. + + * net/tramp-gvfs.el (tramp-gvfs-handle-delete-file): Add FORCE arg. + (tramp-gvfs-handle-write-region): Use `tramp-compat-delete-file'. + + * net/tramp-imap.el (tramp-imap-handle-delete-file): Add FORCE arg. + (tramp-imap-do-copy-or-rename-file): Use `tramp-compat-delete-file'. + + * net/tramp-smb.el (tramp-smb-handle-delete-file): Add FORCE arg. + (tramp-smb-handle-copy-file, tramp-smb-handle-file-local-copy) + (tramp-smb-handle-rename-file, tramp-smb-handle-write-region): Use + `tramp-compat-delete-file'. + 2010-05-05 Stefan Monnier Minor cleanups. diff -r 1d1025faed5f -r 00dd71f829e6 lisp/emacs-lisp/easy-mmode.el --- a/lisp/emacs-lisp/easy-mmode.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/emacs-lisp/easy-mmode.el Thu May 06 12:51:40 2010 +0000 @@ -117,7 +117,10 @@ :keymap MAP Same as the KEYMAP argument. :require SYM Same as in `defcustom'. :variable PLACE The location (as can be used with `setf') to use instead - of the variable MODE to store the state of the mode. + of the variable MODE to store the state of the mode. PLACE + can also be of the form (GET . SET) where GET is an expression + that returns the current state and SET is a function that takes + a new state and sets it. For example, you could write (define-minor-mode foo-mode \"If enabled, foo on you!\" @@ -149,8 +152,9 @@ (type nil) (extra-args nil) (extra-keywords nil) - (variable nil) - (modefun mode) + (variable nil) ;The PLACE where the state is stored. + (setter nil) ;The function (if any) to set the mode var. + (modefun mode) ;The minor mode function name we're defining. (require t) (hook (intern (concat mode-name "-hook"))) (hook-on (intern (concat mode-name "-on-hook"))) @@ -171,7 +175,12 @@ (:type (setq type (list :type (pop body)))) (:require (setq require (pop body))) (:keymap (setq keymap (pop body))) - (:variable (setq variable (setq mode (pop body)))) + (:variable (setq variable (pop body)) + (if (not (functionp (cdr-safe variable))) + ;; PLACE is not of the form (GET . SET). + (setq mode variable) + (setq mode (car variable)) + (setq setter (cdr variable)))) (t (push keyw extra-keywords) (push (pop body) extra-keywords)))) (setq keymap-sym (if (and keymap (symbolp keymap)) keymap @@ -230,7 +239,8 @@ ;; repeat-command still does the toggling correctly. (interactive (list (or current-prefix-arg 'toggle))) (let ((,last-message (current-message))) - (,(if (symbolp mode) 'setq 'setf) ,mode + (,@(if setter (list setter) + (list (if (symbolp mode) 'setq 'setf) mode)) (if (eq arg 'toggle) (not ,mode) ;; A nil argument also means ON now. @@ -240,7 +250,8 @@ (run-hooks ',hook (if ,mode ',hook-on ',hook-off)) (if (called-interactively-p 'any) (progn - ,(if globalp `(customize-mark-as-set ',mode)) + ,(if (and globalp (symbolp mode)) + `(customize-mark-as-set ',mode)) ;; Avoid overwriting a message shown by the body, ;; but do overwrite previous messages. (unless (and (current-message) @@ -265,10 +276,15 @@ (t (error "Invalid keymap %S" ,keymap)))) ,(format "Keymap for `%s'." mode-name))) - ,(unless variable - `(add-minor-mode ',mode ',lighter + ,(if (not (symbolp mode)) + (if (or lighter keymap) + (error ":lighter and :keymap unsupported with mode expression %s" mode)) + `(with-no-warnings + (add-minor-mode ',mode ',lighter ,(if keymap keymap-sym - `(if (boundp ',keymap-sym) ,keymap-sym))))))) + `(if (boundp ',keymap-sym) ,keymap-sym)) + nil + ,(unless (eq mode modefun) 'modefun))))))) ;;; ;;; make global minor mode diff -r 1d1025faed5f -r 00dd71f829e6 lisp/files.el --- a/lisp/files.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/files.el Thu May 06 12:51:40 2010 +0000 @@ -5150,29 +5150,25 @@ (kill-buffer-ask buffer))))) -(defun auto-save-mode (arg) +(define-minor-mode auto-save-mode "Toggle auto-saving of contents of current buffer. With prefix argument ARG, turn auto-saving on if positive, else off." - (interactive "P") - (setq buffer-auto-save-file-name - (and (if (null arg) - (or (not buffer-auto-save-file-name) - ;; If auto-save is off because buffer has shrunk, - ;; then toggling should turn it on. - (< buffer-saved-size 0)) - (or (eq arg t) (listp arg) (and (integerp arg) (> arg 0)))) - (if (and buffer-file-name auto-save-visited-file-name - (not buffer-read-only)) - buffer-file-name - (make-auto-save-file-name)))) + :variable ((and buffer-auto-save-file-name + ;; If auto-save is off because buffer has shrunk, + ;; then toggling should turn it on. + (>= buffer-saved-size 0)) + . (lambda (val) + (setq buffer-auto-save-file-name + (cond + ((null val) nil) + ((and buffer-file-name auto-save-visited-file-name + (not buffer-read-only)) + buffer-file-name) + (t (make-auto-save-file-name)))))) ;; If -1 was stored here, to temporarily turn off saving, ;; turn it back on. (and (< buffer-saved-size 0) - (setq buffer-saved-size 0)) - (if (called-interactively-p 'interactive) - (message "Auto-save %s (in this buffer)" - (if buffer-auto-save-file-name "on" "off"))) - buffer-auto-save-file-name) + (setq buffer-saved-size 0))) (defun rename-auto-save-file () "Adjust current buffer's auto save file name for current conditions. diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/ChangeLog Thu May 06 12:51:40 2010 +0000 @@ -1,3 +1,12 @@ +2010-05-06 Tommi Vainikainen (tiny change) + + * mml-sec.el (mml-secure-message-sign): Fix cut and paste error. + +2010-05-06 Katsumi Yamaoka + + * gnus-dired.el, gnus-draft.el, gnus-ml.el, gnus-salt.el, gnus-sum.el, + gnus-undo.el, mml.el: Require easy-mmode for XEmacs when compiling. + 2010-05-03 Juanma Barranquero * mm-util.el (mm-decompress-buffer): Use `delete-file'; @@ -21,6 +30,12 @@ * gnus-dired.el (gnus-dired-mode-map): Initialize in declaration. (gnus-dired-mode): Use define-minor-mode. +2010-05-01 Andreas Seltenreich + + * mml.el (mml-generate-mime-1,mml-compute-boundary-1): Update 'mml + handles on recursive mml-to-mime translation and check them for + boundary delimiter collisions. Reported by: Greg Troxel. + 2010-04-27 Katsumi Yamaoka * gnus-util.el: Don't load tm and apel XEmacs packages when compiling. diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/gnus-dired.el --- a/lisp/gnus/gnus-dired.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/gnus-dired.el Thu May 06 12:51:40 2010 +0000 @@ -39,6 +39,9 @@ ;;; Code: +(eval-when-compile + (when (featurep 'xemacs) + (require 'easy-mmode))) ; for `define-minor-mode' (require 'dired) (autoload 'mml-attach-file "mml") (autoload 'mm-default-file-encoding "mm-decode");; Shift this to `mailcap.el'? diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/gnus-draft.el --- a/lisp/gnus/gnus-draft.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/gnus-draft.el Thu May 06 12:51:40 2010 +0000 @@ -32,6 +32,9 @@ (require 'nndraft) (require 'gnus-agent) (eval-when-compile (require 'cl)) +(eval-when-compile + (when (featurep 'xemacs) + (require 'easy-mmode))) ; for `define-minor-mode' ;;; Draft minor mode diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/gnus-ml.el --- a/lisp/gnus/gnus-ml.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/gnus-ml.el Thu May 06 12:51:40 2010 +0000 @@ -30,6 +30,9 @@ (require 'gnus) (require 'gnus-msg) (eval-when-compile (require 'cl)) +(eval-when-compile + (when (featurep 'xemacs) + (require 'easy-mmode))) ; for `define-minor-mode' ;;; Mailing list minor mode diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/gnus-salt.el --- a/lisp/gnus/gnus-salt.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/gnus-salt.el Thu May 06 12:51:40 2010 +0000 @@ -26,6 +26,9 @@ ;;; Code: (eval-when-compile (require 'cl)) +(eval-when-compile + (when (featurep 'xemacs) + (require 'easy-mmode))) ; for `define-minor-mode' (require 'gnus) (require 'gnus-sum) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/gnus-sum.el --- a/lisp/gnus/gnus-sum.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/gnus-sum.el Thu May 06 12:51:40 2010 +0000 @@ -30,6 +30,9 @@ (unless (fboundp 'declare-function) (defmacro declare-function (&rest r)))) (eval-when-compile (require 'cl)) +(eval-when-compile + (when (featurep 'xemacs) + (require 'easy-mmode))) ; for `define-minor-mode' (defvar tool-bar-mode) (defvar gnus-tmp-header) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/gnus-undo.el --- a/lisp/gnus/gnus-undo.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/gnus-undo.el Thu May 06 12:51:40 2010 +0000 @@ -45,6 +45,9 @@ ;;; Code: (eval-when-compile (require 'cl)) +(eval-when-compile + (when (featurep 'xemacs) + (require 'easy-mmode))) ; for `define-minor-mode' (require 'gnus-util) (require 'gnus) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/mml-sec.el --- a/lisp/gnus/mml-sec.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/mml-sec.el Thu May 06 12:51:40 2010 +0000 @@ -308,11 +308,11 @@ (defun mml-secure-message-sign (&optional method) - "Add MML tags to sign this MML part. + "Add MML tags to sign the entire message. Use METHOD if given. Else use `mml-secure-method' or `mml-default-sign-method'." (interactive) - (mml-secure-part + (mml-secure-message (or method mml-secure-method mml-default-sign-method) 'sign)) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/gnus/mml.el --- a/lisp/gnus/mml.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/gnus/mml.el Thu May 06 12:51:40 2010 +0000 @@ -33,6 +33,9 @@ (require 'mm-decode) (require 'mml-sec) (eval-when-compile (require 'cl)) +(eval-when-compile + (when (featurep 'xemacs) + (require 'easy-mmode))) ; for `define-minor-mode' (autoload 'message-make-message-id "message") (declare-function gnus-setup-posting-charset "gnus-msg" (group)) @@ -520,7 +523,10 @@ ;; `m-g-d-t' will be bound to "message/rfc822" ;; when encoding an article to be forwarded. (mml-generate-default-type "text/plain")) - (mml-to-mime)) + (mml-to-mime) + ;; Update handle so mml-compute-boundary can + ;; detect collisions with the nested parts. + (setcdr (assoc 'contents cont) (buffer-string))) (let ((mm-7bit-chars (concat mm-7bit-chars "\x1b"))) ;; ignore 0x1b, it is part of iso-2022-jp (setq encoding (mm-body-7-or-8)))) @@ -699,7 +705,7 @@ (defun mml-compute-boundary-1 (cont) (let (filename) (cond - ((eq (car cont) 'part) + ((member (car cont) '(part mml)) (with-temp-buffer (cond ((cdr (assq 'buffer cont)) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/info.el --- a/lisp/info.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/info.el Thu May 06 12:51:40 2010 +0000 @@ -3104,6 +3104,7 @@ (add-to-list 'Info-virtual-nodes '("\\`\\*Index.*\\*\\'" (find-node . Info-virtual-index-find-node) + (slow . t) )) (defvar Info-virtual-index-nodes nil @@ -3193,6 +3194,7 @@ (toc-nodes . Info-apropos-toc-nodes) (find-file . Info-apropos-find-file) (find-node . Info-apropos-find-node) + (slow . t) )) (defvar Info-apropos-file "*Apropos*" @@ -3348,6 +3350,7 @@ (defun Info-finder-find-node (filename nodename &optional no-going-back) "Finder-specific implementation of Info-find-node-2." + (require 'finder) (cond ((equal nodename "Top") ;; Display Top menu with descriptions of the keywords @@ -4836,21 +4839,35 @@ (defun Info-desktop-buffer-misc-data (desktop-dirname) "Auxiliary information to be saved in desktop file." - (unless (Info-virtual-file-p Info-current-file) - (list Info-current-file Info-current-node))) + (list Info-current-file + Info-current-node + ;; Additional data as an association list. + (delq nil (list + (and Info-history + (cons 'history Info-history)) + (and (Info-virtual-fun + 'slow Info-current-file Info-current-node) + (cons 'slow t)))))) (defun Info-restore-desktop-buffer (desktop-buffer-file-name desktop-buffer-name desktop-buffer-misc) "Restore an Info buffer specified in a desktop file." - (let ((first (nth 0 desktop-buffer-misc)) - (second (nth 1 desktop-buffer-misc))) - (when (and first second) - (when desktop-buffer-name - (set-buffer (get-buffer-create desktop-buffer-name)) - (Info-mode)) - (Info-find-node first second) - (current-buffer)))) + (let* ((file (nth 0 desktop-buffer-misc)) + (node (nth 1 desktop-buffer-misc)) + (data (nth 2 desktop-buffer-misc)) + (hist (assq 'history data)) + (slow (assq 'slow data))) + ;; Don't restore nodes slow to regenerate. + (unless slow + (when (and file node) + (when desktop-buffer-name + (set-buffer (get-buffer-create desktop-buffer-name)) + (Info-mode)) + (Info-find-node file node) + (when hist + (setq Info-history (cdr hist))) + (current-buffer))))) (add-to-list 'desktop-buffer-mode-handlers '(Info-mode . Info-restore-desktop-buffer)) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/minibuffer.el --- a/lisp/minibuffer.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/minibuffer.el Thu May 06 12:51:40 2010 +0000 @@ -1983,6 +1983,17 @@ (nconc (completion-pcm--hilit-commonality pattern all) (length prefix))))) +(defun completion--sreverse (str) + "Like `reverse' but for a string STR rather than a list." + (apply 'string (nreverse (mapcar 'identity str)))) + +(defun completion--common-suffix (strs) + "Return the common suffix of the strings STRS." + (completion--sreverse + (try-completion + "" + (mapcar 'completion--sreverse comps)))) + (defun completion-pcm--merge-completions (strs pattern) "Extract the commonality in STRS, with the help of PATTERN." ;; When completing while ignoring case, we want to try and avoid @@ -2044,7 +2055,17 @@ ;; `any' into a `star' because the surrounding context has ;; changed such that string->pattern wouldn't add an `any' ;; here any more. - (unless unique (push elem res)) + (unless unique + (push elem res) + (when (memq elem '(star point)) + ;; Extract common suffix additionally to common prefix. + ;; Only do it for `point' and `star' since for + ;; `any' it could lead to a merged completion that + ;; doesn't itself match the candidates. + (let ((suffix (completion--common-suffix comps))) + (assert (stringp suffix)) + (unless (equal suffix "") + (push suffix res))))) (setq fixed ""))))) ;; We return it in reverse order. res))))) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/ange-ftp.el --- a/lisp/net/ange-ftp.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/ange-ftp.el Thu May 06 12:51:40 2010 +0000 @@ -1734,7 +1734,10 @@ ange-ftp-gateway-tmp-name-template ange-ftp-tmp-name-template))) -(defalias 'ange-ftp-del-tmp-name 'delete-file) +(defun ange-ftp-del-tmp-name (filename) + "Force to delete temporary file." + (delete-file filename 'force)) + ;;;; ------------------------------------------------------------ ;;;; Interactive gateway program support. @@ -3504,7 +3507,7 @@ (file-exists-p file) (ange-ftp-real-file-executable-p file)))) -(defun ange-ftp-delete-file (file) +(defun ange-ftp-delete-file (file &optional force) (interactive "fDelete file: ") (setq file (expand-file-name file)) (let ((parsed (ange-ftp-ftp-name file))) @@ -3523,7 +3526,7 @@ (format "FTP Error: \"%s\"" (cdr result)) file))) (ange-ftp-delete-file-entry file)) - (ange-ftp-real-delete-file file)))) + (ange-ftp-real-delete-file file force)))) (defun ange-ftp-file-modtime (file) "Return the modification time of remote file FILE. @@ -3894,7 +3897,7 @@ (ange-ftp-add-file-entry newname) (ange-ftp-delete-file-entry filename)) (ange-ftp-copy-file-internal filename newname t nil) - (delete-file filename)))) + (delete-file filename 'force)))) (defun ange-ftp-rename-local-to-remote (filename newname) "Rename local file FILENAME to remote file NEWNAME." @@ -3903,7 +3906,7 @@ (msg (format "Renaming %s to %s" fabbr nabbr))) (ange-ftp-copy-file-internal filename newname t nil msg) (let (ange-ftp-process-verbose) - (delete-file filename)))) + (delete-file filename 'force)))) (defun ange-ftp-rename-remote-to-local (filename newname) "Rename remote file FILENAME to local file NEWNAME." @@ -3912,7 +3915,7 @@ (msg (format "Renaming %s to %s" fabbr nabbr))) (ange-ftp-copy-file-internal filename newname t nil msg) (let (ange-ftp-process-verbose) - (delete-file filename)))) + (delete-file filename 'force)))) (defun ange-ftp-rename-file (filename newname &optional ok-if-already-exists) (interactive "fRename file: \nFRename %s to file: \np") @@ -4193,7 +4196,7 @@ (if copy (unwind-protect (funcall 'load copy noerror nomessage nosuffix) - (delete-file copy)) + (delete-file copy 'force)) (or noerror (signal 'file-error (list "Cannot open load file" file))) nil)) @@ -4264,7 +4267,7 @@ (if (zerop (buffer-size)) (progn (let (ange-ftp-process-verbose) - (delete-file file)) + (delete-file file 'force)) (ange-ftp-copy-file-internal tmp2 nfile t nil msg2)))) (ange-ftp-del-tmp-name tmp1) (ange-ftp-del-tmp-name tmp2)))) @@ -4300,7 +4303,7 @@ (if (zerop (buffer-size)) (progn (let (ange-ftp-process-verbose) - (delete-file file)) + (delete-file file 'force)) (ange-ftp-copy-file-internal tmp2 nfile t nil msg2)))) (ange-ftp-del-tmp-name tmp1) (ange-ftp-del-tmp-name tmp2)))) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/tramp-compat.el --- a/lisp/net/tramp-compat.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/tramp-compat.el Thu May 06 12:51:40 2010 +0000 @@ -262,7 +262,7 @@ (tramp-file-name-handler 'file-attributes filename id-format)) (t (condition-case nil (funcall (symbol-function 'file-attributes) filename id-format) - (error (file-attributes filename)))))) + (wrong-number-of-arguments (file-attributes filename)))))) ;; PRESERVE-UID-GID has been introduced with Emacs 23. It does not ;; hurt to ignore it for other (X)Emacs versions. @@ -317,6 +317,24 @@ (if keep-time (set-file-times newname (nth 5 (file-attributes directory)))))))) +;; FORCE has been introduced with Emacs 24.1. +(defun tramp-compat-delete-file (filename &optional force) + "Like `delete-file' for Tramp files (compat function)." + (if (null force) + (delete-file filename) + (condition-case nil + (funcall (symbol-function 'delete-file) filename force) + ;; This Emacs version does not support the FORCE flag. Setting + ;; `delete-by-moving-to-trash' shall give us the same effect. + (wrong-number-of-arguments + (let ((delete-by-moving-to-trash + (cond + ((null force) t) + ((boundp 'delete-by-moving-to-trash) + (symbol-value 'delete-by-moving-to-trash)) + (t nil)))) + (delete-file filename)))))) + ;; RECURSIVE has been introduced with Emacs 23.2. (defun tramp-compat-delete-directory (directory &optional recursive) "Like `delete-directory' for Tramp files (compat function)." @@ -326,7 +344,7 @@ (funcall (symbol-function 'delete-directory) directory recursive) ;; This Emacs version does not support the RECURSIVE flag. We ;; use the implementation from Emacs 23.2. - (error + (wrong-number-of-arguments (setq directory (directory-file-name (expand-file-name directory))) (if (not (file-symlink-p directory)) (mapc (lambda (file) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/tramp-fish.el --- a/lisp/net/tramp-fish.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/tramp-fish.el Thu May 06 12:51:40 2010 +0000 @@ -332,7 +332,7 @@ (tramp-flush-directory-property v localname) (tramp-fish-send-command-and-check v (format "#RMD %s" localname))))) -(defun tramp-fish-handle-delete-file (filename) +(defun tramp-fish-handle-delete-file (filename &optional force) "Like `delete-file' for Tramp files." (when (file-exists-p filename) (with-parsed-tramp-file-name (expand-file-name filename) nil @@ -658,7 +658,7 @@ localname))))) (tramp-error v 'file-already-exists "File %s already exists" localname) - (delete-file linkname))) + (tramp-compat-delete-file linkname 'force))) ;; If FILENAME is a Tramp name, use just the localname component. (when (tramp-tramp-file-p filename) @@ -837,8 +837,8 @@ ;; Provide error file. (when tmpstderr (rename-file tmpstderr (cadr destination) t)) ;; Cleanup. - (when tmpinput (delete-file tmpinput)) - (when tmpoutput (delete-file tmpoutput)) + (when tmpinput (tramp-compat-delete-file tmpinput 'force)) + (when tmpoutput (tramp-compat-delete-file tmpoutput 'force)) ;; Return exit status. ret))) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/tramp-ftp.el --- a/lisp/net/tramp-ftp.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/tramp-ftp.el Thu May 06 12:51:40 2010 +0000 @@ -1,7 +1,7 @@ ;;; tramp-ftp.el --- Tramp convenience functions for Ange-FTP -;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, -;; 2008, 2009, 2010 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, +;; 2009, 2010 Free Software Foundation, Inc. ;; Author: Michael Albinus ;; Keywords: comm, processes @@ -182,7 +182,7 @@ (unwind-protect (rename-file tmpfile newname (car args)) ;; Cleanup. - (ignore-errors (delete-file tmpfile))))) + (ignore-errors (tramp-compat-delete-file tmpfile 'force))))) ;; Normally, the handlers must be discarded. ;; `inhibit-file-name-handlers' isn't sufficient, because the diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/tramp-gvfs.el --- a/lisp/net/tramp-gvfs.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/tramp-gvfs.el Thu May 06 12:51:40 2010 +0000 @@ -525,7 +525,7 @@ newname) ok-if-already-exists keep-date preserve-uid-gid))) (when preserve-selinux-context - (setq args (append args (list preserve-uid-gid)))) + (setq args (append args (list preserve-selinux-context)))) (apply 'copy-file args))) (defun tramp-gvfs-handle-delete-directory (directory &optional recursive) @@ -533,9 +533,9 @@ (tramp-compat-delete-directory (tramp-gvfs-fuse-file-name directory) recursive)) -(defun tramp-gvfs-handle-delete-file (filename) +(defun tramp-gvfs-handle-delete-file (filename &optional force) "Like `delete-file' for Tramp files." - (delete-file (tramp-gvfs-fuse-file-name filename))) + (tramp-compat-delete-file (tramp-gvfs-fuse-file-name filename) force)) (defun tramp-gvfs-handle-directory-files (directory &optional full match nosort) @@ -629,7 +629,8 @@ (defun tramp-gvfs-handle-file-selinux-context (filename) "Like `file-selinux-context' for Tramp files." - (funcall 'file-selinux-context (tramp-gvfs-fuse-file-name filename))) + (funcall (symbol-function 'file-selinux-context) + (tramp-gvfs-fuse-file-name filename))) (defun tramp-gvfs-handle-file-writable-p (filename) "Like `file-writable-p' for Tramp files." @@ -741,7 +742,7 @@ "gvfs-save" tmpfile (tramp-get-buffer v) nil (tramp-gvfs-url-file-name filename))) (signal (car err) (cdr err))) - (delete-file tmpfile))))) + (tramp-compat-delete-file tmpfile 'force))))) ;; Set file modification time. (when (or (eq visit t) (stringp visit)) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/tramp-imap.el --- a/lisp/net/tramp-imap.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/tramp-imap.el Thu May 06 12:51:40 2010 +0000 @@ -268,7 +268,7 @@ (tramp-message v 0 "Transferring %s to %s...done" filename newname)) (when (eq op 'rename) - (delete-file filename)))) + (tramp-compat-delete-file filename 'force)))) ;; TODO: revise this much (defun tramp-imap-handle-expand-file-name (name &optional dir) @@ -553,7 +553,7 @@ ;; (file-exists-p (file-name-directory filename))) (file-directory-p (file-name-directory filename))) -(defun tramp-imap-handle-delete-file (filename) +(defun tramp-imap-handle-delete-file (filename &optional force) "Like `delete-file' for Tramp files." (cond ((not (file-exists-p filename)) nil) diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/tramp-smb.el --- a/lisp/net/tramp-smb.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/tramp-smb.el Thu May 06 12:51:40 2010 +0000 @@ -342,7 +342,7 @@ (condition-case err (rename-file tmpfile newname ok-if-already-exists) ((error quit) - (delete-file tmpfile) + (tramp-compat-delete-file tmpfile 'force) (signal (car err) (cdr err)))) ;; Remote newname. @@ -404,7 +404,7 @@ (tramp-error v 'file-error "%s `%s'" (match-string 0) directory)))))) -(defun tramp-smb-handle-delete-file (filename) +(defun tramp-smb-handle-delete-file (filename &optional force) "Like `delete-file' for Tramp files." (setq filename (expand-file-name filename)) (when (file-exists-p filename) @@ -611,7 +611,7 @@ (tramp-message v 4 "Fetching %s to tmp file %s...done" filename tmpfile) ;; Oops, an error. We shall cleanup. - (delete-file tmpfile) + (tramp-compat-delete-file tmpfile 'force) (tramp-error v 'file-error "Cannot make local copy of file `%s'" filename)) tmpfile))) @@ -858,7 +858,7 @@ (condition-case err (rename-file tmpfile newname ok-if-already-exists) ((error quit) - (delete-file tmpfile) + (tramp-compat-delete-file tmpfile 'force) (signal (car err) (cdr err)))) ;; Remote newname. @@ -881,7 +881,7 @@ v 0 "Copying file %s to file %s...done" filename newname) (tramp-error v 'file-error "Cannot rename `%s'" filename))))) - (delete-file filename)) + (tramp-compat-delete-file filename 'force)) (defun tramp-smb-handle-set-file-modes (filename mode) "Like `set-file-modes' for Tramp files." @@ -945,7 +945,7 @@ (tramp-message v 5 "Writing tmp file %s to file %s...done" tmpfile filename) (tramp-error v 'file-error "Cannot write `%s'" filename)) - (delete-file tmpfile)) + (tramp-compat-delete-file tmpfile 'force)) (unless (equal curbuf (current-buffer)) (tramp-error diff -r 1d1025faed5f -r 00dd71f829e6 lisp/net/tramp.el --- a/lisp/net/tramp.el Wed May 05 10:17:53 2010 +0000 +++ b/lisp/net/tramp.el Thu May 06 12:51:40 2010 +0000 @@ -145,7 +145,8 @@ ;; this would load dbus.el. (when (and (featurep 'dbusbind) (condition-case nil - (funcall 'dbus-get-unique-name :session) + (funcall (symbol-function 'dbus-get-unique-name) + :session) (error nil)) (tramp-compat-process-running-p "gvfs-fuse-daemon")) 'tramp-gvfs) @@ -2273,7 +2274,7 @@ ;; introduced in Emacs 24.1. (when (<= ,level tramp-verbose) (condition-case nil - (setq pr (funcall 'make-progress-reporter ,message) + (setq pr (funcall (symbol-function 'make-progress-reporter) ,message) tm (run-at-time 3 0.1 'progress-reporter-update pr)) (error nil))) (unwind-protect @@ -2511,7 +2512,7 @@ l-localname))))) (tramp-error l 'file-already-exists "File %s already exists" l-localname) - (delete-file linkname))) + (tramp-compat-delete-file linkname 'force))) ;; If FILENAME is a Tramp name, use just the localname component. (when (tramp-tramp-file-p filename) @@ -2559,7 +2560,7 @@ ;; MUST-SUFFIX doesn't exist on XEmacs, so let it default to nil. (unwind-protect (load local-copy noerror t t) - (delete-file local-copy))) + (tramp-compat-delete-file local-copy 'force))) (unless nomessage (tramp-message v 0 "Loading %s...done" file)) t))) @@ -3737,7 +3738,7 @@ ;; Set the mode. (set-file-modes newname (tramp-default-file-modes filename)) ;; If the operation was `rename', delete the original file. - (unless (eq op 'copy) (delete-file filename))) + (unless (eq op 'copy) (tramp-compat-delete-file filename 'force))) (defun tramp-do-copy-or-rename-file-directly (op filename newname ok-if-already-exists keep-date preserve-uid-gid) @@ -3892,7 +3893,7 @@ ;; Save exit. (condition-case nil - (delete-file tmpfile) + (tramp-compat-delete-file tmpfile 'force) (error))))))))) ;; Set the time and mode. Mask possible errors. @@ -3932,7 +3933,7 @@ (if dir-flag (tramp-compat-delete-directory (expand-file-name ".." tmpfile) 'recursive) - (delete-file tmpfile)) + (tramp-compat-delete-file tmpfile 'force)) (error)))) ;; Expand hops. Might be necessary for gateway methods. @@ -4050,7 +4051,7 @@ ;; If the operation was `rename', delete the original file. (unless (eq op 'copy) (if (file-regular-p filename) - (delete-file filename) + (tramp-compat-delete-file filename 'force) (tramp-compat-delete-directory filename 'recursive)))))) (defun tramp-handle-make-directory (dir &optional parents) @@ -4080,7 +4081,7 @@ (tramp-shell-quote-argument localname)))) (tramp-error v 'file-error "Couldn't delete %s" directory)))) -(defun tramp-handle-delete-file (filename) +(defun tramp-handle-delete-file (filename &optional force) "Like `delete-file' for Tramp files." (setq filename (expand-file-name filename)) (with-parsed-tramp-file-name filename nil @@ -4599,7 +4600,7 @@ ;; Cleanup. We remove all file cache values for the connection, ;; because the remote process could have changed them. - (when tmpinput (delete-file tmpinput)) + (when tmpinput (tramp-compat-delete-file tmpinput 'force)) ;; `process-file-side-effects' has been introduced with GNU ;; Emacs 23.2. If set to `nil', no remote file will be changed @@ -4636,7 +4637,7 @@ (when delete (delete-region start end)) (unwind-protect (apply 'call-process program tmpfile buffer display args) - (delete-file tmpfile)))) + (tramp-compat-delete-file tmpfile 'force)))) (defun tramp-handle-shell-command (command &optional output-buffer error-buffer) @@ -4701,7 +4702,7 @@ (when (listp buffer) (with-current-buffer error-buffer (insert-file-contents (cadr buffer))) - (delete-file (cadr buffer))) + (tramp-compat-delete-file (cadr buffer) 'force)) (if current-buffer-p ;; This is like exchange-point-and-mark, but doesn't ;; activate the mark. It is cleaner to avoid activation, @@ -4783,7 +4784,7 @@ filename loc-dec) (unwind-protect (tramp-call-local-coding-command loc-dec tmpfile2 tmpfile) - (delete-file tmpfile2)))) + (tramp-compat-delete-file tmpfile2 'force)))) (tramp-message v 5 "Decoding remote file %s...done" filename) ;; Set proper permissions. @@ -4797,7 +4798,7 @@ ;; Error handling. ((error quit) - (delete-file tmpfile) + (tramp-compat-delete-file tmpfile 'force) (signal (car err) (cdr err)))) (run-hooks 'tramp-handle-file-local-copy-hook) @@ -4943,10 +4944,11 @@ (set-buffer-modified-p nil)) (when (and (stringp local-copy) (or remote-copy (null tramp-temp-buffer-file-name))) - (delete-file local-copy)) + (tramp-compat-delete-file local-copy 'force)) (when (stringp remote-copy) - (delete-file - (tramp-make-tramp-file-name method user host remote-copy)))))) + (tramp-compat-delete-file + (tramp-make-tramp-file-name method user host remote-copy) + 'force))))) ;; Result. (list (expand-file-name filename) @@ -5136,7 +5138,7 @@ (list start end tmpfile append 'no-message lockname confirm)) ((error quit) (setq tramp-temp-buffer-file-name nil) - (delete-file tmpfile) + (tramp-compat-delete-file tmpfile 'force) (signal (car err) (cdr err)))) ;; Now, `last-coding-system-used' has the right value. Remember it. @@ -5180,13 +5182,13 @@ (copy-file tmpfile filename t) ((error quit) (setq tramp-temp-buffer-file-name nil) - (delete-file tmpfile) + (tramp-compat-delete-file tmpfile 'force) (signal (car err) (cdr err))))) (setq tramp-temp-buffer-file-name nil) ;; Don't rename, in order to keep context in SELinux. (unwind-protect (copy-file tmpfile filename t) - (delete-file tmpfile)))) + (tramp-compat-delete-file tmpfile 'force)))) ;; Use inline file transfer. (rem-dec @@ -5270,7 +5272,7 @@ v 5 "Decoding region into remote file %s...done" filename)) ;; Save exit. - (delete-file tmpfile))) + (tramp-compat-delete-file tmpfile 'force))) ;; That's not expected. (t @@ -6350,7 +6352,7 @@ "Remove temporary files related to current buffer." (when (stringp tramp-temp-buffer-file-name) (condition-case nil - (delete-file tramp-temp-buffer-file-name) + (tramp-compat-delete-file tramp-temp-buffer-file-name 'force) (error nil)))) (add-hook 'kill-buffer-hook 'tramp-delete-temp-file-function) diff -r 1d1025faed5f -r 00dd71f829e6 lwlib/ChangeLog --- a/lwlib/ChangeLog Wed May 05 10:17:53 2010 +0000 +++ b/lwlib/ChangeLog Thu May 06 12:51:40 2010 +0000 @@ -1,3 +1,7 @@ +2010-05-06 Glenn Morris + + * Makefile.in (CPP, LN_S, TOP, LN): Remove unused variables. + 2010-05-04 Glenn Morris * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE): diff -r 1d1025faed5f -r 00dd71f829e6 lwlib/Makefile.in --- a/lwlib/Makefile.in Wed May 05 10:17:53 2010 +0000 +++ b/lwlib/Makefile.in Thu May 06 12:51:40 2010 +0000 @@ -32,27 +32,21 @@ CC=@CC@ CFLAGS=@CFLAGS@ -CPP=@CPP@ CPPFLAGS=@CPPFLAGS@ -LN_S=@LN_S@ RANLIB=@RANLIB@ # See below--@X_TOOLKIT_TYPE@ is used below. USE_X_TOOLKIT=@X_TOOLKIT_TYPE@ - TOP = . - - AR = ar cq +AR = ar cq +RM = rm -f - LN = ln -s - RM = rm -f - - LUCID_OBJS = lwlib-Xlw.o xlwmenu.o lwlib-Xaw.o - MOTIF_OBJS = lwlib-Xm.o +LUCID_OBJS = lwlib-Xlw.o xlwmenu.o lwlib-Xaw.o +MOTIF_OBJS = lwlib-Xm.o TOOLKIT_DEFINES = - TOOLKIT_OBJS = $(@X_TOOLKIT_TYPE@_OBJS) +TOOLKIT_OBJS = $(@X_TOOLKIT_TYPE@_OBJS) - OBJS = lwlib.o $(TOOLKIT_OBJS) lwlib-utils.o +OBJS = lwlib.o $(TOOLKIT_OBJS) lwlib-utils.o # ../src is needed to find config.h. ALL_CFLAGS= $(C_SWITCH_SYSTEM) $(C_SWITCH_X_SITE) \ diff -r 1d1025faed5f -r 00dd71f829e6 msdos/ChangeLog --- a/msdos/ChangeLog Wed May 05 10:17:53 2010 +0000 +++ b/msdos/ChangeLog Thu May 06 12:51:40 2010 +0000 @@ -1,3 +1,7 @@ +2010-05-06 Glenn Morris + + * sed1v2.inp, sed5x.inp: Remove LN_S, unused. + 2010-04-01 Eli Zaretskii Remove support for DJGPP v1.x. diff -r 1d1025faed5f -r 00dd71f829e6 msdos/sed1v2.inp --- a/msdos/sed1v2.inp Wed May 05 10:17:53 2010 +0000 +++ b/msdos/sed1v2.inp Thu May 06 12:51:40 2010 +0000 @@ -2,8 +2,8 @@ # Configuration script for src/Makefile under DJGPP v2.x # ---------------------------------------------------------------------- # -# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003, 2004, 2005, +# 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. # # This file is part of GNU Emacs. # @@ -50,7 +50,6 @@ /^OTHER_FILES *=/s/@OTHER_FILES@// /^EXEEXT *=/s/@EXEEXT@/.exe/ /^version *=/s/@[^@\n]*@// -/^LN_S *=/s/@[^@\n]*@/ln -s/ /^M_FILE *=/s!@[^@\n]*@!m/intel386.h! /^S_FILE *=/s!@[^@\n]*@!s/msdos.h! /^@SET_MAKE@$/s/@SET_MAKE@// diff -r 1d1025faed5f -r 00dd71f829e6 msdos/sed5x.inp --- a/msdos/sed5x.inp Wed May 05 10:17:53 2010 +0000 +++ b/msdos/sed5x.inp Thu May 06 12:51:40 2010 +0000 @@ -2,8 +2,8 @@ # Configuration script for oldxmenu/makefile for DesqView/X # ---------------------------------------------------------------------- # -# Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# Copyright (C) 1994, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, +# 2009, 2010 Free Software Foundation, Inc. # # This file is part of GNU Emacs. # @@ -22,7 +22,6 @@ /^CC *=/s/@[^@\n]*@/gcc/ /^CPP *=/s/@[^@\n]*@/gcc -e/ /^CFLAGS *=/s/@[^@\n]*@/-O2 -g/ -/^LN_S *=/s/@[^@\n]*@/ln -s/ s/|| true// # arch-tag: 612a79be-2a02-4cb0-8dec-779aac0a2f4f diff -r 1d1025faed5f -r 00dd71f829e6 oldXMenu/ChangeLog --- a/oldXMenu/ChangeLog Wed May 05 10:17:53 2010 +0000 +++ b/oldXMenu/ChangeLog Thu May 06 12:51:40 2010 +0000 @@ -1,3 +1,11 @@ +2010-05-06 Glenn Morris + + * Makefile.in (RANLIB): Let configure set it. + (libXMenu11.a): configure sets RANLIB = : on systems without it. + + * Makefile.in (CPP, LN_S, AS, LD, MV, LS, LINTOPTS, LINTLIBFLAG, MAKE) + (STD_DEFINES, CDEBUGFLAGS, RM_CMD): Remove unused variables. + 2010-05-04 Glenn Morris * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE): Use diff -r 1d1025faed5f -r 00dd71f829e6 oldXMenu/Makefile.in --- a/oldXMenu/Makefile.in Wed May 05 10:17:53 2010 +0000 +++ b/oldXMenu/Makefile.in Thu May 06 12:51:40 2010 +0000 @@ -15,8 +15,8 @@ ## without express or implied warranty. -## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 -## Free Software Foundation, Inc. +## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, +## 2010 Free Software Foundation, Inc. ## This program is free software: you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by @@ -36,7 +36,7 @@ ## To the best of our knowledge, this code was originally based on the ## X11 oldXMenu Makefile, which was automatically generated from the -## X11 oldXMenu Imakefile. There was no explicit copyright information +## X11 oldXMenu Imakefile. There was no explicit copyright information ## in the Imakefile, therefore we have added the same MIT license as ## used by the rest of the oldXMenu code. @@ -53,24 +53,11 @@ EXTRA=insque.o CC=@CC@ CFLAGS=@CFLAGS@ -CPP=@CPP@ -LN_S=@LN_S@ - AS = as - LD = ld - TAGS = etags - RM = rm -f - MV = mv - RANLIB = ranlib +TAGS = etags +RM = rm -f +RANLIB = @RANLIB@ # Solaris 2.1 ar doesn't accept the 'l' option. - AR = ar cq - LS = ls - LINTOPTS = -axz - LINTLIBFLAG = -C - MAKE = make - STD_DEFINES = - CDEBUGFLAGS = -O - RM_CMD = $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a \ - tags TAGS make.log +AR = ar cq OBJS = Activate.o \ AddPane.o \ @@ -110,11 +97,7 @@ libXMenu11.a: $(OBJS) $(EXTRA) $(RM) $@ $(AR) $@ $(OBJS) $(EXTRA) - @echo Do not be alarmed if the following ranlib command - @echo fails due to the absence of a ranlib program on your system. - -$(RANLIB) $@ || true -#If running ranlib fails, probably there is none. -#That's ok. So don't stop the build. + $(RANLIB) $@ Activate.o: Activate.c XMenuInt.h XMenu.h X10.h AddPane.o: AddPane.c XMenuInt.h XMenu.h X10.h diff -r 1d1025faed5f -r 00dd71f829e6 src/ChangeLog --- a/src/ChangeLog Wed May 05 10:17:53 2010 +0000 +++ b/src/ChangeLog Thu May 06 12:51:40 2010 +0000 @@ -1,3 +1,19 @@ +2010-05-06 Jan Djärv + + * xterm.c (x_draw_image_relief): Move declaration of extra to beginning. + +2010-05-06 Glenn Morris + + * Makefile.in (CPP, LN_S): Remove unused variables. + +2010-05-05 Stefan Monnier + + * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080). + +2010-05-05 Lawrence Mitchell + + * m/sparc.h: Fix typo in earlier change. + 2010-05-04 Stefan Monnier Misc tweaks. diff -r 1d1025faed5f -r 00dd71f829e6 src/Makefile.in --- a/src/Makefile.in Wed May 05 10:17:53 2010 +0000 +++ b/src/Makefile.in Thu May 06 12:51:40 2010 +0000 @@ -37,11 +37,9 @@ abs_builddir = @abs_builddir@ VPATH = $(srcdir) CC = @CC@ -CPP = @CPP@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ LDFLAGS = @LDFLAGS@ -LN_S = @LN_S@ EXEEXT = @EXEEXT@ version = @version@ # Substitute an assignment for the MAKE variable, because @@ -239,6 +237,7 @@ /* C_SWITCH_X_SITE must come before C_SWITCH_X_SYSTEM since it may have -I options that should override those two. */ +/* MYCPPFLAGS only referenced in etc/DEBUG. */ ALL_CFLAGS=-Demacs -DHAVE_CONFIG_H $(MYCPPFLAGS) -I. -I${srcdir} ${C_SWITCH_MACHINE} ${C_SWITCH_SYSTEM} @C_SWITCH_X_SITE@ @C_SWITCH_X_SYSTEM@ ${CFLAGS_SOUND} ${RSVG_CFLAGS} ${DBUS_CFLAGS} ${GCONF_CFLAGS} ${CFLAGS} @FREETYPE_CFLAGS@ @FONTCONFIG_CFLAGS@ @LIBOTF_CFLAGS@ @M17N_FLT_CFLAGS@ ${DEPFLAGS} ALL_OBJC_CFLAGS=$(ALL_CFLAGS) @GNU_OBJC_CFLAGS@ @@ -730,6 +729,7 @@ buildobj.h: Makefile echo "#define BUILDOBJ \"${obj} ${otherobj} " "\"" > buildobj.h +/* FIXME LOCALCPP not defined or mentioned anywhere. */ temacs${EXEEXT}: $(LOCALCPP) $(STARTFILES) stamp-oldxmenu ${obj} ${otherobj} prefix-args${EXEEXT} #ifdef NS_IMPL_GNUSTEP $(CC) -rdynamic YMF_PASS_LDFLAGS ( ${TEMACS_LDFLAGS} \ @@ -802,14 +802,14 @@ #ifndef AUTO_DEPEND -## FIXME some of these dependencies are platform-specific. -## Eg callproc.c only depends on w32.h for WINDOWSNT builds. -## One way to fix this would be to replace w32.h (etc) by $(W32_H), -## a variable set by configure. Doesn't seem worth the trouble. +/* FIXME some of these dependencies are platform-specific. +Eg callproc.c only depends on w32.h for WINDOWSNT builds. +One way to fix this would be to replace w32.h (etc) by $(W32_H), +a variable set by configure. Does not seem worth the trouble. -## nsgui.h: In fact, every .o file depends directly or indirectly on -## dispextern.h and hence nsgui.h under NS. But the ones that actually -## use stuff there are more limited. +nsgui.h: In fact, every .o file depends directly or indirectly on +dispextern.h and hence nsgui.h under NS. But the ones that actually +use stuff there are more limited. */ atimer.o: atimer.c atimer.h syssignal.h systime.h lisp.h blockinput.h \ $(config_h) bidi.o: bidi.c buffer.h character.h dispextern.h lisp.h $(config_h) diff -r 1d1025faed5f -r 00dd71f829e6 src/m/alpha.h --- a/src/m/alpha.h Wed May 05 10:17:53 2010 +0000 +++ b/src/m/alpha.h Thu May 06 12:51:40 2010 +0000 @@ -20,25 +20,12 @@ You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see . */ - -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Use -opsystem=osf1 -NOTE-END - -*/ - #ifndef _LP64 -#define _LP64 /* This doesn't appear to be necessary - on OSF 4/5 -- fx. */ +#define _LP64 /* This doesn't appear to be necessary on OSF 4/5 -- fx. */ #endif /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word is the most significant byte. */ - #undef WORDS_BIG_ENDIAN /* Now define a symbol for the cpu type, if your compiler @@ -52,15 +39,12 @@ are always unsigned. This flag only matters if you use USE_LISP_UNION_TYPE. */ - #define EXPLICIT_SIGN_EXTEND /* Data type of load average, as read out of kmem. */ - #define LOAD_AVE_TYPE long /* Convert that into an integer that is 100 for a load average of 1.0 */ - #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) /* GNU malloc and the relocating allocator do not work together diff -r 1d1025faed5f -r 00dd71f829e6 src/m/ibmrs6000.h --- a/src/m/ibmrs6000.h Wed May 05 10:17:53 2010 +0000 +++ b/src/m/ibmrs6000.h Thu May 06 12:51:40 2010 +0000 @@ -1,6 +1,6 @@ /* R2 AIX machine/system dependent defines - Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, + 2009, 2010 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -18,13 +18,6 @@ along with GNU Emacs. If not, see . */ -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="aix3-1" */ - -/* Now define a symbol for the cpu type, if your compiler - does not define it automatically. */ - /* The data segment in this machine always starts at address 0x20000000. An address of data cannot be stored correctly in a Lisp object; we always lose the high bits. We must tell XPNTR to add them back. */ diff -r 1d1025faed5f -r 00dd71f829e6 src/m/ibms390.h --- a/src/m/ibms390.h Wed May 05 10:17:53 2010 +0000 +++ b/src/m/ibms390.h Thu May 06 12:51:40 2010 +0000 @@ -18,13 +18,8 @@ along with GNU Emacs. If not, see . */ -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="" */ - /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word is the most significant byte. */ - #define WORDS_BIG_ENDIAN /* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend @@ -32,15 +27,12 @@ are always unsigned. This flag only matters if you use USE_LISP_UNION_TYPE. */ - #define EXPLICIT_SIGN_EXTEND /* Data type of load average, as read out of kmem. */ - #define LOAD_AVE_TYPE long /* Convert that into an integer that is 100 for a load average of 1.0 */ - #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) /* Define VIRT_ADDR_VARIES if the virtual addresses of @@ -49,7 +41,6 @@ Otherwise Emacs assumes that text space precedes data space, numerically. */ - #define VIRT_ADDR_VARIES /* arch-tag: d8a0ffa4-a8f0-4736-90d3-7fd7b21b8314 diff -r 1d1025faed5f -r 00dd71f829e6 src/m/ibms390x.h --- a/src/m/ibms390x.h Wed May 05 10:17:53 2010 +0000 +++ b/src/m/ibms390x.h Thu May 06 12:51:40 2010 +0000 @@ -21,23 +21,12 @@ into ibms390.h. */ -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="" - -NOTE-START -IBM s390 64 bits (-machine=ibms390x64) - - The possibilities for -opsystem are: gnu-linux. - -NOTE-END */ - +/* Used for machine IBM s390 64 bits with opsys gnu-linux. */ #define BITS_PER_LONG 64 #define BITS_PER_EMACS_INT 64 /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word is the most significant byte. */ - #define WORDS_BIG_ENDIAN /* Define the type to use. */ @@ -49,15 +38,12 @@ are always unsigned. This flag only matters if you use USE_LISP_UNION_TYPE. */ - #undef EXPLICIT_SIGN_EXTEND /* Data type of load average, as read out of kmem. */ - #define LOAD_AVE_TYPE long /* Convert that into an integer that is 100 for a load average of 1.0 */ - #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) /* Define VIRT_ADDR_VARIES if the virtual addresses of @@ -66,23 +52,19 @@ Otherwise Emacs assumes that text space precedes data space, numerically. */ - #define VIRT_ADDR_VARIES /* Define HAVE_ALLOCA to say that the system provides a properly working alloca function and it should be used. Undefine it if an assembler-language alloca in the file alloca.s should be used. */ - #define HAVE_ALLOCA /* On the 64 bit architecture, we can use 60 bits for addresses */ - #define VALBITS 60 #define LINKER $(CC) -nostdlib /* Define XPNTR to avoid or'ing with DATA_SEG_BITS */ - #define XPNTR(a) XUINT (a) /* arch-tag: 4b87653c-6add-4663-8691-7d9dc17b5519 diff -r 1d1025faed5f -r 00dd71f829e6 src/m/intel386.h --- a/src/m/intel386.h Wed May 05 10:17:53 2010 +0000 +++ b/src/m/intel386.h Thu May 06 12:51:40 2010 +0000 @@ -1,6 +1,6 @@ /* Machine description file for intel 386. - Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, + 2009, 2010 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -18,25 +18,8 @@ along with GNU Emacs. If not, see . */ -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Intel 386 (-machine=intel386) - - The possibilities for -opsystem are: bsd4-2, usg5-2-2, usg5-3, - isc2-2, 386-ix, and linux. - - 18.58 should support a wide variety of operating systems. - Use linux for Linux. - It isn't clear what to do on an SCO system. - -NOTE-END */ - /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word is the most significant byte. */ - #undef WORDS_BIG_ENDIAN #ifdef USG diff -r 1d1025faed5f -r 00dd71f829e6 src/m/sparc.h --- a/src/m/sparc.h Wed May 05 10:17:53 2010 +0000 +++ b/src/m/sparc.h Thu May 06 12:51:40 2010 +0000 @@ -1,6 +1,6 @@ /* machine description file for Sun 4 SPARC. - Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, + 2009, 2010 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -17,48 +17,34 @@ You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see . */ -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -Use -opsystem=sunos4 for operating system version 4, and --opsystem=bsd4-2 for earlier versions. -NOTE-END */ - /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word is the most significant byte. */ - #define WORDS_BIG_ENDIAN /* __sparc__ is defined by the compiler by default. */ /* XINT must explicitly sign-extend This flag only matters if you use USE_LISP_UNION_TYPE. */ - #define EXPLICIT_SIGN_EXTEND /* Data type of load average, as read out of kmem. */ - #define LOAD_AVE_TYPE long /* Convert that into an integer that is 100 for a load average of 1.0 */ - #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) /* Mask for address bits within a memory segment */ - #define SEGMENT_MASK (SEGSIZ - 1) #ifdef __arch64__ /* GCC, 64-bit ABI. */ + #define BITS_PER_LONG 64 -#endif #ifndef _LP64 -#define _LP64 /* Done on Alpha -- not sure if it - should be here. -- fx */ +#define _LP64 /* Done on Alpha -- not sure if it should be here. -- fx */ #endif -#endif + +#endif /* __arch64__ */ /* arch-tag: 0a6f7882-33fd-4811-9832-7466c51e50f7 (do not change this comment) */ diff -r 1d1025faed5f -r 00dd71f829e6 src/m/vax.h --- a/src/m/vax.h Wed May 05 10:17:53 2010 +0000 +++ b/src/m/vax.h Thu May 06 12:51:40 2010 +0000 @@ -18,18 +18,8 @@ along with GNU Emacs. If not, see . */ -/* The following line tells the configuration script what sort of - operating system this machine is likely to run. - USUAL-OPSYS="note" - -NOTE-START -The vax (-machine=vax) runs zillions of different operating systems. - -NOTE-END */ - /* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word is the most significant byte. */ - #undef WORDS_BIG_ENDIAN /* #define vax -- appears to be done automatically */ @@ -38,11 +28,9 @@ support the load average, so disable it for them. */ /* Data type of load average, as read out of kmem. */ - #define LOAD_AVE_TYPE double /* Convert that into an integer that is 100 for a load average of 1.0 */ - #define LOAD_AVE_CVT(x) ((int) ((x) * 100.0)) #define HAVE_FTIME diff -r 1d1025faed5f -r 00dd71f829e6 src/syntax.c --- a/src/syntax.c Wed May 05 10:17:53 2010 +0000 +++ b/src/syntax.c Thu May 06 12:51:40 2010 +0000 @@ -858,7 +858,7 @@ Lisp_Object character; { int char_int; - CHECK_NUMBER (character); + CHECK_CHARACTER (character); char_int = XINT (character); SETUP_BUFFER_SYNTAX_TABLE (); return make_number (syntax_code_spec[(int) SYNTAX (char_int)]); diff -r 1d1025faed5f -r 00dd71f829e6 src/xterm.c --- a/src/xterm.c Wed May 05 10:17:53 2010 +0000 +++ b/src/xterm.c Thu May 06 12:51:40 2010 +0000 @@ -2291,7 +2291,7 @@ x_draw_image_relief (s) struct glyph_string *s; { - int x0, y0, x1, y1, thick, raised_p; + int x0, y0, x1, y1, thick, raised_p, extra; XRectangle r; int x = s->x; int y = s->ybase - image_ascent (s->img, s->face, &s->slice); @@ -2322,7 +2322,7 @@ raised_p = s->img->relief > 0; } - int extra = s->face->id == TOOL_BAR_FACE_ID + extra = s->face->id == TOOL_BAR_FACE_ID ? XINT (Vtool_bar_button_margin) : 0; x0 = x - thick - extra;