source: main/trunk/greenstone2/common-src/src/lib/win32.mak@ 21448

Last change on this file since 21448 was 21448, checked in by ak19, 14 years ago

Now compilation of jdbmnaiveclass only happens when ENABLE_JDBM is set.

  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 3.6 KB
Line 
1###########################################################################
2#
3# win32 makefile -- lib
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
27COMMON_DIR = ..\..
28
29INDEXERS_DIR = $(COMMON_DIR)\indexers
30COMMON_PACKAGES_DIR = $(COMMON_DIR)\packages
31
32
33GSDL_VC4 = 0
34LOCAL_LIBRARY = 0
35DEBUG = 0
36DLL = 0
37DLLDEBUG = 0
38USE_SQLITE = 1
39USE_MSSQL = 0
40
41!IF $(DEBUG)
42CXXFLAGS = -DEBUG -Z7 /errorReport:prompt
43!ELSE
44CXXFLAGS =
45!ENDIF
46
47
48!IF $(GSDL_VC4)
49CXXFLAGS = $(CXXFLAGS) -GX
50!ELSE
51CXXFLAGS = $(CXXFLAGS) -EHsc
52!ENDIF
53
54!IF $(DLL)
55CXXFLAGS = $(CXXFLAGS) -MD
56!ELSE
57!IF ($(DLLDEBUG))
58CXXFLAGS = $(CXXFLAGS) -MDd
59!ENDIF
60!ENDIF
61
62!IF $(USE_MSSQL)
63MSSQL_OBJECTS = mssqldbclass.obj
64MSSQL_SOURCES = mssqldbclass.cpp
65!ELSE
66MSSQL_OBJECTS =
67MSSQL_SOURCES =
68!ENDIF
69
70!IF $(USE_SQLITE)
71SQLITE_INCLUDES = -I"$(COMMON_PACKAGES_DIR)\sqlite\include"
72SQLITE_OBJECTS = sqlitedbclass.obj
73SQLITE_SOURCES = sqlitedbclass.cpp
74!ELSE
75SQLITE_INCLUDES =
76SQLITE_OBJECTS =
77SQLITE_SOURCES =
78!ENDIF
79
80!IF $(ENABLE_JDBM)
81JDBM_SOURCES = jdbmnaiveclass.cpp
82JDBM_OBJECTS = jdbmnaiveclass.o
83!ELSE
84JDBM_SOURCES =
85JDBM_OBJECTS =
86!ENDIF
87
88AR = lib
89CC = cl
90DEFS = -D__WIN32__ -DHAVE_CONFIG_H -DPARADOCNUM -D_LITTLE_ENDIAN -DSHORT_SUFFIX -D_CRT_SECURE_NO_DEPRECATE
91INCLUDES = -I"$(COMMON_DIR)" \
92 -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3" -I"$(COMMON_PACKAGES_DIR)\gdbm\gdbm-1.8.3\windows" \
93 $(SQLITE_INCLUDES)
94
95!IF $(GSDL_VC4)
96DEFS = $(DEFS) -DGSDL_NAMESPACE_BROKEN -DGSDL_USE_IOS_H -D__STL_NO_NEW_IOSTREAMS
97INCLUDES = $(INCLUDES) -I"$(COMMON_PACKAGES_DIR)\windows\stlport\stlport"
98!ENDIF
99!IF $(LOCAL_LIBRARY)
100DEFS = $(DEFS) -DGSDL_LOCAL_LIBRARY
101!ENDIF
102
103
104COMPILE = $(CC) -nologo -c $(CXXFLAGS) $(DEFS) $(INCLUDES)
105
106
107.SUFFIXES:
108.SUFFIXES: .cpp .obj
109.cpp.obj:
110 $(COMPILE) $<
111
112
113SOURCES = \
114 cfgread.cpp \
115 cnfgable.cpp \
116 cnfgator.cpp \
117 dbclass.cpp \
118 display.cpp \
119 fileutil.cpp \
120 gdbmclass.cpp \
121 gsdlsitecfg.cpp \
122 gsdltimes.cpp \
123 gsdltools.cpp \
124 gsdlunicode.cpp \
125 infodbclass.cpp \
126 $(JDBM_SOURCES) \
127 md5.cpp \
128 OIDtools.cpp \
129 phrases.cpp \
130 text_t.cpp \
131 unitool.cpp \
132 $(SQLITE_SOURCES) \
133 $(MSSQL_SOURCES)
134
135OBJECTS = \
136 cfgread.obj \
137 cnfgable.obj \
138 cnfgator.obj \
139 dbclass.obj \
140 display.obj \
141 fileutil.obj \
142 gdbmclass.obj \
143 gsdlsitecfg.obj \
144 gsdltimes.obj \
145 gsdltools.obj \
146 gsdlunicode.obj \
147 infodbclass.obj \
148 $(JDBM_OBJECTS) \
149 md5.obj \
150 OIDtools.obj \
151 phrases.obj \
152 text_t.obj \
153 unitool.obj \
154 $(SQLITE_OBJECTS) \
155 $(MSSQL_OBJECTS)
156
157LIBRARY = gsdllib.lib
158
159
160# Default target: make gsdllib.lib
161all: $(LIBRARY)
162
163gsdllib.lib : $(OBJECTS)
164 if EXIST $(LIBRARY) del $(LIBRARY)
165 $(AR) -nologo /out:$(LIBRARY) $(OBJECTS)
166
167install:
168
169clean:
170 del *.obj
171 del $(LIBRARY)
172
173
174# Always recompile gsdltools in case GSDL_LOCAL_LIBRARY has changed
175gsdltools.obj: FORCE
176
177FORCE:
Note: See TracBrowser for help on using the repository browser.