1
- # Makefile for Microsoft Visual C++ 5.0 (or compat)
1
+ # Makefile for Microsoft Visual C++ 6.0-8.0
2
2
3
- # Will build a Win32 static library libpq(d).lib
4
- # and a Win32 dynamic library libpq(d).dll with import library libpq(d)dll.lib
3
+ # Will build a static library libpq(d).lib
4
+ # and a dynamic library libpq(d).dll with import library libpq(d)dll.lib
5
5
# USE_SSL=1 will compile with OpenSSL
6
+ # USE_KFW=1 will compile with kfw(kerberos for Windows)
6
7
# DEBUG=1 compiles with debugging symbols
7
8
# ENABLE_THREAD_SAFETY=1 compiles with threading enabled
9
+ # CPU="i386" or CPU environment of nmake.exe (AMD64 or IA64)
8
10
11
+ !IF "$(CPU)" == ""
12
+ CPU =i386
9
13
!MESSAGE Building the Win32 static library...
10
14
!MESSAGE
15
+ !ELSE
16
+ ADD_DEFINES =/D "WIN64" /Wp64
17
+ !MESSAGE Building the Win64 static library...
18
+ !MESSAGE
19
+ !ENDIF
11
20
12
21
!IFDEF DEBUG
13
22
OPT =/Od /Zi /MDd
@@ -21,6 +30,26 @@ DEBUGDEF=/D NDEBUG
21
30
OUTFILENAME =libpq
22
31
!ENDIF
23
32
33
+ !IF "$(SSL_INC)" == ""
34
+ SSL_INC =C:\OpenSSL\include
35
+ !MESSAGE Using default OpenSSL Include directory : $(SSL_INC )
36
+ !ENDIF
37
+
38
+ !IF "$(SSL_LIB_PATH)" == ""
39
+ SSL_LIB_PATH =C:\OpenSSL\lib\VC
40
+ !MESSAGE Using default OpenSSL Library directory : $(SSL_LIB_PATH )
41
+ !ENDIF
42
+
43
+ !IF "$(KFW_INC)" == ""
44
+ KFW_INC =C:\kfw-2.6.5\inc
45
+ !MESSAGE Using default Kerberos Include directory : $(KFW_INC )
46
+ !ENDIF
47
+
48
+ !IF "$(KFW_LIB_PATH)" == ""
49
+ KFW_LIB_PATH =C:\kfw-2.6.5\lib\$(CPU )
50
+ !MESSAGE Using default Kerberos Library directory : $(KFW_LIB_PATH )
51
+ !ENDIF
52
+
24
53
!IF "$(OS)" == "Windows_NT"
25
54
NULL =
26
55
!ELSE
@@ -74,7 +103,7 @@ CLEAN :
74
103
-@erase " $( OUTDIR) \libpq.res"
75
104
-@erase " $( OUTDIR) \$ (OUTFILENAME).dll"
76
105
-@erase " $( OUTDIR) \$ (OUTFILENAME)dll.exp"
77
- -@erase " $( INTDIR ) \ pg_config_paths.h"
106
+ -@erase pg_config_paths.h"
78
107
79
108
80
109
LIB32 =link.exe -lib
@@ -107,27 +136,36 @@ LIB32_OBJS= \
107
136
"$(INTDIR ) \pthread-win32.obj"
108
137
109
138
110
- config : ..\..\include\pg_config.h pg_config_paths.h
139
+ config : ..\..\include\pg_config.h pg_config_paths.h ..\..\include\pg_config_os.h
111
140
112
141
..\..\include\pg_config.h : ..\..\include\pg_config.h.win32
113
142
copy ..\. .\i nclude\p g_config.h.win32 ..\. .\i nclude\p g_config.h
114
143
144
+ ..\..\include\pg_config_os.h :
145
+ copy ..\. .\i nclude\p ort\w in32.h ..\. .\i nclude\p g_config_os.h
146
+
115
147
pg_config_paths.h : win32.mak
116
148
echo # define SYSCONFDIR "" > pg_config_paths.h
117
149
118
150
"$(OUTDIR ) " :
119
151
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
120
152
121
- CPP_PROJ =/nologo /W3 /EHsc $(OPT ) /I "..\..\include" /I "..\..\include\port\win32" /I "..\..\include\port\win32_msvc" /I "..\..\port" /I. /D "FRONTEND" $(DEBUGDEF ) /D\
122
- "WIN32" /D "_WINDOWS" /Fp"$(INTDIR ) \libpq.pch" \
153
+ CPP_PROJ =/nologo /W3 /EHsc $(OPT ) /I "..\..\include" /I "..\..\include\port\win32" /I "..\..\include\port\win32_msvc" /I "..\..\port" /I. /I "$(SSL_INC ) " \
154
+ /D "FRONTEND" $(DEBUGDEF ) \
155
+ /D "WIN32" /D "_WINDOWS" /Fp"$(INTDIR ) \libpq.pch" \
123
156
/Fo"$(INTDIR ) \\" /Fd"$(INTDIR ) \\" /FD /c \
124
- /D "_CRT_SECURE_NO_DEPRECATE"
157
+ /D "_CRT_SECURE_NO_DEPRECATE" $( ADD_DEFINES )
125
158
126
159
!IFDEF USE_SSL
127
160
CPP_PROJ =$(CPP_PROJ ) /D USE_SSL
128
161
SSL_LIBS =ssleay32.lib libeay32.lib gdi32.lib
129
162
!ENDIF
130
163
164
+ !IFDEF USE_KFW
165
+ CPP_PROJ =$(CPP_PROJ ) /D KRB5
166
+ KFW_LIBS =krb5_32.lib comerr32.lib
167
+ !ENDIF
168
+
131
169
!IFDEF ENABLE_THREAD_SAFETY
132
170
CPP_PROJ =$(CPP_PROJ ) /D ENABLE_THREAD_SAFETY
133
171
!ENDIF
@@ -137,15 +175,17 @@ CPP_SBRS=.
137
175
RSC_PROJ =/l 0x409 /fo"$(INTDIR ) \libpq.res"
138
176
139
177
LINK32 =link.exe
140
- LINK32_FLAGS =kernel32.lib user32.lib advapi32.lib shfolder.lib wsock32.lib $(SSL_LIBS ) \
141
- /nologo /subsystem:windows /dll $(LOPT ) /incremental:no\
142
- /pdb:"$(OUTDIR ) \libpqdll.pdb" /machine:I386 /out:"$(OUTDIR ) \$(OUTFILENAME ) .dll"\
143
- /implib:"$(OUTDIR ) \$(OUTFILENAME ) dll.lib" /def:$(OUTFILENAME ) dll.def
178
+ LINK32_FLAGS =kernel32.lib user32.lib advapi32.lib shfolder.lib wsock32.lib $(SSL_LIBS ) $(KFW_LIB ) \
179
+ /nologo /subsystem:windows /dll $(LOPT ) /incremental:no \
180
+ /pdb:"$(OUTDIR ) \libpqdll.pdb" /machine:$(CPU ) \
181
+ /out:"$(OUTDIR ) \$(OUTFILENAME ) .dll"\
182
+ /implib:"$(OUTDIR ) \$(OUTFILENAME ) dll.lib" \
183
+ /libpath:"$(SSL_LIB_PATH ) " /libpath:"$(KFW_LIB_PATH ) " \
184
+ /def:$(OUTFILENAME ) dll.def
144
185
LINK32_OBJS = \
145
186
"$(OUTDIR ) \$(OUTFILENAME ) .lib" \
146
187
"$(OUTDIR ) \libpq.res"
147
188
148
-
149
189
# @<< is a Response file, http://www.opussoftware.com/tutorial/TutMakefile.htm
150
190
151
191
"$(OUTDIR ) \$(OUTFILENAME ) .lib" : "$(OUTDIR ) " $(DEF_FILE ) $(LIB32_OBJS )
0 commit comments