win95-initial-port-20010430
[openafs.git] / src / config / NTMakefile
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
4 # This software has been released under the terms of the IBM Public
5 # License.  For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
7
8 !INCLUDE NTMakefile.$(SYS_NAME)
9
10 # Relative path to src directory depends on how we got to current directory.
11
12 !IF (EXIST(..\..\src))
13 SRCROOT = ..\..\src
14 !ELSE IF (EXIST(..\..\..\src))
15 SRCROOT = ..\..\..\src
16 !ELSE
17 !ERROR Can not find src directory from current directory.
18 !ENDIF
19
20 INCFILEDIR = $(DESTDIR)\include\afs
21
22 INCFILES =\
23         $(INCFILEDIR)\afs_args.h \
24         $(INCFILEDIR)\debug.h \
25         $(INCFILEDIR)\param.h \
26         $(INCFILEDIR)\afs_sysnames.h \
27         $(INCFILEDIR)\stds.h \
28         $(INCFILEDIR)\icl.h 
29
30
31 $(INCFILEDIR)\param.h: param.$(SYS_NAME).h
32         $(COPY) $? $@
33
34 idirs: doclink
35 !       IF (!EXIST($(DESTDIR)))
36                 $(MKDIR) $(DESTDIR)
37 !       ENDIF
38 !       IF (!EXIST($(DESTDIR)\include))
39                 $(MKDIR) $(DESTDIR)\include
40 !       ENDIF
41 !       IF (!EXIST($(DESTDIR)\include\afs))
42                 $(MKDIR) $(DESTDIR)\include\afs
43 !       ENDIF
44 !       IF (!EXIST($(DESTDIR)\include\rx))
45                 $(MKDIR) $(DESTDIR)\include\rx
46 !       ENDIF
47 !       IF (!EXIST($(DESTDIR)\include\WINNT))
48                 $(MKDIR) $(DESTDIR)\include\WINNT
49 !       ENDIF
50 !       IF (!EXIST($(DESTDIR)\lib))
51                 $(MKDIR) $(DESTDIR)\lib
52 !       ENDIF
53 !       IF (!EXIST($(DESTDIR)\lib\afs))
54                 $(MKDIR) $(DESTDIR)\lib\afs
55 !       ENDIF
56 !       IF (!EXIST($(DESTDIR)\lib\win95))
57                 $(MKDIR) $(DESTDIR)\lib\win95
58 !       ENDIF
59 !       IF (!EXIST($(DESTDIR)\bin))
60                 $(MKDIR) $(DESTDIR)\bin
61 !       ENDIF
62 !       IF (!EXIST($(DESTDIR)\etc))
63                 $(MKDIR) $(DESTDIR)\etc
64 !       ENDIF
65 !       IF (!EXIST($(DESTDIR)\WinInstall))
66                 $(MKDIR) $(DESTDIR)\WinInstall
67 !       ENDIF
68 !       IF (!EXIST($(DESTDIR)\root.server))
69                 $(MKDIR) $(DESTDIR)\root.server
70 !       ENDIF
71 !       IF (!EXIST($(DESTDIR)\root.server\usr))
72                 $(MKDIR) $(DESTDIR)\root.server\usr
73 !       ENDIF
74 !       IF (!EXIST($(DESTDIR)\root.server\usr\afs))
75                 $(MKDIR) $(DESTDIR)\root.server\usr\afs
76 !       ENDIF
77 !       IF (!EXIST($(DESTDIR)\root.server\usr\afs\bin))
78                 $(MKDIR) $(DESTDIR)\root.server\usr\afs\bin
79 !       ENDIF
80 !       IF (!EXIST($(DESTDIR)\root.client))
81                 $(MKDIR) $(DESTDIR)\root.client
82 !       ENDIF
83 !       IF (!EXIST($(DESTDIR)\root.client\usr))
84                 $(MKDIR) $(DESTDIR)\root.client\usr
85 !       ENDIF
86 !       IF (!EXIST($(DESTDIR)\root.client\usr\vice))
87                 $(MKDIR) $(DESTDIR)\root.client\usr\vice
88 !       ENDIF
89 !       IF (!EXIST($(DESTDIR)\root.client\usr\vice\etc))
90                 $(MKDIR) $(DESTDIR)\root.client\usr\vice\etc
91 !       ENDIF
92
93
94 # Create link to docs needed for media build; allow to fail in case
95 # symlink not available, e.g. if using a 3.4a client, since most builds
96 # aren't media builds.
97 doclink:
98 !       IF (EXIST($(DESTDIR)\doc))
99                 - symlink rm $(DESTDIR)\doc
100 !       ENDIF
101         - symlink make $(DESTDIR)\doc doc-pathname
102
103
104 version: $(DESTDIR)\bin\mkvers.exe NTMakefile.version
105
106 NTMakefile.version: NTMakefile.version-CML NTMakefile.version-NOCML
107         $(DEL) NTMakefile.version
108 !       IF (EXIST(..\..\src\CML\state) || EXIST(..\..\..\src\CML\state))
109                 $(COPY) NTMakefile.version-CML NTMakefile.version
110 !       ELSE
111                 $(COPY) NTMakefile.version-NOCML NTMakefile.version
112 !       ENDIF
113
114 $(DESTDIR)\bin\util_cr.exe: util_cr.exe
115         $(COPY) util_cr.exe $(DESTDIR)\bin
116
117 $(DESTDIR)\bin\touch.exe: touch.exe
118         $(COPY) touch.exe $(DESTDIR)\bin
119
120 $(DESTDIR)\bin\mkvers.exe: mkvers.exe
121         $(COPY) mkvers.exe $(DESTDIR)\bin
122
123
124 $(DESTDIR)\NTDllmap.txt: NTDllmap.txt
125         $(COPY) NTDllmap.txt $(DESTDIR)
126
127
128 # $$$: make CR/LF when doing copy here
129 $(DESTDIR)\bin\NTLang.bat: NTLang.bat util_cr.exe
130         $(COPY) NTLang.bat $(DESTDIR)\bin
131         util_cr + $(DESTDIR)\bin\NTLang.bat
132
133 util_cr.obj : util_cr.c
134         $(cc) $(cflags) $(cdebug) $(cvarsdll) $(afscflags) $(afscdefs) $*.c
135
136 util_cr.exe : util_cr.obj
137         $(EXECONLINK)
138
139 langsetup: $(DESTDIR)\bin\NTLang.bat
140
141 install: idirs version $(DESTDIR)\bin\touch.exe $(DESTDIR)\bin\util_cr.exe $(INCFILES) $(DESTDIR)\NTDllmap.txt langsetup
142
143 install9x: install
144
145 # This clean target must be named something different than the universal
146 # 'clean' so that the version file can be removed last.
147 clean_version:
148         $(DEL) NTMakefile.version
149
150 clean::
151         $(DEL) $(DESTDIR)\LIB\*.DLL
152         $(DEL) $(DESTDIR)\bin\mkvers.exe