X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/8c536f15bf95916d56bb50495d22b7da7e09fff9..3e93bafb95608467e438ba7f725fd1f020669f8c:/nt/nmake.defs diff --git a/nt/nmake.defs b/nt/nmake.defs index b01e341f2d..c2a0b8cc6f 100644 --- a/nt/nmake.defs +++ b/nt/nmake.defs @@ -1,5 +1,5 @@ # -*- Makefile -*- definition file for building GNU Emacs on Windows NT. -# Copyright (C) 2000-2012 Free Software Foundation, Inc. +# Copyright (C) 2000-2014 Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -22,6 +22,7 @@ all: THE_SHELL = $(COMSPEC) SHELLTYPE=CMD +SWITCHCHAR=/ MAKETYPE=nmake @@ -87,7 +88,11 @@ ARCH = alpha ! if "$(PROCESSOR_ARCHITECTURE)" == "PPC" ARCH = ppc ! else -! error Unknown architecture type "$(PROCESSOR_ARCHITECTURE)" +! if "$(PROCESSOR_ARCHITECTURE)" == "AMD64" +ARCH = AMD64 +! else +! error Unknown architecture type "$(PROCESSOR_ARCHITECTURE)" +! endif ! endif ! endif ! endif @@ -106,13 +111,13 @@ CC = cl CC_OUT = -Fo LINK = link LINK_OUT = -out: -RC = rc +RC = rc $(ARCH_RCFLAGS) RC_OUT = -Fo RC_INCLUDE = -i USE_CRT_DLL = 1 -!ifdef USE_CRT_DLL +!if $(USE_CRT_DLL) libc = msvcrt$(D).lib EMACS_EXTRA_C_FLAGS= -D_DLL -D_MT -DUSE_CRT_DLL=1 !else @@ -145,29 +150,23 @@ DEBUG_CFLAGS = -DEMACSDEBUG DEBUG_CFLAGS = !endif -!ifdef ENABLECHECKS -CHECKING_CFLAGS = -DENABLE_CHECKING -DXASSERTS -!else -CHECKING_CFLAGS = -!endif - MWINDOWS = -subsystem:windows -entry:mainCRTStartup -CFLAGS = -I. $(ARCH_CFLAGS) \ - $(DEBUG_CFLAGS) $(CHECKING_CFLAGS) $(USER_CFLAGS) $(LOCAL_FLAGS) -ESC_CFLAGS = -I. $(ARCH_CFLAGS) \ - $(DEBUG_CFLAGS) $(CHECKING_CFLAGS) $(ESC_USER_CFLAGS) $(LOCAL_FLAGS) +CFLAGS = -I. $(ARCH_CFLAGS) -D_CRT_SECURE_NO_WARNINGS \ + $(DEBUG_CFLAGS) $(USER_CFLAGS) $(LOCAL_FLAGS) +ESC_CFLAGS = -I. $(ARCH_CFLAGS) -D_CRT_SECURE_NO_WARNINGS \ + $(DEBUG_CFLAGS) $(ESC_USER_CFLAGS) $(LOCAL_FLAGS) #SYS_LDFLAGS = -nologo -release -incremental:no -version:3.10 -swaprun:cd -swaprun:net setargv.obj -!ifdef NOOPT -SYS_LDFLAGS = -nologo -manifest -dynamicbase:no -debug -incremental:no -version:3.10 -swaprun:cd -swaprun:net setargv.obj -!else -SYS_LDFLAGS = -nologo -manifest -dynamicbase:no -release -incremental:no -version:3.10 -swaprun:cd -swaprun:net setargv.obj -!endif +SYS_LDFLAGS = -nologo -manifest -dynamicbase:no -incremental:no -version:3.10 -swaprun:cd -swaprun:net setargv.obj # see comments in allocate_heap in w32heap.c before changing any of the # -stack, -heap, or -base settings. -TEMACS_EXTRA_LINK = -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -pdb:$(BLD)\temacs.pdb -machine:$(ARCH) $(SUBSYSTEM_CONSOLE) -entry:_start -map:$(BLD)\temacs.map $(EXTRA_LINK) +!if "$(ARCH)" == "i386" +TEMACS_EXTRA_LINK = -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -pdb:$(BLD)\temacs.pdb -machine:x86 $(SUBSYSTEM_CONSOLE) -entry:_start -map:$(BLD)\temacs.map $(EXTRA_LINK) +!elseif "$(ARCH)" == "AMD64" +TEMACS_EXTRA_LINK = -stack:0x00800000 -heap:0x00100000 -base:0x400000000 -pdb:$(BLD)\temacs.pdb -machine:x64 $(SUBSYSTEM_CONSOLE) -entry:_start -map:$(BLD)\temacs.map $(EXTRA_LINK) +!endif !ifdef NOOPT OBJDIR = obj @@ -218,11 +217,17 @@ ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zl -Zp8 -W2 -Od -Gd $(DEBUG_FLAG) ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zl -Zp8 -W2 -Oi -Ot -Oy- -Ob2 -GF -Gy -Gd $(DEBUG_FLAG) !endif ARCH_LDFLAGS = $(SYS_LDFLAGS) +EMACS_HEAPSIZE = 27 +EMACS_PURESIZE = 5000000 +EMACS_MANIFEST = emacs-x86.manifest !else !if "$(ARCH)" == "mips" ARCH_CFLAGS = -D_MIPS_=1 -c -W2 -Zi -Od -Gt0 ARCH_LDFLAGS = $(SYS_LDFLAGS) +EMACS_HEAPSIZE = 27 +EMACS_PURESIZE = 5000000 +EMACS_MANIFEST = emacs-mips.manifest !else !if "$(ARCH)" == "alpha" @@ -232,12 +237,30 @@ ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -Od -D__stdcall= -D__cdecl= ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -O1 -D__stdcall= -D__cdecl= !endif ARCH_LDFLAGS = $(SYS_LDFLAGS) +EMACS_HEAPSIZE = 27 +EMACS_PURESIZE = 5000000 +EMACS_MANIFEST = emacs-alpha.manifest !else !if "$(ARCH)" == "ppc" # These flags are a guess...if they don't work, please send me mail. -ARCH_CFLAGS = -D_PPC_=1 -c -Ze -Zi -W2 -Od ARCH_LDFLAGS = $(SYS_LDFLAGS) +EMACS_HEAPSIZE = 27 +EMACS_PURESIZE = 5000000 +EMACS_MANIFEST = emacs-ppc.manifest + +!else +!if "$(ARCH)" == "AMD64" +!ifdef NOOPT +ARCH_CFLAGS = -nologo -D_AMD64_=1 -DWIN64 -D_WIN64 -DWIN32 -D_WIN32 -c -Zl -Zp8 -W2 -Od -Gd -Wp64 $(DEBUG_FLAG) +!else +ARCH_CFLAGS = -nologo -D_AMD64_=1 -DWIN64 -D_WIN64 -DWIN32 -D_WIN32 -c -Zl -Zp8 -W2 -O2x -GF -Gy -Gd $(DEBUG_FLAG) +!endif +ARCH_LDFLAGS = $(SYS_LDFLAGS) -machine:x64 +ARCH_RCFLAGS = -DWIN64 +EMACS_HEAPSIZE = 42 +EMACS_PURESIZE = 10000000 +EMACS_MANIFEST = emacs-x64.manifest !else !ERROR Unknown architecture type "$(ARCH)". @@ -245,6 +268,7 @@ ARCH_LDFLAGS = $(SYS_LDFLAGS) !endif !endif !endif +!endif LINK_FLAGS = $(ARCH_LDFLAGS) $(DEBUG_LINK) $(USER_LDFLAGS) @@ -268,4 +292,3 @@ EXTRA_LINK = -profile .c{$(BLD)}.obj:: $(CC) $(CFLAGS) -Fo$(BLD)\ $< !ENDIF -