72f6e86a59c7c3e49b37d54ed3a5a1b97236b923
[openafs.git] / src / WINNT / install / loopback / NTMakefile
1 # rcsid : $Id$
2
3 RELDIR=WINNT\install\loopback
4 !INCLUDE ..\..\..\config\NTMakefile.$(SYS_NAME)
5 !INCLUDE ..\..\..\config\NTMakefile.version
6
7 MEDIABINDIR = $(DESTDIR)\WinInstall\Config
8
9 EXEFILE = $(MEDIABINDIR)\instloop.exe
10
11 EXERES = $(OUT)\instloop.res
12
13 DLLFILE = $(MEDIABINDIR)\afsloopback.dll
14
15 DLLRES = $(OUT)\afsloopback.res
16
17 DLLEXPORTS=\
18         -EXPORT:UnInstallLoopBack \
19         -EXPORT:IsLoopbackInstalled \
20         -EXPORT:InstallLoopBack \
21         -EXPORT:doLoopBackEntryW \
22         -EXPORT:uninstallLoopBackEntryW \
23         -EXPORT:installLoopbackMSI \
24         -EXPORT:uninstallLoopbackMSI
25
26 DLLLIBFILES=\
27         setupapi.lib msi.lib uuid.lib Shell32.lib ole32.lib advapi32.lib wbemuuid.lib
28
29 LINK=link
30
31 # Figure out which DDK include path we require
32 !IF EXIST ($(NTDDKDIR)\netcfgx.h)
33 DDK_INCL = $(NTDDKDIR)
34 !ELSEIF EXIST ($(NTDDKDIR)\INC\WNET\netcfgx.h)
35 DDK_INCL = $(NTDDKDIR)\INC\WNET
36 !ELSEIF EXIST ($(NTDDKDIR)\INC\API\netcfgx.h)
37 DDK_INCL = $(NTDDKDIR)\INC\API
38 !ELSE
39 !ERROR netcfgx.h header file cannot be found.  DDK improperly configured.
40 !ENDIF
41
42 # DDK version 6001 and above contain SDK header files and come with
43 # its own set of runtime header files.  We want to use the Platform
44 # SDK header files.
45 INCLUDE=$(INCLUDE);$(DDK_INCL)
46
47 # afsloopback.dll
48
49 DLLSOURCEFILES = loopbackutils.cpp wmi.cpp renameconnection.cpp
50
51 # The order of these files is significant.  The first in the list
52 # should be an .obj that includes <afx.h> at the top of the source
53 # file.  See Q148652
54 DLLOBJFILES =  $(OUT)\renameconnection.obj $(OUT)\loopbackutils.obj $(OUT)\wmi.obj
55
56 $(EXERES) : instloop.rc AFS_component_version_number.h
57
58 $(DLLRES) : afsloopback.rc AFS_component_version_number.h
59
60 STATICC2OBJ=$(CC) $(cflags) $(afscflags) $(afscdefs) -ML
61
62 $(OUT)\loopbackutils.obj: loopbackutils.cpp
63         $(STATICC2OBJ) -c -DUNICODE -D_UNICODE /Fo$@ $**
64
65 $(OUT)\renameconnection.obj: renameconnection.cpp
66         $(STATICC2OBJ) -c -DUNICODE -D_UNICODE /Fo$@ $**
67
68 $(OUT)\wmi.obj: wmi.cpp
69         $(STATICC2OBJ) -c -DUNICODE -D_UNICODE /Fo$@ $**
70
71 $(DLLFILE): $(DLLOBJFILES) $(DLLRES)
72         $(LINK) -DLL $(DLLEXPORTS) -OUT:$@ $** $(DLLLIBFILES)
73         $(_VC_MANIFEST_EMBED_DLL)
74         $(CODESIGN_USERLAND)
75         $(SYMSTORE_IMPORT)
76
77 # instloop.exe
78
79 EXEOBJFILES = $(DLLOBJFILES) $(OUT)\instloop.obj
80 #EXELIBFILES = $(MEDIABINDIR)\afsloopback.lib
81
82 $(OUT)\instloop.obj: instloop.c
83       $(STATICC2OBJ) -c -DUNICODE -D_UNICODE /Fo$@ $**
84
85 $(EXEFILE): $(EXEOBJFILES) $(EXERES)
86         $(LINK) /OUT:$@ $** $(DLLLIBFILES)
87         $(_VC_MANIFEST_EMBED_EXE)
88         $(CODESIGN_USERLAND)
89         $(SYMSTORE_IMPORT)
90
91 install:  $(DLLFILE) $(EXEFILE)
92
93 clean   ::
94         $(DEL) *.pdb
95         $(DEL) $(EXERES)
96         $(DEL) $(DLLRES)
97         $(DEL) AFS_component_version_number.h
98