If ErrorLevel 1 Goto xmlDone\r
Echo Configuring with libxml2 ...\r
sed -e "/#undef HAVE_LIBXML2/s/^.*$/#define HAVE_LIBXML2 1/" <config.h2 >config.h3\r
-mv config.h3 config.h2\r
+sed -e "/#define EMACS_CONFIG_FEATURES/s/^.*$/#define EMACS_CONFIG_FEATURES \"LIBXML2\"/" <config.h3 >config.h2\r
set libxml=1\r
:xmlDone\r
rm -f junk.c junk junk.exe\r
\r
rem Create "makefile" from "makefile.in".\r
rm -f Makefile makefile.tmp\r
-copy Makefile.in+lisp.mk+deps.mk makefile.tmp\r
+copy Makefile.in+deps.mk makefile.tmp\r
sed -f ../msdos/sed1v2.inp <makefile.tmp >Makefile\r
rm -f makefile.tmp\r
\r
Echo Configuring the library source directory...\r
cd lib-src\r
sed -f ../msdos/sed3v2.inp <Makefile.in >Makefile\r
+mv Makefile makefile.tmp\r
+sed -n -e "/^AC_INIT/s/[^,]*, \([^,]*\).*/@set emver=\1/p" ../configure.ac > emver.bat\r
+call emver.bat\r
+sed -e "s/@version@/%emver%/g" <makefile.tmp >Makefile\r
if "%X11%" == "" goto libsrc2a\r
mv Makefile makefile.tmp\r
sed -f ../msdos/sed3x.inp <makefile.tmp >Makefile\r
rem ----------------------------------------------------------------------\r
Echo Configuring the doc directory, expect one "File not found" message...\r
cd doc\r
+Rem Rename files like djtar on plain DOS filesystem would.\r
+If Exist emacs\emacsver.texi.in update emacs/emacsver.texi.in emacs/emacsver.in\r
+If Exist man\emacs.1.in update man/emacs.1.in man/emacs.in\r
+If Exist ..\etc\refcards\emacsver.tex.in update ../etc/refcards/emacsver.tex.in ../etc/refcards/emacsver.in\r
Rem The two variants for lispintro below is for when the shell\r
Rem supports long file names but DJGPP does not\r
-for %%d in (emacs lispref lispintro lispintr misc) do sed -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile\r
+for %%d in (emacs lispref lispintro lispintr misc) do sed -e "s/@version@/%emver%/g" -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile\r
+Rem produce emacs.1 from emacs.in\r
+If Exist man\emacs.1 goto manOk\r
+sed -e "s/@version@/%emver%/g" -e "s/@PACKAGE_BUGREPORT@/bug-gnu-emacs@gnu.org/g" < man\emacs.in > man\emacs.1\r
+:manOk\r
cd ..\r
rem ----------------------------------------------------------------------\r
Echo Configuring the lib directory...\r
If Exist build-aux\snippet\c++defs.h update build-aux/snippet/c++defs.h build-aux/snippet/cxxdefs.h\r
cd lib\r
Rem Rename files like djtar on plain DOS filesystem would.\r
-If Exist build-aux\snippet\c++defs.h update build-aux/snippet/c++defs.h build-aux/snippet/cxxdefs.h\r
If Exist alloca.in.h update alloca.in.h alloca.in-h\r
If Exist byteswap.in.h update byteswap.in.h byteswap.in-h\r
If Exist dirent.in.h update dirent.in.h dirent.in-h\r
If Exist sys_time.in.h update sys_time.in.h sys_time.in-h\r
If Exist time.in.h update time.in.h time.in-h\r
If Exist unistd.in.h update unistd.in.h unistd.in-h\r
+Rem Only repository has the msdos/autogen directory\r
If Exist Makefile.in sed -f ../msdos/sedlibcf.inp < Makefile.in > makefile.tmp\r
If Exist ..\msdos\autogen\Makefile.in sed -f ../msdos/sedlibcf.inp < ..\msdos\autogen\Makefile.in > makefile.tmp\r
sed -f ../msdos/sedlibmk.inp < makefile.tmp > Makefile\r
Echo Configuring the admin/unidata directory...\r
cd admin\unidata\r
sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile\r
+Echo Configuring the admin/charsets directory...\r
+cd ..\charsets\r
+sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile\r
+Echo Configuring the admin/grammars directory...\r
+cd ..\grammars\r
+sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile\r
cd ..\..\r
:noadmin\r
rem ----------------------------------------------------------------------\r
set djgpp_ver=\r
set sys_malloc=\r
set libxml=\r
+set emver=\r
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],
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=
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
@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
;;; Code:
+;;;###autoload
(defvar cursor-sensor-inhibit nil)
(defun cursor-sensor--intangible-p (pos)
(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
(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)
"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
: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)
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
;; 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.
(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
(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))
(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]
(isearch-update)))))
\f
-(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.
(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))
;; `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))
"[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))
(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
(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)
(< 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))))
;;
;; 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)))
(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
(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)
(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)
(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'.
;; 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)
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
"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
"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"
"~<'" "`>~" "/<'" "/`>" "(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
"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
+ ["-!-" "-*-"]
)
)
(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)
)
(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)
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)
# 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@//
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@//
/^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/
/^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@//
/^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
/^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!
-/^[\f ]*$/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/
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
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
/^#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"/
/^#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_) == ':')/
/^#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/
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\
#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\
# 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!
/^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@//
/^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),
/^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|
-
# 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)/
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
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)\\|
/^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/
/^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/
/^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]*@//
/^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/
/^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>/
/^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>/
/^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/
/^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@//
/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||
}
/^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) //
}
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@/\#/
/^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)/
## 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@
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
-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
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.
# include <sys/timerfd.h>
#endif
+#ifdef MSDOS
+#include "msdos.h"
+#endif
+
/* Free-list of atimer structures. */
static struct atimer *free_atimers;
# 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,
### 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 \
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
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);
#ifdef MSDOS
#include <binary-io.h>
+#include "dosfns.h"
#endif
#ifdef HAVE_LIBSYSTEMD
#include "w32.h" /* for dostounix_filename */
#endif
+#ifndef MSDOS
+
#ifdef HAVE_UTMP_H
#include <utmp.h>
#endif
SAFE_FREE ();
}
+#else /* MSDOS */
+void
+lock_file (Lisp_Object fn)
+{
+}
+
+void
+unlock_file (Lisp_Object fn)
+{
+}
+
+#endif /* MSDOS */
+
void
unlock_all_files (void)
{
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;
SAFE_FREE ();
return ret;
+#endif
}
void
#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,
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)
#ifdef MSDOS
#include "msdos.h"
+#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 5
+# define INFINITY __builtin_inf()
+# define NAN __builtin_nan("")
+#endif
#endif
#ifdef HAVE_NS
#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"
/* 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. */
/* 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! */
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;
;
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
| __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);
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 ();
}
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);
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
#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
#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
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;
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);
}
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 {
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 */
var evens = [e for each (e in range(0, 21))
if (ed % 2 == 0)];
+var funs = [
+ function() {
+ for (;;) {
+ }
+ },
+ function(){},
+];
+
!b
!=b
!==b