annotate nt/makefile.def @ 32534:4df77b11080e

(Distracting NSA): Change the example.
author Gerd Moellmann <gerd@gnu.org>
date Mon, 16 Oct 2000 14:22:29 +0000
parents 904a6e5948b5
children 3bb820a403c0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
1 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
2 # Makefile definition file for building GNU Emacs on Windows NT
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
3 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
4 # GNU Emacs is free software; you can redistribute it and/or modify
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
5 # it under the terms of the GNU General Public License as published by
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
6 # the Free Software Foundation; either version 2, or (at your option)
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
7 # any later version.
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
8 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
9 # GNU Emacs is distributed in the hope that it will be useful,
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
12 # GNU General Public License for more details.
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
13 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
14 # You should have received a copy of the GNU General Public License
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
15 # along with GNU Emacs; see the file COPYING. If not, write to
14185
aba3b91c8b3d Update FSF's ddress in preamble
Erik Naggum <erik@naggum.no>
parents: 13629
diff changeset
16 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
aba3b91c8b3d Update FSF's ddress in preamble
Erik Naggum <erik@naggum.no>
parents: 13629
diff changeset
17 # Boston, MA 02111-1307, USA.
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
18 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
19 # Geoff Voelker (voelker@cs.washington.edu) 9-6-94
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
20
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
21 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
22 # BEGIN CONFIGURATION
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
23 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
24
13436
d464ad2ab385 (NTGUI): New macro.
Geoff Voelker <voelker@cs.washington.edu>
parents: 12237
diff changeset
25 # Define the following to build the GUI version
d464ad2ab385 (NTGUI): New macro.
Geoff Voelker <voelker@cs.washington.edu>
parents: 12237
diff changeset
26 #
d464ad2ab385 (NTGUI): New macro.
Geoff Voelker <voelker@cs.washington.edu>
parents: 12237
diff changeset
27 NTGUI=1
d464ad2ab385 (NTGUI): New macro.
Geoff Voelker <voelker@cs.washington.edu>
parents: 12237
diff changeset
28
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
29 # Set INSTALL_DIR to be the directory into which you want emacs installed.
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
30 #
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
31 !ifndef INSTALL_DIR
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
32 INSTALL_DIR = C:\emacs
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
33 !endif
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
34
12237
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
35 # Define MSVCNT11 to be nonzero if you are using the MSVCNT 1.1 environment.
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
36 # MSVCNT11 = 1
19397
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
37 !ifndef MSVCNT11
12237
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
38 MSVCNT11 = 0
19397
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
39 !endif
12237
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
40
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
41 #
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
42 # END CONFIGURATION
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
43 #
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
44
23624
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
45 #
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
46 # Allow detection of builds with MSVC 5 or later
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
47 #
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
48 _NMAKE_VER_5=162
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
49 _NMAKE_VER_4=0
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
50
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
51 !IFNDEF _NMAKE_VER
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
52 _NMAKE_VER=$(_NMAKE_VER_4)
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
53 !ENDIF
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
54
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
55 # Check that the INCLUDE and LIB environment variables are set.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
56 #
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
57 !ifndef INCLUDE
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
58 !error The INCLUDE environment variable needs to be set.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
59 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
60 !ifndef LIB
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
61 !error The LIB environment variable needs to be set.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
62 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
63
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
64 # Determine the architecture we're running on.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
65 # Define ARCH for our purposes;
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
66 # Define CPU for use by ntwin32.mak;
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
67 # Define CONFIG_H to the appropriate config.h for the system;
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
68 #
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
69 !ifdef PROCESSOR_ARCHITECTURE
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
70 # We're on Windows NT
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
71 CPU = $(PROCESSOR_ARCHITECTURE)
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
72 CONFIG_H = config.nt
16882
edebdaa8e499 Use windows95 and windowsnt instead
Geoff Voelker <voelker@cs.washington.edu>
parents: 15156
diff changeset
73 OS_TYPE = windowsnt
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
74 ! if "$(PROCESSOR_ARCHITECTURE)" == "x86"
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
75 ARCH = i386
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
76 CPU = i386
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
77 ! else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
78 ! if "$(PROCESSOR_ARCHITECTURE)" == "MIPS"
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
79 ARCH = mips
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
80 ! else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
81 ! if "$(PROCESSOR_ARCHITECTURE)" == "ALPHA"
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
82 ARCH = alpha
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
83 ! else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
84 ! if "$(PROCESSOR_ARCHITECTURE)" == "PPC"
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
85 ARCH = ppc
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
86 ! else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
87 !error Unknown architecture type "$(PROCESSOR_ARCHITECTURE)"
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
88 ! endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
89 ! endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
90 ! endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
91 ! endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
92 !else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
93 # We're on Windows 95
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
94 ARCH = i386
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
95 CPU = i386
15132
c89db56c289b (CONFIG_H) [WIN95]: Use config.nt.
Geoff Voelker <voelker@cs.washington.edu>
parents: 14900
diff changeset
96 CONFIG_H = config.nt
16882
edebdaa8e499 Use windows95 and windowsnt instead
Geoff Voelker <voelker@cs.washington.edu>
parents: 15156
diff changeset
97 OS_TYPE = windows95
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
98 !endif
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
99
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
100 # Include ntwin32.mak. So far, this file seems to be supported by every
16882
edebdaa8e499 Use windows95 and windowsnt instead
Geoff Voelker <voelker@cs.washington.edu>
parents: 15156
diff changeset
101 # Microsoft compiler on NT and Windows 95 and properly defines the executable
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
102 # names and libraries necessary to build Emacs. I do not have access
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
103 # to any other vendor compilers, so I do not know if they supply this
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
104 # file, too. For now I'll assume that they do.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
105 #
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
106 !include <ntwin32.mak>
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
107
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
108 # Using cvtres is necessary on NT 3.10 and doesn't hurt on later platforms.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
109 CVTRES = cvtres.exe
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
110 AR = $(implib)
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
111 # The assignment $(CC) = $(cc) fails even though variables are case sensitive.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
112 LINK_TMP = $(link)
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
113 LINK = $(LINK_TMP)
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
114 CC_TMP = $(cc)
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
115 CC = $(CC_TMP)
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
116
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
117 # advapi32.lib is left off of $(baselibs) on NT 3.10
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
118 !if "$(baselibs)" == "kernel32.lib "
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
119 ADVAPI32 = advapi32.lib
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
120 !else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
121 ADVAPI32 =
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
122 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
123
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
124 # Older ntwin32.mak files do not define libc; do it for them.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
125 !ifndef libc
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
126 libc = libc.lib
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
127 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
128
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
129 # The base libraries for compiling Emacs on NT. With MSVC, this should
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
130 # include oldnames.lib.
12237
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
131 !if $(MSVCNT11)
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
132 BASE_LIBS = $(libc) $(baselibs) oldnames.lib
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
133 !else
19397
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
134 BASE_LIBS = $(libc) $(baselibs) -nodefaultlib:oldnames.lib
12237
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
135 !endif
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
136
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
137 # We want any debugging info in the executable.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
138 !if "$(LINK)" == "link32"
27624
904a6e5948b5 (SYS_LDFLAGS): Add -nologo.
Andrew Innes <andrewi@gnu.org>
parents: 24443
diff changeset
139 SYS_LDFLAGS = -nologo
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
140 !else
27624
904a6e5948b5 (SYS_LDFLAGS): Add -nologo.
Andrew Innes <andrewi@gnu.org>
parents: 24443
diff changeset
141 SYS_LDFLAGS = -nologo -release -incremental:no -version:3.10
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
142 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
143
23624
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
144 # Tag the executables to run out of the swapfile when execute off CD or network shares
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
145 SYS_LDFLAGS = $(SYS_LDFLAGS) -swaprun:cd -swaprun:net
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
146
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
147 INC = -I.
19397
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
148 !if "$(BUILD_TYPE)" == "spd"
19719
9b43f48f8a10 (CFLAGS_COMMON): Place pdb file in object build
Geoff Voelker <voelker@cs.washington.edu>
parents: 19397
diff changeset
149 CFLAGS_COMMON = -nologo $(INC) $(ARCH_CFLAGS) $(LOCAL_FLAGS) -DWIN32_LEAN_AND_MEAN -D$(ARCH) -Fd$(BLD)\vc.pdb
19397
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
150 !else
19719
9b43f48f8a10 (CFLAGS_COMMON): Place pdb file in object build
Geoff Voelker <voelker@cs.washington.edu>
parents: 19397
diff changeset
151 CFLAGS_COMMON = -nologo $(INC) $(ARCH_CFLAGS) $(LOCAL_FLAGS) -DWIN32_LEAN_AND_MEAN -D$(ARCH) -Fd$(BLD)\vc.pdb -DEMACSDEBUG
19397
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
152 !endif
12237
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
153 !if $(MSVCNT11)
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
154 CFLAGS = $(CFLAGS_COMMON) -D_CRTAPI1=_cdecl
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
155 !else
19719
9b43f48f8a10 (CFLAGS_COMMON): Place pdb file in object build
Geoff Voelker <voelker@cs.washington.edu>
parents: 19397
diff changeset
156 CFLAGS = $(CFLAGS_COMMON) -D_CRTAPI1=_cdecl
12237
f5ad41d728d3 (MSVCNT11): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 12180
diff changeset
157 !endif
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
158
15156
69941576c244 [BUILD_TYPE]: Build optimized version in its own dir.
Geoff Voelker <voelker@cs.washington.edu>
parents: 15132
diff changeset
159 !ifdef BUILD_TYPE
69941576c244 [BUILD_TYPE]: Build optimized version in its own dir.
Geoff Voelker <voelker@cs.washington.edu>
parents: 15132
diff changeset
160 OBJDIR = obj-$(BUILD_TYPE)
69941576c244 [BUILD_TYPE]: Build optimized version in its own dir.
Geoff Voelker <voelker@cs.washington.edu>
parents: 15132
diff changeset
161 !else
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
162 OBJDIR = obj
15156
69941576c244 [BUILD_TYPE]: Build optimized version in its own dir.
Geoff Voelker <voelker@cs.washington.edu>
parents: 15132
diff changeset
163 !endif
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
164 $(OBJDIR):; -mkdir $(OBJDIR)
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
165 BLD = $(OBJDIR)\$(ARCH)
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
166 $(BLD): $(OBJDIR)
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
167 -mkdir $(BLD)
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
168
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
169 CP = copy
21600
86727a88ced5 (CP_DIR): Preserve attributes.
Geoff Voelker <voelker@cs.washington.edu>
parents: 19719
diff changeset
170 CP_DIR = xcopy /f/r/i/e/d/k
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
171
16882
edebdaa8e499 Use windows95 and windowsnt instead
Geoff Voelker <voelker@cs.washington.edu>
parents: 15156
diff changeset
172 !if "$(OS_TYPE)" == "windows95"
14900
a51ddd17cdc4 (DEL): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 14185
diff changeset
173 DEL = deltree /y
a51ddd17cdc4 (DEL): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 14185
diff changeset
174 DEL_TREE = deltree /y
a51ddd17cdc4 (DEL): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 14185
diff changeset
175 !else
a51ddd17cdc4 (DEL): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 14185
diff changeset
176 DEL = del
23624
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
177 # NT better way of killing a deltree
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
178 DEL_TREE = rd /s/q
14900
a51ddd17cdc4 (DEL): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 14185
diff changeset
179 !endif
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
180
12180
268be0c80ca2 makefile.def (EMACS_ICON_PATH,ADDPM): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11937
diff changeset
181 # The location of the icon file
268be0c80ca2 makefile.def (EMACS_ICON_PATH,ADDPM): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11937
diff changeset
182 EMACS_ICON_PATH = ..\nt\emacs.ico
268be0c80ca2 makefile.def (EMACS_ICON_PATH,ADDPM): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11937
diff changeset
183
268be0c80ca2 makefile.def (EMACS_ICON_PATH,ADDPM): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11937
diff changeset
184 # Lets us add icons to the GNU Emacs folder
268be0c80ca2 makefile.def (EMACS_ICON_PATH,ADDPM): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11937
diff changeset
185 ADDPM = ..\nt\$(BLD)\addpm.exe
268be0c80ca2 makefile.def (EMACS_ICON_PATH,ADDPM): Defined.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11937
diff changeset
186
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
187 !if "$(ARCH)" == "i386"
15156
69941576c244 [BUILD_TYPE]: Build optimized version in its own dir.
Geoff Voelker <voelker@cs.washington.edu>
parents: 15132
diff changeset
188 !if "$(BUILD_TYPE)" == "spd"
23624
c329decb4818 (SYS_LDFLAGS): Use swapfile when running from cd or net.
Geoff Voelker <voelker@cs.washington.edu>
parents: 22314
diff changeset
189 ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zel -W2 -H63 -Oxsb2 -G6dF -Zi -Zp8
15156
69941576c244 [BUILD_TYPE]: Build optimized version in its own dir.
Geoff Voelker <voelker@cs.washington.edu>
parents: 15132
diff changeset
190 !else
24361
69b9caa187b0 (ARCH_CFLAGS): Set struct packing to 8.
Andrew Innes <andrewi@gnu.org>
parents: 23624
diff changeset
191 ARCH_CFLAGS = -nologo -D_X86_=1 -c -Zel -W2 -H63 -Od -G3d -Zi -Zp8
15156
69941576c244 [BUILD_TYPE]: Build optimized version in its own dir.
Geoff Voelker <voelker@cs.washington.edu>
parents: 15132
diff changeset
192 !endif
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
193 ARCH_LDFLAGS = -align:0x1000 $(SYS_LDFLAGS)
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
194
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
195 !else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
196 !if "$(ARCH)" == "mips"
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
197 ARCH_CFLAGS = -D_MIPS_=1 -c -W2 -Zi -Od -Gt0
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
198 ARCH_LDFLAGS = -align:0x1000 $(SYS_LDFLAGS)
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
199
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
200 !else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
201 !if "$(ARCH)" == "alpha"
19397
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
202 !if "$(BUILD_TYPE)" == "spd"
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
203 ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -Od -D__stdcall= -D__cdecl=
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
204 !else
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
205 ARCH_CFLAGS = -D_ALPHA_=1 -c -Ze -Zi -W2 -O1 -D__stdcall= -D__cdecl=
c0ff94156cb9 (MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents: 16882
diff changeset
206 !endif
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
207 ARCH_LDFLAGS = -align:0x2000 $(SYS_LDFLAGS)
11766
1877e9736ea1 removed ^Ms
Geoff Voelker <voelker@cs.washington.edu>
parents: 11740
diff changeset
208
11937
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
209 !else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
210 !if "$(ARCH)" == "ppc"
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
211 # These flags are a guess...if they don't work, please send me mail.
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
212 ARCH_CFLAGS = -D_PPC_=1 -c -Ze -Zi -W2 -Od
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
213 ARCH_LDFLAGS = -align:0x1000 $(SYS_LDFLAGS)
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
214
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
215 !else
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
216 !ERROR Unknown architecture type "$(ARCH)".
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
217 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
218 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
219 !endif
51cb98d13316 (ARCH): New definition.
Geoff Voelker <voelker@cs.washington.edu>
parents: 11766
diff changeset
220 !endif
24443
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
221
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
222 #
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
223 # If the compiler supports compiling multiple .c files to .o files at
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
224 # one time, use this feature.
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
225 #
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
226 !IF ("$(_NMAKE_VER)" == "$(_NMAKE_VER_4)")
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
227 .c{$(BLD)}.obj:
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
228 $(CC) $(CFLAGS) -Fo$(BLD)\ $<
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
229 !ELSE
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
230 .c{$(BLD)}.obj::
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
231 $(CC) $(CFLAGS) -Fo$(BLD)\ $<
ff5935fc211c Compile multiple .c files when possible.
Geoff Voelker <voelker@cs.washington.edu>
parents: 24361
diff changeset
232 !ENDIF