mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-23 18:47:57 +00:00
Add a test for DECL_ALIGN support, and add a trivial definition to
src/config.h if 8-byte alignment is not supported.
This commit is contained in:
parent
f431a91000
commit
a30fb04fbc
16
config.bat
16
config.bat
@ -158,6 +158,22 @@ goto src42
|
||||
:src41
|
||||
sed -f ../msdos/sed2v2.inp <config.tmp >config.h2
|
||||
:src42
|
||||
Rem See if DECL_ALIGN can be supported with this GCC
|
||||
rm -f junk.c junk.o junk junk.exe
|
||||
echo struct { int i; char *p; } __attribute__((__aligned__(8))) foo; >junk.c
|
||||
rem Two percent signs because it is a special character for COMMAND.COM
|
||||
echo int main(void) { return (unsigned long)&foo %% 8; } >>junk.c
|
||||
gcc -o junk junk.c
|
||||
if not exist junk.exe coff2exe junk
|
||||
junk
|
||||
If Not ErrorLevel 1 Goto alignOk
|
||||
Echo WARNING: Your GCC does not support 8-byte aligned variables.
|
||||
Echo WARNING: Therefore Emacs cannot support buffers larger than 128MB.
|
||||
rem The following line disables DECL_ALIGN which in turn disables USE_LSB_TAG
|
||||
rem For details see lisp.h where it defines USE_LSB_TAG
|
||||
echo #define DECL_ALIGN(type, var) type var >>config.h2
|
||||
:alignOk
|
||||
rm -f junk.c junk junk.exe
|
||||
update config.h2 config.h >nul
|
||||
rm -f config.tmp config.h2
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user