mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-21 10:24:55 +00:00
Fix the MSDOS build.
src/unexcoff.c [MSDOS]: Include libc/atexit.h. (copy_text_and_data): Zero out the atexit chain pointer before dumping Emacs. src/termhooks.h (encode_terminal_code): Update prototype. src/term.c (encode_terminal_code) [DOS_NT]: Make it externally visible for all DOS_NT ports, not just WINDOWSNT. (syms_of_term) [!MSDOS]: Don't define 'tty-menu-*' symbols on MSDOS. src/sysdep.c (emacs_sigaction_init, init_signals): Don't use SIGCHLD unless it is defined. (emacs_pipe) [MSDOS]: Redirect to 'pipe'. src/process.c (close_on_exec, accept4, process_socket): Move into the "ifdef subprocesses" part. (catch_child_signal): Condition by "ifdef subprocesses". (syms_of_process) <Qinternal_default_process_sentinel> <Qinternal_default_process_filter>: Condition by "ifdef subprocesses". src/msdos.h: Add prototypes for new functions. (EINPROGRESS): Define. (O_CLOEXEC): Define to zero. src/msdos.c (check_window_system): Remove unnecessary an incompatible duplicate function. (sys_opendir, readlinkat, faccessat, fstatat, unsetenv): New functions in support of new functionality. src/menu.c (single_menu_item): Add visual indication of submenu also for menus on MSDOS frames. (Fx_popup_menu) [!MSDOS]: Do not call tty_menu_show on MSDOS. src/lisp.h (CHECK_PROCESS) [!subprocesses]: Do not define when async subprocesses aren't supported. src/font.h (FONT_WIDTH) [MSDOS]: MSDOS-specific definition. src/emacs.c (close_output_streams): Zero out errno before calling close_stream. src/dired.c [MSDOS]: Include msdos.h. src/conf_post.h (opendir) [MSDOS]: Redirect to sys_opendir. (DATA_START) [MSDOS]: Define. (SYSTEM_PURESIZE_EXTRA) [MSDOS]: Enlarge by 25K. src/callproc.c (block_child_signal, unblock_child_signal) [MSDOS]: Ifdef away for MSDOS. (record_kill_process) [MSDOS]: Ifdef away the entire body for MSDOS. (call_process_cleanup) [MSDOS]: Ifdef away portions not relevant for MSDOS. (call_process) [MSDOS]: Fix call sequence of dostounix_filename. Use temporary file template that is compatible with mkostemp. Move vfork-related portions under #ifndef MSDOS. (syms_of_callproc): Unify templates of MSDOS and WINDOWSNT. lisp/term/pc-win.el (x-list-fonts, x-get-selection-value): Provide doc strings, as required by snarf-documentation. msdos/sedlisp.inp: msdos/sedlibmk.inp: msdos/sedleim.inp: msdos/sed3v2.inp: msdos/sed2v2.inp: msdos/sed1v2.inp: Update Sed scripts for Emacs 24.4. msdos/inttypes.h: Add PRIdMAX. msdos/INSTALL: Update for Emacs 24.4. msdos/sedadmin.inp: New file.
This commit is contained in:
parent
3a31cae467
commit
bf6b4923f7
@ -1,3 +1,7 @@
|
||||
2014-04-16 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* config.bat: Update for Emacs 24.4.
|
||||
|
||||
2014-04-13 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
Port to IRIX 6.5 (Bug#9684).
|
||||
|
18
config.bat
18
config.bat
@ -264,8 +264,14 @@ 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
|
||||
If Exist errno.in.h update errno.in.h errno.in-h
|
||||
If Exist execinfo.in.h update execinfo.in.h execinfo.in-h
|
||||
If Exist fcntl.in.h update fcntl.in.h fcntl.in-h
|
||||
If Exist getopt.in.h update getopt.in.h getopt.in-h
|
||||
If Exist inttypes.in.h update inttypes.in.h inttypes.in-h
|
||||
If Exist stdarg.in.h update stdarg.in.h stdarg.in-h
|
||||
If Exist stdalign.in.h update stdalign.in.h stdalign.in-h
|
||||
If Exist stdbool.in.h update stdbool.in.h stdbool.in-h
|
||||
If Exist signal.in.h update signal.in.h signal.in-h
|
||||
@ -274,8 +280,11 @@ If Exist stddef.in.h update stddef.in.h stddef.in-h
|
||||
If Exist stdint.in.h update stdint.in.h stdint.in-h
|
||||
If Exist stdio.in.h update stdio.in.h stdio.in-h
|
||||
If Exist stdlib.in.h update stdlib.in.h stdlib.in-h
|
||||
If Exist string.in.h update string.in.h string.in-h
|
||||
If Exist sys_select.in.h update sys_select.in.h sys_select.in-h
|
||||
If Exist sys_stat.in.h update sys_stat.in.h sys_stat.in-h
|
||||
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
|
||||
If Exist Makefile.in sed -f ../msdos/sedlibcf.inp < Makefile.in > makefile.tmp
|
||||
@ -294,13 +303,18 @@ If Exist gnus\.dir-locals.el update gnus/.dir-locals.el gnus/_dir-locals.el
|
||||
sed -f ../msdos/sedlisp.inp < Makefile.in > Makefile
|
||||
cd ..
|
||||
rem ----------------------------------------------------------------------
|
||||
If not Exist leim\quail\latin-pre.el goto maindir
|
||||
Echo Configuring the leim directory...
|
||||
cd leim
|
||||
sed -f ../msdos/sedleim.inp < Makefile.in > Makefile
|
||||
cd ..
|
||||
rem ----------------------------------------------------------------------
|
||||
:maindir
|
||||
If Not Exist admin\unidata goto noadmin
|
||||
Echo Configuring the admin/unidata directory...
|
||||
cd admin\unidata
|
||||
sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile
|
||||
cd ..\..
|
||||
:noadmin
|
||||
rem ----------------------------------------------------------------------
|
||||
Echo Configuring the main directory...
|
||||
If Exist .dir-locals.el update .dir-locals.el _dir-locals.el
|
||||
If Exist src\.dbxinit update src/.dbxinit src/_dbxinit
|
||||
|
@ -1,3 +1,8 @@
|
||||
2014-04-16 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* update-game-score.c (write_scores): Condition fchmod call on
|
||||
DOS_NT, not WINDOWSNT.
|
||||
|
||||
2014-03-10 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* emacsclient.c (main): #ifdef out previous change on Windows.
|
||||
|
@ -443,7 +443,7 @@ write_scores (const char *filename, const struct score_entry *scores,
|
||||
fd = mkostemp (tempfile, 0);
|
||||
if (fd < 0)
|
||||
return -1;
|
||||
#ifndef WINDOWSNT
|
||||
#ifndef DOS_NT
|
||||
if (fchmod (fd, 0644) != 0)
|
||||
return -1;
|
||||
#endif
|
||||
@ -459,7 +459,7 @@ write_scores (const char *filename, const struct score_entry *scores,
|
||||
return -1;
|
||||
if (rename (tempfile, filename) != 0)
|
||||
return -1;
|
||||
#ifdef WINDOWSNT
|
||||
#ifdef DOS_NT
|
||||
if (chmod (filename, 0644) < 0)
|
||||
return -1;
|
||||
#endif
|
||||
|
@ -1,3 +1,8 @@
|
||||
2014-04-16 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* term/pc-win.el (x-list-fonts, x-get-selection-value): Provide
|
||||
doc strings, as required by snarf-documentation.
|
||||
|
||||
2014-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* ps-def.el (ps-generate-postscript-with-faces1): Use the new `sorted'
|
||||
|
@ -165,6 +165,27 @@ created."
|
||||
|
||||
;; From src/xfns.c
|
||||
(defun x-list-fonts (_pattern &optional _face _frame _maximum width)
|
||||
"Return a list of the names of available fonts matching PATTERN.
|
||||
If optional arguments FACE and FRAME are specified, return only fonts
|
||||
the same size as FACE on FRAME.
|
||||
|
||||
PATTERN should be a string containing a font name in the XLFD,
|
||||
Fontconfig, or GTK format. A font name given in the XLFD format may
|
||||
contain wildcard characters:
|
||||
the * character matches any substring, and
|
||||
the ? character matches any single character.
|
||||
PATTERN is case-insensitive.
|
||||
|
||||
The return value is a list of strings, suitable as arguments to
|
||||
\`set-face-font'.
|
||||
|
||||
Fonts Emacs can't use may or may not be excluded
|
||||
even if they match PATTERN and FACE.
|
||||
The optional fourth argument MAXIMUM sets a limit on how many
|
||||
fonts to match. The first MAXIMUM fonts are reported.
|
||||
The optional fifth argument WIDTH, if specified, is a number of columns
|
||||
occupied by a character of a font. In that case, return only fonts
|
||||
the WIDTH times as wide as FACE on FRAME."
|
||||
(if (or (null width) (and (numberp width) (= width 1)))
|
||||
(list "ms-dos")
|
||||
(list "no-such-font")))
|
||||
@ -232,9 +253,9 @@ is not used)."
|
||||
(w16-set-clipboard-data text))
|
||||
(setq x-last-selected-text text))
|
||||
|
||||
;;; Return the value of the current selection.
|
||||
;;; Consult the selection. Treat empty strings as if they were unset.
|
||||
(defun x-get-selection-value ()
|
||||
"Return the value of the current selection.
|
||||
Consult the selection. Treat empty strings as if they were unset."
|
||||
(if x-select-enable-clipboard
|
||||
(let (text)
|
||||
;; Don't die if x-get-selection signals an error.
|
||||
|
@ -1,3 +1,18 @@
|
||||
2014-04-16 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* sedlisp.inp:
|
||||
* sedlibmk.inp:
|
||||
* sedleim.inp:
|
||||
* sed3v2.inp:
|
||||
* sed2v2.inp:
|
||||
* sed1v2.inp: Update Sed scripts for Emacs 24.4.
|
||||
|
||||
* inttypes.h: Add PRIdMAX.
|
||||
|
||||
* INSTALL: Update for Emacs 24.4.
|
||||
|
||||
* sedadmin.inp: New file.
|
||||
|
||||
2013-12-24 Paul Eggert <eggert@cs.ucla.edu>
|
||||
|
||||
* autogen/Makefile.in: Update copyright year.
|
||||
|
@ -4,18 +4,19 @@ Copyright (C) 1992, 1994, 1996-1997, 2000-2014 Free Software Foundation,
|
||||
Inc.
|
||||
See the end of the file for license conditions.
|
||||
|
||||
The DJGPP port of GNU Emacs builds and runs on plain DOS and also on
|
||||
all versions of MS-Windows from version 3.X on, including Windows XP,
|
||||
Vista, and Windows 7 (however, see below for issues with Windows Vista
|
||||
and 7).
|
||||
The DJGPP port of GNU Emacs builds and runs on all versions of
|
||||
MS-Windows from version 3.X on, including Windows XP, Vista, and
|
||||
Windows 7 (however, see below for issues with Windows Vista and 7).
|
||||
Building on plain MS-DOS is supported only if long file names are
|
||||
supported (e.g., with a specialized driver such as doslfn).
|
||||
|
||||
To build and install the DJGPP port, you need to have the DJGPP ports
|
||||
of GCC (the GNU C compiler), GNU Make, rm, mv, and sed. See the
|
||||
of GCC (the GNU C compiler), GNU Make, rm, mv, cp, and sed. See the
|
||||
remarks in CONFIG.BAT for more information about locations and
|
||||
versions. The Emacs FAQ (see info/efaq) includes pointers to Internet
|
||||
sites where you can find the necessary utilities; search for "MS-DOS".
|
||||
The configuration step (see below) will test for these utilities and
|
||||
will refuse to continue if any of them isn't found.
|
||||
versions. The Emacs FAQ (see info/efaq.info) includes pointers to
|
||||
Internet sites where you can find the necessary utilities; search for
|
||||
"MS-DOS". The configuration step (see below) will test for these
|
||||
utilities and will refuse to continue if any of them isn't found.
|
||||
|
||||
Bootstrapping Emacs or recompiling Lisp files in the `lisp'
|
||||
subdirectory using the various targets in the lisp/Makefile file
|
||||
@ -27,18 +28,14 @@ are distributed in byte-compiled form as well. As for bootstrapping
|
||||
itself, you will only need that if you check-out development sources
|
||||
from the Emacs source repository.
|
||||
|
||||
If you are building the DJGPP version of Emacs on a DOS-like system
|
||||
which supports long file names (e.g. Windows 9X or Windows XP), you
|
||||
need to make sure that long file names are handled consistently both
|
||||
when you unpack the distribution and compile it. With DJGPP v2.0 or
|
||||
later, long file names support is by default, so you need to unpack
|
||||
Emacs distribution in a way that doesn't truncate the original long
|
||||
filenames to the DOS 8.3 namespace; the easiest way to do this is to
|
||||
use djtar program which comes with DJGPP, since it will behave
|
||||
consistently with the rest of DJGPP tools. Alternatively, you can
|
||||
build Emacs with LFN=n, if some of your tools don't support long file
|
||||
names: just ensure that LFN is set to `n' during both unpacking and
|
||||
compiling.
|
||||
Building the DJGPP version of Emacs is currently supported only on
|
||||
systems which support long file names (e.g. Windows 9X or Windows XP).
|
||||
You need to unpack Emacs distribution in a way that doesn't truncate
|
||||
the original long filenames to the DOS 8.3 namespace; the easiest way
|
||||
to do this is to use djtar program which comes with DJGPP, since it
|
||||
will behave consistently with the rest of DJGPP tools. Do _not_
|
||||
disable the DJGPP long-file-name support (a.k.a. "LFN") while building
|
||||
Emacs.
|
||||
|
||||
(By the time you read this, you have already unpacked the Emacs
|
||||
distribution, but if the explanations above imply that you should have
|
||||
@ -46,18 +43,6 @@ done it differently, it's safer to delete the directory tree created
|
||||
by the unpacking program and unpack Emacs again, than to risk running
|
||||
into strange problems during the build process.)
|
||||
|
||||
It is important to understand that the runtime support of long file
|
||||
names by the Emacs binary is NOT affected by the LFN setting during
|
||||
compilation; Emacs compiled with DJGPP v2.0 or later will always
|
||||
support long file names on Windows no matter what was the setting
|
||||
of LFN at compile time. However, if you compiled with LFN disabled
|
||||
and want to enable LFN support after Emacs was already built, you need
|
||||
to make sure that the support files in the lisp, etc and info
|
||||
directories are called by their original long names as found in the
|
||||
distribution. You can do this either by renaming the files manually,
|
||||
or by extracting them from the original distribution archive with
|
||||
djtar after you set LFN=y in the environment.
|
||||
|
||||
To unpack Emacs with djtar, type this command:
|
||||
|
||||
djtar -x emacs.tgz
|
||||
@ -68,13 +53,6 @@ your system.)
|
||||
When unpacking Emacs is done, a directory called `emacs-XX.YY' will be
|
||||
created, where XX.YY is the Emacs version.
|
||||
|
||||
On plain DOS, unpacking can complain about several directories and
|
||||
files in the `nextstep' subdirectory of the `emacs-XX.YY' top-level
|
||||
directory. This is because the names of these files overflow the
|
||||
67-character limit on the file-name length imposed by DOS filesystems.
|
||||
When prompted by `djtar' for a different name for these files, just
|
||||
press [Enter] to skip them: they are not needed for the DJGPP build.
|
||||
|
||||
If you want to print international characters, install the intlfonts
|
||||
distribution. For this, create a directory called `fonts' under the
|
||||
`emacs-XX.YY' top-level directory created by unpacking emacs.tgz,
|
||||
|
@ -32,6 +32,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
#define strtoumax strtoull
|
||||
#define strtoimax strtoll
|
||||
#define PRIuMAX "llu"
|
||||
#define PRIdMAX "lld"
|
||||
#endif /* __DJGPP__ < 2.04 */
|
||||
|
||||
#endif
|
||||
|
@ -48,12 +48,16 @@ s/\.h\.in/.h-in/
|
||||
/^LD_SWITCH_SYSTEM_TEMACS *=/s/@LD_SWITCH_SYSTEM_TEMACS@//
|
||||
/^LD_SWITCH_X_SITE_AUX *=/s/@LD_SWITCH_X_SITE_AUX@//
|
||||
/^LD_SWITCH_X_SITE_AUX_RPATH *=/s/@LD_SWITCH_X_SITE_AUX_RPATH@//
|
||||
/^LD_SWITCH_X_SITE_RPATH *=/s/@LD_SWITCH_X_SITE_RPATH@//
|
||||
/^LD_SWITCH_SYSTEM *=/s/@LD_SWITCH_SYSTEM@//
|
||||
/^LIBS_SYSTEM *=/s/@LIBS_SYSTEM@//
|
||||
/^LIB_GCC *=/s/@LIB_GCC@//
|
||||
/^LIB_STANDARD *=/s/@LIB_STANDARD@//
|
||||
/^LIB_MATH *=/s/@LIB_MATH@/-lm/
|
||||
/^LIB_PTHREAD *=/s/@LIB_PTHREAD@//
|
||||
/^LIB_ACL *=/s/@LIB_ACL@//
|
||||
/^LIB_EACCESS *=/s/@LIB_EACCESS@//
|
||||
/^LIB_FDATASYNC *=/s/@LIB_FDATASYNC@//
|
||||
s/ *@LIBTIFF@//
|
||||
s/ *@LIBJPEG@//
|
||||
s/ *@LIBPNG@//
|
||||
@ -71,8 +75,10 @@ s/ *@LIBXPM@//
|
||||
/^DBUS_CFLAGS *=/s/@DBUS_CFLAGS@//
|
||||
/^DBUS_LIBS *=/s/@DBUS_LIBS@//
|
||||
/^DBUS_OBJ *=/s/@DBUS_OBJ@//
|
||||
/^NOTIFY_OBJ *=/s/@NOTIFY_OBJ@//
|
||||
/^SETTINGS_CFLAGS *=/s/@SETTINGS_CFLAGS@//
|
||||
/^SETTINGS_LIBS *=/s/@SETTINGS_LIBS@//
|
||||
/^GFILENOTIFY_LIBS *=/s/@GFILENOTIFY_LIBS@//
|
||||
/^GTK_OBJ *=/s/@GTK_OBJ@//
|
||||
/^LIBS_TERMCAP *=/s/@LIBS_TERMCAP@//
|
||||
/^TERMCAP_OBJ *=/s/@TERMCAP_OBJ@/termcap.o tparam.o/
|
||||
@ -83,6 +89,7 @@ s/ *@LIBXPM@//
|
||||
/^OLDXMENU_TARGET *=/s/@OLDXMENU_TARGET@//
|
||||
/^OLDXMENU_DEPS *=/s/@OLDXMENU_DEPS@//
|
||||
/^XOBJ *=/s/@XOBJ@//
|
||||
/^XGSELOBJ *=/s/@XGSELOBJ@//
|
||||
/^TOOLKIT_LIBW *=/s/@TOOLKIT_LIBW@//
|
||||
/^LIBSOUND *=/s/@LIBSOUND@//
|
||||
/^LIBS_GNUSTEP *=/s/@LIBS_GNUSTEP@//
|
||||
@ -114,12 +121,19 @@ s/ *@LIBXPM@//
|
||||
/^XMENU_OBJ *=/s/@XMENU_OBJ@/xmenu.o/
|
||||
/^FONT_OBJ *=/s/@FONT_OBJ@//
|
||||
/^LIBGPM *=/s/@LIBGPM@//
|
||||
/^LIBZ *=/s/@LIBZ@//
|
||||
/^EXEEXT *=/s/@EXEEXT@/.exe/
|
||||
/^MKDIR_P *=/s/@MKDIR_P@/gmkdir -p/
|
||||
/^OLDXMENU *=/s/@OLDXMENU@/nothing/
|
||||
/^LIBXMENU *=/s/@LIBXMENU@//
|
||||
/^LIBX_OTHER *=/s/@LIBX_OTHER@//
|
||||
/^XRANDR_LIBS *=/s/@XRANDR_LIBS@//
|
||||
/^XRANDR_CFLAGS *=/s/@XRANDR_CFLAGS@//
|
||||
/^XINERAMA_LIBS *=/s/@XINERAMA_LIBS@//
|
||||
/^XINERAMA_CFLAGS *=/s/@XINERAMA_CFLAGS@//
|
||||
/^GMALLOC_OBJ *=/s/@GMALLOC_OBJ@/gmalloc.o/
|
||||
/^VMLIMIT_OBJ *=/s/@VMLIMIT_OBJ@/vm-limit.o/
|
||||
/^FIRSTFILE_OBJ *=/s/@FIRSTFILE_OBJ@//
|
||||
/^RALLOC_OBJ *=/s/@RALLOC_OBJ@/ralloc.o/
|
||||
/^PRE_ALLOC_OBJ *=/s/@PRE_ALLOC_OBJ@/lastfile.o/
|
||||
/^POST_ALLOC_OBJ *=/s/@POST_ALLOC_OBJ@/$(vmlimitobj)/
|
||||
@ -130,9 +144,15 @@ s/ *@LIBXPM@//
|
||||
/^W32_OBJ *=/s/@W32_OBJ@//
|
||||
/^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-docfile.*>.*gl.tmp/s!make-docfile!make-docfile -o gl.tmp!
|
||||
/^.\$(libsrc)\/make-doc/s!>.*$!!
|
||||
/^ [ ]*\$(libsrc)\/make-docfile /s!`[^`]*`!$(lisp); cd ../src!
|
||||
/^[ ]*$/d
|
||||
@ -142,6 +162,7 @@ s/ *@LIBXPM@//
|
||||
/^ *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)/
|
||||
/^ fi/d
|
||||
/^ *LC_ALL=C \$(RUN_TEMACS)/i\
|
||||
@ -156,15 +177,17 @@ s/ @true *$/ @rem/
|
||||
s/^ [^ ]*move-if-change / update /
|
||||
/^ echo[ ][ ]*timestamp/s/echo /djecho /
|
||||
/^ .*djecho timestamp/a\
|
||||
@rm -f gl-tmp
|
||||
/^ cd \$(leimdir) && \$(MAKE)/i\
|
||||
@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 \$(leimdir) && \$(MAKE)/c\
|
||||
$(MAKE) $(MFLAGS) -C $(leimdir) leim-list.el EMACS=$(bootstrap_exe)
|
||||
/^ 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`|.|
|
||||
@ -199,6 +222,10 @@ s/echo.*buildobj.lst/dj&/
|
||||
/^ @\{0,1\}cd ..\/lisp;.*[^\]$/s|$|\; cd ../src|
|
||||
/^ *THEFILE=/s|$|\; cd ../src|
|
||||
/^ echo.* buildobj.h/s|echo |djecho |
|
||||
/^buildobj\.h:/,/^ mv /{
|
||||
/^ *for /,/^ *done /c\
|
||||
djecho "$(ALLOBJS)" | sed -e 's/^ */"/' -e 's/ *$$/"/' -e 's/ */", "/g' >>$@.tmp
|
||||
}
|
||||
# Make the GCC command line fit one screen line
|
||||
/^[ ][ ]*\$(GNUSTEP_CFLAGS)/d
|
||||
/^[ ][ ]*\$(GCONF_CFLAGS)/d
|
||||
|
@ -132,6 +132,7 @@ s/^#undef HAVE_STRTOULL *$/#define HAVE_STRTOULL 1/
|
||||
#else\
|
||||
#undef HAVE_SNPRINTF\
|
||||
#endif
|
||||
s/^#undef PENDING_OUTPUT_N_BYTES *$/#define PENDING_OUTPUT_N_BYTES fp->_ptr - fp->_base/
|
||||
|
||||
# Comment out any remaining undef directives, because some of them
|
||||
# might be defined in sys/config.h we include at the top of config.h.
|
||||
|
@ -42,9 +42,17 @@ s/-DVERSION[^ ]* //
|
||||
/^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@//
|
||||
/^ALLOCA *=/s!@ALLOCA@!!
|
||||
/^EXEEXT *=/s!@EXEEXT@!!
|
||||
/^EXEEXT *=/s!@EXEEXT@!.exe!
|
||||
/^CLIENTW *=/s/@CLIENTW@//
|
||||
/^LIB_FDATASYNC *=/s/@LIB_FDATASYNC@//
|
||||
/^LIB_WSOCK32 *=/s/@LIB_WSOCK32@//
|
||||
/^LIBS_ECLIENT *=/s/@LIBS_ECLIENT@//
|
||||
/^NTLIB *=/s/@NTLIB@//
|
||||
/^CLIENTRES *=/s/@CLIENTRES@//
|
||||
/^WINDRES *=/s/@WINDRES@//
|
||||
/^GETOPT_H *=/s!@GETOPT_H@!getopt.h!
|
||||
/^GETOPTOBJS *=/s!@GETOPTOBJS@!getopt.o getopt1.o!
|
||||
/^INSTALLABLES/s/emacsclient[^ ]* *//
|
||||
|
@ -42,5 +42,5 @@ export MAKEINFO := $(MAKEINFO) $(MAKEINFO_OPTS)
|
||||
s/^ for file in $(INFO_TARGETS)\; do rm -f.*$/ rm -f $(INFO_TARGETS)/
|
||||
}
|
||||
|
||||
/^mkinfodir *=/s| @.*$|@command.com /c if not exist ..\\..\\info\\emacs mkdir ..\\..\\info|
|
||||
/^mkinfodir *=/s| @.*$|@command.com /c if not exist ..\\..\\info\\emacs$(INFO_EXT) mkdir ..\\..\\info|
|
||||
|
||||
|
@ -19,56 +19,21 @@
|
||||
SHELL=/xyzzy/command\
|
||||
MAKESHELL=/xyzzy/command
|
||||
|
||||
/^version=/d
|
||||
/^prefix=/d
|
||||
/^datadir=/s|@datadir@|../..|
|
||||
/^srcdir=/s|srcdir=@srcdir@|srcdir := $(subst \\,/,$(shell cd))|
|
||||
|
||||
/^INSTALLDIR=/c\
|
||||
INSTALLDIR=.
|
||||
# Need a relative directory name for the md command, otherwise it
|
||||
# chokes, perhaps due to multiple dots in emacs-XX.YY.NN name.
|
||||
/^leimdir *=/a\
|
||||
rel_leimdir = ..\\lisp\\leim
|
||||
|
||||
/touch stamp-subdir/s|touch|djecho "stamp-subdir" >|
|
||||
s|\([ ]\)echo|\1djecho|g
|
||||
/^ @true *$/d
|
||||
|
||||
/RUN_EMACS *=/,/^$/c\
|
||||
export EMACSLOADPATH=${buildlisppath}\
|
||||
RUN_EMACS = ${EMACS} -batch --no-site-file
|
||||
export EMACSLOADPATH=\
|
||||
RUN_EMACS = ${EMACS} -batch --no-site-file --no-site-lisp
|
||||
|
||||
/^MKDIR_P *=/s,@MKDIR_P@,command.com /c md,
|
||||
|
||||
/^ cd ../c\
|
||||
${MAKE} -C ../src ${MFLAGS} emacs
|
||||
|
||||
/if \[ -f $@ \]\; then true/d
|
||||
/fi$/s/; fi$//
|
||||
|
||||
/^leim-list.el:/,/^$/ {
|
||||
/^ if/d
|
||||
/^ else/,/^ fi/d
|
||||
s| *| |
|
||||
/^ --eval/,/; \\$/s|\; \\||
|
||||
}
|
||||
|
||||
/^setwins=/,/^$/d
|
||||
/^\.PHONY: compile-targets/d
|
||||
/^compile-targets:/d
|
||||
/^compile-main:/,/^$/c\
|
||||
compile-main: ${TIT_MISC}\
|
||||
$(MAKE) $(MFLAGS) $(foreach f,$(wildcard ja-dic/*.el),$(basename $f).elc)\
|
||||
$(MAKE) $(MFLAGS) $(foreach f,$(wildcard quail/*.el),$(basename $f).elc)\
|
||||
|
||||
|
||||
/^install:/,/^$/c\
|
||||
install: all\
|
||||
|
||||
/^bootstrap-clean:/,/^$/c\
|
||||
bootstrap-clean: clean\
|
||||
rm -f ja-dic/*.elc quail/*.elc\
|
||||
|
||||
|
||||
/^ if test -f/d
|
||||
/^distclean:/,/^$/ {
|
||||
s|\(rm -f Makefile\)|\1 stamp-subdir|
|
||||
}
|
||||
/^MKDIR_P *=/s,@MKDIR_P@,-command.com /c md,
|
||||
|
||||
/MKDIR_P.* \${leimdir}\/.*$/s|\${leimdir}/|$(rel_leimdir)\\|
|
||||
/MKDIR_P.* \$(leimdir)\/.*$/s|\$(leimdir)/|$(rel_leimdir)\\|
|
||||
|
@ -18,15 +18,25 @@
|
||||
#
|
||||
# Checklist to add a new gnulib module:
|
||||
#
|
||||
# . If the module includes source files that need to be compiled, add
|
||||
# the corresponding .o file names to the list that gets assigned to
|
||||
# the gl_LIBOBJS variable.
|
||||
# . If the module includes source files that need to be compiled, and
|
||||
# does not appear in the am_libgnu_a_OBJECTS list, add the
|
||||
# corresponding .o file names to the list that gets assigned to the
|
||||
# gl_LIBOBJS variable.
|
||||
#
|
||||
# . If a module appears in am_libgnu_a_OBJECTS that is not required
|
||||
# for the MSDOS build, edit it out by adding an appropriate command
|
||||
# to the set that edits the am_libgnu_a_OBJECTS block.
|
||||
#
|
||||
# . If the module defines functions that need to replace DJGPP
|
||||
# functions, edit the appropriate REPLACE_foo variables to 1;
|
||||
# otherwise edit them to zero:
|
||||
# functions, edit the appropriate REPLACE_foo variables to 1:
|
||||
#
|
||||
# /^REPLACE_CALLOC *=/s/@REPLACE_CALLOC@/0/
|
||||
# /^REPLACE_CALLOC *=/s/@REPLACE_CALLOC@/1/
|
||||
#
|
||||
# Note that this file already has a command to edit all the
|
||||
# REPLACE_foo variables to zero, so if some gnulib replacement
|
||||
# function is ever needed, the corresponding editing command such
|
||||
# as above should be placed before that catchall rule (search for
|
||||
# "REPLACE_" below).
|
||||
#
|
||||
# . If the module is a header or adds headers, edit the corresponding
|
||||
# variable to either an empty value or to the name of the header.
|
||||
@ -45,10 +55,10 @@
|
||||
# s/^@GL_GENERATE_STDBOOL_H_TRUE@/\#/
|
||||
# s/^@GL_GENERATE_STDBOOL_H_FALSE@//
|
||||
#
|
||||
# . Also edit the NEXT_foo and NEXT_AS_FIRST_DIRECTIVE_foo_H variable
|
||||
# as appropriately: to an empty value if the gnulib header is not
|
||||
# used, and to the corresponding DJGPP header name otherwise.
|
||||
# Examples:
|
||||
# . Also edit the NEXT_foo_H and NEXT_AS_FIRST_DIRECTIVE_foo_H
|
||||
# variables as appropriately: to an empty value if the gnulib
|
||||
# header is not used, and to the corresponding DJGPP header name
|
||||
# otherwise. Examples:
|
||||
#
|
||||
# /^NEXT_STDDEF_H *=/s/@[^@\n]*@//
|
||||
# /^NEXT_STDINT_H *=/s/@[^@\n]*@/<stdint.h>/
|
||||
@ -57,7 +67,7 @@
|
||||
#
|
||||
# . Note that some gnulib headers cannot be left unused: those for
|
||||
# which there's no corresponding foo_H variable in
|
||||
# autogen/Makefile.in (example: stdio.h). For these the "not
|
||||
# msdos/autogen/Makefile.in (example: stdio.h). For these the "not
|
||||
# needed" path is not applicable.
|
||||
#
|
||||
# . If the header is needed, edit all the variables it uses as
|
||||
@ -68,12 +78,14 @@
|
||||
# variable should be edited to zero and the corresponding
|
||||
# GNULIB_foo variable should be edited to 1 if the gnulib
|
||||
# replacement can work for DJGPP (a rare phenomenon), zero
|
||||
# otherwise.
|
||||
# otherwise. Note that by default all HAVE_foo and GNULIB_foo
|
||||
# variables that don't have a specific editing rule will be edited
|
||||
# to zero.
|
||||
#
|
||||
# . Some gnulib header files have more complex recipes in
|
||||
# autogen/Makefile.in than others. The tell-tale sign of such a
|
||||
# recipe is that the input redirection from the .in.h file is not
|
||||
# present at the end of the command, like this:
|
||||
# msdos/autogen/Makefile.in than others. The tell-tale sign of
|
||||
# such a recipe is that the input redirection from the .in.h file
|
||||
# is not present at the end of the command, like this:
|
||||
#
|
||||
# -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \
|
||||
# } > $@-t && \
|
||||
@ -93,6 +105,16 @@
|
||||
# s/'\; \\ *$/' >> $@-t/
|
||||
# }
|
||||
#
|
||||
# There's also a 3rd variety of script, which ends like this:
|
||||
#
|
||||
# -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)'; \
|
||||
# < $(srcdir)/string.in.h; \
|
||||
# } > $@-t && \
|
||||
# mv $@-t $@
|
||||
#
|
||||
# For these, you will need Sed commands like those used for
|
||||
# string.h, see below.
|
||||
#
|
||||
# . If the recipe for generating a header file uses 'cat', replace it with
|
||||
#
|
||||
# sed -e ''
|
||||
@ -101,9 +123,9 @@
|
||||
# this).
|
||||
#
|
||||
# The following Awk script is useful for editing portions of
|
||||
# autogen/Makefile.in into Sed commands that define the corresponding
|
||||
# variables to zero (which is what is required in the absolute
|
||||
# majority of cases):
|
||||
# msdos/autogen/Makefile.in into Sed commands that define the
|
||||
# corresponding variables to zero (which is what is required in the
|
||||
# absolute majority of cases):
|
||||
#
|
||||
# { printf "/^%s *=/s/%s/0/\n",$1,$3}
|
||||
#
|
||||
@ -115,6 +137,8 @@
|
||||
s/@PACKAGE@/emacs/
|
||||
/^am__cd *=/c\
|
||||
am__cd = cd
|
||||
/^@BUILDING_FOR_WINDOWSNT_TRUE@/s/@[^@\n]*@/#/
|
||||
/^@BUILDING_FOR_WINDOWSNT_FALSE@/s/@[^@\n]*@//
|
||||
/^ALLOCA *=/s/@[^@\n]*@//
|
||||
/^ALSA_CFLAGS *=/s/@[^@\n]*@//
|
||||
/^ALSA_LIBS *=/s/@[^@\n]*@//
|
||||
@ -133,6 +157,7 @@ am__cd = cd
|
||||
/^C_SWITCH_SYSTEM *=/s/@C_SWITCH_SYSTEM@//
|
||||
/^GNUSTEP_CFLAGS *=/s/@GNUSTEP_CFLAGS@//
|
||||
/^C_SWITCH_X_SITE *=/s/@C_SWITCH_X_SITE@//
|
||||
/^PROFILING_CFLAGS *=/s/@PROFILING_CFLAGS@//
|
||||
/^GNULIB_WARN_CFLAGS *=/s/@GNULIB_WARN_CFLAGS@//
|
||||
/^WARN_CFLAGS *=/s/@WARN_CFLAGS@//
|
||||
/^WERROR_CFLAGS *=/s/@WERROR_CFLAGS@//
|
||||
@ -152,303 +177,86 @@ am__cd = cd
|
||||
/^BITSIZEOF_WINT_T *=/s/@BITSIZEOF_WINT_T@/32/
|
||||
/^APPLE_UNIVERSAL_BUILD *=/s/@APPLE_UNIVERSAL_BUILD@/0/
|
||||
#
|
||||
# Some GNULIB_* are replaced with zero even though DJGPP does not have
|
||||
# Most GNULIB_* are replaced with zero even though DJGPP does not have
|
||||
# these features. That's because the gnulib replacements cannot
|
||||
# possibly work for DJGPP, so we prefer to fail the link than have a
|
||||
# subtly botched executable.
|
||||
# subtly botched executable. Those replacements that _are_ needed
|
||||
# should be before the last catch-all rule.
|
||||
/^GNULIB_ATOLL *=/s/@GNULIB_ATOLL@/1/
|
||||
/^GNULIB_CALLOC_POSIX *=/s/@GNULIB_CALLOC_POSIX@/0/
|
||||
/^GNULIB_CANONICALIZE_FILE_NAME *=/s/@GNULIB_CANONICALIZE_FILE_NAME@/0/
|
||||
/^GNULIB_CHDIR *=/s/@GNULIB_CHDIR@/0/
|
||||
/^GNULIB_CHOWN *=/s/@GNULIB_CHOWN@/0/
|
||||
/^GNULIB_CLOSE *=/s/@GNULIB_CLOSE@/0/
|
||||
/^GNULIB_DPRINTF *=/s/@GNULIB_DPRINTF@/0/
|
||||
/^GNULIB_DUP *=/s/@GNULIB_DUP@/0/
|
||||
/^GNULIB_DUP2 *=/s/@GNULIB_DUP2@/0/
|
||||
/^GNULIB_DUP3 *=/s/@GNULIB_DUP3@/1/
|
||||
/^GNULIB_ENVIRON *=/s/@GNULIB_ENVIRON@/1/
|
||||
/^GNULIB_EUIDACCESS *=/s/@GNULIB_EUIDACCESS@/0/
|
||||
/^GNULIB_FACCESSAT *=/s/@GNULIB_FACCESSAT@/0/
|
||||
/^GNULIB_FCHDIR *=/s/@GNULIB_FCHDIR@/0/
|
||||
/^GNULIB_FCHOWNAT *=/s/@GNULIB_FCHOWNAT@/0/
|
||||
/^GNULIB_FCHMODAT *=/s/@GNULIB_FCHMODAT@/0/
|
||||
/^GNULIB_FCLOSE *=/s/@GNULIB_FCLOSE@/0/
|
||||
/^GNULIB_FDATASYNC *=/s/@GNULIB_FDATASYNC@/0/
|
||||
/^GNULIB_FDOPEN *=/s/@GNULIB_FDOPEN@/0/
|
||||
/^GNULIB_FFLUSH *=/s/@GNULIB_FFLUSH@/0/
|
||||
/^GNULIB_FGETC *=/s/@GNULIB_FGETC@/0/
|
||||
/^GNULIB_FGETS *=/s/@GNULIB_FGETS@/0/
|
||||
/^GNULIB_FOPEN *=/s/@GNULIB_FOPEN@/0/
|
||||
/^GNULIB_FPRINTF *=/s/@GNULIB_FPRINTF@/0/
|
||||
/^GNULIB_FPRINTF_POSIX *=/s/@GNULIB_FPRINTF_POSIX@/0/
|
||||
/^GNULIB_FPURGE *=/s/@GNULIB_FPURGE@/0/
|
||||
/^GNULIB_FPUTC *=/s/@GNULIB_FPUTC@/0/
|
||||
/^GNULIB_FPUTS *=/s/@GNULIB_FPUTS@/0/
|
||||
/^GNULIB_FREAD *=/s/@GNULIB_FREAD@/0/
|
||||
/^GNULIB_FREOPEN *=/s/@GNULIB_FREOPEN@/0/
|
||||
/^GNULIB_FSCANF *=/s/@GNULIB_FSCANF@/0/
|
||||
/^GNULIB_FSEEK *=/s/@GNULIB_FSEEK@/0/
|
||||
/^GNULIB_FSEEKO *=/s/@GNULIB_FSEEKO@/0/
|
||||
/^GNULIB_FSTAT *=/s/@GNULIB_FSTAT@/0/
|
||||
/^GNULIB_FSTATAT *=/s/@GNULIB_FSTATAT@/0/
|
||||
/^GNULIB_FSYNC *=/s/@GNULIB_FSYNC@/0/
|
||||
/^GNULIB_FTELL *=/s/@GNULIB_FTELL@/0/
|
||||
/^GNULIB_FTELLO *=/s/@GNULIB_FTELLO@/0/
|
||||
/^GNULIB_FTRUNCATE *=/s/@GNULIB_FTRUNCATE@/0/
|
||||
/^GNULIB_FUTIMENS *=/s/@GNULIB_FUTIMENS@/0/
|
||||
/^GNULIB_FWRITE *=/s/@GNULIB_FWRITE@/0/
|
||||
/^GNULIB_GETC *=/s/@GNULIB_GETC@/0/
|
||||
/^GNULIB_GETCHAR *=/s/@GNULIB_GETCHAR@/0/
|
||||
/^GNULIB_GETCWD *=/s/@GNULIB_GETCWD@/0/
|
||||
/^GNULIB_GETDELIM *=/s/@GNULIB_GETDELIM@/0/
|
||||
/^GNULIB_GETDOMAINNAME *=/s/@GNULIB_GETDOMAINNAME@/0/
|
||||
/^GNULIB_GETDTABLESIZE *=/s/@GNULIB_GETDTABLESIZE@/0/
|
||||
/^GNULIB_GETGROUPS *=/s/@GNULIB_GETGROUPS@/0/
|
||||
/^GNULIB_GETHOSTNAME *=/s/@GNULIB_GETHOSTNAME@/0/
|
||||
/^GNULIB_GETLINE *=/s/@GNULIB_GETLINE@/0/
|
||||
/^GNULIB_FDATASYNC *=/s/@GNULIB_FDATASYNC@/1/
|
||||
/^GNULIB_GETLOADAVG *=/s/@GNULIB_GETLOADAVG@/1/
|
||||
/^GNULIB_GETLOGIN *=/s/@GNULIB_GETLOGIN@/0/
|
||||
/^GNULIB_GETLOGIN_R *=/s/@GNULIB_GETLOGIN_R@/0/
|
||||
/^GNULIB_GETPAGESIZE *=/s/@GNULIB_GETPAGESIZE@/0/
|
||||
/^GNULIB_GL_UNISTD_H_GETOPT *=/s/@GNULIB_GL_UNISTD_H_GETOPT@/1/
|
||||
/^GNULIB_GETSUBOPT *=/s/@GNULIB_GETSUBOPT@/0/
|
||||
/^GNULIB_GETTIMEOFDAY *=/s/@GNULIB_GETTIMEOFDAY@/0/
|
||||
/^GNULIB_GETUSERSHELL *=/s/@GNULIB_GETUSERSHELL@/0/
|
||||
/^GNULIB_GRANTPT *=/s/@GNULIB_GRANTPT@/0/
|
||||
/^GNULIB_GROUP_MEMBER *=/s/@GNULIB_GROUP_MEMBER@/0/
|
||||
/^GNULIB_ISATTY *=/s/@GNULIB_ISATTY@/0/
|
||||
/^GNULIB_LCHMOD *=/s/@GNULIB_LCHMOD@/0/
|
||||
/^GNULIB_LCHOWN *=/s/@GNULIB_LCHOWN@/0/
|
||||
/^GNULIB_LINK *=/s/@GNULIB_LINK@/0/
|
||||
/^GNULIB_LINKAT *=/s/@GNULIB_LINKAT@/0/
|
||||
/^GNULIB_LSEEK *=/s/@GNULIB_LSEEK@/0/
|
||||
/^GNULIB_LSTAT *=/s/@GNULIB_LSTAT@/0/
|
||||
/^GNULIB_MALLOC_POSIX *=/s/@GNULIB_MALLOC_POSIX@/0/
|
||||
/^GNULIB_MBTOWC *=/s/@GNULIB_MBTOWC@/0/
|
||||
/^GNULIB_MKDIRAT *=/s/@GNULIB_MKDIRAT@/0/
|
||||
/^GNULIB_MKDTEMP *=/s/@GNULIB_MKDTEMP@/0/
|
||||
/^GNULIB_MKFIFO *=/s/@GNULIB_MKFIFO@/0/
|
||||
/^GNULIB_MKFIFOAT *=/s/@GNULIB_MKFIFOAT@/0/
|
||||
/^GNULIB_MKNOD *=/s/@GNULIB_MKNOD@/0/
|
||||
/^GNULIB_MKNODAT *=/s/@GNULIB_MKNODAT@/0/
|
||||
/^GNULIB_MKOSTEMP *=/s/@GNULIB_MKOSTEMP@/0/
|
||||
/^GNULIB_MKOSTEMPS *=/s/@GNULIB_MKOSTEMPS@/0/
|
||||
/^GNULIB_MKSTEMP *=/s/@GNULIB_MKSTEMP@/0/
|
||||
/^GNULIB_MKSTEMPS *=/s/@GNULIB_MKSTEMPS@/0/
|
||||
/^GNULIB_MKTIME *=/s/@GNULIB_MKTIME@/0/
|
||||
/^GNULIB_NANOSLEEP *=/s/@GNULIB_NANOSLEEP@/0/
|
||||
/^GNULIB_OBSTACK_PRINTF *=/s/@GNULIB_OBSTACK_PRINTF@/0/
|
||||
/^GNULIB_OBSTACK_PRINTF_POSIX *=/s/@GNULIB_OBSTACK_PRINTF_POSIX@/0/
|
||||
/^GNULIB_PCLOSE *=/s/@GNULIB_PCLOSE@/0/
|
||||
/^GNULIB_PERROR *=/s/@GNULIB_PERROR@/0/
|
||||
/^GNULIB_PIPE *=/s/@GNULIB_PIPE@/0/
|
||||
/^GNULIB_PIPE2 *=/s/@GNULIB_PIPE2@/0/
|
||||
/^GNULIB_POPEN *=/s/@GNULIB_POPEN@/0/
|
||||
/^GNULIB_POSIX_OPENPT *=/s/@GNULIB_POSIX_OPENPT@/0/
|
||||
/^GNULIB_PREAD *=/s/@GNULIB_PREAD@/0/
|
||||
/^GNULIB_PRINTF *=/s/@GNULIB_PRINTF@/0/
|
||||
/^GNULIB_PRINTF_POSIX *=/s/@GNULIB_PRINTF_POSIX@/0/
|
||||
/^GNULIB_PSELECT *=/s/@GNULIB_PSELECT@/0/
|
||||
/^GNULIB_PTHREAD_SIGMASK *=/s/@GNULIB_PTHREAD_SIGMASK@/0/
|
||||
/^GNULIB_PTSNAME *=/s/@GNULIB_PTSNAME@/0/
|
||||
/^GNULIB_PTSNAME_R *=/s/@GNULIB_PTSNAME_R@/0/
|
||||
/^GNULIB_PUTC *=/s/@GNULIB_PUTC@/0/
|
||||
/^GNULIB_PUTCHAR *=/s/@GNULIB_PUTCHAR@/0/
|
||||
/^GNULIB_PUTENV *=/s/@GNULIB_PUTENV@/0/
|
||||
/^GNULIB_PUTS *=/s/@GNULIB_PUTS@/0/
|
||||
/^GNULIB_PWRITE *=/s/@GNULIB_PWRITE@/0/
|
||||
/^GNULIB_RAISE *=/s/@GNULIB_RAISE@/0/
|
||||
/^GNULIB_RANDOM *=/s/@GNULIB_RANDOM@/0/
|
||||
/^GNULIB_RANDOM_R *=/s/@GNULIB_RANDOM_R@/0/
|
||||
/^GNULIB_READ *=/s/@GNULIB_READ@/0/
|
||||
/^GNULIB_READLINK *=/s/@GNULIB_READLINK@/0/
|
||||
/^GNULIB_READLINKAT *=/s/@GNULIB_READLINKAT@/0/
|
||||
/^GNULIB_REALLOC_POSIX *=/s/@GNULIB_REALLOC_POSIX@/0/
|
||||
/^GNULIB_REALPATH *=/s/@GNULIB_REALPATH@/0/
|
||||
/^GNULIB_REMOVE *=/s/@GNULIB_REMOVE@/0/
|
||||
/^GNULIB_RENAME *=/s/@GNULIB_RENAME@/0/
|
||||
/^GNULIB_RENAMEAT *=/s/@GNULIB_RENAMEAT@/0/
|
||||
/^GNULIB_RMDIR *=/s/@GNULIB_RMDIR@/0/
|
||||
/^GNULIB_RPMATCH *=/s/@GNULIB_RPMATCH@/0/
|
||||
/^GNULIB_SCANF *=/s/@GNULIB_SCANF@/0/
|
||||
/^GNULIB_SECURE_GETENV *=/s/@GNULIB_SECURE_GETENV@/0/
|
||||
/^GNULIB_SELECT *=/s/@GNULIB_SELECT@/0/
|
||||
/^GNULIB_SETENV *=/s/@GNULIB_SETENV@/0/
|
||||
/^GNULIB_SETHOSTNAME *=/s/@GNULIB_SETHOSTNAME@/0/
|
||||
/^GNULIB_SIGACTION *=/s/@GNULIB_SIGACTION@/0/
|
||||
/^GNULIB_SIGNAL_H_SIGPIPE *=/s/@GNULIB_SIGNAL_H_SIGPIPE@/0/
|
||||
/^GNULIB_SIGPROCMASK *=/s/@GNULIB_SIGPROCMASK@/0/
|
||||
/^GNULIB_SLEEP *=/s/@GNULIB_SLEEP@/0/
|
||||
/^GNULIB_SNPRINTF *=/s/@GNULIB_SNPRINTF@/0/
|
||||
/^GNULIB_SPRINTF_POSIX *=/s/@GNULIB_SPRINTF_POSIX@/0/
|
||||
/^GNULIB_STAT *=/s/@GNULIB_STAT@/0/
|
||||
/^GNULIB_STDIO_H_NONBLOCKING *=/s/@GNULIB_STDIO_H_NONBLOCKING@/0/
|
||||
/^GNULIB_STDIO_H_SIGPIPE *=/s/@GNULIB_STDIO_H_SIGPIPE@/0/
|
||||
/^GNULIB_STRPTIME *=/s/@GNULIB_STRPTIME@/0/
|
||||
/^GNULIB_STRTOD *=/s/@GNULIB_STRTOD@/0/
|
||||
/^GNULIB_STRTOLL *=/s/@GNULIB_STRTOLL@/0/
|
||||
/^GNULIB_STRTOULL *=/s/@GNULIB_STRTOULL@/0/
|
||||
/^GNULIB_SYMLINK *=/s/@GNULIB_SYMLINK@/0/
|
||||
/^GNULIB_SYMLINKAT *=/s/@GNULIB_SYMLINKAT@/0/
|
||||
/^GNULIB_SYSTEM_POSIX *=/s/@GNULIB_SYSTEM_POSIX@/0/
|
||||
/^GNULIB_TIMEGM *=/s/@GNULIB_TIMEGM@/0/
|
||||
/^GNULIB_MEMRCHR *=/s/@GNULIB_MEMRCHR@/1/
|
||||
/^GNULIB_MKOSTEMP *=/s/@GNULIB_MKOSTEMP@/1/
|
||||
/^GNULIB_TIME_R *=/s/@GNULIB_TIME_R@/1/
|
||||
/^GNULIB_TMPFILE *=/s/@GNULIB_TMPFILE@/0/
|
||||
/^GNULIB_TTYNAME_R *=/s/@GNULIB_TTYNAME_R@/0/
|
||||
/^GNULIB_UNISTD_H_NONBLOCKING *=/s/@GNULIB_UNISTD_H_NONBLOCKING@/0/
|
||||
/^GNULIB_UNISTD_H_SIGPIPE *=/s/@GNULIB_UNISTD_H_SIGPIPE@/0/
|
||||
/^GNULIB_UNLINK *=/s/@GNULIB_UNLINK@/0/
|
||||
/^GNULIB_UNLINKAT *=/s/@GNULIB_UNLINKAT@/0/
|
||||
/^GNULIB_UNLOCKPT *=/s/@GNULIB_UNLOCKPT@/0/
|
||||
/^GNULIB_UNSETENV *=/s/@GNULIB_UNSETENV@/1/
|
||||
/^GNULIB_USLEEP *=/s/@GNULIB_USLEEP@/0/
|
||||
/^GNULIB_UTIMENSAT *=/s/@GNULIB_UTIMENSAT@/0/
|
||||
/^GNULIB_VASPRINTF *=/s/@GNULIB_VASPRINTF@/0/
|
||||
/^GNULIB_VDPRINTF *=/s/@GNULIB_VDPRINTF@/0/
|
||||
/^GNULIB_VFPRINTF *=/s/@GNULIB_VFPRINTF@/0/
|
||||
/^GNULIB_VFPRINTF_POSIX *=/s/@GNULIB_VFPRINTF_POSIX@/0/
|
||||
/^GNULIB_VFSCANF *=/s/@GNULIB_VFSCANF@/0/
|
||||
/^GNULIB_VPRINTF *=/s/@GNULIB_VPRINTF@/0/
|
||||
/^GNULIB_VPRINTF_POSIX *=/s/@GNULIB_VPRINTF_POSIX@/0/
|
||||
/^GNULIB_VSCANF *=/s/@GNULIB_VSCANF@/0/
|
||||
/^GNULIB_VSNPRINTF *=/s/@GNULIB_VSNPRINTF@/0/
|
||||
/^GNULIB_VSPRINTF_POSIX *=/s/@GNULIB_VSPRINTF_POSIX@/0/
|
||||
/^GNULIB_WCTOMB *=/s/@GNULIB_WCTOMB@/0/
|
||||
/^GNULIB_WRITE *=/s/@GNULIB_WRITE@/0/
|
||||
/^GNULIB__EXIT *=/s/@GNULIB__EXIT@/0/
|
||||
/^GNULIB_[^ =]* *= *@/s/@[^@\n]*@/0/
|
||||
/^GSETTINGS_CFLAGS *=/s/@[^@\n]*@//
|
||||
/^GSETTINGS_LIBS *=/s/@[^@\n]*@//
|
||||
#
|
||||
# Edit the HAVE_foo variables
|
||||
/^HAVE_ATOLL *=/s/@HAVE_ATOLL@/0/
|
||||
/^HAVE_CANONICALIZE_FILE_NAME *=/s/@HAVE_CANONICALIZE_FILE_NAME@/0/
|
||||
/^HAVE_CHOWN *=/s/@HAVE_CHOWN@/1/
|
||||
/^HAVE_DECL_ENVIRON *=/s/@HAVE_DECL_ENVIRON@/0/
|
||||
/^HAVE_DECL_FCHDIR *=/s/@HAVE_DECL_FCHDIR@/0/
|
||||
/^HAVE_DECL_FDATASYNC *=/s/@HAVE_DECL_FDATASYNC@/0/
|
||||
/^HAVE_DECL_FPURGE *=/s/@HAVE_DECL_FPURGE@//
|
||||
/^HAVE_DECL_FSEEKO *=/s/@HAVE_DECL_FSEEKO@/0/
|
||||
/^HAVE_DECL_FTELLO *=/s/@HAVE_DECL_FTELLO@/0/
|
||||
/^HAVE_DECL_GETDELIM *=/s/@HAVE_DECL_GETDELIM@/0/
|
||||
/^HAVE_DECL_GETDOMAINNAME *=/s/@HAVE_DECL_GETDOMAINNAME@/0/
|
||||
/^HAVE_DECL_GETLINE *=/s/@HAVE_DECL_GETLINE@/0/
|
||||
/^HAVE_DECL_GETLOADAVG *=/s/@HAVE_DECL_GETLOADAVG@/0/
|
||||
/^HAVE_DECL_GETLOGIN_R *=/s/@HAVE_DECL_GETLOGIN_R@/0/
|
||||
/^HAVE_CLOSEDIR *=/s/@HAVE_CLOSEDIR@/1/
|
||||
/^HAVE_DECL_GETPAGESIZE *=/s/@HAVE_DECL_GETPAGESIZE@/1/
|
||||
/^HAVE_DECL_GETUSERSHELL *=/s/@HAVE_DECL_GETUSERSHELL@/0/
|
||||
/^HAVE_DECL_LOCALTIME_R *=/s/@HAVE_DECL_LOCALTIME_R@/0/
|
||||
/^HAVE_DECL_OBSTACK_PRINTF *=/s/@HAVE_DECL_OBSTACK_PRINTF@/0/
|
||||
/^HAVE_DECL_SETHOSTNAME *=/s/@HAVE_DECL_SETHOSTNAME@/0/
|
||||
/^HAVE_DECL_SETENV *=/s/@HAVE_DECL_SETENV@/1/
|
||||
/^HAVE_DECL_SNPRINTF *=/s/@HAVE_DECL_SNPRINTF@/0/
|
||||
/^HAVE_DECL_TTYNAME_R *=/s/@HAVE_DECL_TTYNAME_R@/0/
|
||||
/^HAVE_DECL_UNSETENV *=/s/@HAVE_DECL_UNSETENV@/0/
|
||||
/^HAVE_DECL_VSNPRINTF *=/s/@HAVE_DECL_VSNPRINTF@/0/
|
||||
/^HAVE_DPRINTF *=/s/@HAVE_DPRINTF@/0/
|
||||
/^HAVE_DECL_STRDUP *=/s/@HAVE_DECL_STRDUP@/1/
|
||||
# The following two rely on msdos/inttypes.h redirections
|
||||
/^HAVE_DECL_STRTOIMAX *=/s/@HAVE_DECL_STRTOIMAX@/1/
|
||||
/^HAVE_DECL_STRTOUMAX *=/s/@HAVE_DECL_STRTOUMAX@/1/
|
||||
/^HAVE_DIRENT_H *=/s/@HAVE_DIRENT_H@/1/
|
||||
/^HAVE_DUP2 *=/s/@HAVE_DUP2@/1/
|
||||
/^HAVE_DUP3 *=/s/@HAVE_DUP3@/0/
|
||||
/^HAVE_EUIDACCESS *=/s/@HAVE_EUIDACCESS@/0/
|
||||
/^HAVE_FACCESSAT *=/s/@HAVE_FACCESSAT@/0/
|
||||
/^HAVE_FCHDIR *=/s/@HAVE_FCHDIR@/0/
|
||||
/^HAVE_FCHMODAT *=/s/@HAVE_FCHMODAT@/0/
|
||||
/^HAVE_FCHOWNAT *=/s/@HAVE_FCHOWNAT@/0/
|
||||
/^HAVE_FDATASYNC *=/s/@HAVE_FDATASYNC@/0/
|
||||
/^HAVE_FSEEKO *=/s/@HAVE_FSEEKO@/0/
|
||||
/^HAVE_FSTATAT *=/s/@HAVE_FSTATAT@/0/
|
||||
/^HAVE_FSYNC *=/s/@HAVE_FSYNC@/1/
|
||||
/^HAVE_FTELLO *=/s/@HAVE_FTELLO@/0/
|
||||
/^HAVE_FTRUNCATE *=/s/@HAVE_FTRUNCATE@/1/
|
||||
/^HAVE_FUTIMENS *=/s/@HAVE_FUTIMENS@/0/
|
||||
/^HAVE_GETDTABLESIZE *=/s/@HAVE_GETDTABLESIZE@/0/
|
||||
/^HAVE_GETGROUPS *=/s/@HAVE_GETGROUPS@/0/
|
||||
/^HAVE_GETHOSTNAME *=/s/@HAVE_GETHOSTNAME@/1/
|
||||
/^HAVE_GETLOGIN *=/s/@HAVE_GETLOGIN@/1/
|
||||
/^HAVE_GETOPT_H *=/s/@HAVE_GETOPT_H@/0/
|
||||
/^HAVE_GETPAGESIZE *=/s/@HAVE_GETPAGESIZE@/1/
|
||||
/^HAVE_GETSUBOPT *=/s/@HAVE_GETSUBOPT@/0/
|
||||
/^HAVE_GRANTPT *=/s/@HAVE_GRANTPT@/0/
|
||||
/^HAVE_GROUP_MEMBER *=/s/@HAVE_GROUP_MEMBER@/0/
|
||||
/^HAVE_LCHOWN *=/s/@HAVE_LCHOWN@/0/
|
||||
/^HAVE_INTTYPES_H *=/s/@HAVE_INTTYPES_H@/HAVE_INTTYPES_H/
|
||||
/^HAVE_LCHMOD *=/s/@HAVE_LCHMOD@/0/
|
||||
/^HAVE_LINK *=/s/@HAVE_LINK@/1/
|
||||
/^HAVE_LINKAT *=/s/@HAVE_LINKAT@/0/
|
||||
/^HAVE_LONG_LONG_INT *=/s/@HAVE_LONG_LONG_INT@/1/
|
||||
/^HAVE_LSTAT *=/s/@HAVE_LSTAT@/HAVE_LSTAT/
|
||||
/^HAVE_MAKEINFO *=/s/@HAVE_MAKEINFO@/yes/
|
||||
/^HAVE_MKDIRAT *=/s/@HAVE_MKDIRAT@/0/
|
||||
/^HAVE_MKDTEMP *=/s/@HAVE_MKDTEMP@/0/
|
||||
/^HAVE_MEMCHR *=/s/@HAVE_MEMCHR@/1/
|
||||
/^HAVE_MKFIFO *=/s/@HAVE_MKFIFO@/1/
|
||||
/^HAVE_MKFIFOAT *=/s/@HAVE_MKFIFOAT@/0/
|
||||
/^HAVE_MKNOD *=/s/@HAVE_MKNOD@/1/
|
||||
/^HAVE_MKNODAT *=/s/@HAVE_MKNODAT@/0/
|
||||
/^HAVE_MKOSTEMP *=/s/@HAVE_MKOSTEMP@/0/
|
||||
/^HAVE_MKOSTEMPS *=/s/@HAVE_MKOSTEMPS@/0/
|
||||
/^HAVE_MKSTEMP *=/s/@HAVE_MKSTEMP@/1/
|
||||
/^HAVE_MKSTEMPS *=/s/@HAVE_MKSTEMPS@/0/
|
||||
/^HAVE_NANOSLEEP *=/s/@HAVE_NANOSLEEP@/0/
|
||||
/^HAVE_OS_H *=/s/@HAVE_OS_H@/0/
|
||||
/^HAVE_PIPE *=/s/@HAVE_PIPE@/0/
|
||||
/^HAVE_OPENDIR *=/s/@HAVE_OPENDIR@/1/
|
||||
/^HAVE_PCLOSE *=/s/@HAVE_PCLOSE@/1/
|
||||
/^HAVE_PIPE2 *=/s/@HAVE_PIPE2@/0/
|
||||
/^HAVE_POPEN *=/s/@HAVE_POPEN@/1/
|
||||
/^HAVE_POSIX_SIGNALBLOCKING *=/s/@HAVE_POSIX_SIGNALBLOCKING@/1/
|
||||
/^HAVE_POSIX_OPENPT *=/s/@HAVE_POSIX_OPENPT@/0/
|
||||
/^HAVE_PREAD *=/s/@HAVE_PREAD@/0/
|
||||
/^HAVE_PTSNAME *=/s/@HAVE_PTSNAME@/0/
|
||||
/^HAVE_PTSNAME_R *=/s/@HAVE_PTSNAME_R@/0/
|
||||
/^HAVE_PTHREAD_SIGMASK *=/s/@HAVE_PTHREAD_SIGMASK@/0/
|
||||
/^HAVE_PWRITE *=/s/@HAVE_PWRITE@/0/
|
||||
/^HAVE_RANDOM_H *=/s/@HAVE_RANDOM_H@/1/
|
||||
/^HAVE_RAISE *=/s/@HAVE_RAISE@/1/
|
||||
/^HAVE_RANDOM *=/s/@HAVE_RANDOM@/1/
|
||||
/^HAVE_RANDOM_R *=/s/@HAVE_RANDOM_R@/0/
|
||||
/^HAVE_READLINK *=/s/@HAVE_READLINK@/0/
|
||||
/^HAVE_READLINKAT *=/s/@HAVE_READLINKAT@/0/
|
||||
/^HAVE_REALPATH *=/s/@HAVE_REALPATH@/0/
|
||||
/^HAVE_RENAMEAT *=/s/@HAVE_RENAMEAT@/0/
|
||||
/^HAVE_RPMATCH *=/s/@HAVE_RPMATCH@/0/
|
||||
/^HAVE_SECURE_GETENV *=/s/@HAVE_SECURE_GETENV@/0/
|
||||
/^HAVE_READDIR *=/s/@HAVE_READDIR@/1/
|
||||
/^HAVE_REWINDDIR *=/s/@HAVE_REWINDDIR@/1/
|
||||
/^HAVE_SETENV *=/s/@HAVE_SETENV@/1/
|
||||
/^HAVE_SETHOSTNAME *=/s/@HAVE_SETHOSTNAME@/0/
|
||||
/^HAVE_SIGACTION *=/s/@HAVE_SIGACTION@/1/
|
||||
/^HAVE_SIGHANDLER_T *=/s/@HAVE_SIGHANDLER_T@/0/
|
||||
/^HAVE_SIGINFO_T *=/s/@HAVE_SIGINFO_T@/0/
|
||||
/^HAVE_SIGNED_SIG_ATOMIC_T *=/s/@HAVE_SIGNED_SIG_ATOMIC_T@/1/
|
||||
/^HAVE_SIGNED_WCHAR_T *=/s/@HAVE_SIGNED_WCHAR_T@/0/
|
||||
/^HAVE_SIGNED_WINT_T *=/s/@HAVE_SIGNED_WINT_T@/1/
|
||||
/^HAVE_SIGSET_T *=/s/@HAVE_SIGSET_T@/1/
|
||||
/^HAVE_SLEEP *=/s/@HAVE_SLEEP@/1/
|
||||
/^HAVE_STDINT_H *=/s/@HAVE_STDINT_H@/HAVE_STDINT_H/
|
||||
/^HAVE_STRPTIME *=/s/@HAVE_STRPTIME@/0/
|
||||
/^HAVE_STRPBRK *=/s/@HAVE_STRPBRK@/1/
|
||||
/^HAVE_STRSEP *=/s/@HAVE_STRSEP@/1/
|
||||
/^HAVE_STRTOD *=/s/@HAVE_STRTOD@/1/
|
||||
/^HAVE_STRTOLL *=/s/@HAVE_STRTOLL@/1/
|
||||
/^HAVE_STRTOULL *=/s/@HAVE_STRTOULL@/1/
|
||||
/^HAVE_STRUCT_SIGACTION_SA_SIGACTION *=/s/@HAVE_STRUCT_SIGACTION_SA_SIGACTION@/0/
|
||||
/^HAVE_STRUCT_RANDOM_DATA *=/s/@HAVE_STRUCT_RANDOM_DATA@/0/
|
||||
/^HAVE_STRUCT_TIMEVAL *=/s/@HAVE_STRUCT_TIMEVAL@/1/
|
||||
/^HAVE_SYMLINK *=/s/@HAVE_SYMLINK@/1/
|
||||
/^HAVE_SYMLINKAT *=/s/@HAVE_SYMLINKAT@/0/
|
||||
/^HAVE_SYS_BITYPES_H *=/s/@HAVE_SYS_BITYPES_H@/0/
|
||||
/^HAVE_SYS_INTTYPES_H *=/s/@HAVE_SYS_INTTYPES_H@/0/
|
||||
/^HAVE_SYS_LOADAVG_H *=/s/@HAVE_SYS_LOADAVG_H@/0/
|
||||
/^HAVE_SYS_PARAM_H *=/s/@HAVE_SYS_PARAM_H@/1/
|
||||
/^HAVE_SYS_SELECT_H *=/s/@HAVE_SYS_SELECT_H@/0/
|
||||
/^HAVE_SYS_TIME_H *=/s/@HAVE_SYS_TIME_H@/1/
|
||||
/^HAVE_SYS_TYPES_H *=/s/@HAVE_SYS_TYPES_H@/1/
|
||||
/^HAVE_TIMEGM *=/s/@HAVE_TIMEGM@/0/
|
||||
/^HAVE_TYPE_VOLATILE_SIG_ATOMIC_T *=/s/@HAVE_TYPE_VOLATILE_SIG_ATOMIC_T@/1/
|
||||
/^HAVE_UNISTD_H *=/s/@HAVE_UNISTD_H@/1/
|
||||
/^HAVE_UNLINKAT *=/s/@HAVE_UNLINKAT@/0/
|
||||
/^HAVE_UNLOCKPT *=/s/@HAVE_UNLOCKPT@/0/
|
||||
/^HAVE_UNSIGNED_LONG_LONG_INT *=/s/@HAVE_UNSIGNED_LONG_LONG_INT@/1/
|
||||
/^HAVE_USLEEP *=/s/@HAVE_USLEEP@/1/
|
||||
/^HAVE_UTIMENSAT *=/s/@HAVE_UTIMENSAT@/0/
|
||||
/^HAVE_VASPRINTF *=/s/@HAVE_VASPRINTF@/0/
|
||||
/^HAVE_VDPRINTF *=/s/@HAVE_VDPRINTF@/0/
|
||||
/^HAVE_WCHAR_H *=/s/@HAVE_WCHAR_H@/1/
|
||||
/^HAVE_WCHAR_T *=/s/@HAVE_WCHAR_T@/1/
|
||||
/^HAVE_XSERVER *=/s/@HAVE_XSERVER@/0/
|
||||
/^HAVE__BOOL *=/s/@HAVE__BOOL@/1/
|
||||
/^HAVE__EXIT *=/s/@HAVE__EXIT@/1/
|
||||
/^HAVE_[^ =]* *= *@/s/@[^@\n]*@/0/
|
||||
/^INCLUDE_NEXT *=/s/@INCLUDE_NEXT@/include_next/
|
||||
/^INCLUDE_NEXT_AS_FIRST_DIRECTIVE *=/s/@[^@\n]*@/include_next/
|
||||
/^LDFLAGS *=/s/@[^@\n]*@//
|
||||
@ -459,6 +267,9 @@ am__cd = cd
|
||||
/^MAKEINFO *=/s/@MAKEINFO@/makeinfo/
|
||||
# MKDIR_P lines are edited further below
|
||||
/^MKDIR_P *=/s/@MKDIR_P@//
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_DIRENT_H *=/s/@[^@\n]*@/<dirent.h>/
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_ERRNO_H *=/s/@[^@\n]*@//
|
||||
/^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]*@//
|
||||
@ -466,12 +277,16 @@ am__cd = cd
|
||||
/^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_AS_FIRST_DIRECTIVE_STRING_H *=/s/@[^@\n]*@/<string.h>/
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H *=/s/@[^@\n]*@//
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H *=/s!@[^@\n]*@!<sys/stat.h>!
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H *=/s/@[^@\n]*@//
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H *=/s!@[^@\n]*@!<sys/types.h>!
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_TIME_H *=/s/@[^@\n]*@/<time.h>/
|
||||
/^NEXT_AS_FIRST_DIRECTIVE_UNISTD_H *=/s/@[^@\n]*@/<unistd.h>/
|
||||
/^NEXT_DIRENT_H *=/s/@[^@\n]*@/<dirent.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>/
|
||||
@ -479,6 +294,7 @@ am__cd = cd
|
||||
/^NEXT_STDIO_H *=/s/@[^@\n]*@/<stdio.h>/
|
||||
/^NEXT_STDINT_H *=/s/@[^@\n]*@/<stdint.h>/
|
||||
/^NEXT_STDLIB_H *=/s/@[^@\n]*@/<stdlib.h>/
|
||||
/^NEXT_STRING_H *=/s/@[^@\n]*@/<string.h>/
|
||||
/^NEXT_SYS_SELECT_H *=/s/@[^@\n]*@//
|
||||
/^NEXT_SYS_STAT_H *=/s!@[^@\n]*@!<sys/stat.h>!
|
||||
/^NEXT_SYS_TIME_H *=/s/@[^@\n]*@//
|
||||
@ -491,104 +307,14 @@ am__cd = cd
|
||||
/^PTHREAD_H_DEFINES_STRUCT_TIMESPEC *=/s/@[^@\n]*@/0/
|
||||
/^PTRDIFF_T_SUFFIX *=/s/@[^@\n]*@//
|
||||
/^RANLIB *=/s/@[^@\n]*@/ranlib/
|
||||
/^REPLACE_CALLOC *=/s/@REPLACE_CALLOC@/0/
|
||||
/^REPLACE_CANONICALIZE_FILE_NAME *=/s/@REPLACE_CANONICALIZE_FILE_NAME@/0/
|
||||
/^REPLACE_CHOWN *=/s/@REPLACE_CHOWN@/0/
|
||||
/^REPLACE_CLOSE *=/s/@REPLACE_CLOSE@/0/
|
||||
/^REPLACE_DPRINTF *=/s/@REPLACE_DPRINTF@/0/
|
||||
/^REPLACE_DUP *=/s/@REPLACE_DUP@/0/
|
||||
/^REPLACE_DUP2 *=/s/@REPLACE_DUP2@/0/
|
||||
/^REPLACE_FCHOWNAT *=/s/@REPLACE_FCHOWNAT@/0/
|
||||
/^REPLACE_FCLOSE *=/s/@REPLACE_FCLOSE@/0/
|
||||
/^REPLACE_FDOPEN *=/s/@REPLACE_FDOPEN@/0/
|
||||
/^REPLACE_FFLUSH *=/s/@REPLACE_FFLUSH@/0/
|
||||
/^REPLACE_FOPEN *=/s/@REPLACE_FOPEN@/0/
|
||||
/^REPLACE_FPRINTF *=/s/@REPLACE_FPRINTF@/0/
|
||||
/^REPLACE_FPURGE *=/s/@REPLACE_FPURGE@/0/
|
||||
/^REPLACE_FREOPEN *=/s/@REPLACE_FREOPEN@/0/
|
||||
/^REPLACE_FSEEK *=/s/@REPLACE_FSEEK@/0/
|
||||
/^REPLACE_FSEEKO *=/s/@REPLACE_FSEEKO@/0/
|
||||
/^REPLACE_FSTAT *=/s/@REPLACE_FSTAT@/0/
|
||||
/^REPLACE_FSTATAT *=/s/@REPLACE_FSTATAT@/0/
|
||||
/^REPLACE_FTELL *=/s/@REPLACE_FTELL@/0/
|
||||
/^REPLACE_FTELLO *=/s/@REPLACE_FTELLO@/0/
|
||||
/^REPLACE_FTRUNCATE *=/s/@REPLACE_FTRUNCATE@/0/
|
||||
/^REPLACE_GETCWD *=/s/@REPLACE_GETCWD@/0/
|
||||
/^REPLACE_GETDELIM *=/s/@REPLACE_GETDELIM@/0/
|
||||
/^REPLACE_GETDOMAINNAME *=/s/@REPLACE_GETDOMAINNAME@/0/
|
||||
/^REPLACE_GETGROUPS *=/s/@REPLACE_GETGROUPS@/0/
|
||||
/^REPLACE_GETLINE *=/s/@REPLACE_GETLINE@/0/
|
||||
/^REPLACE_GETLOGIN_R *=/s/@REPLACE_GETLOGIN_R@/0/
|
||||
/^REPLACE_GETPAGESIZE *=/s/@REPLACE_GETPAGESIZE@/0/
|
||||
/^REPLACE_GETTIMEOFDAY *=/s/@REPLACE_GETTIMEOFDAY@/0/
|
||||
/^REPLACE_ISATTY *=/s/@REPLACE_ISATTY@/0/
|
||||
/^REPLACE_LCHOWN *=/s/@REPLACE_LCHOWN@/0/
|
||||
/^REPLACE_LINK *=/s/@REPLACE_LINK@/0/
|
||||
/^REPLACE_LINKAT *=/s/@REPLACE_LINKAT@/0/
|
||||
/^REPLACE_LOCALTIME_R *=/s/@REPLACE_LOCALTIME_R@/0/
|
||||
/^REPLACE_LSEEK *=/s/@REPLACE_LSEEK@/0/
|
||||
/^REPLACE_LSTAT *=/s/@REPLACE_LSTAT@/0/
|
||||
/^REPLACE_MALLOC *=/s/@REPLACE_MALLOC@/0/
|
||||
/^REPLACE_MBTOWC *=/s/@REPLACE_MBTOWC@/0/
|
||||
/^REPLACE_MKDIR *=/s/@REPLACE_MKDIR@/0/
|
||||
/^REPLACE_MKFIFO *=/s/@REPLACE_MKFIFO@/0/
|
||||
/^REPLACE_MKNOD *=/s/@REPLACE_MKNOD@/0/
|
||||
/^REPLACE_MKSTEMP *=/s/@REPLACE_MKSTEMP@/0/
|
||||
/^REPLACE_MKTIME *=/s/@REPLACE_MKTIME@/0/
|
||||
/^REPLACE_NANOSLEEP *=/s/@REPLACE_NANOSLEEP@/0/
|
||||
/^REPLACE_NULL *=/s/@REPLACE_NULL@/0/
|
||||
/^REPLACE_OBSTACK_PRINTF *=/s/@REPLACE_OBSTACK_PRINTF@/0/
|
||||
/^REPLACE_PERROR *=/s/@REPLACE_PERROR@/0/
|
||||
/^REPLACE_POPEN *=/s/@REPLACE_POPEN@/0/
|
||||
/^REPLACE_PREAD *=/s/@REPLACE_PREAD@/0/
|
||||
/^REPLACE_PRINTF *=/s/@REPLACE_PRINTF@/0/
|
||||
/^REPLACE_PTHREAD_SIGMASK *=/s/@REPLACE_PTHREAD_SIGMASK@/0/
|
||||
/^REPLACE_PTSNAME *=/s/@REPLACE_PTSNAME@/0/
|
||||
/^REPLACE_PSELECT *=/s/@REPLACE_PSELECT@/0/
|
||||
/^REPLACE_PTSNAME *=/s/@REPLACE_PTSNAME@/0/
|
||||
/^REPLACE_PTSNAME_R *=/s/@REPLACE_PTSNAME_R@/0/
|
||||
/^REPLACE_PUTENV *=/s/@REPLACE_PUTENV@/0/
|
||||
/^REPLACE_PWRITE *=/s/@REPLACE_PWRITE@/0/
|
||||
/^REPLACE_RANDOM_R *=/s/@REPLACE_RANDOM_R@/0/
|
||||
/^REPLACE_READ *=/s/@REPLACE_READ@/0/
|
||||
/^REPLACE_RAISE *=/s/@REPLACE_RAISE@/0/
|
||||
/^REPLACE_READLINK *=/s/@REPLACE_READLINK@/0/
|
||||
/^REPLACE_REALLOC *=/s/@REPLACE_REALLOC@/0/
|
||||
/^REPLACE_REALPATH *=/s/@REPLACE_REALPATH@/0/
|
||||
/^REPLACE_REMOVE *=/s/@REPLACE_REMOVE@/0/
|
||||
/^REPLACE_RENAME *=/s/@REPLACE_RENAME@/0/
|
||||
/^REPLACE_RENAMEAT *=/s/@REPLACE_RENAMEAT@/0/
|
||||
/^REPLACE_RMDIR *=/s/@REPLACE_RMDIR@/0/
|
||||
/^REPLACE_SETENV *=/s/@REPLACE_SETENV@/0/
|
||||
/^REPLACE_SLEEP *=/s/@REPLACE_SLEEP@/0/
|
||||
/^REPLACE_SNPRINTF *=/s/@REPLACE_SNPRINTF@/0/
|
||||
/^REPLACE_SPRINTF *=/s/@REPLACE_SPRINTF@/0/
|
||||
/^REPLACE_STAT *=/s/@REPLACE_STAT@/0/
|
||||
/^REPLACE_STDIO_READ_FUNCS *=/s/@REPLACE_STDIO_READ_FUNCS@/0/
|
||||
/^REPLACE_STDIO_WRITE_FUNCS *=/s/@REPLACE_STDIO_WRITE_FUNCS@/0/
|
||||
/^REPLACE_STRTOD *=/s/@REPLACE_STRTOD@/0/
|
||||
/^REPLACE_STRTOIMAX *=/s/@REPLACE_STRTOIMAX@/0/
|
||||
/^REPLACE_STRUCT_TIMEVAL *=/s/@REPLACE_STRUCT_TIMEVAL@/0/
|
||||
/^REPLACE_SYMLINK *=/s/@REPLACE_SYMLINK@/0/
|
||||
/^REPLACE_TIMEGM *=/s/@REPLACE_TIMEGM@/0/
|
||||
/^REPLACE_TMPFILE *=/s/@REPLACE_TMPFILE@/0/
|
||||
/^REPLACE_TTYNAME_R *=/s/@REPLACE_TTYNAME_R@/0/
|
||||
/^REPLACE_UNLINK *=/s/@REPLACE_UNLINK@/0/
|
||||
/^REPLACE_UNLINKAT *=/s/@REPLACE_UNLINKAT@/0/
|
||||
/^REPLACE_UNSETENV *=/s/@REPLACE_UNSETENV@/0/
|
||||
/^REPLACE_USLEEP *=/s/@REPLACE_USLEEP@/0/
|
||||
/^REPLACE_UTIMENSAT *=/s/@REPLACE_UTIMENSAT@/0/
|
||||
/^REPLACE_VASPRINTF *=/s/@REPLACE_VASPRINTF@/0/
|
||||
/^REPLACE_VDPRINTF *=/s/@REPLACE_VDPRINTF@/0/
|
||||
/^REPLACE_VFPRINTF *=/s/@REPLACE_VFPRINTF@/0/
|
||||
/^REPLACE_VPRINTF *=/s/@REPLACE_VPRINTF@/0/
|
||||
/^REPLACE_VSNPRINTF *=/s/@REPLACE_VSNPRINTF@/0/
|
||||
/^REPLACE_VSPRINTF *=/s/@REPLACE_VSPRINTF@/0/
|
||||
/^REPLACE_WCTOMB *=/s/@REPLACE_WCTOMB@/0/
|
||||
/^REPLACE_WRITE *=/s/@REPLACE_WRITE@/0/
|
||||
# We never want any gnulib replacement functions
|
||||
/^REPLACE_[^ =]* *= *@/s/@[^@\n]*@/0/
|
||||
/^SIG_ATOMIC_T_SUFFIX *=/s/@SIG_ATOMIC_T_SUFFIX@//
|
||||
/^SIZE_T_SUFFIX *=/s/@SIZE_T_SUFFIX@/u/
|
||||
/^ALLOCA_H *=/s/@[^@\n]*@/alloca.h/
|
||||
/^BYTESWAP_H *=/s/@[^@\n]*@/byteswap.h/
|
||||
/^DIRENT_H *=/s/@[^@\n]*@//
|
||||
/^ERRNO_H *=/s/@[^@\n]*@//
|
||||
/^STDBOOL_H *=/s/@[^@\n]*@//
|
||||
/^STDALIGN_H *=/s/@[^@\n]*@/stdalign.h/
|
||||
/^STDARG_H *=/s/@[^@\n]*@//
|
||||
@ -598,21 +324,32 @@ am__cd = cd
|
||||
/^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/
|
||||
/^UNDEFINE_STRTOK_R *=/s/@UNDEFINE_STRTOK_R@/0/
|
||||
/^WCHAR_T_SUFFIX *=/s/@WCHAR_T_SUFFIX@/h/
|
||||
/^WINT_T_SUFFIX *=/s/@WINT_T_SUFFIX@//
|
||||
/^WINDOWS_64_BIT_OFF_T *=/s/@WINDOWS_64_BIT_OFF_T@/0/
|
||||
/^WINDOWS_64_BIT_ST_SIZE *=/s/@WINDOWS_64_BIT_ST_SIZE@/0/
|
||||
/am__append_1 *=.*gettext\.h/s/@[^@\n]*@/\#/
|
||||
# Tailor lists of files to what we need
|
||||
/am__append_[1-9][0-9]* *=.*gettext\.h/s/@[^@\n]*@/\#/
|
||||
/am__append_2 *=.*verify\.h/s/@[^@\n]*@//
|
||||
/^gl_LIBOBJS *=/s/@[^@\n]*@/getopt.o getopt1.o strftime.o time_r.o getloadavg.o pthread_sigmask.o/
|
||||
/^BUILT_SOURCES *=/s/ *inttypes\.h//
|
||||
/^BUILT_SOURCES *=/,/^[^ ]/{
|
||||
/^@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/
|
||||
/^am__append_[1-9][0-9]* *=/,/^[^ ]/{
|
||||
s/ *inttypes\.h//
|
||||
s| *sys/select\.h||
|
||||
s| *sys/time\.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/qcopy-acl\.\$(OBJEXT) //
|
||||
s/qset-acl\.\$(OBJEXT) //
|
||||
s/openat-die\.\$(OBJEXT) //
|
||||
s/save-cwd\.\$(OBJEXT) //
|
||||
}
|
||||
/^srcdir *=/s/@[^@\n]*@/./
|
||||
/^top_srcdir *=/s/@[^@\n]*@/../
|
||||
@ -623,7 +360,7 @@ s/@PRAGMA_COLUMNS@//
|
||||
# Delete the recipes we don't want to get in our way.
|
||||
/^\$(srcdir)\/Makefile\.in:/,/^[ ][ ]*\$(AUTOMAKE)/d
|
||||
/^Makefile:/,/^[ ][ ]*esac/d
|
||||
/^\$(top_srcdir)\/configure:/,/^\$(ACLOCAL_M4)/d
|
||||
/^\$(top_srcdir)\/configure:/,/^\$(am__aclocal_m4_deps):/d
|
||||
/^\$(top_builddir)\/config.status:/,/^$/d
|
||||
#
|
||||
# Remove the dependencies on $(top_builddir)/config.status
|
||||
@ -640,16 +377,22 @@ s/^@am__fastdepCC_FALSE@/\#/
|
||||
# Fix the *-clean rules, to not use a Unixy `test' command. Empty
|
||||
# lists are replaced with a dummy file, to avoid an error message from
|
||||
# "rm -f" with no arguments.
|
||||
/^CLEANFILES *= *$/c\
|
||||
CLEANFILES = xyzzy
|
||||
/^CONFIG_CLEAN_FILES *= *$/c\
|
||||
CONFIG_CLEAN_FILES = xyzzy
|
||||
/^CONFIG_CLEAN_VPATH_FILES *= *$/c\
|
||||
CONFIG_CLEAN_VPATH_FILES = xyzzy
|
||||
s/^ -*test -z.*|| rm/ -rm/
|
||||
s/@echo /@djecho/
|
||||
s/@echo /@djecho /
|
||||
#
|
||||
# Fix the recipes for header files
|
||||
s/^@GL_GENERATE_ALLOCA_H_TRUE@//
|
||||
s/^@GL_GENERATE_ALLOCA_H_FALSE@/\#/
|
||||
s/^@GL_GENERATE_BYTESWAP_H_TRUE@//
|
||||
s/^@GL_GENERATE_BYTESWAP_H_FALSE@/\#/
|
||||
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@/\#/
|
||||
@ -688,7 +431,16 @@ s/\.in-h\; *\\$/.in-h >> $@-t/
|
||||
/^unistd\.h:/,/^ [ ]*mv /{
|
||||
s/'\; \\ *$/' >> $@-t/
|
||||
}
|
||||
/^string\.h:/,/^ [ ]*mv /{
|
||||
s/'\; \\ *$/' >> $@-t/
|
||||
/< \$(srcdir)\/string\.in-h >>/d
|
||||
}
|
||||
s!\$(MKDIR_P)[ ][ ]*sys!command.com /c "if not exist sys\\stat.h md sys"!
|
||||
/^ @for dir in/,/^[^ ]/c\
|
||||
-rm -rf $(MOSTLYCLEANDIRS)
|
||||
/^ *-test . /d
|
||||
#
|
||||
# Fix the Automake verbosity stuff
|
||||
/^ *\$(AM_V_at)/s/\$(AM_V_at)//
|
||||
/^ *\$(AM_V_AR)/s/\$(AM_V_AR)//
|
||||
/^ *\$(AM_V_CC)/s/\$(AM_V_CC)//
|
||||
|
@ -19,8 +19,9 @@
|
||||
/^SHELL *=/i\
|
||||
export FNCASE=y
|
||||
|
||||
/^SHELL *=/s|@SHELL@|/bin/sh|
|
||||
/^lisp *=/s|\$(srcdir)|$(CURDIR)|
|
||||
/^srcdir *=/s|@srcdir@|.|
|
||||
/^top_srcdir *=/s|@top_srcdir@|./..|
|
||||
/^abs_top_builddir *=/s|@abs_top_builddir@|$(CURDIR)/..|
|
||||
/^XARGS_LIMIT *=/s|@XARGS_LIMIT@||
|
||||
|
||||
|
@ -1,3 +1,62 @@
|
||||
2014-04-16 Eli Zaretskii <eliz@gnu.org>
|
||||
|
||||
* unexcoff.c [MSDOS]: Include libc/atexit.h.
|
||||
(copy_text_and_data): Zero out the atexit chain pointer before
|
||||
dumping Emacs.
|
||||
|
||||
* termhooks.h (encode_terminal_code): Update prototype.
|
||||
|
||||
* term.c (encode_terminal_code) [DOS_NT]: Make it externally
|
||||
visible for all DOS_NT ports, not just WINDOWSNT.
|
||||
(syms_of_term) [!MSDOS]: Don't define 'tty-menu-*' symbols on MSDOS.
|
||||
|
||||
* sysdep.c (emacs_sigaction_init, init_signals): Don't use SIGCHLD
|
||||
unless it is defined.
|
||||
(emacs_pipe) [MSDOS]: Redirect to 'pipe'.
|
||||
|
||||
* process.c (close_on_exec, accept4, process_socket): Move into
|
||||
the "ifdef subprocesses" part.
|
||||
(catch_child_signal): Condition by "ifdef subprocesses".
|
||||
(syms_of_process) <Qinternal_default_process_sentinel>
|
||||
<Qinternal_default_process_filter>: Condition by "ifdef subprocesses".
|
||||
|
||||
* msdos.h: Add prototypes for new functions.
|
||||
(EINPROGRESS): Define.
|
||||
(O_CLOEXEC): Define to zero.
|
||||
|
||||
* msdos.c (check_window_system): Remove unnecessary an
|
||||
incompatible duplicate function.
|
||||
(sys_opendir, readlinkat, faccessat, fstatat, unsetenv): New
|
||||
functions in support of new functionality.
|
||||
|
||||
* menu.c (single_menu_item): Add visual indication of submenu
|
||||
also for menus on MSDOS frames.
|
||||
(Fx_popup_menu) [!MSDOS]: Do not call tty_menu_show on MSDOS.
|
||||
|
||||
* lisp.h (CHECK_PROCESS) [!subprocesses]: Do not define
|
||||
when async subprocesses aren't supported.
|
||||
|
||||
* font.h (FONT_WIDTH) [MSDOS]: MSDOS-specific definition.
|
||||
|
||||
* emacs.c (close_output_streams): Zero out errno before calling
|
||||
close_stream.
|
||||
|
||||
* dired.c [MSDOS]: Include msdos.h.
|
||||
|
||||
* conf_post.h (opendir) [MSDOS]: Redirect to sys_opendir.
|
||||
(DATA_START) [MSDOS]: Define.
|
||||
(SYSTEM_PURESIZE_EXTRA) [MSDOS]: Enlarge by 25K.
|
||||
|
||||
* callproc.c (block_child_signal, unblock_child_signal) [MSDOS]:
|
||||
Ifdef away for MSDOS.
|
||||
(record_kill_process) [MSDOS]: Ifdef away the entire body for MSDOS.
|
||||
(call_process_cleanup) [MSDOS]: Ifdef away portions not relevant
|
||||
for MSDOS.
|
||||
(call_process) [MSDOS]: Fix call sequence of dostounix_filename.
|
||||
Use temporary file template that is compatible with mkostemp.
|
||||
Move vfork-related portions under #ifndef MSDOS.
|
||||
(syms_of_callproc): Unify templates of MSDOS and WINDOWSNT.
|
||||
|
||||
2014-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
|
||||
|
||||
* buffer.c (Foverlays_at): Add argument `sorted'.
|
||||
|
@ -105,6 +105,8 @@ enum
|
||||
|
||||
static Lisp_Object call_process (ptrdiff_t, Lisp_Object *, int, ptrdiff_t);
|
||||
|
||||
|
||||
#ifndef MSDOS
|
||||
/* Block SIGCHLD. */
|
||||
|
||||
void
|
||||
@ -124,6 +126,8 @@ unblock_child_signal (void)
|
||||
pthread_sigmask (SIG_SETMASK, &empty_mask, 0);
|
||||
}
|
||||
|
||||
#endif /* !MSDOS */
|
||||
|
||||
/* Return the current buffer's working directory, or the home
|
||||
directory if it's unreachable, as a string suitable for a system call.
|
||||
Signal an error if the result would not be an accessible directory. */
|
||||
@ -162,6 +166,7 @@ encode_current_directory (void)
|
||||
void
|
||||
record_kill_process (struct Lisp_Process *p, Lisp_Object tempfile)
|
||||
{
|
||||
#ifndef MSDOS
|
||||
block_child_signal ();
|
||||
|
||||
if (p->alive)
|
||||
@ -172,6 +177,7 @@ record_kill_process (struct Lisp_Process *p, Lisp_Object tempfile)
|
||||
}
|
||||
|
||||
unblock_child_signal ();
|
||||
#endif /* !MSDOS */
|
||||
}
|
||||
|
||||
/* Clean up files, file descriptors and processes created by Fcall_process. */
|
||||
@ -211,6 +217,7 @@ call_process_cleanup (Lisp_Object buffer)
|
||||
{
|
||||
Fset_buffer (buffer);
|
||||
|
||||
#ifndef MSDOS
|
||||
if (synch_process_pid)
|
||||
{
|
||||
kill (-synch_process_pid, SIGINT);
|
||||
@ -222,6 +229,7 @@ call_process_cleanup (Lisp_Object buffer)
|
||||
immediate_quit = 0;
|
||||
message1 ("Waiting for process to die...done");
|
||||
}
|
||||
#endif /* !MSDOS */
|
||||
}
|
||||
|
||||
#ifdef DOS_NT
|
||||
@ -518,10 +526,10 @@ call_process (ptrdiff_t nargs, Lisp_Object *args, int filefd,
|
||||
char const *outf = tmpdir ? tmpdir : "";
|
||||
tempfile = alloca (strlen (outf) + 20);
|
||||
strcpy (tempfile, outf);
|
||||
dostounix_filename (tempfile, 0);
|
||||
dostounix_filename (tempfile);
|
||||
if (*tempfile == '\0' || tempfile[strlen (tempfile) - 1] != '/')
|
||||
strcat (tempfile, "/");
|
||||
strcat (tempfile, "detmp.XXX");
|
||||
strcat (tempfile, "emXXXXXX");
|
||||
mktemp (tempfile);
|
||||
if (!*tempfile)
|
||||
report_file_error ("Opening process output file", Qnil);
|
||||
@ -710,8 +718,6 @@ call_process (ptrdiff_t nargs, Lisp_Object *args, int filefd,
|
||||
unblock_child_signal ();
|
||||
unblock_input ();
|
||||
|
||||
#endif /* not MSDOS */
|
||||
|
||||
if (pid < 0)
|
||||
report_file_errno ("Doing vfork", Qnil, child_errno);
|
||||
|
||||
@ -726,6 +732,8 @@ call_process (ptrdiff_t nargs, Lisp_Object *args, int filefd,
|
||||
emacs_close (filefd);
|
||||
clear_unwind_protect (count - 1);
|
||||
|
||||
#endif /* not MSDOS */
|
||||
|
||||
if (INTEGERP (buffer))
|
||||
return unbind_to (count, Qnil);
|
||||
|
||||
@ -1672,10 +1680,8 @@ syms_of_callproc (void)
|
||||
{
|
||||
#ifndef DOS_NT
|
||||
Vtemp_file_name_pattern = build_string ("emacsXXXXXX");
|
||||
#elif defined (WINDOWSNT)
|
||||
#else /* DOS_NT */
|
||||
Vtemp_file_name_pattern = build_string ("emXXXXXX");
|
||||
#else
|
||||
Vtemp_file_name_pattern = build_string ("detmp.XXX");
|
||||
#endif
|
||||
staticpro (&Vtemp_file_name_pattern);
|
||||
|
||||
|
@ -121,6 +121,11 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
|
||||
#else
|
||||
# define lstat stat
|
||||
#endif
|
||||
|
||||
/* We must intercept 'opendir' calls to stash away the directory name,
|
||||
so we could reuse it in realinkat, see msdos.c. */
|
||||
#define opendir sys_opendir
|
||||
|
||||
/* The "portable" definition of _GL_INLINE on config.h does not work
|
||||
with DJGPP GCC 3.4.4: it causes unresolved externals in sysdep.c,
|
||||
although lib/execinfo.h is included and the inline functions there
|
||||
@ -132,6 +137,9 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
|
||||
|
||||
#define emacs_raise(sig) msdos_fatal_signal (sig)
|
||||
|
||||
/* DATA_START is needed by vm-limit.c and unexcoff.c. */
|
||||
#define DATA_START (&etext + 1)
|
||||
|
||||
/* Define one of these for easier conditionals. */
|
||||
#ifdef HAVE_X_WINDOWS
|
||||
/* We need a little extra space, see ../../lisp/loadup.el and the
|
||||
@ -148,7 +156,7 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
|
||||
directory tree). Given the unknown policy of different DPMI
|
||||
hosts regarding loading of untouched pages, I'm not going to risk
|
||||
enlarging Emacs footprint by another 100+ KBytes. */
|
||||
#define SYSTEM_PURESIZE_EXTRA (-170000+65000)
|
||||
#define SYSTEM_PURESIZE_EXTRA (-170000+90000)
|
||||
#endif
|
||||
#endif /* MSDOS */
|
||||
|
||||
|
@ -47,6 +47,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
#include "regex.h"
|
||||
#include "blockinput.h"
|
||||
|
||||
#ifdef MSDOS
|
||||
#include "msdos.h" /* for fstatat */
|
||||
#endif
|
||||
|
||||
static Lisp_Object Qdirectory_files;
|
||||
static Lisp_Object Qdirectory_files_and_attributes;
|
||||
static Lisp_Object Qfile_name_completion;
|
||||
|
@ -686,6 +686,11 @@ void (*__malloc_initialize_hook) (void) EXTERNALLY_VISIBLE = malloc_initialize_h
|
||||
static void
|
||||
close_output_streams (void)
|
||||
{
|
||||
int err = errno;
|
||||
|
||||
/* close_stream checks errno, so make sure it doesn't inherit some
|
||||
random value. */
|
||||
errno = 0;
|
||||
if (close_stream (stdout) != 0)
|
||||
{
|
||||
emacs_perror ("Write error to standard output");
|
||||
@ -694,6 +699,8 @@ close_output_streams (void)
|
||||
|
||||
if (close_stream (stderr) != 0)
|
||||
_exit (EXIT_FAILURE);
|
||||
|
||||
errno = err;
|
||||
}
|
||||
|
||||
/* ARGSUSED */
|
||||
|
@ -236,7 +236,11 @@ enum font_property_index
|
||||
#define FONT_SET_STYLE(font, prop, val) \
|
||||
ASET ((font), prop, make_number (font_style_to_value (prop, val, true)))
|
||||
|
||||
#ifndef MSDOS
|
||||
#define FONT_WIDTH(f) ((f)->max_width)
|
||||
#else
|
||||
#define FONT_WIDTH(f) 1
|
||||
#endif
|
||||
#define FONT_HEIGHT(f) ((f)->height)
|
||||
#define FONT_BASE(f) ((f)->ascent)
|
||||
#define FONT_DESCENT(f) ((f)->descent)
|
||||
|
@ -2533,11 +2533,13 @@ CHECK_WINDOW (Lisp_Object x)
|
||||
{
|
||||
CHECK_TYPE (WINDOWP (x), Qwindowp, x);
|
||||
}
|
||||
#ifdef subprocesses
|
||||
INLINE void
|
||||
CHECK_PROCESS (Lisp_Object x)
|
||||
{
|
||||
CHECK_TYPE (PROCESSP (x), Qprocessp, x);
|
||||
}
|
||||
#endif
|
||||
INLINE void
|
||||
CHECK_NATNUM (Lisp_Object x)
|
||||
{
|
||||
@ -4142,7 +4144,6 @@ extern bool running_asynch_code;
|
||||
|
||||
/* Defined in process.c. */
|
||||
extern Lisp_Object QCtype, Qlocal;
|
||||
extern Lisp_Object Qprocessp;
|
||||
extern void kill_buffer_processes (Lisp_Object);
|
||||
extern bool wait_reading_process_output (intmax_t, int, int, bool,
|
||||
Lisp_Object,
|
||||
|
@ -415,7 +415,8 @@ single_menu_item (Lisp_Object key, Lisp_Object item, Lisp_Object dummy, void *sk
|
||||
item_string = concat2 (prefix, item_string);
|
||||
}
|
||||
|
||||
if (FRAME_TERMCAP_P (XFRAME (Vmenu_updating_frame))
|
||||
if ((FRAME_TERMCAP_P (XFRAME (Vmenu_updating_frame))
|
||||
|| FRAME_MSDOS_P (XFRAME (Vmenu_updating_frame)))
|
||||
&& !NILP (map))
|
||||
/* Indicate visually that this is a submenu. */
|
||||
item_string = concat2 (item_string, build_string (" >"));
|
||||
@ -1442,6 +1443,7 @@ no quit occurs and `x-popup-menu' returns nil. */)
|
||||
keymaps, title, &error_name);
|
||||
else
|
||||
#endif
|
||||
#ifndef MSDOS
|
||||
if (FRAME_TERMCAP_P (f))
|
||||
{
|
||||
ptrdiff_t count1 = SPECPDL_INDEX ();
|
||||
@ -1453,6 +1455,7 @@ no quit occurs and `x-popup-menu' returns nil. */)
|
||||
kbd_menu_navigation, &error_name);
|
||||
unbind_to (count1, Qnil);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_NS
|
||||
unbind_to (specpdl_count, Qnil);
|
||||
|
127
src/msdos.c
127
src/msdos.c
@ -50,6 +50,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
#include <unistd.h> /* for chdir, dup, dup2, etc. */
|
||||
#include <dir.h> /* for getdisk */
|
||||
#pragma pack(0) /* dir.h does a pack(4), which isn't GCC's default */
|
||||
#undef opendir
|
||||
#include <dirent.h> /* for opendir */
|
||||
#include <fcntl.h>
|
||||
#include <io.h> /* for setmode */
|
||||
#include <dpmi.h> /* for __dpmi_xxx stuff */
|
||||
@ -1883,18 +1885,6 @@ dos_get_saved_screen (char **screen, int *rows, int *cols)
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifndef HAVE_X_WINDOWS
|
||||
|
||||
/* We are not X, but we can emulate it well enough for our needs... */
|
||||
void
|
||||
check_window_system (void)
|
||||
{
|
||||
if (! FRAME_MSDOS_P (SELECTED_FRAME ()))
|
||||
error ("Not running under a window system");
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* ----------------------- Keyboard control ----------------------
|
||||
*
|
||||
@ -3875,6 +3865,9 @@ int setpgid (int pid, int pgid) { return 0; }
|
||||
int setpriority (int x, int y, int z) { return 0; }
|
||||
pid_t setsid (void) { return 0; }
|
||||
|
||||
|
||||
/* Gnulib support and emulation. */
|
||||
|
||||
#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 4
|
||||
ssize_t
|
||||
readlink (const char *name, char *dummy1, size_t dummy2)
|
||||
@ -3886,6 +3879,38 @@ readlink (const char *name, char *dummy1, size_t dummy2)
|
||||
}
|
||||
#endif
|
||||
|
||||
/* dir_pathname is set by sys_opendir and used in readlinkat and in
|
||||
fstatat, when they get a special FD of zero, which means use the
|
||||
last directory opened by opendir. */
|
||||
static char dir_pathname[MAXPATHLEN];
|
||||
DIR *
|
||||
sys_opendir (const char *dirname)
|
||||
{
|
||||
_fixpath (dirname, dir_pathname);
|
||||
return opendir (dirname);
|
||||
}
|
||||
|
||||
ssize_t
|
||||
readlinkat (int fd, char const *name, char *buffer, size_t buffer_size)
|
||||
{
|
||||
/* Rely on a hack: an open directory is modeled as file descriptor 0,
|
||||
as in fstatat. FIXME: Add proper support for readlinkat. */
|
||||
char fullname[MAXPATHLEN];
|
||||
|
||||
if (fd != AT_FDCWD)
|
||||
{
|
||||
if (strlen (dir_pathname) + strlen (name) + 1 >= MAXPATHLEN)
|
||||
{
|
||||
errno = ENAMETOOLONG;
|
||||
return -1;
|
||||
}
|
||||
sprintf (fullname, "%s/%s", dir_pathname, name);
|
||||
name = fullname;
|
||||
}
|
||||
|
||||
return readlink (name, buffer, buffer_size);
|
||||
}
|
||||
|
||||
char *
|
||||
careadlinkat (int fd, char const *filename,
|
||||
char *buffer, size_t buffer_size,
|
||||
@ -3913,6 +3938,82 @@ careadlinkat (int fd, char const *filename,
|
||||
return buffer;
|
||||
}
|
||||
|
||||
/* Emulate faccessat(2). */
|
||||
int
|
||||
faccessat (int dirfd, const char * path, int mode, int flags)
|
||||
{
|
||||
/* We silently ignore FLAGS. */
|
||||
flags = flags;
|
||||
|
||||
if (dirfd != AT_FDCWD
|
||||
&& !(IS_DIRECTORY_SEP (path[0])
|
||||
|| IS_DEVICE_SEP (path[1])))
|
||||
{
|
||||
errno = EBADF;
|
||||
return -1;
|
||||
}
|
||||
|
||||
return access (path, mode);
|
||||
}
|
||||
|
||||
/* Emulate fstatat. */
|
||||
int
|
||||
fstatat (int fd, char const *name, struct stat *st, int flags)
|
||||
{
|
||||
/* Rely on a hack: an open directory is modeled as file descriptor 0.
|
||||
This is good enough for the current usage in Emacs, but is fragile.
|
||||
|
||||
FIXME: Add proper support for fdopendir, fstatat, readlinkat.
|
||||
Gnulib does this and can serve as a model. */
|
||||
char fullname[MAXPATHLEN];
|
||||
|
||||
flags = flags;
|
||||
|
||||
if (fd != AT_FDCWD)
|
||||
{
|
||||
char lastc = dir_pathname[strlen (dir_pathname) - 1];
|
||||
|
||||
if (strlen (dir_pathname) + strlen (name) + IS_DIRECTORY_SEP (lastc)
|
||||
>= MAXPATHLEN)
|
||||
{
|
||||
errno = ENAMETOOLONG;
|
||||
return -1;
|
||||
}
|
||||
|
||||
sprintf (fullname, "%s%s%s",
|
||||
dir_pathname, IS_DIRECTORY_SEP (lastc) ? "" : "/", name);
|
||||
name = fullname;
|
||||
}
|
||||
|
||||
#if __DJGPP__ > 2 || __DJGPP_MINOR__ > 3
|
||||
return (flags & AT_SYMLINK_NOFOLLOW) ? lstat (name, st) : stat (name, st);
|
||||
#else
|
||||
return stat (name, st);
|
||||
#endif
|
||||
}
|
||||
|
||||
#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 4
|
||||
/* Emulate the Posix unsetenv. DJGPP v2.04 has this in the library. */
|
||||
int
|
||||
unsetenv (const char *name)
|
||||
{
|
||||
char *var;
|
||||
size_t name_len;
|
||||
int retval;
|
||||
|
||||
if (name == NULL || *name == '\0' || strchr (name, '=') != NULL)
|
||||
{
|
||||
errno = EINVAL;
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* DJGPP's 'putenv' deletes the entry if it doesn't include '='. */
|
||||
putenv (name);
|
||||
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 2
|
||||
|
||||
@ -4038,7 +4139,7 @@ dos_yield_time_slice (void)
|
||||
/* We don't have to call timer_check here
|
||||
because wait_reading_process_output takes care of that. */
|
||||
int
|
||||
sys_select (int nfds, SELECT_TYPE *rfds, SELECT_TYPE *wfds, SELECT_TYPE *efds,
|
||||
sys_select (int nfds, fd_set *rfds, fd_set *wfds, fd_set *efds,
|
||||
struct timespec *timeout, void *ignored)
|
||||
{
|
||||
int check_input;
|
||||
|
17
src/msdos.h
17
src/msdos.h
@ -41,9 +41,25 @@ void mouse_on (void);
|
||||
void mouse_off (void);
|
||||
void mouse_moveto (int, int);
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#if __DJGPP__ == 2 && __DJGPP_MINOR__ < 4
|
||||
int readlink (const char *, char *, size_t);
|
||||
#endif
|
||||
ssize_t readlinkat (int, const char *, char *, size_t);
|
||||
int fstatat (int, char const *, struct stat *, int);
|
||||
int unsetenv (const char *);
|
||||
|
||||
/* Constants. */
|
||||
#define EINPROGRESS 112
|
||||
/* Gnulib sets O_CLOEXEC to O_NOINHERIT, which gets in the way when we
|
||||
need to redirect standard handles for subprocesses using temporary
|
||||
files created by mkostemp, see callproc.c. */
|
||||
#ifdef O_CLOEXEC
|
||||
# undef O_CLOEXEC
|
||||
#endif
|
||||
#define O_CLOEXEC 0
|
||||
|
||||
|
||||
#ifndef HAVE_X_WINDOWS
|
||||
@ -83,7 +99,6 @@ extern void x_set_menu_bar_lines (struct frame *, Lisp_Object, Lisp_Object);
|
||||
#define XMenuSetAEQ (void)
|
||||
#define XMenuSetFreeze (void)
|
||||
#define XMenuRecompute (void)
|
||||
#define FONT_WIDTH(foo) 1
|
||||
#define XM_FAILURE -1
|
||||
#define XM_SUCCESS 1
|
||||
#define XM_NO_SELECT 2
|
||||
|
@ -134,6 +134,29 @@ extern int sys_select (int, fd_set *, fd_set *, fd_set *,
|
||||
struct timespec *, void *);
|
||||
#endif
|
||||
|
||||
/* Work around GCC 4.7.0 bug with strict overflow checking; see
|
||||
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52904>.
|
||||
These lines can be removed once the GCC bug is fixed. */
|
||||
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
|
||||
# pragma GCC diagnostic ignored "-Wstrict-overflow"
|
||||
#endif
|
||||
|
||||
Lisp_Object Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname, Qtpgid;
|
||||
Lisp_Object Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcstime;
|
||||
Lisp_Object Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs;
|
||||
Lisp_Object Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtime, Qctime;
|
||||
Lisp_Object QCname, QCtype;
|
||||
|
||||
/* True if keyboard input is on hold, zero otherwise. */
|
||||
|
||||
static bool kbd_is_on_hold;
|
||||
|
||||
/* Nonzero means don't run process sentinels. This is used
|
||||
when exiting. */
|
||||
bool inhibit_sentinels;
|
||||
|
||||
#ifdef subprocesses
|
||||
|
||||
#ifndef SOCK_CLOEXEC
|
||||
# define SOCK_CLOEXEC 0
|
||||
#endif
|
||||
@ -165,29 +188,6 @@ process_socket (int domain, int type, int protocol)
|
||||
# define socket(domain, type, protocol) process_socket (domain, type, protocol)
|
||||
#endif
|
||||
|
||||
/* Work around GCC 4.7.0 bug with strict overflow checking; see
|
||||
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52904>.
|
||||
These lines can be removed once the GCC bug is fixed. */
|
||||
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
|
||||
# pragma GCC diagnostic ignored "-Wstrict-overflow"
|
||||
#endif
|
||||
|
||||
Lisp_Object Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname, Qtpgid;
|
||||
Lisp_Object Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcstime;
|
||||
Lisp_Object Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs;
|
||||
Lisp_Object Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtime, Qctime;
|
||||
Lisp_Object QCname, QCtype;
|
||||
|
||||
/* True if keyboard input is on hold, zero otherwise. */
|
||||
|
||||
static bool kbd_is_on_hold;
|
||||
|
||||
/* Nonzero means don't run process sentinels. This is used
|
||||
when exiting. */
|
||||
bool inhibit_sentinels;
|
||||
|
||||
#ifdef subprocesses
|
||||
|
||||
Lisp_Object Qprocessp;
|
||||
static Lisp_Object Qrun, Qstop, Qsignal;
|
||||
static Lisp_Object Qopen, Qclosed, Qconnect, Qfailed, Qlisten;
|
||||
@ -7058,6 +7058,7 @@ integer or floating point values.
|
||||
return system_process_attributes (pid);
|
||||
}
|
||||
|
||||
#ifdef subprocesses
|
||||
/* Arrange to catch SIGCHLD if this hasn't already been arranged.
|
||||
Invoke this after init_process_emacs, and after glib and/or GNUstep
|
||||
futz with the SIGCHLD handler, but before Emacs forks any children.
|
||||
@ -7082,6 +7083,7 @@ catch_child_signal (void)
|
||||
: old_action.sa_handler);
|
||||
unblock_child_signal ();
|
||||
}
|
||||
#endif /* subprocesses */
|
||||
|
||||
|
||||
/* This is not called "init_process" because that is the name of a
|
||||
@ -7288,10 +7290,12 @@ syms_of_process (void)
|
||||
DEFSYM (Qcutime, "cutime");
|
||||
DEFSYM (Qcstime, "cstime");
|
||||
DEFSYM (Qctime, "ctime");
|
||||
#ifdef subprocesses
|
||||
DEFSYM (Qinternal_default_process_sentinel,
|
||||
"internal-default-process-sentinel");
|
||||
DEFSYM (Qinternal_default_process_filter,
|
||||
"internal-default-process-filter");
|
||||
#endif
|
||||
DEFSYM (Qpri, "pri");
|
||||
DEFSYM (Qnice, "nice");
|
||||
DEFSYM (Qthcount, "thcount");
|
||||
|
@ -1506,7 +1506,9 @@ emacs_sigaction_init (struct sigaction *action, signal_handler_t handler)
|
||||
/* When handling a signal, block nonfatal system signals that are caught
|
||||
by Emacs. This makes race conditions less likely. */
|
||||
sigaddset (&action->sa_mask, SIGALRM);
|
||||
#ifdef SIGCHLD
|
||||
sigaddset (&action->sa_mask, SIGCHLD);
|
||||
#endif
|
||||
#ifdef SIGDANGER
|
||||
sigaddset (&action->sa_mask, SIGDANGER);
|
||||
#endif
|
||||
@ -1711,7 +1713,9 @@ init_signals (bool dumping)
|
||||
# ifdef SIGBUS
|
||||
sys_siglist[SIGBUS] = "Bus error";
|
||||
# endif
|
||||
# ifdef SIGCHLD
|
||||
sys_siglist[SIGCHLD] = "Child status changed";
|
||||
# endif
|
||||
# ifdef SIGCONT
|
||||
sys_siglist[SIGCONT] = "Continued";
|
||||
# endif
|
||||
@ -2182,6 +2186,9 @@ emacs_fopen (char const *file, char const *mode)
|
||||
int
|
||||
emacs_pipe (int fd[2])
|
||||
{
|
||||
#ifdef MSDOS
|
||||
return pipe (fd);
|
||||
#else /* !MSDOS */
|
||||
int result = pipe2 (fd, O_CLOEXEC);
|
||||
if (! O_CLOEXEC && result == 0)
|
||||
{
|
||||
@ -2189,6 +2196,7 @@ emacs_pipe (int fd[2])
|
||||
fcntl (fd[1], F_SETFD, FD_CLOEXEC);
|
||||
}
|
||||
return result;
|
||||
#endif /* !MSDOS */
|
||||
}
|
||||
|
||||
/* Approximate posix_close and POSIX_CLOSE_RESTART well enough for Emacs.
|
||||
|
@ -500,7 +500,7 @@ static ptrdiff_t encode_terminal_dst_size;
|
||||
Set CODING->produced to the byte-length of the resulting byte
|
||||
sequence, and return a pointer to that byte sequence. */
|
||||
|
||||
#ifndef WINDOWSNT
|
||||
#ifndef DOS_NT
|
||||
static
|
||||
#endif
|
||||
unsigned char *
|
||||
@ -4557,6 +4557,7 @@ bigger, or it may make it blink, or it may do nothing at all. */);
|
||||
encode_terminal_src = NULL;
|
||||
encode_terminal_dst = NULL;
|
||||
|
||||
#ifndef MSDOS
|
||||
DEFSYM (Qtty_menu_next_item, "tty-menu-next-item");
|
||||
DEFSYM (Qtty_menu_prev_item, "tty-menu-prev-item");
|
||||
DEFSYM (Qtty_menu_next_menu, "tty-menu-next-menu");
|
||||
@ -4566,4 +4567,5 @@ bigger, or it may make it blink, or it may do nothing at all. */);
|
||||
DEFSYM (Qtty_menu_exit, "tty-menu-exit");
|
||||
DEFSYM (Qtty_menu_mouse_movement, "tty-menu-mouse-movement");
|
||||
DEFSYM (Qtty_menu_navigation_map, "tty-menu-navigation-map");
|
||||
#endif
|
||||
}
|
||||
|
@ -643,7 +643,7 @@ extern void delete_terminal (struct terminal *);
|
||||
/* The initial terminal device, created by initial_term_init. */
|
||||
extern struct terminal *initial_terminal;
|
||||
|
||||
#ifdef WINDOWSNT
|
||||
#ifdef DOS_NT
|
||||
extern unsigned char *encode_terminal_code (struct glyph *, int,
|
||||
struct coding_system *);
|
||||
#endif
|
||||
|
@ -65,6 +65,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
||||
#include <crt0.h> /* for _crt0_startup_flags and its bits */
|
||||
#include <sys/exceptn.h>
|
||||
static int save_djgpp_startup_flags;
|
||||
#include <libc/atexit.h>
|
||||
static struct __atexit *save_atexit_ptr;
|
||||
#define filehdr external_filehdr
|
||||
#define scnhdr external_scnhdr
|
||||
#define syment external_syment
|
||||
@ -82,7 +84,7 @@ struct aouthdr
|
||||
unsigned long text_start;/* base of text used for this file */
|
||||
unsigned long data_start;/* base of data used for this file */
|
||||
};
|
||||
#endif /* not MSDOS */
|
||||
#endif /* MSDOS */
|
||||
#else /* not HAVE_COFF_H */
|
||||
#include <a.out.h>
|
||||
#endif /* not HAVE_COFF_H */
|
||||
@ -368,6 +370,12 @@ copy_text_and_data (int new, int a_out)
|
||||
and which might change the way that dumped Emacs works. */
|
||||
save_djgpp_startup_flags = _crt0_startup_flags;
|
||||
_crt0_startup_flags &= ~(_CRT0_FLAG_NO_LFN | _CRT0_FLAG_NEARPTR);
|
||||
|
||||
/* Zero out the 'atexit' chain in the dumped executable, to avoid
|
||||
calling the atexit functions twice. (emacs.c:main installs an
|
||||
atexit function.) */
|
||||
save_atexit_ptr = __atexit_ptr;
|
||||
__atexit_ptr = NULL;
|
||||
#endif
|
||||
|
||||
lseek (new, (long) text_scnptr, 0);
|
||||
@ -386,6 +394,9 @@ copy_text_and_data (int new, int a_out)
|
||||
|
||||
/* Restore the startup flags. */
|
||||
_crt0_startup_flags = save_djgpp_startup_flags;
|
||||
|
||||
/* Restore the atexit chain. */
|
||||
__atexit_ptr = save_atexit_ptr;
|
||||
#endif
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user