1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-21 18:23:59 +00:00

Initial version of fix for the MS-DOS build, not yet tested.

config.bat: Configure in `lib'.
 msdos/sedlibmk.inp: New file.
 msdos/sedlibcf.inp: New file.
 msdos/sed1v2.inp (NS_OBJC_OBJ): Edit to empty.
 (@true): Edit to "@rem".
 (move-if-change): Edit to "update".
 (echo): Edit to "djecho".
 (cd $(lib) && ...): Edit to "$(MAKE) -C ...".
 msdos/mainmake.v2 (version): Remove, no longer needed (config.in
 defines VERSION).
 (all): Add lib.
 (lib): New target and recipe.
 (lib-src): Depend on lib.
 (src): Depend on lib and lib-src.
 (clean, mostlyclean, distclean, maintainer-clean, extraclean)
 (bootstrap-clean): Recurse into lib.
 msdos/sed2v2.inp: Remove workaround for the "#if ! HAVE_MKTIME ||
 BROKEN_MKTIME" stuff -- it's no longer in src/config.in.
 (HAVE_ATTRIBUTE_ALIGNED, HAVE_C99_STRTOLD, HAVE_DECL_GETENV)
 (HAVE__BOOL): Edit to 1.
 (VERSION, inline, restrict): Edit for DJGPP.
 src/s/msdos.h (strtold): Define to _strtold.
 admin/admin.el (set-version): Add msdos/sed2v2.inp.
This commit is contained in:
Eli Zaretskii 2011-02-19 17:57:35 +02:00
parent 56e96bed34
commit 9d9d12cdf3
10 changed files with 103 additions and 16 deletions

View File

@ -1,3 +1,7 @@
2011-02-19 Eli Zaretskii <eliz@gnu.org>
* config.bat: Configure in `lib'.
2011-02-18 Paul Eggert <eggert@cs.ucla.edu>
Import IRIX 6.5 getloadavg fixes from gnulib.

View File

@ -1,3 +1,7 @@
2011-02-19 Eli Zaretskii <eliz@gnu.org>
* admin.el (set-version): Add msdos/sed2v2.inp.
2011-02-16 Paul Eggert <eggert@cs.ucla.edu>
Remove no-longer needed getloadavg symbols.

View File

@ -77,6 +77,10 @@ Root must be the root of an Emacs source tree."
(rx (and bol "#" (0+ blank) "define" (1+ blank)
"VERSION" (1+ blank)
(submatch (1+ (in "0-9."))))))
(set-version-in-file root "msdos/sed2v2.inp" version
(rx (and bol "/^#undef " (1+ not-newline)
"define VERSION" (1+ space)
(submatch (1+ (in "0-9."))))))
(set-version-in-file root "nt/makefile.w32-in" version
(rx (and "VERSION" (0+ space) "=" (0+ space)
(submatch (1+ (in "0-9."))))))

View File

@ -2,7 +2,8 @@
rem ----------------------------------------------------------------------
rem Configuration script for MSDOS
rem Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002, 2003
rem 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
rem 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
rem Inc.
rem This file is part of GNU Emacs.
@ -273,6 +274,22 @@ Rem supports long file names but DJGPP does not
for %%d in (emacs lispref lispintro lispintr misc) do sed -f ../msdos/sed6.inp < %%d\Makefile.in > %%d\Makefile
cd ..
rem ----------------------------------------------------------------------
Echo Configuring the lib directory...
If Exist c++defs.h update c++defs.h cxxdefs.h
cd lib
Rem Rename files like djtar on plain DOS filesystem would.
If Exist c++defs.h update c++defs.h cxxdefs.h
If Exist getopt.in.h update getopt.in.h getopt.in-h
If Exist stddef.in.h update stddef.in.h stddef.in-h
If Exist stdbool.in.h update stdbool.in.h stdbool.in-h
If Exist stdlib.in.h update stdlib.in.h stdlib.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
sed -f ../msdos/sedlibcf.inp < Makefile.in > makefile.tmp
sed -f ../msdos/sedlibmk.inp < makefile.tmp > Makefile
rm -f makefile.tmp
cd ..
rem ----------------------------------------------------------------------
Echo Configuring the lisp directory...
cd lisp
If Exist gnus\.dir-locals.el update gnus/.dir-locals.el gnus/_dir-locals.el

View File

@ -1,3 +1,30 @@
2011-02-19 Eli Zaretskii <eliz@gnu.org>
* sedlibmk.inp: New file.
* sedlibcf.inp: New file.
* sed1v2.inp (NS_OBJC_OBJ): Edit to empty.
(@true): Edit to "@rem".
(move-if-change): Edit to "update".
(echo): Edit to "djecho".
(cd $(lib) && ...): Edit to "$(MAKE) -C ...".
* mainmake.v2 (version): Remove, no longer needed (config.in
defines VERSION).
(all): Add lib.
(lib): New target and recipe.
(lib-src): Depend on lib.
(src): Depend on lib and lib-src.
(clean, mostlyclean, distclean, maintainer-clean, extraclean)
(bootstrap-clean): Recurse into lib.
* sed2v2.inp: Remove workaround for the "#if ! HAVE_MKTIME ||
BROKEN_MKTIME" stuff -- it's no longer in src/config.in.
(HAVE_ATTRIBUTE_ALIGNED, HAVE_C99_STRTOLD, HAVE_DECL_GETENV)
(HAVE__BOOL): Edit to 1.
(VERSION, inline, restrict): Edit for DJGPP.
2011-01-08 Glenn Morris <rgm@gnu.org>
* sedleim.inp (RUN-EMACS): -batch implies --no-init-file.

View File

@ -63,9 +63,6 @@ MAKESHELL=/xyzzy/command
# Generate a full pathname of the top-level installation directory
top_srcdir := $(subst \,/,$(shell cd))
# Find out which version of Emacs this is.
version := ${shell sed -n -e '/^static const char emacs_version/s/^[^"]*\("[^"]*"\).*/\1/p' src/emacs.c}
# Q: Do we need to bootstrap?
# A: Only if we find admin/admin.el, i.e. we are building out of
# a VCS-checkout (not a release) and src/b-emacs.exe does not exist.
@ -82,9 +79,14 @@ endif
# compiled lisp files are part of the distribution. (If we are
# bootstrapping, the src target will run Make in `lisp' as well.)
# leim is not included because it is part of the src target.
all: lib-src src emacs misc lispref lispintro
all: lib lib-src src emacs misc lispref lispintro
lib-src: FRC
lib: FRC
cd lib
$(MAKE) top_srcdir=${top_srcdir} version=${version}
cd ..
lib-src: lib FRC
cd lib-src
$(MAKE) top_srcdir=${top_srcdir} version=${version}
cd ..
@ -98,7 +100,7 @@ lib-src: FRC
# file src/foo.c forces dumping a new bootstrap-emacs, then re-byte-compiling
# all preloaded elisp files, and only then dump the actual src/emacs, which
# is not wrong, but is overkill in 99.99% of the cases.
src: FRC
src: lib lib-src FRC
cd src
$(MAKE) top_srcdir=${top_srcdir} BOOTSTRAPEMACS="${boot}"
djecho -s '/-geometry/s,^.*,set environment HOME $(top_srcdir),' \
@ -168,6 +170,9 @@ check:
@echo "We don't have any tests for GNU Emacs yet."
clean mostlyclean:
cd lib
$(MAKE) $(MFLAGS) $@
cd ..
cd lib-src
$(MAKE) $(MFLAGS) $@
cd ..
@ -199,6 +204,9 @@ distclean maintainer-clean: FRC
$(MAKE) $(MFLAGS) $@
if exist bootlisp rm -f bootlisp
cd ..
cd lib
$(MAKE) $(MFLAGS) $@
cd ..
cd lib-src
$(MAKE) $(MFLAGS) $@
cd ..
@ -228,6 +236,9 @@ extraclean:
cd src
$(MAKE) $(MFLAGS) $@
cd ..
cd lib
$(MAKE) $(MFLAGS) $@
cd ..
cd lib-src
$(MAKE) $(MFLAGS) $@
cd ..
@ -257,6 +268,9 @@ extraclean:
.PHONY: bootstrap
bootstrap-clean: FRC
cd lib
$(MAKE) $(MFLAGS) $@
cd ..
cd src
$(MAKE) $(MFLAGS) $@
cd ..

View File

@ -98,6 +98,7 @@ s/\.h\.in/.h-in/
/^ns_appbindir *=/s/@ns_appbindir@//
/^ns_appsrc *=/s/@ns_appsrc@//
/^NS_OBJ *=/s/@NS_OBJ@//
/^NS_OBJC_OBJ *=/s/@NS_OBJC_OBJ@//
/^NS_SUPPORT *=/s/@NS_SUPPORT@//
/^GNU_OBJC_CFLAGS*=/s/@GNU_OBJC_CFLAGS@//
/^LIBRESOLV *=/s/@LIBRESOLV@//
@ -145,6 +146,11 @@ s/\.h\.in/.h-in/
stubedit emacs.exe minstack=2048k
s/ || exit 1\; \\$//
s/ || true\; \\$//
s/ @true *$/ @rem/
s/^ [^ ]*move-if-change /update /
/^ echo[ ][ ]*timestamp/s/echo /djecho /
/^ cd \$(lib) && \$(MAKE)/c\
$(MAKE) $(MFLAGS) -C $(lib) libgnu.a
/^RUN_TEMACS *=/s|`/bin/pwd`|.|
/^ *@\$(MKDEPDIR) *$/d
/^ mv \.\/\.gdbinit/d

View File

@ -34,6 +34,8 @@
/^#undef HAVE_FREXP *$/s/^.*$/#define HAVE_FREXP 1/
/^#undef HAVE_FMOD *$/s/^.*$/#define HAVE_FMOD 1/
/^#undef HAVE_RINT *$/s/^.*$/#define HAVE_RINT 1/
/^#undef HAVE_ATTRIBUTE_ALIGNED *$/s/^.*$/#define HAVE_ATTRIBUTE_ALIGNED 1/
/^#undef HAVE_C99_STRTOLD *$/s/^.*$/#define HAVE_C99_STRTOLD 1/
/^#undef HAVE_CBRT *$/s/^.*$/#define HAVE_CBRT 1/
/^#undef HAVE_DIFFTIME *$/s/^.*$/#define HAVE_DIFFTIME 1/
/^#undef HAVE_FPATHCONF *$/s/^.*$/#define HAVE_FPATHCONF 1/
@ -56,8 +58,13 @@
/^#undef PACKAGE_STRING/s/^.*$/#define PACKAGE_STRING ""/
/^#undef PACKAGE_TARNAME/s/^.*$/#define PACKAGE_TARNAME ""/
/^#undef PACKAGE_VERSION/s/^.*$/#define PACKAGE_VERSION ""/
/^#undef VERSION/s/^.*$/#define VERSION "24.0.50"/
/^#undef HAVE_DECL_GETENV/s/^.*$/#define HAVE_DECL_GETENV 1/
/^#undef SYS_SIGLIST_DECLARED/s/^.*$/#define SYS_SIGLIST_DECLARED 1/
/^#undef HAVE_DIRENT_H/s/^.*$/#define HAVE_DIRENT_H 1/
/^#undef HAVE__BOOL/s/^.*$/#define HAVE__BOOL 1/
/^#undef inline/s/^.*$/#define inline __inline__/
/^#undef restrict/s/^.*$/#define restrict __restrict/
/^#undef GNU_MALLOC *$/s/^.*$/#define GNU_MALLOC 1/
/^#undef REL_ALLOC *$/s/^.*$/#define REL_ALLOC 1/
@ -69,15 +76,6 @@ s!^#undef config_opsysfile *$!#define config_opsysfile "s/msdos.h"!
s!^#undef config_machfile *$!#define config_machfile "m/intel386.h"!
s/^#undef PROTOTYPES *$/#define PROTOTYPES 1/
s/^#undef POINTER_TYPE *$/#define POINTER_TYPE void/
# ------------------------------------------------------------
# Without this ifndef, gcc -E -traditional barfs with GCC 3.0
# on the line which says if ! HAVE_MKTIME...
# ------------------------------------------------------------
/^#if ! HAVE_MKTIME || BROKEN_MKTIME/i\
#ifndef __DJGPP__
/^#define mktime emacs_mktime/a\
#endif
/^#undef HAVE_STDINT_H/c\
#if __DJGPP__ > 2 || __DJGPP_MINOR__ > 3\
#define HAVE_STDINT_H 1\

View File

@ -1,3 +1,7 @@
2011-02-19 Eli Zaretskii <eliz@gnu.org>
* s/msdos.h (strtold): Define to _strtold.
2011-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
* process.c (Fstart_process, Fmake_serial_process)

View File

@ -73,6 +73,15 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
#define HAVE_INVERSE_HYPERBOLIC
#define FLOAT_CHECK_DOMAIN
/* Start of gnulib-related stuff */
/* lib/ftoastr.c wants strtold, but DJGPP only has _strtold. DJGPP >
2.03 has it, but it also has _strtold as a stub that jumps to
strtold, so use _strtold in all versions. */
#define strtold _strtold
/* End of gnulib-related stuff. */
/* When $TERM is "internal" then this is substituted: */
#define INTERNAL_TERMINAL "pc|bios|IBM PC with color display:\
:co#80:li#25:Co#16:pa#256:km:ms:cm=<CM>:cl=<CL>:ce=<CE>:\