Mercurial > emacs
annotate nt/makefile.def @ 32355:6bf2ae19e286
(add-to-list): Add optional argument APPEND.
author | Miles Bader <miles@gnu.org> |
---|---|
date | Tue, 10 Oct 2000 02:47:30 +0000 |
parents | 904a6e5948b5 |
children | 3bb820a403c0 |
rev | line source |
---|---|
11766 | 1 # |
2 # Makefile definition file for building GNU Emacs on Windows NT | |
3 # | |
4 # GNU Emacs is free software; you can redistribute it and/or modify | |
5 # it under the terms of the GNU General Public License as published by | |
6 # the Free Software Foundation; either version 2, or (at your option) | |
7 # any later version. | |
8 # | |
9 # GNU Emacs is distributed in the hope that it will be useful, | |
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 # GNU General Public License for more details. | |
13 # | |
14 # You should have received a copy of the GNU General Public License | |
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 | 18 # |
19 # Geoff Voelker (voelker@cs.washington.edu) 9-6-94 | |
20 | |
21 # | |
22 # BEGIN CONFIGURATION | |
23 # | |
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 | 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 | 34 |
12237 | 35 # Define MSVCNT11 to be nonzero if you are using the MSVCNT 1.1 environment. |
36 # MSVCNT11 = 1 | |
19397
c0ff94156cb9
(MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16882
diff
changeset
|
37 !ifndef MSVCNT11 |
12237 | 38 MSVCNT11 = 0 |
19397
c0ff94156cb9
(MSVCNT11): Conditionally define it.
Geoff Voelker <voelker@cs.washington.edu>
parents:
16882
diff
changeset
|
39 !endif |
12237 | 40 |
11766 | 41 # |
42 # END CONFIGURATION | |
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 | 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 | 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 | 131 !if $(MSVCNT11) |
132 BASE_LIBS = $(libc) $(baselibs) oldnames.lib | |
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 | 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 | 153 !if $(MSVCNT11) |
154 CFLAGS = $(CFLAGS_COMMON) -D_CRTAPI1=_cdecl | |
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 | 157 !endif |
11766 | 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 | 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 | 165 BLD = $(OBJDIR)\$(ARCH) |
166 $(BLD): $(OBJDIR) | |
167 -mkdir $(BLD) | |
168 | |
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 | 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 | 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 | 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 | 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 | 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 |