Remove src/m/*.

* 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.
This commit is contained in:
Paul Eggert 2012-05-22 09:20:27 -07:00
parent a86e87a6ae
commit 3437465030
35 changed files with 159 additions and 591 deletions

View file

@ -1,3 +1,15 @@
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
Remove src/m/*.
* 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.
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
* Makefile.in (ACLOCAL_INPUTS): Fix up gnulib-comp.m4 name. (Bug#11529)

View file

@ -63,16 +63,11 @@ USER_FULL_NAME If defined, overrides the default pw->pw_gecos for getting at t
** Replace, the definition is trivial: SWITCH_ENUM_CAST
** Defines from src/m/*.h and src/s/*.h. Some of these might not be used in the code anymore, so they can be removed. The HAVE_* definitions are probably handled by autoconf, so it might be possible to just remove them from src/[sm]/*.h.
** Defines from src/s/*.h. Some of these might not be used in the code anymore, so they can be removed. The HAVE_* definitions are probably handled by autoconf, so it might be possible to just remove them from src/s/*.h.
AIX
AMPERSAND_FULL_NAME
BITS_PER_EMACS_INT
BITS_PER_LONG
BITS_PER_CHAR
BITS_PER_SHORT
BITS_PER_INT
BROKEN_DATAGRAM_SOCKETS
BROKEN_FIONREAD
BROKEN_GET_CURRENT_DIR_NAME

View file

@ -1,3 +1,11 @@
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
Remove src/m/*.
* 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.
* MAINTAINERS: Remove src/m/.
2012-05-21 Paul Eggert <eggert@cs.ucla.edu>
Use full name for m4/gnulib-comp.m4. (Bug#11529)

View file

@ -171,7 +171,6 @@ src/insdel.c
src/image.c
src/lastfile.c
src/lread.c
src/m/
src/macros.c
src/makefile.w32-in
src/marker.c
@ -220,4 +219,3 @@ src/xmenu.c
src/xrdb.c
src/xselect.c
src/xterm.c

View file

@ -375,8 +375,8 @@ case "${srcdir}" in
* ) srcdir="`(cd ${srcdir}; pwd)`" ;;
esac
#### Given the configuration name, set machfile and opsysfile to the
#### names of the m/*.h and s/*.h files we should use.
#### Given the configuration name, set opsysfile to the
#### name of s/*.h file we should use.
### Canonicalize the configuration name.
@ -396,13 +396,11 @@ dnl quotation begins
### If you add support for a new configuration, add code to this
### switch statement to recognize your configuration name and select
### the appropriate operating system and machine description files.
### the appropriate operating system file.
### You would hope that you could choose an m/*.h file pretty much
### based on the machine portion of the configuration name, and an s/*.h
### You would hope that you could choose an s/*.h
### file based on the operating system portion. However, it turns out
### that each m/*.h file is pretty manufacturer-specific - for
### example mips.h is MIPS
### that each s/*.h file is pretty manufacturer-specific.
### So we basically have to have a special case for each
### configuration name.
###
@ -412,82 +410,40 @@ dnl quotation begins
### prepared to handle anything reasonably. If version numbers
### matter, be sure /etc/MACHINES says something about it.
machine='' opsys='' unported=no
opsys='' unported=no
case "${canonical}" in
## GNU/Linux and similar ports
*-*-linux* )
opsys=gnu-linux
case ${canonical} in
alpha*) machine=alpha ;;
s390x-*) machine=ibms390x ;;
powerpc*) machine=macppc ;;
sparc*) machine=sparc ;;
ia64*) machine=ia64 ;;
m68k*) machine=m68k ;;
x86_64*) machine=amdx86-64 ;;
esac
;;
## FreeBSD ports
*-*-freebsd* )
opsys=freebsd
case "${canonical}" in
alpha*) machine=alpha ;;
amd64-*|x86_64-*) machine=amdx86-64 ;;
ia64-*) machine=ia64 ;;
i[3456]86-*) machine=intel386 ;;
powerpc-*) machine=macppc ;;
sparc-*) machine=sparc ;;
sparc64-*) machine=sparc ;;
esac
;;
## FreeBSD kernel + glibc based userland
*-*-kfreebsd*gnu* )
opsys=gnu-kfreebsd
case "${canonical}" in
alpha*) machine=alpha ;;
amd64-*|x86_64-*) machine=amdx86-64 ;;
ia64-*) machine=ia64 ;;
i[3456]86-*) machine=intel386 ;;
powerpc-*) machine=macppc ;;
sparc-*) machine=sparc ;;
sparc64-*) machine=sparc ;;
esac
;;
## NetBSD ports
*-*-netbsd* )
opsys=netbsd
case "${canonical}" in
alpha*) machine=alpha ;;
x86_64-*) machine=amdx86-64 ;;
i[3456]86-*) machine=intel386 ;;
m68k-*) machine=m68k ;;
powerpc-*) machine=macppc ;;
sparc*-) machine=sparc ;;
esac
;;
## OpenBSD ports
*-*-openbsd* )
opsys=openbsd
case "${canonical}" in
alpha*) machine=alpha ;;
x86_64-*) machine=amdx86-64 ;;
i386-*) machine=intel386 ;;
powerpc-*) machine=macppc ;;
sparc*) machine=sparc ;;
esac
;;
## Apple Darwin / Mac OS X
*-apple-darwin* )
case "${canonical}" in
i[3456]86-* ) machine=intel386 ;;
powerpc-* ) machine=macppc ;;
x86_64-* ) machine=amdx86-64 ;;
i[3456]86-* ) ;;
powerpc-* ) ;;
x86_64-* ) ;;
* ) unported=yes ;;
esac
opsys=darwin
@ -510,16 +466,16 @@ case "${canonical}" in
## IBM machines
rs6000-ibm-aix4.[23]* )
machine=ibmrs6000 opsys=aix4-2
opsys=aix4-2
;;
powerpc-ibm-aix4.[23]* )
machine=ibmrs6000 opsys=aix4-2
opsys=aix4-2
;;
rs6000-ibm-aix[56]* )
machine=ibmrs6000 opsys=aix4-2
opsys=aix4-2
;;
powerpc-ibm-aix[56]* )
machine=ibmrs6000 opsys=aix4-2
opsys=aix4-2
;;
## Silicon Graphics machines
@ -537,9 +493,9 @@ case "${canonical}" in
| i[3456]86-*-solaris2* | i[3456]86-*-sunos5* \
| x86_64-*-solaris2* | x86_64-*-sunos5*)
case "${canonical}" in
i[3456]86-*-* ) machine=intel386 ;;
amd64-*-*|x86_64-*-*) machine=amdx86-64 ;;
sparc* ) machine=sparc ;;
i[3456]86-*-* ) ;;
amd64-*-*|x86_64-*-*) ;;
sparc* ) ;;
* ) unported=yes ;;
esac
case "${canonical}" in
@ -571,7 +527,6 @@ case "${canonical}" in
## Intel 386 machines where we don't care about the manufacturer.
i[3456]86-*-* )
machine=intel386
case "${canonical}" in
*-cygwin ) opsys=cygwin ;;
*-darwin* ) opsys=darwin ;;
@ -610,11 +565,6 @@ if test $unported = yes; then
Check `etc/MACHINES' for recognized configuration names.])
fi
if test -n "$machine"; then
machfile="m/${machine}.h"
else
machfile=
fi
opsysfile="s/${opsys}.h"
@ -758,19 +708,6 @@ dnl if test "x$RANLIB" = x; then
dnl AC_PROG_RANLIB
dnl fi
## Although we're running on an amd64 kernel, we're actually compiling for
## the x86 architecture. The user should probably have provided an
## explicit --build to `configure', but if everything else than the kernel
## is running in i386 mode, we can help them out.
if test "$machine" = "amdx86-64"; then
AC_CHECK_DECL([i386])
if test "$ac_cv_have_decl_i386" = "yes"; then
canonical=`echo "$canonical" | sed -e 's/^amd64/i386/' -e 's/^x86_64/i386/'`
machine=intel386
machfile="m/${machine}.h"
fi
fi
AC_PATH_PROG(INSTALL_INFO, install-info)
AC_PATH_PROG(INSTALL_INFO, install-info,, /usr/sbin)
AC_PATH_PROG(INSTALL_INFO, install-info,:, /sbin)
@ -941,7 +878,8 @@ esac
C_SWITCH_MACHINE=
if test "$machine" = "alpha"; then
case $canonical in
alpha*)
AC_CHECK_DECL([__ELF__])
if test "$ac_cv_have_decl___ELF__" = "yes"; then
## With ELF, make sure that all common symbols get allocated to in the
@ -957,7 +895,8 @@ if test "$machine" = "alpha"; then
else
UNEXEC_OBJ=unexalpha.o
fi
fi
;;
esac
AC_SUBST(C_SWITCH_MACHINE)
AC_SUBST(UNEXEC_OBJ)
@ -1642,7 +1581,7 @@ case ${HAVE_X11} in
yes ) HAVE_MENUS=yes ;;
esac
# Do the opsystem or machine files prohibit the use of the GNU malloc?
# Does the opsystem file prohibit the use of the GNU malloc?
# Assume not, until told otherwise.
GNU_MALLOC=yes
@ -3219,13 +3158,7 @@ AC_SUBST(GNUSTEP_CFLAGS)
AC_SUBST(CFLAGS)
## Used in lwlib/Makefile.in.
AC_SUBST(X_TOOLKIT_TYPE)
if test -n "${machfile}"; then
M_FILE="\$(srcdir)/${machfile}"
else
M_FILE=
fi
S_FILE="\$(srcdir)/${opsysfile}"
AC_SUBST(M_FILE)
AC_SUBST(S_FILE)
AC_SUBST(ns_appdir)
AC_SUBST(ns_appbindir)
@ -3238,10 +3171,6 @@ AC_DEFINE_UNQUOTED(EMACS_CONFIGURATION, "${canonical}",
[Define to the canonical Emacs configuration name.])
AC_DEFINE_UNQUOTED(EMACS_CONFIG_OPTIONS, "${ac_configure_args}",
[Define to the options passed to configure.])
if test -n "$machfile"; then
AC_DEFINE_UNQUOTED(config_machfile, "${machfile}",
[Define to the used machine dependent file.])
fi
AC_DEFINE_UNQUOTED(config_opsysfile, "${opsysfile}",
[Define to the used os dependent file.])
@ -3420,8 +3349,7 @@ case "$opsys" in
## #ifndef LD_SWITCH_SYSTEM
## #if !defined (__GNUC__) && ((defined (BSD_SYSTEM) && !defined (COFF)))
## Since all the *bsds define LD_SWITCH_SYSTEM, this simplifies to:
## not using gcc, darwin system not on an alpha (ie darwin, since
## darwin + alpha does not occur).
## not using gcc, darwin.
## Because this was done in src/Makefile.in, the resulting part of
## LD_SWITCH_SYSTEM was not used in configure (ie, in ac_link).
## It therefore seems cleaner to put this in LD_SWITCH_SYSTEM_TEMACS,
@ -3461,12 +3389,12 @@ case "$opsys" in
## will also work on earlier NetBSD releases.
netbsd|openbsd) LD_FIRSTFLAG="-nostartfiles" ;;
## macpcc: NAKAJI Hiroyuki <nakaji@tutrp.tut.ac.jp> says
## powerpc*: NAKAJI Hiroyuki <nakaji@tutrp.tut.ac.jp> says
## MkLinux/LinuxPPC needs this.
## ibms390x only supports opsys = gnu-linux so it can be added here.
## s390x-* only supports opsys = gnu-linux so it can be added here.
gnu-*)
case "$machine" in
macppc|ibms390x) LD_FIRSTFLAG="-nostdlib" ;;
case "$canonical" in
powerpc*|s390x-*) LD_FIRSTFLAG="-nostdlib" ;;
esac
;;
esac
@ -3478,7 +3406,7 @@ if test "x$ORDINARY_LINK" = "xyes"; then
AC_DEFINE(ORDINARY_LINK, 1, [Define if the C compiler is the linker.])
## The system files defining neither ORDINARY_LINK nor LD_FIRSTFLAG are:
## freebsd, gnu-* not on macppc|ibms390x.
## freebsd, gnu-* not on powerpc*|s390x*.
elif test "x$GCC" = "xyes" && test "x$LD_FIRSTFLAG" = "x"; then
## Versions of GCC >= 2.0 put their library, libgcc.a, in obscure
@ -3586,11 +3514,8 @@ AH_BOTTOM([
#define subprocesses
/* Include the os and machine dependent files. */
/* Include the os dependent file. */
#include config_opsysfile
#ifdef config_machfile
# include config_machfile
#endif
/* GNUstep needs a bit more pure memory. Of the existing knobs,
SYSTEM_PURESIZE_EXTRA seems like the least likely to cause problems.
@ -3614,34 +3539,6 @@ AH_BOTTOM([
#endif
#endif
/* These default definitions are good for almost all machines.
Any exceptions should override them in m/MACHINE.h.
They must be usable in preprocessor conditionals. */
#ifndef BITS_PER_CHAR
#define BITS_PER_CHAR 8
#endif
#ifndef BITS_PER_SHORT
#define BITS_PER_SHORT 16
#endif
#ifndef BITS_PER_INT
#define BITS_PER_INT 32
#endif
#ifndef BITS_PER_LONG
#ifdef _LP64
#define BITS_PER_LONG 64
#else
#define BITS_PER_LONG 32
#endif
#endif
#if !defined BITS_PER_LONG_LONG && HAVE_LONG_LONG_INT
#define BITS_PER_LONG_LONG 64
#endif
#include <string.h>
#include <stdlib.h>
@ -3709,17 +3606,12 @@ if test "${HAVE_GTK}" = "yes"; then
USE_X_TOOLKIT=GTK
fi
and_machfile=
if test -n "$machfile"; then
and_machfile=" and \`${machfile}'"
fi
echo "
Configured for \`${canonical}'.
Where should the build process find the source code? ${srcdir}
What operating system and machine description files should Emacs use?
\`${opsysfile}'${and_machfile}
What operating system file should Emacs use?
\`${opsysfile}'
What compiler should emacs be built with? ${CC} ${CFLAGS}
Should Emacs use the GNU version of malloc? ${GNU_MALLOC}${GNU_MALLOC_reason}
Should Emacs use a relocating allocator for buffers? ${REL_ALLOC}

View file

@ -1,3 +1,9 @@
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
Remove src/m/*.
* makefile.w32-in: Remove dependencies on
$(EMACS_ROOT)/src/m/intel386.h.
2012-05-22 Glenn Morris <rgm@gnu.org>
* Makefile.in (install): Remove unneeded chmods.

View file

@ -354,7 +354,6 @@ SRC = .
$(BLD)/alloca.$(O) : \
$(SRC)/alloca.c \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h \
$(EMACS_ROOT)/src/blockinput.h
@ -363,7 +362,6 @@ $(BLD)/ctags.$(O) : \
$(EMACS_ROOT)/nt/inc/sys/param.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/lib-src/../src/config.h \
$(SRC)/ntlib.h \
$(EMACS_ROOT)/lib/getopt.h
@ -372,14 +370,12 @@ $(BLD)/ebrowse.$(O) : \
$(SRC)/ebrowse.c \
$(EMACS_ROOT)/lib/min-max.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/lib-src/../src/config.h
$(BLD)/emacsclient.$(O) : \
$(SRC)/emacsclient.c \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/lib-src/../src/config.h
$(BLD)/etags.$(O) : \
@ -387,7 +383,6 @@ $(BLD)/etags.$(O) : \
$(EMACS_ROOT)/nt/inc/sys/param.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/lib-src/../src/config.h \
$(SRC)/ntlib.h \
$(EMACS_ROOT)/lib/getopt.h
@ -395,7 +390,6 @@ $(BLD)/etags.$(O) : \
$(BLD)/getdate.$(O) : \
$(SRC)/getdate.c \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h \
$(MSTOOLS_SYS)/types.h
@ -415,7 +409,6 @@ $(BLD)/make-path.$(O) : \
$(BLD)/movemail.$(O) : \
$(SRC)/movemail.c \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/lib-src/../src/config.h \
$(EMACS_ROOT)/nt/inc/sys/file.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
@ -439,7 +432,6 @@ $(BLD)/pop.$(O) : \
$(BLD)/profile.$(O) : \
$(SRC)/profile.c \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/lib-src/../src/config.h \
$(EMACS_ROOT)/lib-src/../src/systime.h
@ -455,7 +447,6 @@ $(BLD)/test-distrib.$(O) : \
$(BLD)/timer.$(O) : \
$(SRC)/timer.c \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/lib-src/../src/config.h
# The following dependencies are for supporting parallel builds, where

View file

@ -67,7 +67,6 @@ $(BLD)/dtoastr.$(O) : \
$(SRC)/intprops.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/getopt.$(O) : \
@ -78,7 +77,6 @@ $(BLD)/getopt.$(O) : \
$(EMACS_ROOT)/nt/inc/unistd.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/getopt1.$(O) : \
@ -87,7 +85,6 @@ $(BLD)/getopt1.$(O) : \
$(SRC)/getopt_int.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/strftime.$(O) : \
@ -96,14 +93,12 @@ $(BLD)/strftime.$(O) : \
$(EMACS_ROOT)/nt/inc/stdbool.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/time_r.$(O) : \
$(SRC)/time_r.c \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/md5.$(O) : \
@ -112,7 +107,6 @@ $(BLD)/md5.$(O) : \
$(EMACS_ROOT)/nt/inc/stdint.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/sha1.$(O) : \
@ -121,7 +115,6 @@ $(BLD)/sha1.$(O) : \
$(EMACS_ROOT)/nt/inc/stdint.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/sha256.$(O) : \
@ -130,7 +123,6 @@ $(BLD)/sha256.$(O) : \
$(EMACS_ROOT)/nt/inc/stdint.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/sha512.$(O) : \
@ -139,7 +131,6 @@ $(BLD)/sha512.$(O) : \
$(EMACS_ROOT)/nt/inc/stdint.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
$(BLD)/filemode.$(O) : \
@ -147,7 +138,6 @@ $(BLD)/filemode.$(O) : \
$(SRC)/filemode.h \
$(EMACS_ROOT)/nt/inc/sys/stat.h \
$(EMACS_ROOT)/src/s/ms-w32.h \
$(EMACS_ROOT)/src/m/intel386.h \
$(EMACS_ROOT)/src/config.h
# The following dependencies are for supporting parallel builds, where

View file

@ -293,7 +293,7 @@ for subdir in site-lisp \
leim leim/CXTERM-DIC leim/MISC-DIC \
leim/SKK-DIC leim/ja-dic leim/quail \
build-aux build-aux/snippet \
src src/m src/s src/bitmaps lib lib-src oldXMenu lwlib \
src src/s src/bitmaps lib lib-src oldXMenu lwlib \
nt nt/inc nt/inc/sys nt/inc/arpa nt/inc/netinet nt/icons \
`find etc lisp admin -type d` \
doc doc/emacs doc/misc doc/man doc/lispref doc/lispintro \
@ -370,10 +370,6 @@ echo "Making links to \`src/bitmaps'"
(cd src/bitmaps
ln README *.xbm ../../${tempdir}/src/bitmaps)
echo "Making links to \`src/m'"
(cd src/m
ln README [a-zA-Z0-9]*.h ../../${tempdir}/src/m)
echo "Making links to \`src/s'"
(cd src/s
ln README [a-zA-Z0-9]*.h ../../${tempdir}/src/s)

View file

@ -1,3 +1,8 @@
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
Remove src/m/*.
* mainmake.v2 (TAGS tags): Don't look at $(CURDIR)/src/m/intel386.h.
2012-05-19 Paul Eggert <eggert@cs.ucla.edu>
* sed2v2.inp (HAVE_MBLEN): Remove.

View file

@ -162,7 +162,7 @@ TAGS tags: lib-src FRC
../bin/etags --include=../lisp/TAGS \
--regex='/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \
$(CURDIR)/src/*.c $(CURDIR)/src/*.h \
$(CURDIR)/src/s/msdos.h $(CURDIR)/src/m/intel386.h
$(CURDIR)/src/s/msdos.h
cd ..
./bin/etags --include=src/TAGS
@ -299,4 +299,3 @@ bootstrap-clean: FRC
bootstrap: bootstrap-clean FRC
command.com /e:2048 /c config msdos
$(MAKE) $(MFLAGS) info all

View file

@ -1,3 +1,11 @@
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
Remove src/m/*.
* 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.
2012-05-19 Paul Eggert <eggert@cs.ucla.edu>
* config.nt (HAVE_GETDOMAINNAME, HAVE_XSETWMPROTOCOLS)

View file

@ -421,17 +421,6 @@ typedef unsigned short mode_t;
#undef config_opsysfile
#include "s/ms-w32.h"
/* The configuration script defines machfile to be the name of the
m/MACHINE.h file that describes the machine you are using. The file is
chosen based on the configuration name you give.
See the file ../etc/MACHINES for a list of machines and the
configuration names to use for them.
See m/template.h for documentation on writing m/MACHINE.h files. */
#undef config_machfile
#include "m/intel386.h"
/* Define `subprocesses' should be defined if you want to
have code for asynchronous subprocesses
(as used in M-x compile and M-x shell).
@ -465,28 +454,6 @@ extern char *getenv ();
#endif /* EMACS_CONFIG_H */
/* These default definitions are good for almost all machines.
The exceptions override them in m/MACHINE.h. */
#ifndef BITS_PER_CHAR
#define BITS_PER_CHAR 8
#endif
#ifndef BITS_PER_SHORT
#define BITS_PER_SHORT 16
#endif
/* Note that lisp.h uses this in a preprocessor conditional, so it
would not work to use sizeof. That being so, we do all of them
without sizeof, for uniformity's sake. */
#ifndef BITS_PER_INT
#define BITS_PER_INT 32
#endif
#ifndef BITS_PER_LONG
#define BITS_PER_LONG 32
#endif
#if defined (__MINGW32__) || _MSC_VER >= 1400
/* Define to 1 if the system has the type `long long int'. */
@ -505,7 +472,7 @@ extern char *getenv ();
/* Use pre-C99-style 64-bit integers. */
# define EMACS_INT __int64
# define BITS_PER_EMACS_INT 64
# define EMACS_INT_MAX _I64_MAX
# define pI "I64"
# endif

View file

@ -1,3 +1,35 @@
2012-05-22 Paul Eggert <eggert@cs.ucla.edu>
Remove src/m/*.
This directory predates autoconf and is no longer needed nowadays.
Move its few remaining bits of functionality to where they're needed.
* m/README, m/alpha.h, m/amdx86-64.h, m/ia64.h, m/ibmrs6000.h:
* m/ibms390x.h, m/intel386.h, m/m68k.h, m/macppc.h, m/sparc.h:
* m/template.h: Remove.
* Makefile.in (M_FILE): Remove. All uses removed.
* alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS):
* lisp.h (USE_LSB_TAG):
* mem-limits.h (EXCEEDS_LISP_PTR):
Use VAL_MAX, not VALBITS, in #if.
* 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.
* puresize.h (PURESIZE_RATIO): Use EMACS_INT_MAX, not
BITS_PER_EMACS_INT, in #if.
* s/aix4-2.h (BROKEN_FIONREAD, BROKEN_SIGAIO, BROKEN_SIGPTY)
(BROKEN_SIGPOLL): Move here from m/ibmrs6000.h, which was removed.
* s/gnu-linux.h (ULIMIT_BREAK_VALUE) [__i386__]:
* s/ms-w32.h (DATA_START):
Move here from removed file m/intel386.h.
* s/gnu.h (NLIST_STRUCT): Remove undef; 'configure' does this.
* s/irix6-5.h (_LP64): Remove; lisp.h no longer needs this.
2012-05-21 Paul Eggert <eggert@cs.ucla.edu>
Assume C89 or later.

View file

@ -56,9 +56,8 @@ lwlibdir = ../lwlib
lispdir = ../lisp
# Configuration files for .o files to depend on.
M_FILE = @M_FILE@
S_FILE = @S_FILE@
config_h = config.h $(M_FILE) $(S_FILE)
config_h = config.h $(S_FILE)
bootstrap_exe = $(abs_builddir)/bootstrap-emacs$(EXEEXT)
@ -534,10 +533,10 @@ extraclean: distclean
ctagsfiles1 = [xyzXYZ]*.[hcm]
ctagsfiles2 = [a-wA-W]*.[hcm]
TAGS: $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(M_FILE) $(S_FILE)
TAGS: $(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(S_FILE)
../lib-src/etags --include=TAGS-LISP --include=$(lwlibdir)/TAGS \
--regex='/[ ]*DEFVAR_[A-Z_ (]+"\([^"]+\)"/' \
$(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(M_FILE) $(S_FILE)
$(srcdir)/$(ctagsfiles1) $(srcdir)/$(ctagsfiles2) $(S_FILE)
frc:
TAGS-LISP: frc
$(MAKE) -f $(lispdir)/Makefile TAGS-LISP ETAGS=../lib-src/etags

View file

@ -4297,8 +4297,8 @@ mark_maybe_pointer (void *p)
wider than a pointer might allocate a Lisp_Object in non-adjacent halves.
If USE_LSB_TAG, the bottom half is not a valid pointer, but it should
suffice to widen it to to a Lisp_Object and check it that way. */
#if defined USE_LSB_TAG || UINTPTR_MAX >> VALBITS != 0
# if !defined USE_LSB_TAG && UINTPTR_MAX >> VALBITS >> GCTYPEBITS != 0
#if defined USE_LSB_TAG || VAL_MAX < UINTPTR_MAX
# if !defined USE_LSB_TAG && VAL_MAX < UINTPTR_MAX >> GCTYPEBITS
/* If tag bits straddle pointer-word boundaries, neither mark_maybe_pointer
nor mark_maybe_object can follow the pointers. This should not occur on
any practical porting target. */

View file

@ -41,25 +41,36 @@ extern void check_cons_list (void);
Build with CFLAGS='-DWIDE_EMACS_INT' to try them out. */
/* #undef WIDE_EMACS_INT */
/* These are default choices for the types to use. */
/* EMACS_INT - signed integer wide enough to hold an Emacs value
EMACS_INT_MAX - maximum value of EMACS_INT; can be used in #if
pI - printf length modifier for EMACS_INT
EMACS_UINT - unsigned variant of EMACS_INT */
#ifndef EMACS_INT
# if BITS_PER_LONG < BITS_PER_LONG_LONG && defined WIDE_EMACS_INT
# if LONG_MAX < LLONG_MAX && defined WIDE_EMACS_INT
# define EMACS_INT long long
# define BITS_PER_EMACS_INT BITS_PER_LONG_LONG
# define EMACS_INT_MAX LLONG_MAX
# define pI "ll"
# elif BITS_PER_INT < BITS_PER_LONG
# elif INT_MAX < LONG_MAX
# define EMACS_INT long
# define BITS_PER_EMACS_INT BITS_PER_LONG
# define EMACS_INT_MAX LONG_MAX
# define pI "l"
# else
# define EMACS_INT int
# define BITS_PER_EMACS_INT BITS_PER_INT
# define EMACS_INT_MAX INT_MAX
# define pI ""
# endif
#endif
#ifndef EMACS_UINT
# define EMACS_UINT unsigned EMACS_INT
#endif
#define EMACS_UINT unsigned EMACS_INT
/* Number of bits in some machine integer types. */
enum
{
BITS_PER_CHAR = CHAR_BIT,
BITS_PER_SHORT = CHAR_BIT * sizeof (short),
BITS_PER_INT = CHAR_BIT * sizeof (int),
BITS_PER_LONG = CHAR_BIT * sizeof (long int),
BITS_PER_EMACS_INT = CHAR_BIT * sizeof (EMACS_INT)
};
/* printmax_t and uprintmax_t are types for printing large integers.
These are the widest integers that are supported for printing.
@ -164,13 +175,13 @@ extern int suppress_checking EXTERNALLY_VISIBLE;
variable VAR of type TYPE with the added requirement that it be
TYPEBITS-aligned. */
#ifndef GCTYPEBITS
#define GCTYPEBITS 3
#endif
#ifndef VALBITS
#define VALBITS (BITS_PER_EMACS_INT - GCTYPEBITS)
#endif
/* The maximum value that can be stored in a EMACS_INT, assuming all
bits other than the type bits contribute to a nonnegative signed value.
This can be used in #if, e.g., '#if VAL_MAX < UINTPTR_MAX' below. */
#define VAL_MAX (EMACS_INT_MAX >> (GCTYPEBITS - 1))
#ifndef NO_DECL_ALIGN
# ifndef DECL_ALIGN
@ -195,12 +206,12 @@ extern int suppress_checking EXTERNALLY_VISIBLE;
|| defined DARWIN_OS || defined __sun)
/* We also need to be able to specify mult-of-8 alignment on static vars. */
# if defined DECL_ALIGN
/* On hosts where VALBITS is greater than the pointer width in bits,
/* On hosts where pointers-as-ints do not exceed VAL_MAX,
USE_LSB_TAG is:
a. unnecessary, because the top bits of an EMACS_INT are unused, and
b. slower, because it typically requires extra masking.
So, define USE_LSB_TAG only on hosts where it might be useful. */
# if UINTPTR_MAX >> VALBITS != 0
# if VAL_MAX < UINTPTR_MAX
# define USE_LSB_TAG
# endif
# endif
@ -479,7 +490,7 @@ enum pvec_type
#else /* not USE_LSB_TAG */
#define VALMASK ((((EMACS_INT) 1) << VALBITS) - 1)
#define VALMASK VAL_MAX
/* One need to override this if there must be high bits set in data space
(doing the result of the below & ((1 << (GCTYPE + 1)) - 1) would work

View file

@ -1,7 +0,0 @@
This directory contains C header files containing machine-specific
definitions. Each file describes a particular machine. The emacs
configuration script edits ../config.h to include the appropriate one of
these files, and then each emacs source file includes config.h.
template.h is a generic template for machine descriptions; it
describes the parameters a machine file can specify.

View file

@ -1,53 +0,0 @@
/* Machine description file for the alpha chip.
Copyright (C) 1994, 1997, 1999, 2001-2012 Free Software Foundation, Inc.
Author: Rainer Schoepf
(according to authors.el)
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifndef _LP64
#define _LP64 /* This doesn't appear to be necessary on OSF 4/5 -- fx. */
#endif
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically. */
/* __alpha defined automatically */
#ifdef __ELF__
#if !defined (GNU_LINUX) && !defined (__NetBSD__)
#define DATA_START 0x140000000
#endif
#else /* not __ELF__ */
/* Describe layout of the address space in an executing process. */
#define DATA_START 0x140000000
#endif /* __ELF__ */
/* On the Alpha it's best to avoid including TERMIO since struct
termio and struct termios are mutually incompatible. */
#define NO_TERMIO
/* Many Alpha implementations (e.g. gas 2.8) can't handle DBL_MIN:
they generate code that uses a signaling NaN instead of DBL_MIN.
Define DBL_MIN_REPLACEMENT to be the next value larger than DBL_MIN:
this avoids the assembler bug. */
#define DBL_MIN_REPLACEMENT 2.2250738585072019e-308

View file

@ -1,35 +0,0 @@
/* machine description file for AMD x86-64.
Copyright (C) 2002-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define BITS_PER_LONG 64
#define BITS_PER_EMACS_INT 64
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically:
Ones defined so far include vax, m68000, ns16000, pyramid,
orion, tahoe, APOLLO and many others */
/* __x86_64 defined automatically. */
/* Define the type to use. */
#define EMACS_INT long
#define pI "l"
#define EMACS_UINT unsigned long
/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
#undef DATA_SEG_BITS

View file

@ -1,32 +0,0 @@
/* machine description file for the IA-64 architecture.
Copyright (C) 2000-2012 Free Software Foundation, Inc.
Contributed by David Mosberger <davidm@hpl.hp.com>
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define BITS_PER_LONG 64
#define BITS_PER_EMACS_INT 64
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically. */
/* __ia64__ defined automatically */
/* Define the type to use. */
#define EMACS_INT long
#define pI "l"
#define EMACS_UINT unsigned long

View file

@ -1,46 +0,0 @@
/* R2 AIX machine/system dependent defines
Copyright (C) 1988, 2001-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* The data segment in this machine always starts at address 0x20000000.
An address of data cannot be stored correctly in a Lisp object;
we always lose the high bits. We must tell XPNTR to add them back. */
#define DATA_START 0x20000000
#define DATA_SEG_BITS 0x20000000
#ifndef NLIST_STRUCT
/* AIX supposedly doesn't use this interface, but on the RS/6000
it apparently does. */
#define NLIST_STRUCT
#endif
#undef ADDR_CORRECT
#define ADDR_CORRECT(x) ((int)(x))
/*** BUILD 9008 - FIONREAD problem still exists in X-Windows. ***/
#define BROKEN_FIONREAD
/* As we define BROKEN_FIONREAD, SIGIO will be undefined in systty.h.
But, on AIX, SIGAIO, SIGPTY, and SIGPOLL are defined as SIGIO,
which causes compilation error at init_signals in sysdep.c. So, we
define these macros so that syssignal.h detects them and undefine
SIGAIO, SIGPTY and SIGPOLL. */
#define BROKEN_SIGAIO
#define BROKEN_SIGPTY
#define BROKEN_SIGPOLL

View file

@ -1,32 +0,0 @@
/* Machine description file for IBM S390 in 64-bit mode
Copyright (C) 2002-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define BITS_PER_LONG 64
#define BITS_PER_EMACS_INT 64
/* Define the type to use. */
#define EMACS_INT long
#define pI "l"
#define EMACS_UINT unsigned long
/* On the 64 bit architecture, we can use 60 bits for addresses */
#define VALBITS 60
/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
#define XPNTR(a) XUINT (a)

View file

@ -1,29 +0,0 @@
/* Machine description file for intel 386.
Copyright (C) 1987, 2001-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifdef WINDOWSNT
#define DATA_START get_data_start ()
#endif
#ifdef GNU_LINUX
/* libc-linux/sysdeps/linux/i386/ulimit.c says that due to shared library, */
/* we cannot get the maximum address for brk */
#define ULIMIT_BREAK_VALUE (32*1024*1024)
#endif

View file

@ -1,32 +0,0 @@
/* Machine description file for generic Motorola 68k.
Copyright (C) 1985, 1995, 2001-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically. */
#ifndef m68k
#define m68k
#endif
#ifdef GNU_LINUX
#ifdef __ELF__
#define DATA_SEG_BITS 0x80000000
#endif
#endif

View file

@ -1,24 +0,0 @@
/* machine description file For the powerpc Macintosh.
Copyright (C) 1994, 2001-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#ifdef _ARCH_PPC64
#ifndef _LP64
#define _LP64
#endif
#endif

View file

@ -1,30 +0,0 @@
/* machine description file for Sun 4 SPARC.
Copyright (C) 1987, 2001-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* __sparc__ is defined by the compiler by default. */
#ifdef __arch64__ /* GCC, 64-bit ABI. */
#define BITS_PER_LONG 64
#ifndef _LP64
#define _LP64 /* Done on Alpha -- not sure if it should be here. -- fx */
#endif
#endif /* __arch64__ */

View file

@ -1,34 +0,0 @@
/* machine description file template.
Copyright (C) 1985-1986, 2001-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically.
Ones defined so far include m68k and many others */
/* After adding support for a new machine, modify the large case
statement in configure.in to recognize reasonable
configuration names, and add a description of the system to
`etc/MACHINES'.
Check for any tests of $machine in configure.in, and add an entry
for the new machine if needed.
If you've just fixed a problem in an existing configuration file,
you should also check `etc/MACHINES' to make sure its descriptions
of known problems in that configuration should be updated. */

View file

@ -34,7 +34,7 @@ extern int etext;
#endif
extern char *start_of_data (void);
#if defined USE_LSB_TAG || UINTPTR_MAX >> VALBITS == 0
#if defined USE_LSB_TAG || UINTPTR_MAX <= VAL_MAX
#define EXCEEDS_LISP_PTR(ptr) 0
#elif defined DATA_SEG_BITS
#define EXCEEDS_LISP_PTR(ptr) \

View file

@ -45,7 +45,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Increase BASE_PURESIZE by a ratio depending on the machine's word size. */
#ifndef PURESIZE_RATIO
#if BITS_PER_EMACS_INT > 32
#if EMACS_INT_MAX >> 31 != 0
#define PURESIZE_RATIO 10/6 /* Don't surround with `()'. */
#else
#define PURESIZE_RATIO 1

View file

@ -76,6 +76,17 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
to avoid a crash just use the Emacs implementation for that function. */
#define BROKEN_GET_CURRENT_DIR_NAME 1
/*** BUILD 9008 - FIONREAD problem still exists in X-Windows. ***/
#define BROKEN_FIONREAD
/* As we define BROKEN_FIONREAD, SIGIO will be undefined in systty.h.
But, on AIX, SIGAIO, SIGPTY, and SIGPOLL are defined as SIGIO,
which causes compilation error at init_signals in sysdep.c. So, we
define these macros so that syssignal.h detects them and undefine
SIGAIO, SIGPTY and SIGPOLL. */
#define BROKEN_SIGAIO
#define BROKEN_SIGPTY
#define BROKEN_SIGPOLL
/* Conservative garbage collection has not been tested, so for now
play it safe and stick with the old-fashioned way of marking. */
#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE

View file

@ -157,3 +157,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#else
#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE
#endif
#ifdef __i386__
/* libc-linux/sysdeps/linux/i386/ulimit.c says that due to shared library, */
/* we cannot get the maximum address for brk */
# define ULIMIT_BREAK_VALUE (32*1024*1024)
#endif

View file

@ -24,8 +24,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#undef SYSTEM_TYPE
#define SYSTEM_TYPE "gnu"
#undef NLIST_STRUCT
#define SIGNALS_VIA_CHARACTERS
/* libc defines data_start. */

View file

@ -85,10 +85,6 @@ char *_getpty();
#define NARROWPROTO 1
#if _MIPS_SZLONG == 64 /* -mabi=64 (gcc) or -64 (MIPSpro) */
#define _LP64 /* lisp.h takes care of the rest */
#endif /* _MIPS_SZLONG */
#undef SA_RESTART
#undef TIOCSIGSEND /* defined in usg5-4-common.h */

View file

@ -381,6 +381,8 @@ extern int getloadavg (double *, int);
/* We need a little extra space, see ../../lisp/loadup.el. */
#define SYSTEM_PURESIZE_EXTRA 50000
#define DATA_START get_data_start ()
/* For unexec to work on Alpha systems, we need to put Emacs'
initialized data into a separate section from the CRT initialized
data (because the Alpha linker freely reorders data variables, even