* .bzrignore: Add lib/stdalign.h.
* config.bat: Do not set NO_DECL_ALIGN; no longer needed.
Copy lib/stdalign.in.h to lib/stdalign.in-h as needed.
* configure.ac (HAVE_ATTRIBUTE_ALIGNED): Remove the code that
fiddles with this, as gnulib now does this for us.
* admin/merge-gnulib: Add environ, stdalign.
* m4/environ.m4: New file, from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/stdalign.in.h, m4/stdalign.m4: New files, from gnulib.
* sed2v2.inp (HAVE_ATTRIBUTE_ALIGNED): Remove edit.
* sedlibmk.inp (STDALIGN_H, @GL_GENERATE_STDALIGN_H_TRUE@)
(GL_GENERATE_STDALIGN_H_FALSE): New edits.
* nt/config.nt (HAVE_ATTRIBUTE_ALIGNED): Remove.
* src/alloc.c (XMALLOC_BASE_ALIGNMENT, GC_POINTER_ALIGNMENT, pure_alloc):
Simplify by using alignof.
(pure_alloc) [! USE_LSB_TAG]: Don't over-align EMACS_INT values.
* src/lisp.h: Include <stdalign.h>.
(GCALIGNMENT): New macro and constant.
(DECL_ALIGN): Remove. All uses replaced by alignas (GCALIGNMENT).
(USE_LSB_TAG): ifdef on alignas, not on DECL_ALIGN.
(stdalign): New macro, if not already defined.
msdos/sed1v2.inp: In the recipe for $(leimdir)/leim-list.el, edit the
prerequisites to be "temacs$(EXEEXT) $(BOOTSTRAPEMACS)", to avoid
the need to rebuild $(bootstrap_exe), which requires a Unixy shell
via lisp/Makefile.in's "update-subdirs" command.
msdos/sedlibmk.inp (am_libgnu_a_OBJECTS): Adjust the removal of
careadlinkat.$(OBJEXT) to the changes in lib/Makefile.in.
msdos/sed2v2.inp (DATA_START, GC_SETJMP_WORKS, HAVE_MENUS)
(HAVE_MOUSE): Edit for DJGPP, according to what was previously
done on src/s/msdos.h.
msdos/gmalloc.c (GMALLOC_INHIBIT_VALLOC): Don't reference.
src/s/msdos.h (BSD_SYSTEM, DATA_START, GC_SETJMP_WORKS, HAVE_MOUSE)
(HAVE_MENUS): Don't define, defined by editing config.in with
msdos/sed2v2.inp.
(GMALLOC_INHIBIT_VALLOC): Don't define.
(MODE_LINE_BINARY_TEXT): Remove, not used anymore.
msdos/mainmake.v2 (bootstrap-clean): Do a maintainer-clean in lib, not
bootstrap-clean (which doesn't exist).
msdos/inttypes.h (PRIuMAX) [__DJGPP__ < 2.04]: Define to "llu".
msdos/sedleim.inp (MKDIR_P): Edit to DOS "md" command.
msdos/sed1v2.inp: (LIB_CLOCK_GETTIME): Edit to empty.
Remove lines that invoke PAXCTL.
(clean): Fix recipe not to run Unixy shell commands.
msdos/sed2v2.inp (GETTIMEOFDAY_TIMEZONE): Edit to 'struct timezone'.
(HAVE_STRNCASECMP): Edit to 1.
msdos/sed3v2.inp (LIB_CLOCK_GETTIME): Edit to empty.
(C_SWITCH_SYSTEM): Add "-I../msdos".
msdos/sedlibmk.inp (GNULIB_GETTIMEOFDAY, GNULIB_PSELECT)
(GNULIB_SELECT, HAVE_STRUCT_TIMEVAL, HAVE_SYS_SELECT_H)
(HAVE_SYS_TIME_H, NEXT_AS_FIRST_DIRECTIVE_SYS_SELECT_H)
(NEXT_AS_FIRST_DIRECTIVE_SYS_TIME_H, NEXT_SYS_SELECT_H)
(NEXT_SYS_TIME_H, REPLACE_GETTIMEOFDAY, REPLACE_PSELECT)
(REPLACE_STRUCT_TIMEVAL): Edit to appropriate values.
(BUILT_SOURCES): Edit out sys/select.h and sys/time.h.
(mostlyclean-local, distclean-generic): Fix recipe not to run
Unixy shell commands.
src/sysselect.h [DOS_NT]: Don't include sys/select.h.
src/s/ms-w32.h (select, pselect): Don't define here, they are
defined in sysselect.h
src/sysselect.h (pselect) [!HAVE_PSELECT]: Redirect to sys_select.
src/sysdep.c: Don't include dos.h and dosfns.h.
src/process.c (sys_select):
src/msdos.c (sys_select): Accept one more argument and ignore it.
src/msdos.c (event_timestamp, sys_select): Use gnulib's gettime;
adapt data types and code to that.
src/dosfns.c:
src/msdos.c (gettime, settime): Define away the prototypes in dos.h,
which clashes with the gnulib function of the same name.
lisp/emacs-lisp/timer.el (timer-until): Subtract results of
float-time, instead of taking float-time of the result of
time-subtract, since float-time signals an error for negative time
arguments.
* configure.in: Remove all mention of src/m/*.
(machine, machfile, M_FILE, config_machfile, and_machfile): Remove.
All uses removed.
(BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
(BITS_PER_LONG_LONG): Move to src/lisp.h.
* lib/makefile.w32-in: Remove dependencies on
$(EMACS_ROOT)/src/m/intel386.h.
* make-dist: Don't make links to src/m.
* admin/CPP-DEFINES: Do not mention src/m/*.h.
(BITS_PER_EMACS_INT, BITS_PER_LONG, BITS_PER_CHAR)
(BITS_PER_SHORT, BITS_PER_INT): Remove.
* admin/MAINTAINERS: Remove src/m/.
* lib-src/makefile.w32-in: Remove dependencies on
$(EMACS_ROOT)/src/m/intel386.h.
* msdos/mainmake.v2 (TAGS tags): Don't look at $(CURDIR)/src/m/intel386.h.
* nt/config.nt: Do not include "m/intel386.h"; file was removed.
(BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG):
Move to src/lisp.h.
(EMACS_INT_MAX): New macro.
This directory predates autoconf and is no longer needed nowadays.
Move its few remaining bits of functionality to where they're needed.
* src/m/README, src/m/alpha.h, src/m/amdx86-64.h, src/m/ia64.h, src/m/ibmrs6000.h:
* src/m/ibms390x.h, src/m/intel386.h, src/m/m68k.h, src/m/macppc.h:
* src/m/sparc.h, src/m/template.h: Remove.
* src/Makefile.in (M_FILE): Remove. All uses removed.
* src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS):
* src/lisp.h (USE_LSB_TAG):
* src/mem-limits.h (EXCEEDS_LISP_PTR):
Use VAL_MAX, not VALBITS, in #if.
* src/lisp.h (EMACS_INT_MAX): New macro, useful in #if.
(EMACS_UINT): Define unconditionally now.
(BITS_PER_CHAR, BITS_PER_SHORT, BITS_PER_INT, BITS_PER_LONG)
(BITS_PER_EMACS_INT): New constants, replacing
what used to be in config.h, but not useful in #if.
(GCTYPEBITS, VALBITS): Define unconditionally, since m/* files don't
define them any more.
(VAL_MAX): New macro.
(VALMASK): Use it.
* src/puresize.h (PURESIZE_RATIO): Use EMACS_INT_MAX, not
BITS_PER_EMACS_INT, in #if.
* src/s/aix4-2.h (BROKEN_FIONREAD, BROKEN_SIGAIO, BROKEN_SIGPTY)
(BROKEN_SIGPOLL): Move here from m/ibmrs6000.h, which was removed.
* src/s/gnu-linux.h (ULIMIT_BREAK_VALUE) [__i386__]:
* src/s/ms-w32.h (DATA_START):
Move here from removed file m/intel386.h.
* src/s/gnu.h (NLIST_STRUCT): Remove undef; 'configure' does this.
* src/s/irix6-5.h (_LP64): Remove; lisp.h no longer needs this.
msdos/sedleim.inp (RUN_EMACS): Replace BUILT_EMACS with EMACS.
Remove stale editing of "else make quail".
(.PHONY, compile-targets): Remove targets.
(compile-main): Edit into something that can be done without
requiring a Unixy shell.
(bootstrap-clean): Likewise: edit to not require $(setwins).
msdos/sed1v2.inp: Edit "cd $(leimdir) && $(MAKE) ..." into the
equivalent "$(MAKE) $(MFLAGS) -C $(leimdir) ..." command.
This is the only thing left that uses it.
* configure.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.
* src/Makefile.in (GNUSTEP_CFLAGS): Rename from C_SWITCH_X_SYSTEM.
* lwlib/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.
* oldXMenu/Makefile.in (C_SWITCH_X_SYSTEM): Remove.
(ALL_CFLAGS): Remove C_SWITCH_X_SYSTEM.
* msdos/sedlibmk.inp, msdos/sed1v2.inp:
GNUSTEP_CFLAGS replaces C_SWITCH_X_SYSTEM.
* README, configure.in (AC_INIT): Bump version to 24.1.50.
* doc/emacs/emacsver.texi (EMACSVER): Bump version to 24.1.50.
* doc/man/emacs.1: Bump version to 24.1.50.
* msdos/sed2v2.inp: Bump version to 24.1.50.
* nextstep/Cocoa/Emacs.base/Contents/Info.plist:
* nextstep/Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings:
* nextstep/GNUstep/Emacs.base/Resources/Info-gnustep.plist:
* nextstep/GNUstep/Emacs.base/Resources/Emacs.desktop:
Bump version to 24.1.50.
* nt/config.nt, nt/makefile.w32-in, nt/emacs.rc, nt/emacsclient.rc:
Bump version to 24.1.50.
make-dist (tempdir): Create `autogen'.
(msdos): Add depfiles.bat and inttypes.h.
(autogen): Put README, config.in, and Makefile.in ionto the
distribution, they are needed for the MS-DOS build.
msdos/sed3v2.inp (insrcdir): Comment out definition.
$(insrcdir): Edit into MS-DOS existence test.
msdos/mainmake.v2 (boot): Condition the value on the existence of
autogen/README, not admin/admin.el, since the latter is now part
of the release tarball.
(install): Don't copy lib-src/fns.el, as that file is no longer
generated in that directory.
msdos/sed1v2.inp (LIB_PTHREAD, LIB_PTHREAD_SIGMASK): Edit to empty.
(SETTINGS_CFLAGS, SETTINGS_LIBS): Edit these instead of
GCONF_CFLAGS and GCONF_LIBS.
msdos/sedlibmk.inp (ALLOCA_H, AR, ARFLAGS, GNULIB_CHDIR, GNULIB_DUP)
(GNULIB_FDATASYNC, GNULIB_FDOPEN, GNULIB_FSTAT, GNULIB_PCLOSE)
(GNULIB_PTHREAD_SIGMASK, GNULIB_RAISE, GNULIB_SIGACTION)
(GNULIB_SIGPROCMASK, GNULIB_SIGNAL_H_SIGPIPE, HAVE_FDATASYNC)
(HAVE_PCLOSE, HAVE_POPEN, HAVE_POSIX_SIGNALBLOCKING)
(HAVE_PTHREAD_SIGMASK, HAVE_RAISE, HAVE_SIGACTION)
(HAVE_SIGHANDLER_T, HAVE_SIGINFO_T, HAVE_SIGSET_T)
(HAVE_STRUCT_SIGACTION_SA_SIGACTION)
(HAVE_TYPE_VOLATILE_SIG_ATOMIC_T, LIB_PTHREAD)
(LIB_PTHREAD_SIGMASK, NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H)
(NEXT_SIGNAL_H, REPLACE_FDOPEN, REPLACE_PTHREAD_SIGMASK)
(REPLACE_RAISE): New edits.
(gl_LIBOBJS): Remove md5.o, filemode.o, and sha1.o. Add
pthread_sigmask.o.
(@GL_GENERATE_ALLOCA_H_TRUE@, @GL_GENERATE_ALLOCA_H_FALSE@): Edit
to comment out unneeded lines.
(warn-on-use.h): Edit the recipe commands to work with DJGPP
without requiring a Unixy shell.
msdos/inttypes.h (strtoimax) [DJGPP < 2.04]: New macro.
msdos/sed2v2.inp (HAVE_ALLOCA, HAVE_DECL_STRTOLL, HAVE_DECL_STRTOIMAX)
(HAVE_STRTOLL, HAVE_SIGSET_T, HAVE_SNPRINTF): New edits.
.bzrignore: Add ./GNUMakefile.unix.
config.bat: Rename GNUMakefile, so it is not run on MS-DOS.
Rename signal.in.h and alloca.in.h.
src/sysdep.c (snprintf) [EOVERFLOW]: If EOVERFLOW is not defined,
use EDOM.