diff options
| author | Eli Zaretskii | 2016-04-30 13:45:33 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2016-04-30 13:45:33 +0300 |
| commit | ccdaf04cfdaa42fb85d456274405cce32ee9f5d4 (patch) | |
| tree | 631c59e4dad1db81cca00edeaa721ae8c0e522e5 /config.bat | |
| parent | ffe701cb07cfb3584c4e4894976f0c9487d02c59 (diff) | |
| download | emacs-ccdaf04cfdaa42fb85d456274405cce32ee9f5d4.tar.gz emacs-ccdaf04cfdaa42fb85d456274405cce32ee9f5d4.zip | |
Fix the MSDOS build
* config.bat:
* msdos/sedlisp.inp:
* msdos/sedlibmk.inp:
* msdos/sedleim.inp:
* msdos/sedadmin.inp:
* msdos/sed6.inp:
* msdos/sed3v2.inp:
* msdos/sed2v2.inp:
* msdos/sed1v2.inp: Adapt to Emacs 25.
* src/process.c (remove_slash_colon): Move out of "#ifdef
subprocesses" block, as it its called unconditionally. Move
ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
reference variables only defined in that block.
* src/msdos.h: Provide prototypes for IT_set_frame_parameters,
faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
dos_keysns, dos_keyread, run_msdos_command, and
syms_of_win16select, to avoid compiler warnings.
* src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
'environ', depending on the DJGPP version.
Remove declarations of externally-visible Lisp objects, like
Qbackground_color and Qreverse.
(run_msdos_command): First argument is not signed, not unsigned.
Use SYS_ENVIRON.
(sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
the latter doesn't work when 'time_t' is an unsigned data type.
This caused idle timers to behave incorrectly: they only fired
after a keyboard input event.
* src/frame.c (adjust_frame_size) [MSDOS]: Account for
FRAME_TOP_MARGIN that isn't counted in the frame's number of
lines, but dos_set_window_size needs it to be added.
* src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
* src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
that works around compilation errors with older GCC versions.
* src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
Objects.
* src/filelock.c [MSDOS]: Ifdef away most of the code. Provide
no-op implementations for 'lock_file' and 'unlock_file'.
(Ffile_locked_p) [MSDOS]: Always return nil. This avoids multiple
ifdefs in all users of filelock.c functionality.
* src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
* src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
warnings.
* src/dosfns.h: Provide prototypes for dos_cleanup,
syms_of_dosfns, and init_dosfns.
* src/deps.mk (atimer.o): Depend on msdos.h.
(emacs.o): Depend on dosfns.h.
* src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
warnings.
* lisp/window.el (window--adjust-process-windows): Skip the body
if 'process-list' is not available. This avoids failure to start
up on MS-DOS.
* lisp/vc/diff.el (diff-no-select): Test 'make-process', not
'start-process', as the latter is now available on all platforms.
* lisp/textmodes/ispell.el (ispell-async-processp): Replace
'start-process' with 'make-process' in a comment.
* lisp/term/internal.el (IT-unicode-translations): Modify and add
a few translations to display Info files with Unicode markup. Fix
an ancient off-by-one mismatch error with Unicode codepoints.
* lisp/progmodes/compile.el (compilation-start): Test
'make-process', not 'start-process', as the latter is now
available on all platforms.
* lisp/man.el (Man-build-man-command, Man-getpage-in-background):
Test 'make-process', not 'start-process', as the latter is now
available on all platforms.
* lisp/international/mule-cmds.el (set-coding-system-map): Test
'make-process', not 'start-process', as the latter is now
available on all platforms.
* lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
fix.
(eshell-execute-pipeline): Test 'make-process', not
'start-process', as the latter is now available on all platforms.
Diffstat (limited to 'config.bat')
| -rw-r--r-- | config.bat | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/config.bat b/config.bat index 04fce0f2988..a5bea7135ae 100644 --- a/config.bat +++ b/config.bat | |||
| @@ -174,7 +174,7 @@ junk | |||
| 174 | If ErrorLevel 1 Goto xmlDone | 174 | If ErrorLevel 1 Goto xmlDone |
| 175 | Echo Configuring with libxml2 ... | 175 | Echo Configuring with libxml2 ... |
| 176 | sed -e "/#undef HAVE_LIBXML2/s/^.*$/#define HAVE_LIBXML2 1/" <config.h2 >config.h3 | 176 | sed -e "/#undef HAVE_LIBXML2/s/^.*$/#define HAVE_LIBXML2 1/" <config.h2 >config.h3 |
| 177 | mv config.h3 config.h2 | 177 | sed -e "/#define EMACS_CONFIG_FEATURES/s/^.*$/#define EMACS_CONFIG_FEATURES \"LIBXML2\"/" <config.h3 >config.h2 |
| 178 | set libxml=1 | 178 | set libxml=1 |
| 179 | :xmlDone | 179 | :xmlDone |
| 180 | rm -f junk.c junk junk.exe | 180 | rm -f junk.c junk junk.exe |
| @@ -194,7 +194,7 @@ if exist dir.h ren dir.h vmsdir.h | |||
| 194 | 194 | ||
| 195 | rem Create "makefile" from "makefile.in". | 195 | rem Create "makefile" from "makefile.in". |
| 196 | rm -f Makefile makefile.tmp | 196 | rm -f Makefile makefile.tmp |
| 197 | copy Makefile.in+lisp.mk+deps.mk makefile.tmp | 197 | copy Makefile.in+deps.mk makefile.tmp |
| 198 | sed -f ../msdos/sed1v2.inp <makefile.tmp >Makefile | 198 | sed -f ../msdos/sed1v2.inp <makefile.tmp >Makefile |
| 199 | rm -f makefile.tmp | 199 | rm -f makefile.tmp |
| 200 | 200 | ||
| @@ -227,6 +227,10 @@ rem ---------------------------------------------------------------------- | |||
| 227 | Echo Configuring the library source directory... | 227 | Echo Configuring the library source directory... |
| 228 | cd lib-src | 228 | cd lib-src |
| 229 | sed -f ../msdos/sed3v2.inp <Makefile.in >Makefile | 229 | sed -f ../msdos/sed3v2.inp <Makefile.in >Makefile |
| 230 | mv Makefile makefile.tmp | ||
| 231 | sed -n -e "/^AC_INIT/s/[^,]*, \([^,]*\).*/@set emver=\1/p" ../configure.ac > emver.bat | ||
| 232 | call emver.bat | ||
| 233 | sed -e "s/@version@/%emver%/g" <makefile.tmp >Makefile | ||
| 230 | if "%X11%" == "" goto libsrc2a | 234 | if "%X11%" == "" goto libsrc2a |
| 231 | mv Makefile makefile.tmp | 235 | mv Makefile makefile.tmp |
| 232 | sed -f ../msdos/sed3x.inp <makefile.tmp >Makefile | 236 | sed -f ../msdos/sed3x.inp <makefile.tmp >Makefile |
| @@ -252,16 +256,23 @@ cd .. | |||
| 252 | rem ---------------------------------------------------------------------- | 256 | rem ---------------------------------------------------------------------- |
| 253 | Echo Configuring the doc directory, expect one "File not found" message... | 257 | Echo Configuring the doc directory, expect one "File not found" message... |
| 254 | cd doc | 258 | cd doc |
| 259 | Rem Rename files like djtar on plain DOS filesystem would. | ||
| 260 | If Exist emacs\emacsver.texi.in update emacs/emacsver.texi.in emacs/emacsver.in | ||
| 261 | If Exist man\emacs.1.in update man/emacs.1.in man/emacs.in | ||
| 262 | If Exist ..\etc\refcards\emacsver.tex.in update ../etc/refcards/emacsver.tex.in ../etc/refcards/emacsver.in | ||
| 255 | Rem The two variants for lispintro below is for when the shell | 263 | Rem The two variants for lispintro below is for when the shell |
| 256 | Rem supports long file names but DJGPP does not | 264 | Rem supports long file names but DJGPP does not |
| 257 | for %%d in (emacs lispref lispintro lispintr misc) do sed -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile | 265 | for %%d in (emacs lispref lispintro lispintr misc) do sed -e "s/@version@/%emver%/g" -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile |
| 266 | Rem produce emacs.1 from emacs.in | ||
| 267 | If Exist man\emacs.1 goto manOk | ||
| 268 | sed -e "s/@version@/%emver%/g" -e "s/@PACKAGE_BUGREPORT@/bug-gnu-emacs@gnu.org/g" < man\emacs.in > man\emacs.1 | ||
| 269 | :manOk | ||
| 258 | cd .. | 270 | cd .. |
| 259 | rem ---------------------------------------------------------------------- | 271 | rem ---------------------------------------------------------------------- |
| 260 | Echo Configuring the lib directory... | 272 | Echo Configuring the lib directory... |
| 261 | If Exist build-aux\snippet\c++defs.h update build-aux/snippet/c++defs.h build-aux/snippet/cxxdefs.h | 273 | If Exist build-aux\snippet\c++defs.h update build-aux/snippet/c++defs.h build-aux/snippet/cxxdefs.h |
| 262 | cd lib | 274 | cd lib |
| 263 | Rem Rename files like djtar on plain DOS filesystem would. | 275 | Rem Rename files like djtar on plain DOS filesystem would. |
| 264 | If Exist build-aux\snippet\c++defs.h update build-aux/snippet/c++defs.h build-aux/snippet/cxxdefs.h | ||
| 265 | If Exist alloca.in.h update alloca.in.h alloca.in-h | 276 | If Exist alloca.in.h update alloca.in.h alloca.in-h |
| 266 | If Exist byteswap.in.h update byteswap.in.h byteswap.in-h | 277 | If Exist byteswap.in.h update byteswap.in.h byteswap.in-h |
| 267 | If Exist dirent.in.h update dirent.in.h dirent.in-h | 278 | If Exist dirent.in.h update dirent.in.h dirent.in-h |
| @@ -286,6 +297,7 @@ If Exist sys_types.in.h update sys_types.in.h sys_types.in-h | |||
| 286 | If Exist sys_time.in.h update sys_time.in.h sys_time.in-h | 297 | If Exist sys_time.in.h update sys_time.in.h sys_time.in-h |
| 287 | If Exist time.in.h update time.in.h time.in-h | 298 | If Exist time.in.h update time.in.h time.in-h |
| 288 | If Exist unistd.in.h update unistd.in.h unistd.in-h | 299 | If Exist unistd.in.h update unistd.in.h unistd.in-h |
| 300 | Rem Only repository has the msdos/autogen directory | ||
| 289 | If Exist Makefile.in sed -f ../msdos/sedlibcf.inp < Makefile.in > makefile.tmp | 301 | If Exist Makefile.in sed -f ../msdos/sedlibcf.inp < Makefile.in > makefile.tmp |
| 290 | If Exist ..\msdos\autogen\Makefile.in sed -f ../msdos/sedlibcf.inp < ..\msdos\autogen\Makefile.in > makefile.tmp | 302 | If Exist ..\msdos\autogen\Makefile.in sed -f ../msdos/sedlibcf.inp < ..\msdos\autogen\Makefile.in > makefile.tmp |
| 291 | sed -f ../msdos/sedlibmk.inp < makefile.tmp > Makefile | 303 | sed -f ../msdos/sedlibmk.inp < makefile.tmp > Makefile |
| @@ -311,6 +323,12 @@ If Not Exist admin\unidata goto noadmin | |||
| 311 | Echo Configuring the admin/unidata directory... | 323 | Echo Configuring the admin/unidata directory... |
| 312 | cd admin\unidata | 324 | cd admin\unidata |
| 313 | sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile | 325 | sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile |
| 326 | Echo Configuring the admin/charsets directory... | ||
| 327 | cd ..\charsets | ||
| 328 | sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile | ||
| 329 | Echo Configuring the admin/grammars directory... | ||
| 330 | cd ..\grammars | ||
| 331 | sed -f ../../msdos/sedadmin.inp < Makefile.in > Makefile | ||
| 314 | cd ..\.. | 332 | cd ..\.. |
| 315 | :noadmin | 333 | :noadmin |
| 316 | rem ---------------------------------------------------------------------- | 334 | rem ---------------------------------------------------------------------- |
| @@ -345,3 +363,4 @@ set nodebug= | |||
| 345 | set djgpp_ver= | 363 | set djgpp_ver= |
| 346 | set sys_malloc= | 364 | set sys_malloc= |
| 347 | set libxml= | 365 | set libxml= |
| 366 | set emver= | ||