~ubuntu-branches/ubuntu/maverick/krb5/maverick

« back to all changes in this revision

Viewing changes to src/windows/identity/config/Makefile.w2k

  • Committer: Bazaar Package Importer
  • Author(s): Sam Hartman, Russ Allbery, Sam Hartman
  • Date: 2008-08-21 10:41:41 UTC
  • mfrom: (11.1.15 intrepid)
  • Revision ID: james.westby@ubuntu.com-20080821104141-a0f9c4o4cpo8xd0o
Tags: 1.6.dfsg.4~beta1-4
[ Russ Allbery ]
* Translation updates:
  - Swedish, thanks Martin Bagge.  (Closes: #487669, #491774)
  - Italian, thanks Luca Monducci.  (Closes: #493962)

[ Sam Hartman ]
* Translation Updates:
    - Dutch, Thanks Vincent Zweije, Closes: #495733

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#
2
 
#  Khimaira : Win32 configuration makefile
3
 
#             This file will be included by all the makefiles
4
 
#             in the build tree.
5
 
#
6
 
# Copyright (c) 2004,2005 Massachusetts Institute of Technology
7
 
#
8
 
# Permission is hereby granted, free of charge, to any person
9
 
# obtaining a copy of this software and associated documentation files
10
 
# (the "Software"), to deal in the Software without restriction,
11
 
# including without limitation the rights to use, copy, modify, merge,
12
 
# publish, distribute, sublicense, and/or sell copies of the Software,
13
 
# and to permit persons to whom the Software is furnished to do so,
14
 
# subject to the following conditions:
15
 
#
16
 
# The above copyright notice and this permission notice shall be
17
 
# included in all copies or substantial portions of the Software.
18
 
#
19
 
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
20
 
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
21
 
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
22
 
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
23
 
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
24
 
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
25
 
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
 
# SOFTWARE.
27
 
 
28
 
!ifndef KHIMAIRA_WIN32_CONFIG
29
 
KHIMAIRA_WIN32_CONFIG=1
30
 
 
31
 
# Environment Variables
32
 
#  The following environment variables MUST be set:
33
 
#   KH_ROOT : Root of the source tree.
34
 
#   KH_BUILD: One of DEBUG or RETAIL
35
 
#
36
 
#  The following environment variables are optional:
37
 
#   KH_RUNTIME: One of STATIC or DLL, specifies whether the CRT libs
38
 
#               are linked statically or through MSVCRT.DLL.
39
 
#   KH_AUXCFLAGS: Optional flags for CL
40
 
#   KH_RELEASE: Release type.  One of OFFICIAL, PRERELEASE, PRIVATE or SPECIAL.
41
 
#      OFFICIAL   : An official release of Khimaira
42
 
#      PREPRELEASE: A beta/release candidate release
43
 
#      PRIVATE    : Private build
44
 
#      SPECIAL    : Special build.  Typically one with non-mainline patches.
45
 
 
46
 
# Version info
47
 
NETIDMGR_VERSION_MAJOR=1
48
 
NETIDMGR_VERSION_MINOR=1
49
 
NETIDMGR_VERSION_PATCH=0
50
 
NETIDMGR_VERSION_AUX=1
51
 
NETIDMGR_RELEASEDESC=
52
 
 
53
 
# The API version.  This number must be incremented each time the API
54
 
# changes.  Plugins specify the version of the API that they were
55
 
# compiled against and the Module Manager uses the API numbers to
56
 
# decide whether the plugin is safe to load or not.
57
 
#
58
 
# Changes to the API version numbers should be documented in
59
 
# apiversion.txt at the root of the source tree.
60
 
NETIDMGR_VERSION_API=5
61
 
 
62
 
# Minimum backwards compatible version.  API versions from
63
 
# NETIDMGR_VERSION_API_MINCOMPAT through NETIDMGR_VERSION_API
64
 
# inclusive, are compatible with this version.
65
 
NETIDMGR_VERSION_API_MINCOMPAT=5
66
 
 
67
 
NETIDMGR_VERSION=$(NETIDMGR_VERSION_MAJOR).$(NETIDMGR_VERSION_MINOR).$(NETIDMGR_VERSION_PATCH).$(NETIDMGR_VERSION_AUX)
68
 
NETIDMGR_VERSIONC=$(NETIDMGR_VERSION_MAJOR),$(NETIDMGR_VERSION_MINOR),$(NETIDMGR_VERSION_PATCH),$(NETIDMGR_VERSION_AUX)
69
 
 
70
 
# Source information
71
 
NETIDMGR_SRC_COMPANY_1033=Massachusetts Institute of Technology
72
 
NETIDMGR_SRC_COPYRIGHT_1033=(C) 2005 Massachusetts Institute of Technology
73
 
 
74
 
# Choose the default build type if one is not set
75
 
!if ("$(KH_BUILD)" != "DEBUG") && ("$(KH_BUILD)" != "RETAIL")
76
 
!  if defined(NODEBUG) && "$(NODEBUG)"=="1"
77
 
KH_BUILD=RETAIL
78
 
!  else
79
 
KH_BUILD=DEBUG
80
 
!  endif
81
 
!endif
82
 
 
83
 
!if "$(KH_BUILD)"=="DEBUG" && defined(NODEBUG) && "$(NODEBUG)"=="1"
84
 
! error The Khimaira build configuration is set for DEBUG while the Platform SDK build environment is set to RETAIL.
85
 
!endif
86
 
 
87
 
# The default release type is PRIVATE is no other type is specified
88
 
!if ("$(KH_RELEASE)" != "OFFICIAL") && ("$(KH_RELEASE)" != "PRERELEASE") && ("$(KH_RELEASE)" != "PRIVATE") && ("$(KH_RELEASE)" != "SPECIAL")
89
 
KH_RELEASE=PRIVATE
90
 
!endif
91
 
 
92
 
# Actual build environment settings
93
 
 
94
 
# See what compiler we are using
95
 
# TODO: Update this to support other compilers
96
 
!if defined(MSVCVer) && "$(MSVCVer)"=="8.0"
97
 
KH_CLVER=vc8
98
 
!else
99
 
KH_CLVER=vc7
100
 
!endif
101
 
 
102
 
# Check for required env vars
103
 
!ifndef MODULE
104
 
!       error MODULE must be specified
105
 
!endif
106
 
!ifndef KH_ROOT
107
 
! ifndef PISMERE
108
 
!   error Either KH_ROOT or PISMERE must be defined
109
 
! else
110
 
KH_ROOT=$(PISMERE)\athena\auth\krb5\src\windows\identity
111
 
! endif
112
 
!endif
113
 
 
114
 
!ifdef NODEBUG
115
 
OUTPRE_DBG=rel
116
 
!else
117
 
OUTPRE_DBG=dbg
118
 
!endif
119
 
OUTPRE1=obj
120
 
OUTPRE2=$(OUTPRE1)\$(CPU)
121
 
OUTPRE3=$(OUTPRE2)\$(OUTPRE_DBG)
122
 
OUTPRE=$(OUTPRE3)^\
123
 
 
124
 
 
125
 
 
126
 
# Output directory structure
127
 
DESTROOT=$(KH_ROOT)\obj
128
 
OBJROOT=$(KH_ROOT)\obj
129
 
SRC=$(KH_ROOT)
130
 
 
131
 
DESTDIR=$(DESTROOT)\$(CPU)\$(OUTPRE_DBG)
132
 
OBJDIR=$(OBJROOT)\$(CPU)\$(OUTPRE_DBG)
133
 
 
134
 
OBJ=$(OBJDIR)\$(MODULE)
135
 
INCDIR=$(DESTDIR)\inc
136
 
#BINDIR=$(DESTDIR)\bin
137
 
BINDIR=$(KH_ROOT)\$(OUTPRE)\W2K
138
 
#LIBDIR=$(DESTDIR)\lib
139
 
LIBDIR=$(KH_ROOT)\$(OUTPRE)\W2K
140
 
DOCDIR=$(DESTDIR)\doc
141
 
 
142
 
# Source directories
143
 
CONFDIR=$(SRC)\config
144
 
 
145
 
# Setup environment for win32.mak
146
 
 
147
 
!if "$(KH_BUILD)" == "RETAIL"
148
 
NODEBUG=1
149
 
!endif
150
 
 
151
 
# Win32.mak
152
 
APPVER=5.0
153
 
TARGETOS=WINNT
154
 
_WIN32_IE=0x0500
155
 
_WIN32_WINNT=0x0500
156
 
!include <Win32.Mak>
157
 
 
158
 
# Program macros
159
 
 
160
 
CD=cd
161
 
RM=del /q
162
 
MKDIR=mkdir
163
 
RMDIR=rmdir
164
 
ECHO=echo
165
 
MAKECMD=nmake /nologo
166
 
CP=copy /y
167
 
LINK=link
168
 
CCSV=perl $(SRC)\config\ccsv.pl
169
 
MC=mc
170
 
 
171
 
!ifdef KH_DOXYFULLPATH
172
 
DOXYGEN=$(KH_DOXYFULLPATH)
173
 
!else
174
 
DOXYGEN=doxygen
175
 
!endif
176
 
 
177
 
!ifdef KH_HHCFULLPATH
178
 
HHC=$(KH_HHCFULLPATH)
179
 
!else
180
 
HHC=hhc
181
 
!endif
182
 
 
183
 
!ifdef KH_KFWPATH
184
 
KFWINCDIR=$(KH_KFWPATH)\inc
185
 
kfwincflags = -I$(KFWINCDIR)\krb5 -I$(KFWINCDIR)\krb5\KerberosIV -I$(KFWINCDIR)\krb4 -I$(KFWINCDIR)\loadfuncs -I$(KFWINCDIR)
186
 
KFWLIBDIR=$(KH_KFWPATH)\lib\$(CPU)
187
 
!else if defined(PISMERE)
188
 
KFWINCDIR=$(PISMERE)\athena\auth\krb5\src\include
189
 
kfwincflags = -I$(KFWINCDIR) -I$(PISMERE)\athena\util\loadfuncs -I$(PISMERE)\athena\auth\krb5\src\include\kerberosIV -I$(PISMERE)\athena\auth\krb4\include
190
 
KFWLIBDIR=$(PISMERE)\target\lib\$(CPU)\$(OUTPRE_DBG)
191
 
!endif
192
 
 
193
 
!ifdef KH_AFSPATH
194
 
AFSINCDIR=$(KH_AFSPATH)\include
195
 
AFSLIBDIR=$(KH_AFSPATH)\lib
196
 
afsincflags=-I$(AFSINCDIR)
197
 
!endif
198
 
 
199
 
#EXTLIBDIR=$(SRC)\ext-lib\$(CPU)
200
 
#EXTINCDIR=-I$(SRC)\ext-inc
201
 
 
202
 
incflags= -I$(INCDIR) -I$(SRC)\include -I. -I$(OBJ) $(kfwincflags) $(afsincflags)
203
 
rincflags= /i $(INCDIR) /i $(SRC)\include /i .
204
 
khdefines=-DUNICODE -D_UNICODE
205
 
khcwarn=/Wp64
206
 
!ifndef KH_NO_WX
207
 
khcwarn=$(khcwarn) /WX
208
 
!endif
209
 
 
210
 
#DEBUG_SYMBOLS
211
 
ldebug=$(ldebug) /DEBUG
212
 
cdebug=$(cdebug) -Os -Zi
213
 
 
214
 
# Additionally, suppress conflicting default library directives that we
215
 
# might pull in from external libraries.
216
 
 
217
 
!ifndef NODEBUG
218
 
lndeflibflag=/NODEFAULTLIB:MSVCRT
219
 
!else
220
 
lndeflibflag=/NODEFAULTLIB:MSVCRTD
221
 
!endif
222
 
 
223
 
khcflags=$(cdebug) $(cflags) $(incflags) $(khdefines) $(khcwarn)
224
 
khlguiflags=$(ldebug) $(guilflags) $(lndeflibflag)
225
 
khlconflags=$(ldebug) $(conlflags) $(lndeflibflag)
226
 
khldllguiflags=$(ldebug) $(dlllflags) $(lndeflibflag)
227
 
khldllconflags=$(ldebug) $(dlllflags) $(lndeflibflag)
228
 
 
229
 
!if "$(KH_RUNTIME)" == "STATIC"
230
 
khcflags=$(khcflags) $(cvarsmt)
231
 
khlguiflags=$(khlguiflags) $(guilibsmt)
232
 
khlconflags=$(khlconflags) $(conlibsmt)
233
 
khldllguiflags=$(khldllguiflags) $(guilibsmt)
234
 
khldllconflags=$(khldllconflags) $(conlibsmt)
235
 
!else
236
 
khcflags=$(khcflags) $(cvarsdll)
237
 
khlguiflags=$(khlguiflags) $(guilibsdll)
238
 
khlconflags=$(khlconflags) $(conlibsdll)
239
 
khldllguiflags=$(khldllguiflags) $(guilibsdll)
240
 
khldllconflags=$(khldllconflags) $(conlibsdll)
241
 
!endif
242
 
 
243
 
C2OBJ=$(CC) $(khcflags) $(KH_AUXCFLAGS) /Fo"$@" /c $**
244
 
 
245
 
EXECONLINK=$(LINK) /NOLOGO $(khlconflags) /OUT:$@ $**
246
 
 
247
 
EXEGUILINK=$(LINK) /NOLOGO $(khlguiflags) /OUT:$@ $**
248
 
 
249
 
DLLCONLINK=$(LINK) /NOLOGO $(khldllconflags) /OUT:$@ /IMPLIB:$(LIBDIR)\$(@B).lib $**
250
 
 
251
 
DLLGUILINK=$(LINK) /NOLOGO $(khldllguiflags) /OUT:$@ /IMPLIB:$(LIBDIR)\$(@B).lib $**
252
 
 
253
 
DLLRESLINK=$(LINK) /NOLOGO /DLL /NOENTRY /MACHINE:$(PROCESSOR_ARCHITECTURE) /OUT:$@ $**
254
 
 
255
 
RC2RES=$(RC) $(RFLAGS) $(rincflags) /fo $@ $**
256
 
 
257
 
MC2RC=$(MC) $(MCFLAGS) -h $(OBJ)\ -m 1024 -r $(OBJ)\ -x $(OBJ)\ $**
258
 
 
259
 
{}.c{$(OBJ)}.obj:
260
 
        $(C2OBJ)
261
 
 
262
 
{$(OBJ)}.c{$(OBJ)}.obj:
263
 
        $(C2OBJ)
264
 
 
265
 
{}.h{$(INCDIR)}.h:
266
 
        $(CP) $** $@
267
 
 
268
 
{}.rc{$(OBJ)}.res:
269
 
        $(RC2RES)
270
 
 
271
 
{$(OBJ)}.rc{$(OBJ)}.res:
272
 
        $(RC2RES)
273
 
 
274
 
clean::
275
 
!if exist($(OBJ))
276
 
        $(RM) $(OBJ)\
277
 
!endif
278
 
 
279
 
test::
280
 
 
281
 
mkdirs::
282
 
!if !exist($(LIBDIR))
283
 
        $(MKDIR) $(LIBDIR)
284
 
!endif
285
 
!if !exist($(BINDIR))
286
 
        $(MKDIR) $(BINDIR)
287
 
!endif
288
 
!if !exist($(OBJ))
289
 
        $(MKDIR) $(OBJ)
290
 
!endif
291
 
 
292
 
TAGFILE = $(SRC)\TAGS
293
 
 
294
 
etag::
295
 
        etags -o $(TAGFILE) -a *.c *.h
296
 
 
297
 
.SUFFIXES: .h
298
 
 
299
 
!endif
 
1
#
 
2
#  Khimaira : Win32 configuration makefile
 
3
#             This file will be included by all the makefiles
 
4
#             in the build tree.
 
5
#
 
6
# Copyright (c) 2004,2005,2006 Massachusetts Institute of Technology
 
7
# Copyright (c) 2006,2007 Secure Endpoints Inc.
 
8
#
 
9
# Permission is hereby granted, free of charge, to any person
 
10
# obtaining a copy of this software and associated documentation files
 
11
# (the "Software"), to deal in the Software without restriction,
 
12
# including without limitation the rights to use, copy, modify, merge,
 
13
# publish, distribute, sublicense, and/or sell copies of the Software,
 
14
# and to permit persons to whom the Software is furnished to do so,
 
15
# subject to the following conditions:
 
16
#
 
17
# The above copyright notice and this permission notice shall be
 
18
# included in all copies or substantial portions of the Software.
 
19
#
 
20
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 
21
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 
22
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 
23
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
 
24
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 
25
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
 
26
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 
27
# SOFTWARE.
 
28
 
 
29
!ifndef KHIMAIRA_WIN32_CONFIG
 
30
KHIMAIRA_WIN32_CONFIG=1
 
31
 
 
32
# Environment Variables
 
33
#  The following environment variables MUST be set:
 
34
#   KH_ROOT : Root of the source tree.
 
35
#   KH_BUILD: One of DEBUG or RETAIL
 
36
#
 
37
#  The following environment variables are optional:
 
38
#   KH_RUNTIME: One of STATIC or DLL, specifies whether the CRT libs
 
39
#               are linked statically or through MSVCRT.DLL.
 
40
#   KH_AUXCFLAGS: Optional flags for CL
 
41
#   KH_RELEASE: Release type.  One of OFFICIAL, PRERELEASE, PRIVATE or SPECIAL.
 
42
#      OFFICIAL   : An official release of Khimaira
 
43
#      PREPRELEASE: A beta/release candidate release
 
44
#      PRIVATE    : Private build
 
45
#      SPECIAL    : Special build.  Typically one with non-mainline patches.
 
46
 
 
47
# Version info
 
48
NETIDMGR_VERSION_MAJOR=1
 
49
NETIDMGR_VERSION_MINOR=3
 
50
NETIDMGR_VERSION_PATCH=1
 
51
NETIDMGR_VERSION_AUX=0
 
52
NETIDMGR_RELEASEDESC=
 
53
 
 
54
# The API version.  This number must be incremented each time the API
 
55
# changes.  Plugins specify the version of the API that they were
 
56
# compiled against and the Module Manager uses the API numbers to
 
57
# decide whether the plugin is safe to load or not.
 
58
#
 
59
# Changes to the API version numbers should be documented in
 
60
# apiversion.txt at the root of the source tree.
 
61
NETIDMGR_VERSION_API=10
 
62
 
 
63
# Minimum backwards compatible version.  API versions from
 
64
# NETIDMGR_VERSION_API_MINCOMPAT through NETIDMGR_VERSION_API
 
65
# inclusive, are compatible with this version.
 
66
NETIDMGR_VERSION_API_MINCOMPAT=5
 
67
 
 
68
NETIDMGR_VERSION=$(NETIDMGR_VERSION_MAJOR).$(NETIDMGR_VERSION_MINOR).$(NETIDMGR_VERSION_PATCH).$(NETIDMGR_VERSION_AUX)
 
69
NETIDMGR_VERSIONC=$(NETIDMGR_VERSION_MAJOR),$(NETIDMGR_VERSION_MINOR),$(NETIDMGR_VERSION_PATCH),$(NETIDMGR_VERSION_AUX)
 
70
 
 
71
# Source information
 
72
NETIDMGR_SRC_COMPANY_1033=Massachusetts Institute of Technology
 
73
NETIDMGR_SRC_COPYRIGHT_1033=(C) 2005-2007 Massachusetts Institute of Technology
 
74
 
 
75
# Choose the default build type if one is not set
 
76
!if ("$(KH_BUILD)" != "DEBUG") && ("$(KH_BUILD)" != "RETAIL")
 
77
!  if defined(NODEBUG) && "$(NODEBUG)"=="1"
 
78
KH_BUILD=RETAIL
 
79
!  else
 
80
KH_BUILD=DEBUG
 
81
!  endif
 
82
!endif
 
83
 
 
84
!if "$(KH_BUILD)"=="DEBUG" && defined(NODEBUG) && "$(NODEBUG)"=="1"
 
85
! error The Khimaira build configuration is set for DEBUG while the Platform SDK build environment is set to RETAIL.
 
86
!endif
 
87
 
 
88
# The default release type is PRIVATE is no other type is specified
 
89
!if ("$(KH_RELEASE)" != "OFFICIAL") && ("$(KH_RELEASE)" != "PRERELEASE") && ("$(KH_RELEASE)" != "PRIVATE") && ("$(KH_RELEASE)" != "SPECIAL")
 
90
KH_RELEASE=PRIVATE
 
91
!endif
 
92
 
 
93
# Actual build environment settings
 
94
 
 
95
# See what compiler we are using
 
96
# TODO: Update this to support other compilers
 
97
!if defined(MSVCVer) && "$(MSVCVer)"=="8.0"
 
98
KH_CLVER=vc8
 
99
!else
 
100
KH_CLVER=vc7
 
101
!endif
 
102
 
 
103
# Check for required env vars
 
104
!ifndef MODULE
 
105
!       error MODULE must be specified
 
106
!endif
 
107
!ifndef KH_ROOT
 
108
! ifndef PISMERE
 
109
!   error Either KH_ROOT or PISMERE must be defined
 
110
! else
 
111
KH_ROOT=$(PISMERE)\athena\auth\krb5\src\windows\identity
 
112
! endif
 
113
!endif
 
114
 
 
115
!ifdef NODEBUG
 
116
OUTPRE_DBG=rel
 
117
!else
 
118
OUTPRE_DBG=dbg
 
119
!endif
 
120
OUTPRE1=obj
 
121
OUTPRE2=$(OUTPRE1)\$(CPU)
 
122
OUTPRE3=$(OUTPRE2)\$(OUTPRE_DBG)
 
123
OUTPRE=$(OUTPRE3)^\
 
124
 
 
125
 
 
126
 
 
127
# Output directory structure
 
128
DESTROOT=$(KH_ROOT)\obj
 
129
OBJROOT=$(KH_ROOT)\obj
 
130
SRC=$(KH_ROOT)
 
131
 
 
132
DESTDIR=$(DESTROOT)\$(CPU)\$(OUTPRE_DBG)
 
133
OBJDIR=$(OBJROOT)\$(CPU)\$(OUTPRE_DBG)
 
134
 
 
135
OBJ=$(OBJDIR)\$(MODULE)
 
136
INCDIR=$(DESTDIR)\inc
 
137
#BINDIR=$(DESTDIR)\bin
 
138
BINDIR=$(KH_ROOT)\$(OUTPRE)\W2K
 
139
#LIBDIR=$(DESTDIR)\lib
 
140
LIBDIR=$(KH_ROOT)\$(OUTPRE)\W2K
 
141
DOCDIR=$(DESTDIR)\doc
 
142
 
 
143
# Source directories
 
144
CONFDIR=$(SRC)\config
 
145
 
 
146
# Setup environment for win32.mak
 
147
 
 
148
!if "$(KH_BUILD)" == "RETAIL"
 
149
NODEBUG=1
 
150
!endif
 
151
 
 
152
# Win32.mak
 
153
APPVER=5.0
 
154
TARGETOS=WINNT
 
155
_WIN32_IE=0x0500
 
156
_WIN32_WINNT=0x0500
 
157
!include <Win32.Mak>
 
158
 
 
159
# Program macros
 
160
 
 
161
CD=cd
 
162
RM=del /q
 
163
MKDIR=md
 
164
RMDIR=rd
 
165
ECHO=echo
 
166
MAKECMD=nmake /nologo
 
167
CP=copy /y
 
168
LINK=link
 
169
CCSV=perl $(SRC)\config\ccsv.pl
 
170
MC=mc
 
171
 
 
172
!ifdef KH_DOXYFULLPATH
 
173
DOXYGEN=$(KH_DOXYFULLPATH)
 
174
!else
 
175
DOXYGEN=doxygen
 
176
!endif
 
177
 
 
178
!ifdef KH_HHCFULLPATH
 
179
HHC=$(KH_HHCFULLPATH)
 
180
!else
 
181
HHC=hhc
 
182
!endif
 
183
 
 
184
!ifdef KH_KFWPATH
 
185
KFWINCDIR=$(KH_KFWPATH)\inc
 
186
kfwincflags = -I$(KFWINCDIR)\krb5 -I$(KFWINCDIR)\krb5\KerberosIV -I$(KFWINCDIR)\krb4 -I$(KFWINCDIR)\loadfuncs -I$(KFWINCDIR)
 
187
KFWLIBDIR=$(KH_KFWPATH)\lib\$(CPU)
 
188
!else if defined(PISMERE)
 
189
KFWINCDIR=$(PISMERE)\athena\auth\krb5\src\include
 
190
kfwincflags = -I$(KFWINCDIR) -I$(PISMERE)\athena\util\loadfuncs -I$(PISMERE)\athena\auth\krb5\src\include\kerberosIV -I$(PISMERE)\athena\auth\krb4\include
 
191
KFWLIBDIR=$(PISMERE)\target\lib\$(CPU)\$(OUTPRE_DBG)
 
192
!endif
 
193
 
 
194
!ifdef KH_AFSPATH
 
195
AFSINCDIR=$(KH_AFSPATH)\include
 
196
AFSLIBDIR=$(KH_AFSPATH)\lib
 
197
afsincflags=-I$(AFSINCDIR)
 
198
!endif
 
199
 
 
200
#EXTLIBDIR=$(SRC)\ext-lib\$(CPU)
 
201
#EXTINCDIR=-I$(SRC)\ext-inc
 
202
 
 
203
incflags= -I$(INCDIR) -I$(SRC)\include -I. -I$(OBJ) $(kfwincflags) $(afsincflags)
 
204
rincflags= /i $(INCDIR) /i $(SRC)\include /i .
 
205
khdefines=-DUNICODE -D_UNICODE
 
206
khcwarn=/Wp64
 
207
!ifndef KH_NO_WX
 
208
khcwarn=$(khcwarn) /WX
 
209
!endif
 
210
 
 
211
!if "$(CPU)" == "i386"
 
212
khdefines=$(khdefines) -D_USE_32BIT_TIME_T
 
213
!endif
 
214
 
 
215
#DEBUG_SYMBOLS
 
216
ldebug=$(ldebug) /DEBUG
 
217
cdebug=$(cdebug) -Os -Zi
 
218
 
 
219
# Additionally, suppress conflicting default library directives that we
 
220
# might pull in from external libraries.
 
221
 
 
222
!ifndef NODEBUG
 
223
lndeflibflag=/NODEFAULTLIB:MSVCRT
 
224
!else
 
225
lndeflibflag=/NODEFAULTLIB:MSVCRTD
 
226
!endif
 
227
 
 
228
khcflags=$(cdebug) $(cflags) $(incflags) $(khdefines) $(khcwarn)
 
229
khlguiflags=$(ldebug) $(guilflags) $(lndeflibflag)
 
230
khlconflags=$(ldebug) $(conlflags) $(lndeflibflag)
 
231
khldllguiflags=$(ldebug) $(dlllflags) $(lndeflibflag)
 
232
khldllconflags=$(ldebug) $(dlllflags) $(lndeflibflag)
 
233
 
 
234
!if "$(KH_RUNTIME)" == "STATIC"
 
235
khcflags=$(khcflags) $(cvarsmt)
 
236
khlguiflags=$(khlguiflags) $(guilibsmt)
 
237
khlconflags=$(khlconflags) $(conlibsmt)
 
238
khldllguiflags=$(khldllguiflags) $(guilibsmt)
 
239
khldllconflags=$(khldllconflags) $(conlibsmt)
 
240
!else
 
241
khcflags=$(khcflags) $(cvarsdll)
 
242
khlguiflags=$(khlguiflags) $(guilibsdll)
 
243
khlconflags=$(khlconflags) $(conlibsdll)
 
244
khldllguiflags=$(khldllguiflags) $(guilibsdll)
 
245
khldllconflags=$(khldllconflags) $(conlibsdll)
 
246
!endif
 
247
 
 
248
C2OBJ=$(CC) $(khcflags) $(KH_AUXCFLAGS) /Fo"$@" /c $**
 
249
 
 
250
EXECONLINK=$(LINK) /NOLOGO $(khlconflags) /OUT:$@ $**
 
251
 
 
252
EXEGUILINK=$(LINK) /NOLOGO $(khlguiflags) /OUT:$@ $**
 
253
 
 
254
DLLCONLINK=$(LINK) /NOLOGO $(khldllconflags) /OUT:$@ /IMPLIB:$(LIBDIR)\$(@B).lib $**
 
255
 
 
256
DLLGUILINK=$(LINK) /NOLOGO $(khldllguiflags) /OUT:$@ /IMPLIB:$(LIBDIR)\$(@B).lib $**
 
257
 
 
258
DLLRESLINK=$(LINK) /NOLOGO /DLL /NOENTRY /MACHINE:$(PROCESSOR_ARCHITECTURE) /OUT:$@ $**
 
259
 
 
260
RC2RES=$(RC) $(RFLAGS) $(rincflags) /fo $@ $**
 
261
 
 
262
MC2RC=$(MC) $(MCFLAGS) -h $(OBJ)\ -m 1024 -r $(OBJ)\ -x $(OBJ)\ $**
 
263
 
 
264
{}.c{$(OBJ)}.obj:
 
265
        $(C2OBJ)
 
266
 
 
267
{$(OBJ)}.c{$(OBJ)}.obj:
 
268
        $(C2OBJ)
 
269
 
 
270
{}.h{$(INCDIR)}.h:
 
271
        $(CP) $** $@
 
272
 
 
273
{}.rc{$(OBJ)}.res:
 
274
        $(RC2RES)
 
275
 
 
276
{$(OBJ)}.rc{$(OBJ)}.res:
 
277
        $(RC2RES)
 
278
 
 
279
clean::
 
280
!if exist($(OBJ))
 
281
        $(RM) $(OBJ)\
 
282
!endif
 
283
        if exist vc70.pdb $(RM) vc70.pdb
 
284
        if exist vc80.pdb $(RM) vc80.pdb
 
285
 
 
286
test::
 
287
 
 
288
mkdirs::
 
289
!if !exist($(LIBDIR))
 
290
        $(MKDIR) $(LIBDIR)
 
291
!endif
 
292
!if !exist($(BINDIR))
 
293
        $(MKDIR) $(BINDIR)
 
294
!endif
 
295
!if !exist($(OBJ))
 
296
        $(MKDIR) $(OBJ)
 
297
!endif
 
298
 
 
299
TAGFILE = $(SRC)\TAGS
 
300
 
 
301
etag::
 
302
        etags -o $(TAGFILE) -a *.c *.h
 
303
 
 
304
.SUFFIXES: .h
 
305
 
 
306
!endif