Windows: fix checked UNICODE build of talocale
[openafs.git] / src / WINNT / netidmgr_plugin / NTMakefile
1 #
2 # Copyright (c) 2005,2006 Secure Endpoints Inc.
3 #
4 # Permission is hereby granted, free of charge, to any person
5 # obtaining a copy of this software and associated documentation files
6 # (the "Software"), to deal in the Software without restriction,
7 # including without limitation the rights to use, copy, modify, merge,
8 # publish, distribute, sublicense, and/or sell copies of the Software,
9 # and to permit persons to whom the Software is furnished to do so,
10 # subject to the following conditions:
11 #
12 # The above copyright notice and this permission notice shall be
13 # included in all copies or substantial portions of the Software.
14 #
15 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
19 # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
20 # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
21 # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 # SOFTWARE.
23
24 AFSDEV_AUXRCFLAGS=/i ..\kfw\inc\netidmgr
25 RELDIR=WINNT\netidmgr_plugin
26 !INCLUDE ..\..\config\NTMakefile.$(SYS_NAME)
27 !INCLUDE ..\..\config\NTMakefile.version
28
29 AFSPLUGIN_VERSION_MAJOR=$(AFSPRODUCT_VER_MAJOR)
30 AFSPLUGIN_VERSION_MINOR=$(AFSPRODUCT_VER_MINOR)
31 AFSPLUGIN_VERSION_PATCH=$(AFSPRODUCT_VER_PATCH)
32 AFSPLUGIN_VERSION_AUX  =$(AFSPRODUCT_VER_BUILD)
33
34 AFSPLUGIN_VERSION=$(AFSPLUGIN_VERSION_MAJOR).$(AFSPLUGIN_VERSION_MINOR).$(AFSPLUGIN_VERSION_PATCH).$(AFSPLUGIN_VERSION_AUX)
35 AFSPLUGIN_VERLIST=$(AFSPLUGIN_VERSION_MAJOR),$(AFSPLUGIN_VERSION_MINOR),$(AFSPLUGIN_VERSION_PATCH),$(AFSPLUGIN_VERSION_AUX)
36
37 # short form version numbers
38 TAFSPLUGIN_VERSION=$(AFSPLUGIN_VERSION_MAJOR).$(AFSPLUGIN_VERSION_MINOR).$(AFSPLUGIN_VERSION_PATCH)
39
40 !INCLUDE afsp_version.h.in
41
42 # Directories
43
44 EXEDIR = $(DESTDIR)\root.client\usr\vice\etc
45
46 INCFILEDIR = $(DESTDIR)\include\WINNT
47
48 LIBFILEDIR = $(DESTDIR)\lib
49
50 KFWINCDIR = ..\kfw\inc
51
52 KFWLIBDIR = ..\kfw\lib\$(CPU)
53
54 # Build environment
55
56 kfwincflags=-I$(KFWINCDIR)\krb5\KerberosIV -I$(KFWINCDIR)\loadfuncs -I$(KFWINCDIR)\krb5 -I$(KFWINCDIR)\netidmgr -I$(KFWINCDIR)
57 afsincflags=-I$(DESTDIR)\include -I$(DESTDIR)\include\afs -I$(DESTDIR)\include\rx
58
59 incflags=$(kfwincflags) $(afsincflags) -I.
60 pldefines=-DUNICODE -D_UNICODE
61 cdebug=$(cdebug) -Os -Zi
62 cwarn=$(cwarn) /Wp64
63
64 plcflags=$(cdebug) $(cflags) $(incflags) $(pldefines) $(cwarn) $(cvarsdll)
65
66 PC2OBJ=$(CC) $(plcflags) /Fo"$@" /c $**
67
68 {}.c{$(OBJ)}.obj:
69         $(PC2OBJ)
70
71 # Targets
72
73 CHMFILE=$(EXEDIR)\afsplhlp.chm
74
75 DLLFILE=$(EXEDIR)\afscred.dll
76
77 LIBFILE=$(LIBFILEDIR)\afscred.lib
78
79 INCFILES=                               \
80         AFS_component_version_number.h  \
81         afsp_version.h                  \
82         $(INCFILEDIR)\afspext.h         \
83         $(INCFILEDIR)\afsp_version.h
84
85 OBJFILES=                               \
86         $(OUT)\AFS_component_version_number.obj \
87         $(OUT)\afsfuncs.obj             \
88         $(OUT)\afsplugin.obj            \
89         $(OUT)\main.obj                 \
90         $(OUT)\afsconfig.obj            \
91         $(OUT)\afsconfigdlg.obj         \
92         $(OUT)\afsnewcreds.obj          \
93         $(OUT)\afsext.obj               \
94         $(OUT)\afshelp.obj              \
95         $(OUT)\afsicon.obj              \
96         $(OUT)\dynimport.obj            \
97         $(OUT)\krb5common.obj
98
99 !if "$(CPU)" == "AMD64"
100 LIBFILES=                               \
101         $(KFWLIBDIR)\nidmgr64.lib
102 !else
103 LIBFILES=                               \
104         $(KFWLIBDIR)\nidmgr32.lib
105 !endif
106
107 SDKLIBFILES=                            \
108         $(DESTDIR)\lib\afsauthent.lib   \
109         $(DESTDIR)\lib\libafsconf.lib   \
110         $(DESTDIR)\lib\afs\mtafsutil.lib\
111         $(KFWLIBDIR)\loadfuncs.lib      \
112         htmlhelp.lib                    \
113         shell32.lib                     \
114         comctl32.lib                    \
115         version.lib                     \
116         shlwapi.lib                     \
117         psapi.lib
118
119 VERRESFILE=$(OUT)\version.res
120
121 $(OUT)\afsfuncs.obj: afsfuncs.c
122         $(PC2OBJ)
123
124 $(OUT)\afsplugin.obj: afsplugin.c
125         $(PC2OBJ)
126
127 $(OUT)\main.obj: main.c
128         $(PC2OBJ)
129
130 $(OUT)\afsconfig.obj: afsconfig.c
131         $(PC2OBJ)
132
133 $(OUT)\afsconfigdlg.obj: afsconfigdlg.c
134         $(PC2OBJ)
135
136 $(OUT)\afsnewcreds.obj: afsnewcreds.c
137         $(PC2OBJ)
138
139 $(OUT)\afsext.obj: afsext.c
140         $(PC2OBJ)
141
142 $(OUT)\afshelp.obj: afshelp.c
143         $(PC2OBJ)
144
145 $(OUT)\afsicon.obj: afsicon.c
146         $(PC2OBJ)
147
148 $(OUT)\dynimport.obj: dynimport.c
149         $(PC2OBJ)
150
151 $(OUT)\krb5common.obj: krb5common.c
152         $(PC2OBJ)
153
154 $(DLLFILE): $(OBJFILES) $(VERRESFILE)
155         $(DLLGUILINK) $(LIBFILES) $(SDKLIBFILES)
156         $(_VC_MANIFEST_EMBED_DLL)
157         $(_VC_MANIFEST_CLEAN)
158         $(CODESIGN_USERLAND)
159         $(SYMSTORE_IMPORT)
160
161 dummy:
162
163 $(CHMFILE): dummy
164         $(CD) help
165         nmake /f NTMakefile install
166         $(CD) ..
167
168 install: $(INCFILES) $(CHMFILE) $(DLLFILE) lang
169
170 lang::
171
172 # Repeat this block as necessary redefining LANG for additional
173 # languages.
174
175 # Begin language block
176 LANG=en_us
177
178 LANGDLL=$(EXEDIR)\afscred_$(LANG).dll
179
180 lang:: $(LANGDLL)
181
182 $(LANGDLL): $(OUT)\langres_$(LANG).res $(OUT)\langres_ver_$(LANG).res
183         $(DLLRESLINK)
184         $(CODESIGN_USERLAND)
185
186 $(OUT)\langres_ver_$(LANG).res: version.rc
187         $(RC) /d LANGVER /d LANG_$(LANG) /fo $@ $** 
188
189 $(OUT)\langres_$(LANG).res: lang\$(LANG)\langres.rc
190         $(RC) /fo $@ $**
191 # End language block
192
193 clean::
194         $(DEL) $(INCFILES)
195         $(DEL) *.pdb
196         $(CD) help
197         $(MAKECMD) /f NTMakefile clean
198         $(CD) ..