1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-22 07:09:54 +00:00

Merge from origin/emacs-25

16e5e8e Fix last change to isearch-update (bug#23406)
b755d98 Autoload cursor-sensor-inhibit (bug#23406)
b52ebd4 org-map-entries: Fix org-agenda-prepare-buffers call
86aa409 Followup for last commit in the user manual
7004459 Improve doc string of 'set-goal-column'
ccdaf04 Fix the MSDOS build
ffe701c Remove \= from format string (bug#18190)
1c58fa1 Fix variable-pitch font on MS-Windows
c6077bf Restore follow-scroll-up/down to scrolling by the combined si...
b671e21 Revert unneeded change which harms syntactic parsing.  This f...
48b24c9 Correct indentation of ids in a C++ enum after a protection k...
5c3534f * lisp/window.el (window--process-window-list): No-op if no p...
734fb3a Port dumping to NetBSD with PaX
0255a70 Don't mistake `for' inside a function for a part of array com...

# Conflicts:
#	src/Makefile.in
This commit is contained in:
Paul Eggert 2016-05-01 18:09:29 -07:00
commit c3ed7cea0a
43 changed files with 479 additions and 286 deletions

View File

@ -174,7 +174,7 @@ junk
If ErrorLevel 1 Goto xmlDone
Echo Configuring with libxml2 ...
sed -e "/#undef HAVE_LIBXML2/s/^.*$/#define HAVE_LIBXML2 1/" <config.h2 >config.h3
mv config.h3 config.h2
sed -e "/#define EMACS_CONFIG_FEATURES/s/^.*$/#define EMACS_CONFIG_FEATURES \"LIBXML2\"/" <config.h3 >config.h2
set libxml=1
:xmlDone
rm -f junk.c junk junk.exe
@ -194,7 +194,7 @@ if exist dir.h ren dir.h vmsdir.h
rem Create "makefile" from "makefile.in".
rm -f Makefile makefile.tmp
copy Makefile.in+lisp.mk+deps.mk makefile.tmp
copy Makefile.in+deps.mk makefile.tmp
sed -f ../msdos/sed1v2.inp <makefile.tmp >Makefile
rm -f makefile.tmp
@ -227,6 +227,10 @@ rem ----------------------------------------------------------------------
Echo Configuring the library source directory...
cd lib-src
sed -f ../msdos/sed3v2.inp <Makefile.in >Makefile
mv Makefile makefile.tmp
sed -n -e "/^AC_INIT/s/[^,]*, \([^,]*\).*/@set emver=\1/p" ../configure.ac > emver.bat
call emver.bat
sed -e "s/@version@/%emver%/g" <makefile.tmp >Makefile
if "%X11%" == "" goto libsrc2a
mv Makefile makefile.tmp
sed -f ../msdos/sed3x.inp <makefile.tmp >Makefile
@ -252,16 +256,23 @@ cd ..
rem ----------------------------------------------------------------------
Echo Configuring the doc directory, expect one "File not found" message...
cd doc
Rem Rename files like djtar on plain DOS filesystem would.
If Exist emacs\emacsver.texi.in update emacs/emacsver.texi.in emacs/emacsver.in
If Exist man\emacs.1.in update man/emacs.1.in man/emacs.in
If Exist ..\etc\refcards\emacsver.tex.in update ../etc/refcards/emacsver.tex.in ../etc/refcards/emacsver.in
Rem The two variants for lispintro below is for when the shell
Rem supports long file names but DJGPP does not
for %%d in (emacs lispref lispintro lispintr misc) do sed -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile
for %%d in (emacs lispref lispintro lispintr misc) do sed -e "s/@version@/%emver%/g" -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile
Rem produce emacs.1 from emacs.in
If Exist man\emacs.1 goto manOk
sed -e "s/@version@/%emver%/g" -e "s/@PACKAGE_BUGREPORT@/bug-gnu-emacs@gnu.org/g" < man\emacs.in > man\emacs.1
:manOk
cd ..
rem ----------------------------------------------------------------------
Echo Configuring the lib directory...
If Exist build-aux\snippet\c++defs.h update build-aux/snippet/c++defs.h build-aux/snippet/cxxdefs.h
cd lib
Rem Rename files like djtar on plain DOS filesystem would.
If Exist build-aux\snippet\c++defs.h update build-aux/snippet/c++defs.h build-aux/snippet/cxxdefs.h
If Exist alloca.in.h update alloca.in.h alloca.in-h
If Exist byteswap.in.h update byteswap.in.h byteswap.in-h
If Exist dirent.in.h update dirent.in.h dirent.in-h
@ -286,6 +297,7 @@ If Exist sys_types.in.h update sys_types.in.h sys_types.in-h
If Exist sys_time.in.h update sys_time.in.h sys_time.in-h
If Exist time.in.h update time.in.h time.in-h
If Exist unistd.in.h update unistd.in.h unistd.in-h
Rem Only repository has the msdos/autogen directory
If Exist Makefile.in sed -f ../msdos/sedlibcf.inp < Makefile.in > makefile.tmp
If Exist ..\msdos\autogen\Makefile.in sed -f ../msdos/sedlibcf.inp < ..\msdos\autogen\Makefile.in > makefile.tmp
sed -f ../msdos/sedlibmk.inp < makefile.tmp > Makefile
@ -311,6 +323,12 @@ If Not Exist admin\unidata goto noadmin
Echo Configuring the admin/unidata directory...
cd admin\unidata
sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile
Echo Configuring the admin/charsets directory...
cd ..\charsets
sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile
Echo Configuring the admin/grammars directory...
cd ..\grammars
sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile
cd ..\..
:noadmin
rem ----------------------------------------------------------------------
@ -345,3 +363,4 @@ set nodebug=
set djgpp_ver=
set sys_malloc=
set libxml=
set emver=

View File

@ -1159,16 +1159,9 @@ AC_PATH_PROG(GZIP_PROG, gzip)
test $with_compress_install != yes && test -n "$GZIP_PROG" && \
GZIP_PROG=" # $GZIP_PROG # (disabled by configure --without-compress-install)"
PAXCTL_dumped=
PAXCTL_notdumped=
if test $opsys = gnu-linux; then
AC_PATH_PROG(PAXCTL, paxctl,,
[$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin])
if test "X$PAXCTL" != X; then
AC_MSG_CHECKING([whether binaries have a PT_PAX_FLAGS header])
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
[if $PAXCTL -v conftest$EXEEXT >/dev/null 2>&1; then AC_MSG_RESULT(yes)
else AC_MSG_RESULT(no); PAXCTL=""; fi])
fi
if test "${SETFATTR+set}" != set; then
AC_CACHE_CHECK([for setfattr],
[emacs_cv_prog_setfattr],
@ -1179,6 +1172,7 @@ if test $opsys = gnu-linux; then
emacs_cv_prog_setfattr=no
fi])
if test "$emacs_cv_prog_setfattr" = yes; then
PAXCTL_notdumped='$(SETFATTR) -n user.pax.flags -v er'
SETFATTR=setfattr
else
SETFATTR=
@ -1187,6 +1181,32 @@ if test $opsys = gnu-linux; then
AC_SUBST([SETFATTR])
fi
fi
case $opsys,$PAXCTL_notdumped in
gnu-linux, | netbsd,)
AC_PATH_PROG([PAXCTL], [paxctl], [],
[$PATH$PATH_SEPARATOR/sbin$PATH_SEPARATOR/usr/sbin])
if test -n "$PAXCTL"; then
if test "$opsys" = netbsd; then
PAXCTL_dumped='$(PAXCTL) +a'
PAXCTL_notdumped=$PAXCTL_dumped
else
AC_MSG_CHECKING([whether binaries have a PT_PAX_FLAGS header])
AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
[if $PAXCTL -v conftest$EXEEXT >/dev/null 2>&1; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
PAXCTL=
fi])
if test -n "$PAXCTL"; then
PAXCTL_dumped='$(PAXCTL) -zex'
PAXCTL_notdumped='$(PAXCTL) -r'
fi
fi
fi;;
esac
AC_SUBST([PAXCTL_dumped])
AC_SUBST([PAXCTL_notdumped])
## Need makeinfo >= 4.7 (?) to build the manuals.
if test "$MAKEINFO" != "no"; then

View File

@ -337,10 +337,11 @@ move to the column number specified by the argument's numeric value.
@kindex C-x C-n
@findex set-goal-column
Use the current column of point as the @dfn{semipermanent goal column}
for @kbd{C-n} and @kbd{C-p} (@code{set-goal-column}). When a
semipermanent goal column is in effect, those commands always try to
move to this column, or as close as possible to it, after moving
vertically. The goal column remains in effect until canceled.
for @kbd{C-n} and @kbd{C-p} (@code{set-goal-column}) in the current
buffer. When a semipermanent goal column is in effect, those commands
always try to move to this column, or as close as possible to it,
after moving vertically. The goal column remains in effect until
canceled.
@item C-u C-x C-n
Cancel the goal column. Henceforth, @kbd{C-n} and @kbd{C-p} try to

View File

@ -31,6 +31,7 @@
;;; Code:
;;;###autoload
(defvar cursor-sensor-inhibit nil)
(defun cursor-sensor--intangible-p (pos)

View File

@ -235,7 +235,7 @@ This method is obsolete."
(let ((f (intern (format "%s-child-p" name))))
`((defalias ',f ',testsym2)
(make-obsolete
',f ,(format "use (cl-typep ... \\='%s) instead" name)
',f ,(format "use (cl-typep ... '%s) instead" name)
"25.1"))))
;; When using typep, (typep OBJ 'myclass) returns t for objects which

View File

@ -800,7 +800,7 @@ This macro calls itself recursively, with NOTFIRST non-nil."
(defmacro eshell-do-pipelines-synchronously (pipeline)
"Execute the commands in PIPELINE in sequence synchronously.
Output of each command is passed as input to the next one in the pipeline.
This is used on systems where `start-process' is not supported."
This is used on systems where async subprocesses are not supported."
(when (setq pipeline (cadr pipeline))
`(progn
,(when (cdr pipeline)
@ -838,7 +838,7 @@ This is used on systems where `start-process' is not supported."
"Execute the commands in PIPELINE, connecting each to one another."
`(let ((eshell-in-pipeline-p t) tailproc)
(progn
,(if (fboundp 'start-process)
,(if (fboundp 'make-process)
`(eshell-do-pipelines ,pipeline)
`(let ((tail-handles (eshell-create-handles
(car (aref eshell-current-handles

View File

@ -2319,7 +2319,11 @@ If you set `term-file-prefix' to nil, this function does nothing."
:group 'basic-faces)
(defface variable-pitch
'((t :family "Sans Serif"))
'((((type w32))
;; This is a kludgey workaround for an issue discussed in
;; http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
:font "-outline-Arial-normal-normal-normal-sans-*-*-*-*-p-*-iso8859-1")
(t :family "Sans Serif"))
"The basic variable-pitch face."
:group 'basic-faces)

View File

@ -399,11 +399,11 @@ virtual window. This is accomplished by two main techniques:
makes it possible to walk between windows using normal cursor
movement commands.
Follow mode comes to its prime when used on a large screen and two
side-by-side windows are used. The user can, with the help of Follow
mode, use two full-height windows as though they would have been
one. Imagine yourself editing a large function, or section of text,
and being able to use 144 lines instead of the normal 72... (your
Follow mode comes to its prime when used on a large screen and two or
more side-by-side windows are used. The user can, with the help of
Follow mode, use these full-height windows as though they were one.
Imagine yourself editing a large function, or section of text, and
being able to use 144 or 216 lines instead of the normal 72... (your
mileage may vary).
To split one large window into two side-by-side windows, the commands
@ -532,6 +532,80 @@ Return the new position."
;; position... (This would also be corrected if we would have had a
;; good redisplay abstraction.)
(defun follow-scroll-up-arg (arg)
"Scroll the text in a follow mode window chain up by ARG lines.
If ARG is nil, scroll the size of the current window.
This is an internal function for `follow-scroll-up' and
`follow-scroll-up-window'."
(let ((opoint (point)) (owin (selected-window)))
(while
;; If we are too near EOB, try scrolling the previous window.
(condition-case nil (progn (scroll-up arg) nil)
(end-of-buffer
(condition-case nil (progn (follow-previous-window) t)
(error
(select-window owin)
(goto-char opoint)
(signal 'end-of-buffer nil))))))
(unless (and scroll-preserve-screen-position
(get this-command 'scroll-command))
(goto-char opoint))
(setq follow-fixed-window t)))
(defun follow-scroll-down-arg (arg)
"Scroll the text in a follow mode window chain down by ARG lines.
If ARG is nil, scroll the size of the current window.
This is an internal function for `follow-scroll-down' and
`follow-scroll-down-window'."
(let ((opoint (point)))
(scroll-down arg)
(unless (and scroll-preserve-screen-position
(get this-command 'scroll-command))
(goto-char opoint))
(setq follow-fixed-window t)))
;;;###autoload
(defun follow-scroll-up-window (&optional arg)
"Scroll text in a Follow mode window up by that window's size.
The other windows in the window chain will scroll synchronously.
If called with no ARG, the `next-screen-context-lines' last lines of
the window will be visible after the scroll.
If called with an argument, scroll ARG lines up.
Negative ARG means scroll downward.
Works like `scroll-up' when not in Follow mode."
(interactive "P")
(cond ((not follow-mode)
(scroll-up arg))
((eq arg '-)
(follow-scroll-down-window))
(t (follow-scroll-up-arg arg))))
(put 'follow-scroll-up-window 'scroll-command t)
;;;###autoload
(defun follow-scroll-down-window (&optional arg)
"Scroll text in a Follow mode window down by that window's size.
The other windows in the window chain will scroll synchronously.
If called with no ARG, the `next-screen-context-lines' top lines of
the window in the chain will be visible after the scroll.
If called with an argument, scroll ARG lines down.
Negative ARG means scroll upward.
Works like `scroll-down' when not in Follow mode."
(interactive "P")
(cond ((not follow-mode)
(scroll-down arg))
((eq arg '-)
(follow-scroll-up-window))
(t (follow-scroll-down-arg arg))))
(put 'follow-scroll-down-window 'scroll-command t)
;;;###autoload
(defun follow-scroll-up (&optional arg)
"Scroll text in a Follow mode window chain up.
@ -546,23 +620,18 @@ Works like `scroll-up' when not in Follow mode."
(interactive "P")
(cond ((not follow-mode)
(scroll-up arg))
((eq arg '-)
(follow-scroll-down))
(t
(let ((opoint (point)) (owin (selected-window)))
(while
;; If we are too near EOB, try scrolling the previous window.
(condition-case nil (progn (scroll-up arg) nil)
(end-of-buffer
(condition-case nil (progn (follow-previous-window) t)
(error
(select-window owin)
(goto-char opoint)
(signal 'end-of-buffer nil))))))
(unless (and scroll-preserve-screen-position
(get this-command 'scroll-command))
(goto-char opoint))
(setq follow-fixed-window t)))))
(arg (follow-scroll-up-arg arg))
(t
(let* ((windows (follow-all-followers))
(end (window-end (car (reverse windows)))))
(if (eq end (point-max))
(signal 'end-of-buffer nil)
(select-window (car windows))
;; `window-end' might return nil.
(if end
(goto-char end))
(vertical-motion (- next-screen-context-lines))
(set-window-start (car windows) (point)))))))
(put 'follow-scroll-up 'scroll-command t)
;;;###autoload
@ -579,15 +648,22 @@ Works like `scroll-down' when not in Follow mode."
(interactive "P")
(cond ((not follow-mode)
(scroll-down arg))
((eq arg '-)
(follow-scroll-up))
(t
(let ((opoint (point)))
(scroll-down arg)
(unless (and scroll-preserve-screen-position
(get this-command 'scroll-command))
(goto-char opoint))
(setq follow-fixed-window t)))))
(arg (follow-scroll-down-arg arg))
(t
(let* ((windows (follow-all-followers))
(win (car (reverse windows)))
(start (window-start (car windows))))
(if (eq start (point-min))
(signal 'beginning-of-buffer nil)
(select-window win)
(goto-char start)
(vertical-motion (- (- (window-height win)
(if header-line-format 2 1)
next-screen-context-lines)))
(set-window-start win (point))
(goto-char start)
(vertical-motion (- next-screen-context-lines 1))
(setq follow-internal-force-redisplay t))))))
(put 'follow-scroll-down 'scroll-command t)
(declare-function comint-adjust-point "comint" (window))

View File

@ -72,7 +72,7 @@
(let ((map (make-sparse-keymap "Set Coding System")))
(bindings--define-key map [set-buffer-process-coding-system]
'(menu-item "For I/O with Subprocess" set-buffer-process-coding-system
:visible (fboundp 'start-process)
:visible (fboundp 'make-process)
:enable (get-buffer-process (current-buffer))
:help "How to en/decode I/O from/to subprocess connected to this buffer"))
(bindings--define-key map [set-next-selection-coding-system]

View File

@ -840,7 +840,6 @@ See the command `isearch-forward-symbol' for more information."
(isearch-update)))))
(defvar cursor-sensor-inhibit)
;; isearch-mode only sets up incremental search for the minor mode.
;; All the work is done by the isearch-mode commands.
@ -973,8 +972,6 @@ The last thing is to trigger a new round of lazy highlighting."
(setq cursor-sensor-inhibit (delq 'isearch cursor-sensor-inhibit))))
(setq isearch--current-buffer (current-buffer))
(make-local-variable 'cursor-sensor-inhibit)
(unless (boundp 'cursor-sensor-inhibit)
(setq cursor-sensor-inhibit nil))
;; Suspend things like cursor-intangible during Isearch so we can search
;; even within intangible text.
(push 'isearch cursor-sensor-inhibit))

View File

@ -619,7 +619,7 @@ This is necessary if one wants to dump man.el with Emacs."
;; `call-process' below sends it to /dev/null,
;; so we don't need `2>' even with DOS shells
;; which do support stderr redirection.
((not (fboundp 'start-process)) " %s")
((not (fboundp 'make-process)) " %s")
((concat " %s 2>" null-device)))))
(flist Man-filter-list))
(while (and flist (car flist))
@ -1080,7 +1080,7 @@ Return the buffer in which the manpage will appear."
"[cleaning...]")
'face 'mode-line-emphasis)))
(Man-start-calling
(if (fboundp 'start-process)
(if (fboundp 'make-process)
(let ((proc (start-process
manual-program buffer
(if (memq system-type '(cygwin windows-nt))

View File

@ -15069,7 +15069,7 @@ a *different* entry, you cannot use these techniques."
(if (not scope)
(progn
(org-agenda-prepare-buffers
(list (buffer-file-name (current-buffer))))
(and buffer-file-name (list buffer-file-name)))
(setq res (org-scan-tags func matcher todo-only start-level)))
;; Get the right scope
(cond
@ -15081,7 +15081,7 @@ a *different* entry, you cannot use these techniques."
(setq scope (org-agenda-files t))
(setq scope (org-add-archive-files scope)))
((eq scope 'file)
(setq scope (list (buffer-file-name))))
(setq scope (and buffer-file-name (list buffer-file-name))))
((eq scope 'file-with-archives)
(setq scope (org-add-archive-files (list (buffer-file-name))))))
(org-agenda-prepare-buffers scope)

View File

@ -3440,7 +3440,7 @@ comment at the start of cc-engine.el for more info."
(< c-state-old-cpp-beg here))
(c-with-all-but-one-cpps-commented-out
c-state-old-cpp-beg
(min c-state-old-cpp-end here)
c-state-old-cpp-end
(c-invalidate-state-cache-1 here))
(c-with-cpps-commented-out
(c-invalidate-state-cache-1 here))))
@ -5835,6 +5835,7 @@ comment at the start of cc-engine.el for more info."
;;
;; This macro might do hidden buffer changes.
`(let (res)
(setq c-last-identifier-range nil)
(while (if (setq res ,(if (eq type 'type)
`(c-forward-type)
`(c-forward-name)))
@ -9024,11 +9025,11 @@ comment at the start of cc-engine.el for more info."
(not (looking-at "=")))))
b-pos)))
(defun c-backward-colon-prefixed-type ()
;; We're at the token after what might be a type prefixed with a colon. Try
;; moving backward over this type and the colon. On success, return t and
;; leave point before colon; on failure, leave point unchanged. Will clobber
;; match data.
(defun c-backward-typed-enum-colon ()
;; We're at a "{" which might be the opening brace of a enum which is
;; strongly typed (by a ":" followed by a type). If this is the case, leave
;; point before the colon and return t. Otherwise leave point unchanged and return nil.
;; Match data will be clobbered.
(let ((here (point))
(colon-pos nil))
(save-excursion
@ -9037,7 +9038,10 @@ comment at the start of cc-engine.el for more info."
(or (not (looking-at "\\s)"))
(c-go-up-list-backward))
(cond
((eql (char-after) ?:)
((and (eql (char-after) ?:)
(save-excursion
(c-backward-syntactic-ws)
(c-on-identifier)))
(setq colon-pos (point))
(forward-char)
(c-forward-syntactic-ws)
@ -9061,7 +9065,7 @@ comment at the start of cc-engine.el for more info."
(let ((here (point))
up-sexp-pos before-identifier)
(when c-recognize-post-brace-list-type-p
(c-backward-colon-prefixed-type))
(c-backward-typed-enum-colon))
(while
(and
(eq (c-backward-token-2) 0)

View File

@ -1743,7 +1743,7 @@ Returns the compilation buffer created."
(funcall compilation-process-setup-function))
(and outwin (compilation-set-window-height outwin))
;; Start the compilation.
(if (fboundp 'start-process)
(if (fboundp 'make-process)
(let ((proc
(if (eq mode t)
;; comint uses `start-file-process'.

View File

@ -1892,9 +1892,11 @@ In particular, return the buffer position of the first `for' kwd."
;; To skip arbitrary expressions we need the parser,
;; so we'll just guess at it.
(if (and (> end (point)) ; Not empty literal.
(re-search-forward "[^,]]* \\(for\\) " end t)
(re-search-forward "[^,]]* \\(for\\_>\\)" end t)
;; Not inside comment or string literal.
(not (nth 8 (parse-partial-sexp bracket (point)))))
(let ((status (parse-partial-sexp bracket (point))))
(and (= 1 (car status))
(not (nth 8 status)))))
(match-beginning 1)))))))
(defun js--array-comp-indentation (bracket for-kwd)

View File

@ -6421,7 +6421,8 @@ Those commands will move to this position in the line moved to
rather than trying to keep the same horizontal position.
With a non-nil argument ARG, clears out the goal column
so that \\[next-line] and \\[previous-line] resume vertical motion.
The goal column is stored in the variable `goal-column'."
The goal column is stored in the variable `goal-column'.
This is a buffer-local setting."
(interactive "P")
(if arg
(progn

View File

@ -233,13 +233,13 @@
"U*!" "U*'" "R*;" "!:" ":'" "!*" nil nil nil "w*j"
nil nil "w*?" nil "O*!" "O*'" "W*!" "W*'" "W*J" "/*"
";;" nil nil nil "1N" "1M" "3M" "4M" "6M" nil ; Gen Punct
nil "1T" "1H" nil nil nil "LRM" "RLM" "-1" nil
nil "--" "---" "===" "!2" "=2" "6`" "'9" ".9" "9'"
"``" "''" ":9" "9``" "/-" "/=" "sb" "3b" nil ".."
nil "1T" "1H" nil nil nil "LRM" "RLM" "-" "-"
"-" "--" "---" "===" "!2" "=2" "'" "'" ".9" "9'"
"\"" "\"" ":9" "9``" "/-" "/=" "sb" "3b" nil ".."
"..." ".-" "LSep" "PSep" "LR[" "RL[" "PDF" "LRO" "RLO" 255
"%o" "%oo" "'" "''" "\"'" "`" "``" "```" ".^" "<,"
",>" ":X" "!!" "?!" "'-" nil nil nil nil "-b"
"/f" nil nil nil nil nil nil nil nil nil
"/f" nil nil "??" "?!" "!?" nil nil nil nil
nil nil nil nil nil nil nil nil nil nil
nil nil nil nil nil nil nil nil nil nil
nil nil nil nil nil nil nil nil nil nil
@ -265,17 +265,17 @@
"oK" "AO" nil nil "Est" nil nil nil nil nil
nil "Aleph" "Bet" "Gimel" "Dalet" "=i=" nil nil nil nil
nil nil nil nil nil nil nil nil nil nil
nil nil nil nil nil nil nil nil nil nil
nil "1/3" "2/3" "1/5" "2/5" "3/5" "4/5" "1/6" "5/6" "1/8"
nil nil nil nil nil nil nil nil "1/7" "1/9"
"1/10" "1/3" "2/3" "1/5" "2/5" "3/5" "4/5" "1/6" "5/6" "1/8"
"3/8" "5/8" "7/8" "1/" ".I" "II" "III" "IV" ".V" "VI"
"VII" "VIII" "IX" "X" "XI" "XII" ".L" ".C" ".D" ".M"
".i" "ii" "iii" "iv" ".v" "vi" "vii" "viii" "ix" ".x"
"xi" ".l" ".c" ".d" ".m" "CD" "DD" "CoD" "CI" nil
"xi" "xii" ".l" ".c" ".d" ".m" "CD" "DD" "CoD" "CI"
nil nil nil nil nil nil nil nil nil nil
nil "<-" "|^" "->" "|v" "<->" "v|^" "^\\" "/^" "\\v"
"v/" "<-/" "/->" "<~" "~>" "<<-" "|^^" "->>" "|vv" "<-<"
">->" "<-|" "_|^" "|->" "-|v" "_v|^" "<-?" "?->" "<-o" "o->"
"<~>" "<-/>" nil nil nil nil nil nil nil nil
nil nil "<-" "|^" "->" "|v" "<->" "v|^" "^\\" "/^"
"\\v" "v/" "<-/" "/->" "<~" "~>" "<<-" "|^^" "->>" "|vv"
"<-<" ">->" "<-|" "_|^" "|->" "-|v" "_v|^" "<-?" "?->" "<-o"
"o->" "<~>" "<-/>" nil nil nil nil nil nil nil
nil nil nil nil nil nil nil nil nil nil
nil nil nil nil nil nil nil nil nil nil
nil nil nil "<=/" "<=/>" "/=>" "<=" "||^" "=>" "||v"
@ -299,7 +299,7 @@
"~<'" "`>~" "/<'" "/`>" "(C" ")C" "/(C" "/)C" "(_" ")_"
"/(_" "/)_" nil nil nil nil nil nil nil nil
nil nil nil "0+" "0-" "0x" "0/" "0." "0o" "0*"
"0=" "0_" nil nil nil nil "|T" "T|" "-T" "_T"
"0=" "0_" nil nil nil nil "|-" "-|" "-T" "_T"
nil nil nil nil nil nil nil nil nil nil
nil nil nil nil nil nil nil nil nil "-,-"
nil "XOR" "NAND" "NOR" nil nil nil nil nil nil
@ -357,8 +357,10 @@
"M-o" "N-o" "O-o" "P-o" "Q-o" "R-o" "S-o" "T-o" "U-o" "V-o"
"W-o" "X-o" "Y-o" "Z-o" "a-o" "b-o" "c-o" "d-o" "e-o" "f-o"
"g-o" "h-o" "i-o" "j-o" "k-o" "l-o" "m-o" "n-o" "o-o" "p-o"
"q-o" "r-o" "s-o" "t-o" "u-o" "v-o" "w-o" "x-o" "y-o" "z-o"
"0-o" ]
"q-o" "r-o" "s-o" "t-o" "u-o" "v-o" "w-o" "x-o" "y-o" "z-o" "0-o" ]
)
(9733 9734
["-!-" "-*-"]
)
)

View File

@ -996,7 +996,7 @@ and added as a submenu of the \"Edit\" menu.")
(defvar ispell-async-processp (and (fboundp 'delete-process)
(fboundp 'process-send-string)
(fboundp 'accept-process-output)
;;(fboundp 'start-process)
;;(fboundp 'make-process)
;;(fboundp 'set-process-filter)
;;(fboundp 'process-kill-without-query)
)

View File

@ -167,7 +167,7 @@ Possible values are:
(setq default-directory thisdir)
(let ((inhibit-read-only t))
(insert command "\n"))
(if (and (not no-async) (fboundp 'start-process))
(if (and (not no-async) (fboundp 'make-process))
(let ((proc (start-process "Diff" buf shell-file-name
shell-command-switch command)))
(set-process-filter proc 'diff-process-filter)

View File

@ -8585,38 +8585,40 @@ A window is associated with a process if that window is
displaying that processes's buffer."
(let ((processes (process-list))
(process-windows nil))
(walk-windows
(lambda (window)
(let ((buffer (window-buffer window))
(iter processes))
(while (let ((process (car iter)))
(if (and (process-live-p process)
(eq buffer (process-buffer process)))
(let ((procwin (assq process process-windows)))
;; Add this window to the list of windows
;; displaying process.
(if procwin
(push window (cdr procwin))
(push (list process window) process-windows))
;; We found our process for this window, so
;; stop iterating over the process list.
nil)
(setf iter (cdr iter)))))))
1 t)
(if processes
(walk-windows
(lambda (window)
(let ((buffer (window-buffer window))
(iter processes))
(while (let ((process (car iter)))
(if (and (process-live-p process)
(eq buffer (process-buffer process)))
(let ((procwin (assq process process-windows)))
;; Add this window to the list of windows
;; displaying process.
(if procwin
(push window (cdr procwin))
(push (list process window) process-windows))
;; We found our process for this window, so
;; stop iterating over the process list.
nil)
(setf iter (cdr iter)))))))
1 t))
process-windows))
(defun window--adjust-process-windows ()
"Update process window sizes to match the current window configuration."
(dolist (procwin (window--process-window-list))
(let ((process (car procwin)))
(with-demoted-errors "Error adjusting window size: %S"
(with-current-buffer (process-buffer process)
(let ((size (funcall
(or (process-get process 'adjust-window-size-function)
window-adjust-process-window-size-function)
process (cdr procwin))))
(when size
(set-process-window-size process (cdr size) (car size)))))))))
(when (fboundp 'process-list)
(dolist (procwin (window--process-window-list))
(let ((process (car procwin)))
(with-demoted-errors "Error adjusting window size: %S"
(with-current-buffer (process-buffer process)
(let ((size (funcall
(or (process-get process 'adjust-window-size-function)
window-adjust-process-window-size-function)
process (cdr procwin))))
(when size
(set-process-window-size process (cdr size) (car size))))))))))
(add-hook 'window-configuration-change-hook 'window--adjust-process-windows)

View File

@ -15,32 +15,24 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
# ----------------------------------------------------------------------
s/^#.*//
s/^[ \f\t][ \f\t]*$//
s/^ / /
s/\.h\.in/.h-in/
/^MAKE *=/s/^/# /
/^SHELL *=/s/^/# /
/^srcdir *=/s/@[^@\n]*@/./
/^abs_builddir *=/s|@abs_builddir@|../src|
/^VPATH *=/s/@[^@\n]*@/./
/^CC *=/s/@[^@\n]*@/gcc/
/^CPP *=/s/@[^@\n]*@/gcc -e/
/^top_srcdir *=/s/@[^@\n]*@/../
/^CC *=/s/@[^@\n]*@/gcc -std=gnu99/
/^CFLAGS *=/s/@[^@\n]*@/-O2 -gcoff/
/^ALL_CFLAGS *=/s/@[^@\n]*@//g
/^ALL_CFLAGS *=/s/ -I\.//g
/^CPPFLAGS *=/s|@[^@\n]*@|-I../msdos|
/^LDFLAGS *=/s/@[^@\n]*@//
/^LD_FIRSTFLAG *=/s/@[^@\n]*@//
/^LIBS *=/s/@[^@\n]*@//
/^LIBES *=/,/^ *$/ {
s/@[^@\n]*@//g
}
/^LIBOBJS *=/s/@[^@\n]*@//
/^C_SWITCH_MACHINE *=/s/@C_SWITCH_MACHINE@//
/^C_SWITCH_SYSTEM *=/s/@C_SWITCH_SYSTEM@//
/^GNUSTEP_CFLAGS *=/s/@GNUSTEP_CFLAGS@//
/^C_SWITCH_X_SITE *=/s/@C_SWITCH_X_SITE@//
/^PNG_CFLAGS *=/s/@PNG_CFLAGS@//
/^WARN_CFLAGS *=/s/@WARN_CFLAGS@//
/^WERROR_CFLAGS *=/s/@WERROR_CFLAGS@//
/^PROFILING_CFLAGS *=/s/@PROFILING_CFLAGS@//
@ -64,6 +56,7 @@ s/ *@LIBPNG@//
s/ *@LIBGIF@//
s/ *@LIBXPM@//
/^XFT_LIBS *=/s/@XFT_LIBS@//
/^XCB_LIBS *=/s/@XCB_LIBS@//
/^FONTCONFIG_CFLAGS *=/s/@FONTCONFIG_CFLAGS@//
/^FONTCONFIG_LIBS *=/s/@FONTCONFIG_LIBS@//
/^FREETYPE_CFLAGS *=/s/@FREETYPE_CFLAGS@//
@ -78,7 +71,8 @@ s/ *@LIBXPM@//
/^NOTIFY_OBJ *=/s/@NOTIFY_OBJ@//
/^SETTINGS_CFLAGS *=/s/@SETTINGS_CFLAGS@//
/^SETTINGS_LIBS *=/s/@SETTINGS_LIBS@//
/^GFILENOTIFY_LIBS *=/s/@GFILENOTIFY_LIBS@//
/^NOTIFY_LIBS *=/s/@NOTIFY_LIBS@//
/^NOTIFY_CFLAGS *=/s/@NOTIFY_CFLAGS@//
/^GTK_OBJ *=/s/@GTK_OBJ@//
/^LIBS_TERMCAP *=/s/@LIBS_TERMCAP@//
/^TERMCAP_OBJ *=/s/@TERMCAP_OBJ@/termcap.o tparam.o/
@ -92,7 +86,7 @@ s/ *@LIBXPM@//
/^XGSELOBJ *=/s/@XGSELOBJ@//
/^TOOLKIT_LIBW *=/s/@TOOLKIT_LIBW@//
/^LIBSOUND *=/s/@LIBSOUND@//
/^LIBS_GNUSTEP *=/s/@LIBS_GNUSTEP@//
/^LIBS_GNUSTEP *=/s/=.*$/=/
/^CFLAGS_SOUND *=/s/@CFLAGS_SOUND@//
/^RSVG_LIBS *=/s/@RSVG_LIBS@//
/^RSVG_CFLAGS *=/s/@RSVG_CFLAGS@//
@ -101,15 +95,23 @@ s/ *@LIBXPM@//
/^LIBXML2_LIBS *=/s/@LIBXML2_LIBS@//
/^LIBXML2_CFLAGS *=/s/@LIBXML2_CFLAGS@//
/^WIDGET_OBJ *=/s/@WIDGET_OBJ@//
/^XWIDGETS_OBJ *=/s/@XWIDGETS_OBJ@//
/^WEBKIT_LIBS *=/s/@WEBKIT_LIBS@//
/^WEBKIT_CFLAGS *=/s/@WEBKIT_CFLAGS@//
/^CAIRO_LIBS *=/s/@CAIRO_LIBS@//
/^CAIRO_CFLAGS *=/s/@CAIRO_CFLAGS@//
/^XFIXES_LIBS *=/s/@XFIXES_LIBS@//
/^XFIXES_CFLAGS *=/s/@XFIXES_CFLAGS@//
/^CYGWIN_OBJ *=/s/@CYGWIN_OBJ@//
/^WINDOW_SYSTEM_OBJ *=/s/@WINDOW_SYSTEM_OBJ@//
/^MSDOS_OBJ *=/s/= */= dosfns.o msdos.o w16select.o/
/^NS_OBJ *=/s/@NS_OBJ@//
/^NS_OBJC_OBJ *=/s/@NS_OBJC_OBJ@//
/^GNU_OBJC_CFLAGS*=/s/@GNU_OBJC_CFLAGS@//
/^GNU_OBJC_CFLAGS*=/s/=.*$/=/
/^LIBRESOLV *=/s/@LIBRESOLV@//
/^LIBMODULES *=/s/@LIBMODULES@//
/^MODULES_OBJ *=/s/@MODULES_OBJ@//
/^LIBSELINUX_LIBS *=/s/@LIBSELINUX_LIBS@//
/^LIB_PTHREAD_SIGMASK *=/s/@[^@\n]*@//
/^LIB_CLOCK_GETTIME *=/s/@[^@\n]*@//g
/^LIB_TIMER_TIME *=/s/@[^@\n]*@//g
/^LIB_EXECINFO *=/s/@[^@\n]*@//g
@ -145,65 +147,59 @@ s/ *@LIBXPM@//
/^W32_LIBS *=/s/@W32_LIBS@//
/^version *=/s/@[^@\n]*@//
/^EMACSRES *=/s/@EMACSRES@//
/^EMACS_MANIFEST *=/s/@EMACS_MANIFEST@//
/^W32_RES_LINK *=/s/@W32_RES_LINK@//
/^CM_OBJ *=/s/@CM_OBJ@/cm.o/
/^@SET_MAKE@$/s/@SET_MAKE@//
/^TEMACS_POST_LINK *=/s/@TEMACS_POST_LINK@/stubedit temacs.exe minstack=1024k/
/^ADDSECTION *=/s/@ADDSECTION@//
/^ [ ]*\$(libsrc)\/make-docfile.*>.*\/DOC/s!make-docfile!make-docfile -o $(etc)/DOC!
/^ [ ]*\$(libsrc)\/make-docfile.*>.*gl.tmp/s!make-docfile!make-docfile -o gl.tmp!
/^.\$(libsrc)\/make-doc/s!>.*$!!
/^ [ ]*\$(libsrc)\/make-docfile /s!`[^`]*`!$(lisp); cd ../src!
/^[ ]*$/d
/^\$(leimdir)\/leim-list.el: /s/bootstrap-emacs\$(EXEEXT)/temacs$(EXEEXT) $(BOOTSTRAPEMACS)/
/^AM_DEFAULT_VERBOSITY *=/s/@AM_DEFAULT_VERBOSITY@/1/
/^[Aa][Mm]_/s/@AM_V@/$(V)/
/^[Aa][Mm]_/s/@AM_DEFAULT_V@/$(AM_DEFAULT_VERBOSITY)/
/^AUTO_DEPEND *=/s/@AUTO_DEPEND@/yes/
/^PAXCTL_if_present *=/s/=.*$/=@Rem/
/^lisp\.mk:/,/^$/c\
lisp.mk: $(lispsource)/loadup.el\
@rm -f $@\
${AM_V_GEN}printf 'shortlisp = \\n' > $@\
${AM_V_GEN}sed -n 's/^[ \t]*(load "\([^"]*\)".*/\1/p' $< | sed -e "s/$/.elc \/" -e "s/\.el\.elc/.el/" >> $@\
${AM_V_GEN}djecho "" >> $@
#"
/^ [ ]*\$(AM_V_at)\$(libsrc)\/make-docfile -d/s!make-docfile!make-docfile -o $(etc)/DOC!
/ > \$(etc)\/DOC *$/s/ >.*$//
/^ [ ]*\$(AM_V_GLOBALS)\$(libsrc)\/make-docfile.*>.*globals.tmp/s!make-docfile!make-docfile -o globals.tmp!
/^ [ ]*\$(AM_V_GLOBALS)\$(libsrc)\/make-doc/s!>.*$!!
/^\$(libsrc)\/make-docfile\$(EXEEXT): /i\
cd ../src
/^\$(leimdir)\/leim-list.el: /s/bootstrap-emacs\$(EXEEXT)/b-emacs$(EXEEXT)/
/^ if test -f/,/^ fi$/c\
command.com /c if exist .gdbinit rm -f _gdbinit
/^ *test "X\$(PAXCTL)" = X/d
/^ *test "\$(CANNOT_DUMP)" = "yes"/d
/^ if test "\$(CANNOT_DUMP)" =/,/^ else /d
/^ *\$(SETFATTR) -n/d
/^ -\{0,1\} *ln /s/bootstrap-emacs\$(EXEEXT).*$/bootstrap-emacs$(EXEEXT)/
/^ *\$(PAXCTL_if_present) -zex/d
/^ *ln /s/ln /cp /
/^ *\$(SETFATTR_if_present) -n/d
/^ fi/d
/^ *\$(RUN_TEMACS) /i\
stubedit temacs.exe minstack=1024k
/^ *LC_ALL=C \$(RUN_TEMACS)/i\
stubedit temacs.exe minstack=1024k
/^ *LC_ALL=C.*\$(RUN_TEMACS)/s/LC_ALL=C/set &;/
/-batch -l loadup/a\
stubify emacs\
stubedit emacs.exe minstack=2048k
s/ || exit 1\; \\$//
s/ || true\; \\$//
stubedit emacs.exe minstack=3072k
s/ @true *$/ @rem/
s/^ [^ ]*move-if-change / update /
/^ echo[ ][ ]*timestamp/s/echo /djecho /
/^ [^ ]*echo[ ][ ]*timestamp/s/echo /djecho /
/^ .*djecho timestamp/a\
@rm -f gl.tmp
/^ cd ..\/leim && \$(MAKE)/i\
$(RUN_TEMACS) -batch -l loadup dump\
stubify emacs\
stubedit emacs.exe minstack=2048k\
rm -f b-emacs$(EXEEXT)\
cp emacs$(EXEEXT) b-emacs$(EXEEXT)
/^ cd ..\/leim && \$(MAKE)/c\
$(MAKE) $(MFLAGS) -C ../leim leim-list.el EMACS=$(bootstrap_exe)
/^ cd ..\/admin\/unidata && \$(MAKE)/c\
$(MAKE) $(MFLAGS) -C ../admin/unidata all EMACS="../$(bootstrap_exe)"
/^ cd \$(lib) && \$(MAKE)/c\
$(MAKE) $(MFLAGS) -C $(lib) libgnu.a
/^RUN_TEMACS *=/s|`/bin/pwd`|.|
@rm -f globals.tmp
/^ *@\$(MKDEPDIR) *$/d
/^ mv \.\/\.gdbinit/d
/^ if test -f/,/^ fi$/c\
command.com /c if exist .gdbinit rm -f _gdbinit
/^ #/d
/^ cd.*make-docfile/s!$!; cd ../src!
/^ @: /d
/^ -\{0,1\} *ln /s/ln /cp /
/^[ ]touch /s/touch/djecho $@ >/
s/@YMF_PASS_LDFLAGS@/flags/
s/@lisp_frag@//
s/@deps_frag@//
s/@ns_frag@//
s/@PRE_EDIT_LDFLAGS@//
s/@POST_EDIT_LDFLAGS@//
s/bootstrap-emacs/b-emacs/
@ -211,21 +207,24 @@ s/bootstrap-temacs/b-temacs/
s/bootstrap-doc/b-doc/
/rm -f bootstrap-emacs/s/b-emacs/b-emacs b-emacs.exe/
s/echo.*buildobj.lst/dj&/
/ --load loadup bootstrap/i\
stubedit temacs.exe minstack=1024k
/ --load loadup bootstrap/a\
stubify emacs
/^ mv -f emacs/a\
stubedit b-emacs.exe minstack=3072k\
djecho bootlisp > bootlisp
/^ -\{0,1\}rm -f/s/\\#/#/
/^ @\{0,1\}cd ..\/lisp;.*[^\]$/s|$|\; cd ../src|
/^ *THEFILE=/s|$|\; cd ../src|
/^ echo.* buildobj.h/s|echo |djecho |
/^buildobj\.h:/,/^ mv /{
/^ *for /,/^ *done /c\
/^buildobj\.h:/,/^ *\$(AM_V_at)mv /{
/^ *\$(AM_V_GEN)for /,/^ *done /c\
djecho "$(ALLOBJS)" | sed -e 's/^ */"/' -e 's/ *$$/"/' -e 's/ */", "/g' >>$@.tmp
}
# Remove or replace dependencies we cannot have
/^\.PRECIOUS: /s!\.\./config.status !!
/^\.\.\/config.status: /d
/^Makefile: /s!\.\./config.status !!
/^\$(top_srcdir)\/aclocal\.m4 /,/^doc\.o:/c\
\
doc.o: buildobj.h
# Make the GCC command line fit one screen line
/^[ ][ ]*\$(GNUSTEP_CFLAGS)/d
/^[ ][ ]*\$(GCONF_CFLAGS)/d
@ -233,7 +232,13 @@ s/echo.*buildobj.lst/dj&/
s/\$(LIBOTF_CFLAGS) \$(M17N_FLT_CFLAGS) \$(DEPFLAGS) //
s/ \$(C_SWITCH_X_SITE)//
s/ \$(DBUS_CFLAGS)//
s| -I\$(srcdir)/../lib||
s/ \$(PNG_CFLAGS) //
s/ \$(XINERAMA_CFLAGS)//
s/ \$(XFIXES_CFLAGS)//
s/ \$(FREETYPE_CFLAGS)//
s/ \$(FONTCONFIG_CFLAGS)//
s| -I\$(srcdir)/\.\./lib||
s| -I\$(top_srcdir)/lib||
# Add our local inttypes.h to prerequisites where needed
/^lread\.o:/s|lread\.c|& ../msdos/inttypes.h|
/^ *test "X/d

View File

@ -64,7 +64,7 @@
/^#undef PACKAGE_NAME/s/^.*$/#define PACKAGE_NAME ""/
/^#undef PACKAGE_STRING/s/^.*$/#define PACKAGE_STRING ""/
/^#undef PACKAGE_TARNAME/s/^.*$/#define PACKAGE_TARNAME ""/
/^#undef PACKAGE_VERSION/s/^.*$/#define PACKAGE_VERSION ""/
/^#undef PACKAGE_VERSION/s/^.*$/#define PACKAGE_VERSION VERSION/
/^#undef PENDING_OUTPUT_COUNT/s/^.*$/#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_ptr - (FILE)->_base)/
/^#undef VERSION/s/^.*$/#define VERSION "25.1.50"/
/^#undef SYSTEM_TYPE/s/^.*$/#define SYSTEM_TYPE "ms-dos"/
@ -82,7 +82,6 @@
/^#undef HAVE_SIGNED_SIG_ATOMIC_T *$/s/^.*$/#define HAVE_SIGNED_SIG_ATOMIC_T 1/
/^#undef HAVE_SIGNED_WINT_T *$/s/^.*$/#define HAVE_SIGNED_WINT_T 1/
/^#undef HAVE_UNSIGNED_LONG_LONG_INT *$/s/^.*$/#define HAVE_UNSIGNED_LONG_LONG_INT 1/
/^#undef HAVE_WCHAR_H *$/s/^.*$/#define HAVE_WCHAR_H 1/
/^#undef DEVICE_SEP *$/s/^.*$/#define DEVICE_SEP ':'/
/^#undef IS_DIRECTORY_SEP *$/s,^.*$,#define IS_DIRECTORY_SEP(_c_) ((_c_) == '/' || (_c_) == '\\\\'),
/^#undef IS_DEVICE_SEP *$/s/^.*$/#define IS_DEVICE_SEP(_c_) ((_c_) == ':')/
@ -91,6 +90,7 @@
/^#undef NULL_DEVICE *$/s/^.*$/#define NULL_DEVICE "nul"/
/^#undef SEPCHAR *$/s/^.*$/#define SEPCHAR '\;'/
/^#undef USER_FULL_NAME *$/s/^.*$/#define USER_FULL_NAME (getenv ("NAME"))/
/^# *undef _GNU_SOURCE *$/s/^.*$/#define _GNU_SOURCE 1/
/^#undef inline/s/^.*$/#define inline __inline__/
/^#undef my_strftime/s/^.*$/#define my_strftime nstrftime/
/^#undef restrict/s/^.*$/#define restrict __restrict/
@ -101,6 +101,7 @@
s/^#undef STACK_DIRECTION *$/#define STACK_DIRECTION -1/
s/^#undef EMACS_CONFIGURATION *$/#define EMACS_CONFIGURATION "i386-pc-msdosdjgpp"/
s/^#undef EMACS_CONFIG_OPTIONS *$/#define EMACS_CONFIG_OPTIONS "msdos"/
s/^#undef EMACS_CONFIG_FEATURES *$/#define EMACS_CONFIG_FEATURES ""/
s/^#undef PROTOTYPES *$/#define PROTOTYPES 1/
s/^#undef POINTER_TYPE *$/#define POINTER_TYPE void/
/^#undef HAVE_INTTYPES_H/c\
@ -115,12 +116,14 @@ s/^#undef POINTER_TYPE *$/#define POINTER_TYPE void/
#else\
#undef HAVE_STDINT_H\
#endif
s/^#undef HAVE_C_VARARRAYS *$/#define HAVE_C_VARARRAYS 1/
s/^#undef HAVE_DECL_STRTOLL *$/#define HAVE_DECL_STRTOLL 1/
s/^#undef HAVE_DECL_STRTOULL *$/#define HAVE_DECL_STRTOULL 1/
s/^#undef HAVE_DECL_STRTOIMAX *$/#define HAVE_DECL_STRTOIMAX 1/
s/^#undef HAVE_DECL_STRTOUMAX *$/#define HAVE_DECL_STRTOUMAX 1/
s/^#undef HAVE_STRTOLL *$/#define HAVE_STRTOLL 1/
s/^#undef HAVE_STRTOULL *$/#define HAVE_STRTOULL 1/
s/^#undef HAVE_PUTENV *$/#define HAVE_PUTENV 1/
/^#undef HAVE_SIGSET_T *$/s/^.*$/#define HAVE_SIGSET_T 1/
/^#undef HAVE_SNPRINTF/c\
#if __DJGPP__ > 2 || __DJGPP_MINOR__ > 3\

View File

@ -15,11 +15,8 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
# ----------------------------------------------------------------------
/^# DIST: /d
/^SHELL *=/s/^/# /
/^CC *=/s/=.*$/=gcc/
s/-DVERSION[^ ]* //
/^configname *=/s/=.*$/=msdos/
/^CC *=/s/=.*$/=gcc -std=gnu99/
/^archlibdir *=/s!=.*$!=/emacs/bin!
/^bindir *=/s!=.*$!=/emacs/bin!
/^libdir *=/s!=.*$!=/emacs/bin!
@ -38,12 +35,17 @@ s/-DVERSION[^ ]* //
/^LIB_CLOCK_GETTIME *=/s/@[^@\n]*@//g
/^LIB_TIMER_TIME *=/s/@[^@\n]*@//g
/^CFLAGS *=/s!=.*$!=-O2 -g!
/^CPPFLAGS *=/s/@CPPFLAGS@//
/^LDFLAGS *=/s/@LDFLAGS@//
/^C_SWITCH_SYSTEM *=/s!=.*$!=-DMSDOS -I../msdos!
/^C_SWITCH_MACHINE *=/s/@C_SWITCH_MACHINE@//
/^WARN_CFLAGS *=/s/@WARN_CFLAGS@//
/^WERROR_CFLAGS *=/s/@WERROR_CFLAGS@//
/^UPDATE_MANIFEST *=/s/@UPDATE_MANIFEST@//
/^PROFILING_CFLAGS *=/s/@PROFILING_CFLAGS@//
/^AM_DEFAULT_VERBOSITY *=/s/@AM_DEFAULT_VERBOSITY@/1/
/^[Aa][Mm]_/s/@AM_V@/$(V)/
/^[Aa][Mm]_/s/@AM_DEFAULT_V@/$(AM_DEFAULT_VERBOSITY)/
/^ALLOCA *=/s!@ALLOCA@!!
/^EXEEXT *=/s!@EXEEXT@!.exe!
/^CLIENTW *=/s/@CLIENTW@//
@ -56,9 +58,6 @@ s/-DVERSION[^ ]* //
/^GETOPT_H *=/s!@GETOPT_H@!getopt.h!
/^GETOPTOBJS *=/s!@GETOPTOBJS@!getopt.o getopt1.o!
/^INSTALLABLES/s/emacsclient[^ ]* *//
s!^ \./! !
/^UTILITIES *=/,/^$/{
s/movemail[^ ]* *//
}
/^insrcdir=/s/^.*$/\#&/
/^ *\$(insrcdir) ||/s,\$(insrcdir) ||,command.com /c if not exist $(<F),

View File

@ -19,28 +19,16 @@
/^srcdir *=/s/@[^@\n]*@/./
/^VPATH *=/s/@[^@\n]*@/./
/^MAKEINFO *=/s/@[^@\n]*@/makeinfo/
/^INFO_EXT *=/s/@[^@\n]*@/.info/
/^INFO_OPTS *=/s/@[^@\n]*@/--no-split/
/^AM_DEFAULT_VERBOSITY *=/s/@AM_DEFAULT_VERBOSITY@/1/
/^[Aa][Mm]_/s/@AM_V@/$(V)/
/^[Aa][Mm]_/s/@AM_DEFAULT_V@/$(AM_DEFAULT_VERBOSITY)/
/^ENVADD/,/^$/c\
ENVADD =\
export TEXINPUTS := $(srcdir)";"$(TEXINPUTS)\
export TEXINPUTS := $(srcdir)";"$(texinfodir)";"$(TEXINPUTS)\
export MAKEINFO := $(MAKEINFO) $(MAKEINFO_OPTS)
/^SHELL *=/s/^/# /
/^elisp.dvi:/,/^$/ {
/^ *if \[ *\a${permuted_index}/,/^ *fi *$/c\
command.com /c 'if not a${permuted_index}==a sh ./permute-index' \
command.com /c 'if not a${permuted_index}==a mv permuted.fns elisp.fns' \
command.com /c 'if not a${permuted_index}==a texindex elisp.tp' \
command.com /c 'if a${permuted_index}==a texindex elisp.??'
/^doc-emacsver:/,/^$/ {
s/emacsver\.texi\.in/emacsver.in/g
s/\.texi\.\$\$\$\$/.tmp/g
s/[^ ]*move-if-change/update/
}
/^index.texi:/,/^$/ {
/^ *if \[ *\a${permuted_index}/,/^ *fi *$/c\
command.com /c 'if not a${permuted_index}==a cp -p ./index.perm index.texi' \
command.com /c 'if a${permuted_index}==a cp -p ./index.unperm index.texi'
}
/^maintainer-clean:/,/^$/ {
s/^ for file in $(INFO_TARGETS)\; do rm -f.*$/ rm -f $(INFO_TARGETS)/
}
/^mkinfodir *=/s| @.*$|@command.com /c if not exist ..\\..\\info\\emacs$(INFO_EXT) mkdir ..\\..\\info|

View File

@ -15,15 +15,11 @@
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
# ----------------------------------------------------------------------
/^SHELL *=/s/^/# /
/^SHELL *=/s!@SHELL@!/bin/sh!
/^AWK *=/s/@AWK@/gawk/
/^srcdir *=/s/@[^@\n]*@/./
/^top_srcdir *=/s|@[^@\n]*@|../..|
/^top_builddir *=/s|@[^@\n]*@|../..|
/^ *-if /,/^ *fi/d
/^ *if test -f charprop/,/^ *fi/c\
rm -f uni-*.el
/^ *if test -f \${DSTDIR/,/^ *fi/c\
rm -f ${DSTDIR}/uni-*.el ${DSTDIR}/charprop.el
/^ *cp `sed -n/c\
cp uni-*.el ${DSTDIR}
/^AM_DEFAULT_VERBOSITY *=/s/@AM_DEFAULT_VERBOSITY@/1/
/^[Aa][Mm]_/s/@AM_V@/$(V)/
/^[Aa][Mm]_/s/@AM_DEFAULT_V@/$(AM_DEFAULT_VERBOSITY)/

View File

@ -19,6 +19,11 @@
SHELL=/xyzzy/command\
MAKESHELL=/xyzzy/command
/^EXEEXT *=/s/@EXEEXT@/.exe/
/^AM_DEFAULT_VERBOSITY *=/s/@AM_DEFAULT_VERBOSITY@/1/
/^[Aa][Mm]_/s/@AM_V@/$(V)/
/^[Aa][Mm]_/s/@AM_DEFAULT_V@/$(AM_DEFAULT_VERBOSITY)/
/^srcdir=/s|srcdir=@srcdir@|srcdir := $(subst \\,/,$(shell cd))|
# Need a relative directory name for the md command, otherwise it
@ -33,7 +38,6 @@ s|\([ ]\)echo|\1djecho|g
export EMACSLOADPATH=\
RUN_EMACS = ${EMACS} -batch --no-site-file --no-site-lisp
/^MKDIR_P *=/s,@MKDIR_P@,-command.com /c md,
/^MKDIR_P *=/s,@MKDIR_P@,gmkdir -p,
/MKDIR_P.* \${leimdir}\/.*$/s|\${leimdir}/|$(rel_leimdir)\\|
/MKDIR_P.* \$(leimdir)\/.*$/s|\$(leimdir)/|$(rel_leimdir)\\|
/^\${leimdir}\/quail \${leimdir}\/ja-dic: *$/s|\${leimdir}/|$(rel_leimdir)\\|

View File

@ -146,7 +146,7 @@ am__cd = cd
/^ARFLAGS *=/s/@[^@\n]*@/cru/
/^AWK *=/s/@[^@\n]*@/gawk/
/^CANNOT_DUMP *=/s/@[^@\n]*@/no/
/^CC *=/s/@[^@\n]*@/gcc/
/^CC *=/s/@[^@\n]*@/gcc -std=gnu99/
/^CPP *=/s/@[^@\n]*@/gcc -e/
/^CPPFLAGS *=/s/@[^@\n]*@//
/^CCDEPMODE *=/s/@[^@\n]*@/depmode=gcc3/
@ -163,7 +163,6 @@ am__cd = cd
/^WERROR_CFLAGS *=/s/@WERROR_CFLAGS@//
/^DEFS *=/s/@[^@\n]*@//
/^DEPDIR *=/s/@[^@\n]*@/deps/
/^DEPFLAGS *=/s/@[^@\n]*@/-MMD -MF ${DEPDIR}\/$*.d/
/^ECHO_N *=/s/@[^@\n]*@/-n/
/^EXEEXT *=/s/@[^@\n]*@/.exe/
/^EXECINFO_H *=/s/@[^@\n]*@/execinfo.h/
@ -190,7 +189,9 @@ am__cd = cd
/^GNULIB_GL_UNISTD_H_GETOPT *=/s/@GNULIB_GL_UNISTD_H_GETOPT@/1/
/^GNULIB_MEMRCHR *=/s/@GNULIB_MEMRCHR@/1/
/^GNULIB_MKOSTEMP *=/s/@GNULIB_MKOSTEMP@/1/
/^GNULIB_MKTIME *=/s/@GNULIB_MKTIME@/1/
/^GNULIB_TIME_R *=/s/@GNULIB_TIME_R@/1/
/^GNULIB_TIME_RZ *=/s/@GNULIB_TIME_RZ@/1/
/^GNULIB_UNSETENV *=/s/@GNULIB_UNSETENV@/1/
/^GNULIB_[^ =]* *= *@/s/@[^@\n]*@/0/
/^GSETTINGS_CFLAGS *=/s/@[^@\n]*@//
@ -218,6 +219,7 @@ am__cd = cd
/^HAVE_LONG_LONG_INT *=/s/@HAVE_LONG_LONG_INT@/1/
/^HAVE_LSTAT *=/s/@HAVE_LSTAT@/HAVE_LSTAT/
/^HAVE_MAKEINFO *=/s/@HAVE_MAKEINFO@/yes/
/^HAVE_MAX_ALIGN_T *=/s/@HAVE_MAX_ALIGN_T@/0/
/^HAVE_MEMCHR *=/s/@HAVE_MEMCHR@/1/
/^HAVE_MKFIFO *=/s/@HAVE_MKFIFO@/1/
/^HAVE_MKNOD *=/s/@HAVE_MKNOD@/1/
@ -272,8 +274,7 @@ am__cd = cd
/^NEXT_AS_FIRST_DIRECTIVE_FCNTL_H *=/s/@[^@\n]*@/<fcntl.h>/
/^NEXT_AS_FIRST_DIRECTIVE_GETOPT_H *=/s/@[^@\n]*@/<getopt.h>/
/^NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H *=/s/@[^@\n]*@/<signal.h>/
/^NEXT_AS_FIRST_DIRECTIVE_STDARG_H *=/s/@[^@\n]*@//
/^NEXT_AS_FIRST_DIRECTIVE_STDDEF_H *=/s/@[^@\n]*@//
/^NEXT_AS_FIRST_DIRECTIVE_STDDEF_H *=/s/@[^@\n]*@/<stddef.h>/
/^NEXT_AS_FIRST_DIRECTIVE_STDINT_H *=/s/@[^@\n]*@/<stdint.h>/
/^NEXT_AS_FIRST_DIRECTIVE_STDIO_H *=/s/@[^@\n]*@/<stdio.h>/
/^NEXT_AS_FIRST_DIRECTIVE_STDLIB_H *=/s/@[^@\n]*@/<stdlib.h>/
@ -288,9 +289,8 @@ am__cd = cd
/^NEXT_ERRNO_H *=/s/@[^@\n]*@//
/^NEXT_FCNTL_H *=/s/@[^@\n]*@/<fcntl.h>/
/^NEXT_GETOPT_H *=/s/@[^@\n]*@/<getopt.h>/
/^NEXT_STDARG_H *=/s/@[^@\n]*@//
/^NEXT_SIGNAL_H *=/s/@[^@\n]*@/<signal.h>/
/^NEXT_STDDEF_H *=/s/@[^@\n]*@//
/^NEXT_STDDEF_H *=/s/@[^@\n]*@/<stddef.h>/
/^NEXT_STDIO_H *=/s/@[^@\n]*@/<stdio.h>/
/^NEXT_STDINT_H *=/s/@[^@\n]*@/<stdint.h>/
/^NEXT_STDLIB_H *=/s/@[^@\n]*@/<stdlib.h>/
@ -307,7 +307,8 @@ am__cd = cd
/^PTHREAD_H_DEFINES_STRUCT_TIMESPEC *=/s/@[^@\n]*@/0/
/^PTRDIFF_T_SUFFIX *=/s/@[^@\n]*@//
/^RANLIB *=/s/@[^@\n]*@/ranlib/
# We never want any gnulib replacement functions
/^REPLACE_MKTIME *=/s/@[^@\n]*@/1/
# We don't want any other gnulib replacement functions
/^REPLACE_[^ =]* *= *@/s/@[^@\n]*@/0/
/^SIG_ATOMIC_T_SUFFIX *=/s/@SIG_ATOMIC_T_SUFFIX@//
/^SIZE_T_SUFFIX *=/s/@SIZE_T_SUFFIX@/u/
@ -316,15 +317,14 @@ am__cd = cd
/^DIRENT_H *=/s/@[^@\n]*@//
/^ERRNO_H *=/s/@[^@\n]*@//
/^EXECINFO_H *=/s/@[^@\n]*@/execinfo.h/
/^STDBOOL_H *=/s/@[^@\n]*@//
/^STDALIGN_H *=/s/@[^@\n]*@/stdalign.h/
/^STDARG_H *=/s/@[^@\n]*@//
/^STDDEF_H *=/s/@[^@\n]*@//
/^STDDEF_H *=/s/@[^@\n]*@/stddef.h/
/^STDINT_H *=/s/@[^@\n]*@/stdint.h/
/^SYS_TIME_H_DEFINES_STRUCT_TIMESPEC *=/s/@[^@\n]*@/0/
/^TIME_H_DEFINES_STRUCT_TIMESPEC *=/s/@[^@\n]*@/0/
/^UNISTD_H_HAVE_WINSOCK2_H *=/s/@[^@\n]*@/0/
/^UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS *=/s/@[^@\n]*@/0/
/^UNISTD_H_DEFINES_STRUCT_TIMESPEC *=/s/@[^@\n]*@/0/
/^UNDEFINE_STRTOK_R *=/s/@UNDEFINE_STRTOK_R@/0/
/^WCHAR_T_SUFFIX *=/s/@WCHAR_T_SUFFIX@/h/
/^WINT_T_SUFFIX *=/s/@WINT_T_SUFFIX@//
@ -334,7 +334,7 @@ am__cd = cd
/am__append_[1-9][0-9]* *=.*gettext\.h/s/@[^@\n]*@/\#/
/am__append_2 *=.*verify\.h/s/@[^@\n]*@//
/^@gl_GNULIB_ENABLED_tempname_TRUE@/s/@[^@\n]*@//
/^gl_LIBOBJS *=/s/@[^@\n]*@/getopt.o getopt1.o memrchr.o sig2str.o time_r.o getloadavg.o pthread_sigmask.o mkostemp.o fpending.o fdatasync.o execinfo.o/
/^gl_LIBOBJS *=/s/@[^@\n]*@/getopt.o getopt1.o memrchr.o sig2str.o time_r.o time_rz.o timegm.o mktime.o getloadavg.o pthread_sigmask.o mkostemp.o fpending.o fdatasync.o execinfo.o/
/^am__append_[1-9][0-9]* *=/,/^[^ ]/{
s/ *inttypes\.h//
s| *sys/select\.h||
@ -342,13 +342,13 @@ am__cd = cd
}
/^am_libgnu_a_OBJECTS *=/,/^[^ ]/{
s/allocator\.\$(OBJEXT) //
s/binary-io\.\$(OBJEXT) //
s/careadlinkat\.\$(OBJEXT) //
s/pipe2\.\$(OBJEXT) //
s/acl-errno-valid\.\$(OBJEXT) //
s/file-has-acl\.\$(OBJEXT) //
s/acl-internal\.\$(OBJEXT) //
s/get-permissions\.\$(OBJEXT) //
s/set-permissions\.\$(OBJEXT) //
s/qcopy-acl\.\$(OBJEXT) //
s/qset-acl\.\$(OBJEXT) //
s/openat-die\.\$(OBJEXT) //
s/save-cwd\.\$(OBJEXT) //
}
@ -396,13 +396,9 @@ s/^@GL_GENERATE_ERRNO_H_TRUE@/\#/
s/^@GL_GENERATE_ERRNO_H_FALSE@//
s/^@GL_GENERATE_EXECINFO_H_TRUE@//
s/^@GL_GENERATE_EXECINFO_H_FALSE@/\#/
s/^@GL_GENERATE_STDBOOL_H_TRUE@/\#/
s/^@GL_GENERATE_STDBOOL_H_FALSE@//
s/^@GL_GENERATE_STDALIGN_H_TRUE@//
s/^@GL_GENERATE_STDALIGN_H_FALSE@/\#/
s/^@GL_GENERATE_STDARG_H_TRUE@/\#/
s/^@GL_GENERATE_STDARG_H_FALSE@/\#/
s/^@GL_GENERATE_STDDEF_H_TRUE@/\#/
s/^@GL_GENERATE_STDDEF_H_TRUE@//
s/^@GL_GENERATE_STDDEF_H_FALSE@/\#/
s/^@GL_GENERATE_STDINT_H_TRUE@//
s/^@GL_GENERATE_STDINT_H_FALSE@/\#/

View File

@ -23,5 +23,9 @@ export FNCASE=y
/^lisp *=/s|\$(srcdir)|$(CURDIR)|
/^srcdir *=/s|@srcdir@|.|
/^top_srcdir *=/s|@top_srcdir@|./..|
/^EXEEXT *=/s/@EXEEXT@/.exe/
/^XARGS_LIMIT *=/s|@XARGS_LIMIT@||
/^AM_DEFAULT_VERBOSITY *=/s/@AM_DEFAULT_VERBOSITY@/1/
/^[Aa][Mm]_/s/@AM_V@/$(V)/
/^[Aa][Mm]_/s/@AM_DEFAULT_V@/$(AM_DEFAULT_VERBOSITY)/

View File

@ -114,8 +114,9 @@ TEMACS_LDFLAGS = $(LD_SWITCH_SYSTEM) $(LD_SWITCH_SYSTEM_TEMACS)
## around this, newer ones setfattr. See Bug#11398 and Bug#16343.
PAXCTL = @PAXCTL@
SETFATTR = @SETFATTR@
PAXCTL_if_present = $(or $(PAXCTL),: paxctl)
SETFATTR_if_present = $(or $(SETFATTR),: setfattr)
## Commands to set PaX flags on dumped and not-dumped instances of Emacs.
PAXCTL_dumped = @PAXCTL_dumped@
PAXCTL_notdumped = @PAXCTL_notdumped@
## Some systems define this to request special libraries.
LIBS_SYSTEM=@LIBS_SYSTEM@
@ -542,7 +543,9 @@ ifeq ($(CANNOT_DUMP),yes)
ln -f temacs$(EXEEXT) $@
else
LC_ALL=C $(RUN_TEMACS) -batch $(BUILD_DETAILS) -l loadup dump
$(PAXCTL_if_present) -zex $@
ifneq ($(PAXCTL_dumped),)
$(PAXCTL_dumped) $@
endif
ln -f $@ bootstrap-emacs$(EXEEXT)
endif
@ -606,8 +609,9 @@ temacs$(EXEEXT): $(LIBXMENU) $(ALLOBJS) \
-o temacs $(ALLOBJS) $(LIBEGNU_ARCHIVE) $(W32_RES_LINK) $(LIBES)
$(MKDIR_P) $(etc)
ifneq ($(CANNOT_DUMP),yes)
$(PAXCTL_if_present) -r $@
$(SETFATTR_if_present) -n user.pax.flags -v er $@
ifneq ($(PAXCTL_notdumped),)
$(PAXCTL_notdumped) $@
endif
endif
## The following oldxmenu-related rules are only (possibly) used if
@ -748,7 +752,9 @@ ifeq ($(CANNOT_DUMP),yes)
ln -f temacs$(EXEEXT) $@
else
$(RUN_TEMACS) --batch $(BUILD_DETAILS) --load loadup bootstrap
$(PAXCTL_if_present) -zex emacs$(EXEEXT)
ifneq ($(PAXCTL_dumped),)
$(PAXCTL_dumped) emacs$(EXEEXT)
endif
mv -f emacs$(EXEEXT) $@
endif
@: Compile some files earlier to speed up further compilation.

View File

@ -30,6 +30,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
# include <sys/timerfd.h>
#endif
#ifdef MSDOS
#include "msdos.h"
#endif
/* Free-list of atimer structures. */
static struct atimer *free_atimers;

View File

@ -134,6 +134,9 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
# define HAVE_LSTAT 1
#else
# define lstat stat
/* DJGPP 2.03 and older don't have the next two. */
# define EOVERFLOW ERANGE
# define SIZE_MAX 4294967295U
#endif
/* We must intercept 'opendir' calls to stash away the directory name,

View File

@ -35,7 +35,7 @@
### Code:
atimer.o: atimer.c atimer.h syssignal.h systime.h lisp.h blockinput.h \
globals.h ../lib/unistd.h $(config_h)
globals.h ../lib/unistd.h msdos.h $(config_h)
bidi.o: bidi.c buffer.h character.h dispextern.h msdos.h lisp.h \
globals.h $(config_h)
buffer.o: buffer.c buffer.h region-cache.h commands.h window.h \
@ -92,7 +92,7 @@ editfns.o: editfns.c window.h buffer.h systime.h $(INTERVALS_H) character.h \
emacs.o: emacs.c commands.h systty.h syssignal.h blockinput.h process.h \
termhooks.h buffer.h atimer.h systime.h $(INTERVALS_H) lisp.h $(config_h) \
globals.h ../lib/unistd.h window.h dispextern.h keyboard.h keymap.h \
frame.h coding.h gnutls.h msdos.h unexec.h
frame.h coding.h gnutls.h msdos.h dosfns.h unexec.h
fileio.o: fileio.c window.h buffer.h systime.h $(INTERVALS_H) character.h \
coding.h msdos.h blockinput.h atimer.h lisp.h $(config_h) frame.h \
commands.h globals.h ../lib/unistd.h

View File

@ -24,6 +24,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
extern unsigned char dos_country_info[DOS_COUNTRY_INFO];
extern int dos_memory_info (unsigned long *, unsigned long *,
unsigned long *, unsigned long *);
void dos_cleanup (void);
void syms_of_dosfns (void);
void init_dosfns (void);
#ifndef HAVE_X_WINDOWS
extern int msdos_stdcolor_idx (const char *);
extern Lisp_Object msdos_stdcolor_name (int);

View File

@ -54,6 +54,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifdef MSDOS
#include <binary-io.h>
#include "dosfns.h"
#endif
#ifdef HAVE_LIBSYSTEMD

View File

@ -53,6 +53,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "w32.h" /* for dostounix_filename */
#endif
#ifndef MSDOS
#ifdef HAVE_UTMP_H
#include <utmp.h>
#endif
@ -732,6 +734,19 @@ unlock_file (Lisp_Object fn)
SAFE_FREE ();
}
#else /* MSDOS */
void
lock_file (Lisp_Object fn)
{
}
void
unlock_file (Lisp_Object fn)
{
}
#endif /* MSDOS */
void
unlock_all_files (void)
{
@ -795,6 +810,9 @@ The value is nil if the FILENAME is not locked,
t if it is locked by you, else a string saying which user has locked it. */)
(Lisp_Object filename)
{
#ifdef MSDOS
return Qnil;
#else
Lisp_Object ret;
char *lfname;
int owner;
@ -815,6 +833,7 @@ t if it is locked by you, else a string saying which user has locked it. */)
SAFE_FREE ();
return ret;
#endif
}
void

View File

@ -34,8 +34,13 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "intervals.h"
#include "window.h"
#if __GNUC__ >= 4
static void sort_vector_copy (Lisp_Object, ptrdiff_t,
Lisp_Object [restrict], Lisp_Object [restrict]);
#else
static void sort_vector_copy (Lisp_Object, ptrdiff_t,
Lisp_Object [], Lisp_Object []);
#endif
static bool internal_equal (Lisp_Object, Lisp_Object, int, bool, Lisp_Object);
DEFUN ("identity", Fidentity, Sidentity, 1, 1, 0,

View File

@ -509,10 +509,13 @@ adjust_frame_size (struct frame *f, int new_width, int new_height, int inhibit,
block_input ();
#ifdef MSDOS
/* We only can set screen dimensions to certain values supported
by our video hardware. Try to find the smallest size greater
or equal to the requested dimensions. */
dos_set_window_size (&new_lines, &new_cols);
/* We only can set screen dimensions to certain values supported by
our video hardware. Try to find the smallest size greater or
equal to the requested dimensions, while accounting for the fact
that the menu-bar lines are not counted in the frame height. */
int dos_new_lines = new_lines + FRAME_TOP_MARGIN (f);
dos_set_window_size (&dos_new_lines, &new_cols);
new_lines = dos_new_lines - FRAME_TOP_MARGIN (f);
#endif
if (new_windows_width != old_windows_width)

View File

@ -47,6 +47,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifdef MSDOS
#include "msdos.h"
#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 5
# define INFINITY __builtin_inf()
# define NAN __builtin_nan("")
#endif
#endif
#ifdef HAVE_NS

View File

@ -59,6 +59,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <libc/dosio.h> /* for _USE_LFN */
#include <conio.h> /* for cputs */
#if (__DJGPP__ + (__DJGPP_MINOR__ > 3)) >= 3
#define SYS_ENVIRON _environ
#else
#define SYS_ENVIRON environ
#endif
#include "msdos.h"
#include "systime.h"
#include "frame.h"
@ -422,8 +428,6 @@ static unsigned long screen_old_address = 0;
/* Segment and offset of the virtual screen. If 0, DOS/V is NOT loaded. */
static unsigned short screen_virtual_segment = 0;
static unsigned short screen_virtual_offset = 0;
extern Lisp_Object Qcursor_type;
extern Lisp_Object Qbar, Qhbar;
/* The screen colors of the current frame, which serve as the default
colors for newly-created frames. */
@ -1384,11 +1388,6 @@ IT_delete_glyphs (struct frame *f, int n)
/* This was copied from xfaces.c */
extern Lisp_Object Qbackground_color;
extern Lisp_Object Qforeground_color;
Lisp_Object Qreverse;
extern Lisp_Object Qtitle;
/* IT_set_terminal_modes is called when emacs is started,
resumed, and whenever the screen is redrawn! */
@ -3710,7 +3709,7 @@ dos_ttcooked (void)
file TEMPOUT and stderr to TEMPERR. */
int
run_msdos_command (unsigned char **argv, const char *working_dir,
run_msdos_command (char **argv, const char *working_dir,
int tempin, int tempout, int temperr, char **envv)
{
char *saveargv1, *saveargv2, *lowcase_argv0, *pa, *pl;
@ -3796,8 +3795,8 @@ run_msdos_command (unsigned char **argv, const char *working_dir,
;
if (*cmnd)
{
extern char **environ;
char **save_env = environ;
extern char **SYS_ENVIRON;
char **save_env = SYS_ENVIRON;
int save_system_flags = __system_flags;
/* Request the most powerful version of `system'. We need
@ -3809,16 +3808,16 @@ run_msdos_command (unsigned char **argv, const char *working_dir,
| __system_handle_null_commands
| __system_emulate_chdir);
environ = envv;
SYS_ENVIRON = envv;
result = system (cmnd);
__system_flags = save_system_flags;
environ = save_env;
SYS_ENVIRON = save_env;
}
else
result = 0; /* emulate Unixy shell behavior with empty cmd line */
}
else
result = spawnve (P_WAIT, argv[0], (char **)argv, envv);
result = spawnve (P_WAIT, argv[0], argv, envv);
dup2 (inbak, 0);
dup2 (outbak, 1);
@ -4085,11 +4084,14 @@ sys_select (int nfds, fd_set *rfds, fd_set *wfds, fd_set *efds,
gettime (&t);
clnow = make_timespec (t.tv_sec, t.tv_nsec);
cldiff = timespec_sub (clnow, cllast);
/* Stop when timeout value is about to cross zero. */
if (timespec_cmp (*timeout, cldiff) <= 0)
{
timeout->tv_sec = 0;
timeout->tv_nsec = 0;
return 0;
}
*timeout = timespec_sub (*timeout, cldiff);
/* Stop when timeout value crosses zero. */
if (timespec_sign (*timeout) <= 0)
return 0;
cllast = clnow;
dos_yield_time_slice ();
}

View File

@ -41,8 +41,12 @@ void mouse_on (void);
void mouse_off (void);
void mouse_moveto (int, int);
void IT_set_frame_parameters (struct frame *, Lisp_Object);
#include <sys/types.h>
#include <sys/stat.h>
#include <pc.h>
#include <signal.h>
#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 4
int readlink (const char *, char *, size_t);
@ -50,6 +54,16 @@ int readlink (const char *, char *, size_t);
ssize_t readlinkat (int, const char *, char *, size_t);
int fstatat (int, char const *, struct stat *, int);
int unsetenv (const char *);
int faccessat (int, const char *, int, int);
void msdos_fatal_signal (int);
void syms_of_msdos (void);
int pthread_sigmask (int, const sigset_t *, sigset_t *);
int dos_keysns (void);
int dos_keyread (void);
int run_msdos_command (char **, const char *, int, int, int, char **);
void syms_of_win16select (void);
/* Constants. */
#define EINPROGRESS 112

View File

@ -4278,19 +4278,6 @@ Data that is unavailable is returned as nil. */)
#endif
}
/* If program file NAME starts with /: for quoting a magic
name, remove that, preserving the multibyteness of NAME. */
Lisp_Object
remove_slash_colon (Lisp_Object name)
{
return
((SBYTES (name) > 2 && SREF (name, 0) == '/' && SREF (name, 1) == ':')
? make_specified_string (SSDATA (name) + 2, SCHARS (name) - 2,
SBYTES (name) - 2, STRING_MULTIBYTE (name))
: name);
}
/* Turn off input and output for process PROC. */
static void
@ -7483,6 +7470,19 @@ add_timer_wait_descriptor (int fd)
#endif /* HAVE_TIMERFD */
/* If program file NAME starts with /: for quoting a magic
name, remove that, preserving the multibyteness of NAME. */
Lisp_Object
remove_slash_colon (Lisp_Object name)
{
return
((SBYTES (name) > 2 && SREF (name, 0) == '/' && SREF (name, 1) == ':')
? make_specified_string (SSDATA (name) + 2, SCHARS (name) - 2,
SBYTES (name) - 2, STRING_MULTIBYTE (name))
: name);
}
/* Add DESC to the set of keyboard input descriptors. */
void
@ -8010,13 +8010,6 @@ The variable takes effect when `start-process' is called. */);
defsubr (&Sset_process_filter_multibyte);
defsubr (&Sprocess_filter_multibyte_p);
#endif /* subprocesses */
defsubr (&Sget_buffer_process);
defsubr (&Sprocess_inherit_coding_system_flag);
defsubr (&Slist_system_processes);
defsubr (&Sprocess_attributes);
{
Lisp_Object subfeatures = Qnil;
const struct socket_options *sopt;
@ -8049,4 +8042,10 @@ The variable takes effect when `start-process' is called. */);
Fprovide (intern_c_string ("make-network-process"), subfeatures);
}
#endif /* subprocesses */
defsubr (&Sget_buffer_process);
defsubr (&Sprocess_inherit_coding_system_flag);
defsubr (&Slist_system_processes);
defsubr (&Sprocess_attributes);
}

View File

@ -65,8 +65,6 @@ unsigned get_clipboard_data (unsigned, void *, unsigned, int);
unsigned close_clipboard (void);
unsigned clipboard_compact (unsigned);
Lisp_Object QCLIPBOARD, QPRIMARY;
/* The segment address and the size of the buffer in low
memory used to move data between us and WinOldAp module. */
static struct {
@ -719,8 +717,7 @@ variable is set, it is used for the next communication only.
After the communication, this variable is set to nil. */);
Vnext_selection_coding_system = Qnil;
QPRIMARY = intern ("PRIMARY"); staticpro (&QPRIMARY);
QCLIPBOARD = intern ("CLIPBOARD"); staticpro (&QCLIPBOARD);
DEFSYM (QCLIPBOARD, "CLIPBOARD");
}
#endif /* MSDOS */

View File

@ -53,6 +53,14 @@ var p = {
var evens = [e for each (e in range(0, 21))
if (ed % 2 == 0)];
var funs = [
function() {
for (;;) {
}
},
function(){},
];
!b
!=b
!==b