source: gsdl/trunk/src/z3950/win32.mak@ 15907

Last change on this file since 15907 was 15907, checked in by mdewsnip, 16 years ago

Moving "lib" directory into "src", to keep all the source code together. Not tested yet.

  • Property svn:executable set to *
File size: 4.1 KB
Line 
1###########################################################################
2#
3# win32 makefile -- src/z3950
4# A component of the Greenstone digital library software
5# from the New Zealand Digital Library Project at the
6# University of Waikato, New Zealand.
7#
8# Copyright (C) 1999-2008 The New Zealand Digital Library Project
9#
10#
11# This program is free software; you can redistribute it and/or modify
12# it under the terms of the GNU General Public License as published by
13# the Free Software Foundation; either version 2 of the License, or
14# (at your option) any later version.
15#
16# This program is distributed in the hope that it will be useful,
17# but WITHOUT ANY WARRANTY; without even the implied warranty of
18# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19# GNU General Public License for more details.
20#
21# You should have received a copy of the GNU General Public License
22# along with this program; if not, write to the Free Software
23# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24#
25###########################################################################
26
27GSDL_DIR = ..\..
28INDEXERS_DIR = $(GSDL_DIR)\indexers
29PACKAGES_DIR = $(GSDL_DIR)\packages
30COLSERVR_DIR = $(GSDL_DIR)\src\colservr
31PROTOCOL_DIR = $(GSDL_DIR)\src\protocol
32
33
34GSDL_VC4 = 0
35DLL = 0
36DLLDEBUG = 0
37ENABLE_ACCENTFOLD = 1
38USE_SQLITE = 0
39
40
41!IF $(GSDL_VC4)
42CPPFLAGS = -GX
43!ELSE
44CPPFLAGS = -EHsc
45!ENDIF
46
47!IF $(DLL)
48CPPFLAGS = $(CPPFLAGS) -MD
49!ELSE
50!IF ($(DLLDEBUG))
51CPPFLAGS = $(CPPFLAGS) -MDd
52!ENDIF
53!ENDIF
54
55!IF $(ENABLE_ACCENTFOLD)
56ACCENTFOLD_LIBS = "$(INDEXERS_DIR)\packages\unac\libunac.lib" "$(INDEXERS_DIR)\packages\unac\iconv.lib"
57!ELSE
58ACCENTFOLD_LIBS =
59!ENDIF
60
61!IF $(USE_SQLITE)
62SQLITE_LIBS = "$(PACKAGES_DIR)\sqlite\lib\sqlite3.lib"
63!ELSE
64SQLITE_LIBS =
65!ENDIF
66
67
68AR = lib
69CC = cl
70DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE
71# Do NOT add the "recpt" directory here: the z39.50 code should be independent of the receptionist!
72INCLUDES = -I"$(GSDL_DIR)" -I"$(GSDL_DIR)\src\lib" -I"$(COLSERVR_DIR)" -I"$(PROTOCOL_DIR)" \
73 -I"$(INDEXERS_DIR)\mgpp\text" -I"$(PACKAGES_DIR)\yaz\yaz-2.1.4\include" \
74 -I"$(PACKAGES_DIR)\yaz\yaz-2.1.4\client" -I"$(PACKAGES_DIR)\d2m" \
75 -I"$(PACKAGES_DIR)\windows\gdbm\gdbm"
76LDFLAGS =
77LIBS = "$(PACKAGES_DIR)\windows\expat\expat\libexpat.lib" "$(PACKAGES_DIR)\windows\gdbm\gdbm\gdbm.lib" \
78 "$(PACKAGES_DIR)\d2m\libd2m.lib" "$(PACKAGES_DIR)\yaz\yaz-2.1.4\lib\yaz.lib" $(ACCENTFOLD_LIBS) \
79 $(SQLITE_LIBS)
80
81!IF $(GSDL_VC4)
82DEFS=$(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
83INCLUDES = $(INCLUDES) -I"$(PACKAGES_DIR)\windows\stlport\stlport"
84!ENDIF
85
86
87COMPILE = $(CC) -nologo -c $(CPPFLAGS) $(DEFS) $(INCLUDES)
88LINK = $(CC) -nologo -Fe"$@" $(LDFLAGS)
89
90
91.SUFFIXES:
92.SUFFIXES: .c .obj
93.c.obj:
94 $(COMPILE) $<
95
96.SUFFIXES: .cpp .obj
97.cpp.obj:
98 $(COMPILE) $<
99
100
101LIBRARY_SOURCES = \
102 yaz_zclient.c \
103 z3950proto.cpp \
104 z3950proxy.cpp \
105 zparse.tab.c \
106 zparse.yy.c
107
108LIBRARY_OBJECTS = \
109 yaz_zclient.obj \
110 z3950proto.obj \
111 z3950proxy.obj \
112 zparse.tab.obj \
113 zparse.yy.obj
114
115LIBRARY = gsdlz3950.lib
116
117
118SOURCES = \
119 z3950explain.cpp \
120 z3950parser.cpp \
121 z3950server.cpp \
122 z3950_to_gsdl.cpp
123
124OBJECTS = \
125 z3950explain.obj \
126 z3950parser.obj \
127 z3950server.obj \
128 z3950_to_gsdl.obj
129
130GSDL_LIBS = \
131 gsdlz3950.lib \
132 $(PROTOCOL_DIR)\gsdlprotocol.lib \
133 $(COLSERVR_DIR)\gsdlcolservr.lib \
134 $(INDEXERS_DIR)\mg/src/text/libmgtext.lib \
135 $(INDEXERS_DIR)\mg/lib/libmglib.lib \
136 $(INDEXERS_DIR)\mgpp/text/libmgpptext.lib \
137 $(INDEXERS_DIR)\mgpp/lib/libmgpplib.lib \
138 $(GSDL_DIR)\src\lib\gsdllib.lib
139
140EXECUTABLE_OBJECTS = \
141 $(OBJECTS) \
142 $(GSDL_LIBS)
143
144EXECUTABLE = z3950server.exe
145
146
147# Default target: make both gsdlz3950.lib and z3950server.exe
148all: $(LIBRARY) $(EXECUTABLE)
149
150gsdlz3950.lib: $(LIBRARY_OBJECTS)
151 if EXIST $(LIBRARY) del $(LIBRARY)
152 $(AR) -nologo /out:$(LIBRARY) $(LIBRARY_OBJECTS) $(PACKAGES_DIR)/yaz/yaz-2.1.4/win/obj/tabcomplete.obj
153
154z3950server.exe: $(EXECUTABLE_OBJECTS)
155 $(LINK) $(EXECUTABLE_OBJECTS) $(LIBS)
156
157install: $(EXECUTABLE)
158 copy $(EXECUTABLE) "$(GSDL_DIR)\bin\windows"
159
160clean:
161 del *.obj
162 del $(LIBRARY)
163 del $(EXECUTABLE)
Note: See TracBrowser for help on using the repository browser.