diff options
| author | Andrew Innes | 2001-04-18 14:07:15 +0000 |
|---|---|---|
| committer | Andrew Innes | 2001-04-18 14:07:15 +0000 |
| commit | 039f725c72a7976d60c0d962b7c4667ef664f4d0 (patch) | |
| tree | 9434ffc1eea5c642e83ed980fcd278b83f5f5d51 | |
| parent | 37ec3479c7095e35e785a15efde07f8770265128 (diff) | |
| download | emacs-039f725c72a7976d60c0d962b7c4667ef664f4d0.tar.gz emacs-039f725c72a7976d60c0d962b7c4667ef664f4d0.zip | |
(EMACSLOADPATH): Ensure EMACSLOADPATH is defined in
the environment.
| -rw-r--r-- | nt/nmake.defs | 457 |
1 files changed, 231 insertions, 226 deletions
diff --git a/nt/nmake.defs b/nt/nmake.defs index 1f6db21eaa0..178a43f8bc0 100644 --- a/nt/nmake.defs +++ b/nt/nmake.defs | |||
| @@ -1,226 +1,231 @@ | |||
| 1 | # | 1 | # |
| 2 | # Makefile definition file for building GNU Emacs on the Microsoft W32 API. | 2 | # Makefile definition file for building GNU Emacs on the Microsoft W32 API. |
| 3 | # Copyright (c) 2000-2001 Free Software Foundation, Inc. | 3 | # Copyright (c) 2000-2001 Free Software Foundation, Inc. |
| 4 | # | 4 | # |
| 5 | # GNU Emacs is free software; you can redistribute it and/or modify | 5 | # GNU Emacs is free software; you can redistribute it and/or modify |
| 6 | # it under the terms of the GNU General Public License as published by | 6 | # it under the terms of the GNU General Public License as published by |
| 7 | # the Free Software Foundation; either version 2, or (at your option) | 7 | # the Free Software Foundation; either version 2, or (at your option) |
| 8 | # any later version. | 8 | # any later version. |
| 9 | # | 9 | # |
| 10 | # GNU Emacs is distributed in the hope that it will be useful, | 10 | # GNU Emacs is distributed in the hope that it will be useful, |
| 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | 11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 13 | # GNU General Public License for more details. | 13 | # GNU General Public License for more details. |
| 14 | # | 14 | # |
| 15 | # You should have received a copy of the GNU General Public License | 15 | # You should have received a copy of the GNU General Public License |
| 16 | # along with GNU Emacs; see the file COPYING. If not, write to | 16 | # along with GNU Emacs; see the file COPYING. If not, write to |
| 17 | # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, | 17 | # the Free Software Foundation, Inc., 59 Temple Place - Suite 330, |
| 18 | # Boston, MA 02111-1307, USA. | 18 | # Boston, MA 02111-1307, USA. |
| 19 | 19 | ||
| 20 | # Ensure 'all' is the default target | 20 | # Ensure 'all' is the default target |
| 21 | all: | 21 | all: |
| 22 | 22 | ||
| 23 | THE_SHELL = $(COMSPEC) | 23 | THE_SHELL = $(COMSPEC) |
| 24 | SHELLTYPE=CMD | 24 | SHELLTYPE=CMD |
| 25 | 25 | ||
| 26 | MAKETYPE=nmake | 26 | MAKETYPE=nmake |
| 27 | 27 | ||
| 28 | CURDIR = $(MAKEDIR:\=/) | 28 | CURDIR = $(MAKEDIR:\=/) |
| 29 | THISDIR = $(MAKEDIR) | 29 | THISDIR = $(MAKEDIR) |
| 30 | 30 | ||
| 31 | ALL_DEPS = $** | 31 | ALL_DEPS = $** |
| 32 | 32 | ||
| 33 | SUBSYSTEM_WINDOWS=-subsystem:windows | 33 | SUBSYSTEM_WINDOWS=-subsystem:windows |
| 34 | SUBSYSTEM_CONSOLE=-subsystem:console | 34 | SUBSYSTEM_CONSOLE=-subsystem:console |
| 35 | 35 | ||
| 36 | # INSTALL_DIR is the directory into which emacs will be installed. | 36 | # INSTALL_DIR is the directory into which emacs will be installed. |
| 37 | # | 37 | # |
| 38 | !ifndef INSTALL_DIR | 38 | !ifndef INSTALL_DIR |
| 39 | INSTALL_DIR = $(CURDIR)/.. | 39 | INSTALL_DIR = $(CURDIR)/.. |
| 40 | !endif | 40 | !endif |
| 41 | 41 | ||
| 42 | # Allow detection of builds with MSVC 5 or later, so we can | 42 | # Ensure EMACSLOADPATH is defined in the environment. |
| 43 | # speed up compiles (see rule at end). | 43 | # |
| 44 | # | 44 | !if [set EMACSLOADPATH=foo] |
| 45 | _NMAKE_VER_5=162 | 45 | !endif |
| 46 | _NMAKE_VER_4=0 | 46 | |
| 47 | 47 | # Allow detection of builds with MSVC 5 or later, so we can | |
| 48 | !IFNDEF _NMAKE_VER | 48 | # speed up compiles (see rule at end). |
| 49 | _NMAKE_VER=$(_NMAKE_VER_4) | 49 | # |
| 50 | !ENDIF | 50 | _NMAKE_VER_5=162 |
| 51 | 51 | _NMAKE_VER_4=0 | |
| 52 | # Check that the INCLUDE and LIB environment variables are set. | 52 | |
| 53 | # | 53 | !IFNDEF _NMAKE_VER |
| 54 | !ifndef INCLUDE | 54 | _NMAKE_VER=$(_NMAKE_VER_4) |
| 55 | !error The INCLUDE environment variable needs to be set. | 55 | !ENDIF |
| 56 | !endif | 56 | |
| 57 | !ifndef LIB | 57 | # Check that the INCLUDE and LIB environment variables are set. |
| 58 | !error The LIB environment variable needs to be set. | 58 | # |
| 59 | !endif | 59 | !ifndef INCLUDE |
| 60 | 60 | !error The INCLUDE environment variable needs to be set. | |
| 61 | # Determine the architecture we're running on. | 61 | !endif |
| 62 | # Define ARCH for our purposes; | 62 | !ifndef LIB |
| 63 | # Define CPU for use by ntwin32.mak; | 63 | !error The LIB environment variable needs to be set. |
| 64 | # Define CONFIG_H to the appropriate config.h for the system; | 64 | !endif |
| 65 | # | 65 | |
| 66 | !ifdef PROCESSOR_ARCHITECTURE | 66 | # Determine the architecture we're running on. |
| 67 | # We're on Windows NT | 67 | # Define ARCH for our purposes; |
| 68 | CPU = $(PROCESSOR_ARCHITECTURE) | 68 | # Define CPU for use by ntwin32.mak; |
| 69 | CONFIG_H = config.nt | 69 | # Define CONFIG_H to the appropriate config.h for the system; |
| 70 | OS_TYPE = windowsnt | 70 | # |
| 71 | ! if "$(PROCESSOR_ARCHITECTURE)" == "x86" | 71 | !ifdef PROCESSOR_ARCHITECTURE |
| 72 | ARCH = i386 | 72 | # We're on Windows NT |
| 73 | CPU = i386 | 73 | CPU = $(PROCESSOR_ARCHITECTURE) |
| 74 | ! else | 74 | CONFIG_H = config.nt |
| 75 | ! if "$(PROCESSOR_ARCHITECTURE)" == "MIPS" | 75 | OS_TYPE = windowsnt |
| 76 | ARCH = mips | 76 | ! if "$(PROCESSOR_ARCHITECTURE)" == "x86" |
| 77 | ! else | 77 | ARCH = i386 |
| 78 | ! if "$(PROCESSOR_ARCHITECTURE)" == "ALPHA" | 78 | CPU = i386 |
| 79 | ARCH = alpha | 79 | ! else |
| 80 | ! else | 80 | ! if "$(PROCESSOR_ARCHITECTURE)" == "MIPS" |
| 81 | ! if "$(PROCESSOR_ARCHITECTURE)" == "PPC" | 81 | ARCH = mips |
| 82 | ARCH = ppc | 82 | ! else |
| 83 | ! else | 83 | ! if "$(PROCESSOR_ARCHITECTURE)" == "ALPHA" |
| 84 | ! error Unknown architecture type "$(PROCESSOR_ARCHITECTURE)" | 84 | ARCH = alpha |
| 85 | ! endif | 85 | ! else |
| 86 | ! endif | 86 | ! if "$(PROCESSOR_ARCHITECTURE)" == "PPC" |
| 87 | ! endif | 87 | ARCH = ppc |
| 88 | ! endif | 88 | ! else |
| 89 | !else | 89 | ! error Unknown architecture type "$(PROCESSOR_ARCHITECTURE)" |
| 90 | # We're on Windows 95 | 90 | ! endif |
| 91 | ARCH = i386 | 91 | ! endif |
| 92 | CPU = i386 | 92 | ! endif |
| 93 | CONFIG_H = config.nt | 93 | ! endif |
| 94 | OS_TYPE = windows95 | 94 | !else |
| 95 | !endif | 95 | # We're on Windows 95 |
| 96 | 96 | ARCH = i386 | |
| 97 | AR = lib | 97 | CPU = i386 |
| 98 | AR_OUT = -out: | 98 | CONFIG_H = config.nt |
| 99 | CC = cl | 99 | OS_TYPE = windows95 |
| 100 | CC_OUT = -Fo | 100 | !endif |
| 101 | LINK = link | 101 | |
| 102 | LINK_OUT = -out: | 102 | AR = lib |
| 103 | RC = rc | 103 | AR_OUT = -out: |
| 104 | RC_OUT = -Fo | 104 | CC = cl |
| 105 | RC_INCLUDE = -i | 105 | CC_OUT = -Fo |
| 106 | 106 | LINK = link | |
| 107 | libc = libc.lib | 107 | LINK_OUT = -out: |
| 108 | baselibs = | 108 | RC = rc |
| 109 | O = obj | 109 | RC_OUT = -Fo |
| 110 | A = lib | 110 | RC_INCLUDE = -i |
| 111 | 111 | ||
| 112 | BASE_LIBS = $(libc) $(baselibs) oldnames.lib | 112 | libc = libc.lib |
| 113 | 113 | baselibs = | |
| 114 | ADVAPI32 = advapi32.lib | 114 | O = obj |
| 115 | COMDLG32 = comdlg32.lib | 115 | A = lib |
| 116 | GDI32 = gdi32.lib | 116 | |
| 117 | MPR = mpr.lib | 117 | BASE_LIBS = $(libc) $(baselibs) oldnames.lib |
| 118 | SHELL32 = shell32.lib | 118 | |
| 119 | USER32 = user32.lib | 119 | ADVAPI32 = advapi32.lib |
| 120 | WSOCK32 = wsock32.lib | 120 | COMDLG32 = comdlg32.lib |
| 121 | 121 | GDI32 = gdi32.lib | |
| 122 | !ifdef NOOPT | 122 | MPR = mpr.lib |
| 123 | DEBUG_CFLAGS = -DEMACSDEBUG | 123 | SHELL32 = shell32.lib |
| 124 | !else | 124 | USER32 = user32.lib |
| 125 | DEBUG_CFLAGS = | 125 | WSOCK32 = wsock32.lib |
| 126 | !endif | 126 | |
| 127 | CFLAGS = -I. -DWIN32_LEAN_AND_MEAN $(ARCH_CFLAGS) -D$(ARCH) \ | 127 | !ifdef NOOPT |
| 128 | -D_CRTAPI1=_cdecl $(DEBUG_CFLAGS) $(USER_CFLAGS) $(LOCAL_FLAGS) | 128 | DEBUG_CFLAGS = -DEMACSDEBUG |
| 129 | EMACS_EXTRA_C_FLAGS = | 129 | !else |
| 130 | 130 | DEBUG_CFLAGS = | |
| 131 | SYS_LDFLAGS = -release -incremental:no -version:3.10 -swaprun:cd -swaprun:net | 131 | !endif |
| 132 | 132 | CFLAGS = -I. -DWIN32_LEAN_AND_MEAN $(ARCH_CFLAGS) -D$(ARCH) \ | |
| 133 | # see comments in allocate_heap in w32heap.c before changing any of the | 133 | -D_CRTAPI1=_cdecl $(DEBUG_CFLAGS) $(USER_CFLAGS) $(LOCAL_FLAGS) |
| 134 | # -stack, -heap, or -base settings. | 134 | EMACS_EXTRA_C_FLAGS = |
| 135 | TEMACS_EXTRA_LINK = -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -debugtype:both -pdb:$(BLD)\temacs.pdb -machine:$(ARCH) $(SUBSYSTEM_CONSOLE) -entry:_start -map:$(BLD)\temacs.map $(EXTRA_LINK) | 135 | |
| 136 | 136 | SYS_LDFLAGS = -release -incremental:no -version:3.10 -swaprun:cd -swaprun:net | |
| 137 | !ifdef NOOPT | 137 | |
| 138 | OBJDIR = obj | 138 | # see comments in allocate_heap in w32heap.c before changing any of the |
| 139 | !else | 139 | # -stack, -heap, or -base settings. |
| 140 | OBJDIR = obj-spd | 140 | TEMACS_EXTRA_LINK = -stack:0x00800000 -heap:0x00100000 -base:0x01000000 -debug:full -debugtype:both -pdb:$(BLD)\temacs.pdb -machine:$(ARCH) $(SUBSYSTEM_CONSOLE) -entry:_start -map:$(BLD)\temacs.map $(EXTRA_LINK) |
| 141 | !endif | 141 | |
| 142 | $(OBJDIR):; -mkdir $(OBJDIR) | 142 | !ifdef NOOPT |
| 143 | BLD = $(OBJDIR)/$(ARCH) | 143 | OBJDIR = obj |
| 144 | $(BLD): $(OBJDIR) | 144 | !else |
| 145 | -mkdir "$(BLD)" | 145 | OBJDIR = obj-spd |
| 146 | 146 | !endif | |
| 147 | COMPILER_TEMP_FILES = *.pdb | 147 | $(OBJDIR):; -mkdir $(OBJDIR) |
| 148 | 148 | BLD = $(OBJDIR)/$(ARCH) | |
| 149 | CP = cp -f | 149 | $(BLD): $(OBJDIR) |
| 150 | CP_DIR = cp -rf | 150 | -mkdir "$(BLD)" |
| 151 | IFNOTSAMEDIR = if not exist ..\same-dir.tst | 151 | |
| 152 | ENDIF = | 152 | COMPILER_TEMP_FILES = *.pdb |
| 153 | FOREACH = for %%f in ( | 153 | |
| 154 | FORVAR = %%f | 154 | CP = cp -f |
| 155 | FORDO = ) do | 155 | CP_DIR = cp -rf |
| 156 | ENDFOR = | 156 | IFNOTSAMEDIR = if not exist ..\same-dir.tst |
| 157 | ARGQUOTE = " | 157 | ENDIF = |
| 158 | DQUOTE = \" | 158 | FOREACH = for %%f in ( |
| 159 | DEL = rm | 159 | FORVAR = %%f |
| 160 | DEL_TREE = rm -r | 160 | FORDO = ) do |
| 161 | 161 | ENDFOR = | |
| 162 | !ifdef NODEBUG | 162 | ARGQUOTE = " |
| 163 | DEBUG_FLAG = | 163 | DQUOTE = \" |
| 164 | DEBUG_LINK = | 164 | DEL = rm |
| 165 | !else | 165 | DEL_TREE = rm -r |
| 166 | DEBUG_FLAG = -Zi | 166 | |
| 167 | DEBUG_LINK = -debug:full -debugtype:both | 167 | !ifdef NODEBUG |
| 168 | !endif | 168 | DEBUG_FLAG = |
| 169 | 169 | DEBUG_LINK = | |
| 170 | !if "$(ARCH)" == "i386" | 170 | !else |
| 171 | !ifdef NOOPT | 171 | DEBUG_FLAG = -Zi |
| 172 | ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zel -W2 -H63 -Od -G3d -Zp8 $(DEBUG_FLAG) | 172 | DEBUG_LINK = -debug:full -debugtype:both |
| 173 | !else | 173 | !endif |
| 174 | ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zel -W2 -H63 -Oxsb2 -Oy- -G6dF -Zp8 $(DEBUG_FLAG) | 174 | |
| 175 | !endif | 175 | !if "$(ARCH)" == "i386" |
| 176 | ARCH_LDFLAGS = $(SYS_LDFLAGS) | 176 | !ifdef NOOPT |
| 177 | 177 | ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zel -W2 -H63 -Od -G3d -Zp8 $(DEBUG_FLAG) | |
| 178 | !else | 178 | !else |
| 179 | !if "$(ARCH)" == "mips" | 179 | ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zel -W2 -H63 -Oxsb2 -Oy- -G6dF -Zp8 $(DEBUG_FLAG) |
| 180 | ARCH_CFLAGS = -D_MIPS_=1 -c -W2 -Zi -Od -Gt0 | 180 | !endif |
| 181 | ARCH_LDFLAGS = $(SYS_LDFLAGS) | 181 | ARCH_LDFLAGS = $(SYS_LDFLAGS) |
| 182 | 182 | ||
| 183 | !else | 183 | !else |
| 184 | !if "$(ARCH)" == "alpha" | 184 | !if "$(ARCH)" == "mips" |
| 185 | !if "$(BUILD_TYPE)" == "spd" | 185 | ARCH_CFLAGS = -D_MIPS_=1 -c -W2 -Zi -Od -Gt0 |
| 186 | ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -Od -D__stdcall= -D__cdecl= | 186 | ARCH_LDFLAGS = $(SYS_LDFLAGS) |
| 187 | !else | 187 | |
| 188 | ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -O1 -D__stdcall= -D__cdecl= | 188 | !else |
| 189 | !endif | 189 | !if "$(ARCH)" == "alpha" |
| 190 | ARCH_LDFLAGS = $(SYS_LDFLAGS) | 190 | !if "$(BUILD_TYPE)" == "spd" |
| 191 | 191 | ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -Od -D__stdcall= -D__cdecl= | |
| 192 | !else | 192 | !else |
| 193 | !if "$(ARCH)" == "ppc" | 193 | ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -O1 -D__stdcall= -D__cdecl= |
| 194 | # These flags are a guess...if they don't work, please send me mail. | 194 | !endif |
| 195 | ARCH_CFLAGS = -D_PPC_=1 -c -Ze -Zi -W2 -Od | 195 | ARCH_LDFLAGS = $(SYS_LDFLAGS) |
| 196 | ARCH_LDFLAGS = $(SYS_LDFLAGS) | 196 | |
| 197 | 197 | !else | |
| 198 | !else | 198 | !if "$(ARCH)" == "ppc" |
| 199 | !ERROR Unknown architecture type "$(ARCH)". | 199 | # These flags are a guess...if they don't work, please send me mail. |
| 200 | !endif | 200 | ARCH_CFLAGS = -D_PPC_=1 -c -Ze -Zi -W2 -Od |
| 201 | !endif | 201 | ARCH_LDFLAGS = $(SYS_LDFLAGS) |
| 202 | !endif | 202 | |
| 203 | !endif | 203 | !else |
| 204 | 204 | !ERROR Unknown architecture type "$(ARCH)". | |
| 205 | LINK_FLAGS = $(ARCH_LDFLAGS) $(DEBUG_LINK) $(USER_LDFLAGS) | 205 | !endif |
| 206 | 206 | !endif | |
| 207 | # From MSVC 5.0 onwards, it seem base relocation information is not included, | 207 | !endif |
| 208 | # at least in release builds. We need to ensure the reloc info is included | 208 | !endif |
| 209 | # in order to use the MSVC profiler. | 209 | |
| 210 | !IF ("$(_NMAKE_VER)" == "$(_NMAKE_VER_4)") | 210 | LINK_FLAGS = $(ARCH_LDFLAGS) $(DEBUG_LINK) $(USER_LDFLAGS) |
| 211 | EXTRA_LINK = | 211 | |
| 212 | !ELSE | 212 | # From MSVC 5.0 onwards, it seem base relocation information is not included, |
| 213 | EXTRA_LINK = -profile | 213 | # at least in release builds. We need to ensure the reloc info is included |
| 214 | !ENDIF | 214 | # in order to use the MSVC profiler. |
| 215 | 215 | !IF ("$(_NMAKE_VER)" == "$(_NMAKE_VER_4)") | |
| 216 | # | 216 | EXTRA_LINK = |
| 217 | # If the compiler supports compiling multiple .c files to .o files at | 217 | !ELSE |
| 218 | # one time, use this feature. | 218 | EXTRA_LINK = -profile |
| 219 | # | 219 | !ENDIF |
| 220 | !IF ("$(_NMAKE_VER)" == "$(_NMAKE_VER_4)") | 220 | |
| 221 | .c{$(BLD)}.obj: | 221 | # |
| 222 | $(CC) $(CFLAGS) -Fo$(BLD)\ $< | 222 | # If the compiler supports compiling multiple .c files to .o files at |
| 223 | !ELSE | 223 | # one time, use this feature. |
| 224 | .c{$(BLD)}.obj:: | 224 | # |
| 225 | $(CC) $(CFLAGS) -Fo$(BLD)\ $< | 225 | !IF ("$(_NMAKE_VER)" == "$(_NMAKE_VER_4)") |
| 226 | !ENDIF | 226 | .c{$(BLD)}.obj: |
| 227 | $(CC) $(CFLAGS) -Fo$(BLD)\ $< | ||
| 228 | !ELSE | ||
| 229 | .c{$(BLD)}.obj:: | ||
| 230 | $(CC) $(CFLAGS) -Fo$(BLD)\ $< | ||
| 231 | !ENDIF | ||