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

Last change on this file since 24735 was 24075, checked in by davidb, 13 years ago

Updating SQLite to a more recent release (May 2011) supporting casting operations (used in our numeric searching)

File size: 7.8 KB
RevLine 
[16575]1###########################################################################
2#
3# win32 makefile -- common code between gsdl runtime and buildtime
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 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
[19908]27!IF "$(GSDLHOME)"==""
28GSDLHOME = $(MAKEDIR)
29!ELSE
[16576]30GSDLHOME = $(GSDLHOME)
[19908]31!ENDIF
[16575]32COMMONHOME = $(MAKEDIR)
33GSDL_VC4 = 0
[19527]34DEBUG = 0
[16575]35DLL = 0
36DLLDEBUG = 0
[22090]37USE_GDBM = 1
38USE_JDBM = 1
[18061]39USE_SQLITE = 1
[17476]40USE_MSSQL = 0
[21435]41# by default, all indexers are enabled
42ENABLE_MG = 1
43ENABLE_MGPP = 1
44ENABLE_LUCENE = 1
45# jni is disabled by default as this is the default for GS2. GS3 will set this explicitly
46ENABLE_JNI = 0
[16575]47
48MDEFINES = /f win32.mak
49
50INDEXERSDIR = indexers
51
[22090]52COMPILEDIRS = packages\windows\crypt\crypt \
[22769]53 packages\search4j src\lib
[16575]54
[22769]55INSTALLDIRS = packages\expat
[16575]56
[19527]57# src\getpw
58
[16575]59PACKAGEDIRS =
60
[22766]61EXPAT_DIR = packages\expat\expat-1.95.8
[24075]62SQLITE_DIR = packages\sqlite\sqlite-autoconf-3070602
[22090]63JDBM_DIR = packages\jdbm
64JDBMEDIT_DIR = src\jdbmedit
[16575]65
[17502]66MAKECMD = $(MAKE) $(MDEFINES) GSDLHOME="$(GSDLHOME)" BINDIR="$(GSDLHOME)\bin\windows"
[16575]67
68!IF $(GSDL_VC4)
69MAKECMD = $(MAKECMD) GSDL_VC4=1
70!ENDIF
[19527]71!IF $(DEBUG)
72MAKECMD = $(MAKECMD) DEBUG=1
73!ENDIF
[16575]74!IF $(DLL)
75MAKECMD = $(MAKECMD) DLL=1
76!ENDIF
77!IF $(DLLDEBUG)
78MAKECMD = $(MAKECMD) DLLDEBUG=1
79!ENDIF
[22090]80!IF $(ENABLE_JNI)
81MAKECMD = $(MAKECMD) ENABLE_JNI=1
82!ENDIF
83!IF !$(ENABLE_MG)
84MAKECMD = $(MAKECMD) ENABLE_MG=0
85!ENDIF
86!IF !$(ENABLE_MGPP)
87MAKECMD = $(MAKECMD) ENABLE_MGPP=0
88!ENDIF
89!IF !$(ENABLE_LUCENE)
90MAKECMD = $(MAKECMD) ENABLE_LUCENE=0
91!ENDIF
92
93!IF $(USE_GDBM)
94GDBM_DEFINES = -DUSE_GDBM
95COMPILEDIRS = $(COMPILEDIRS) \
96 packages\gdbm\gdbm-1.8.3
97INSTALLDIRS = $(INSTALLDIRS) src\gdbmedit\db2txt src\gdbmedit\txt2db \
98 src\gdbmedit\gdbmset src\gdbmedit\gdbmget \
99 src\gdbmedit\gdbmkeys src\gdbmedit\gdbmdel
100!ELSE
101GDBM_DEFINES =
102MAKECMD = $(MAKECMD) USE_GDBM=0
103!ENDIF
104
105!IF $(USE_JDBM)
106JDBM_DEFINES = -DUSE_JDBM
107PACKAGEDIRS = $(PACKAGEDIRS) $(JDBM_DIR)
108!ELSE
109JDBM_DEFINES =
110MAKECMD = $(MAKECMD) USE_JDBM=0
111!ENDIF
112
[21435]113!IF $(USE_SQLITE)
[22090]114SQLITE_DEFINES = -DUSE_SQLITE
[21435]115PACKAGEDIRS = $(PACKAGEDIRS) $(SQLITE_DIR)
116!ELSE
[22090]117SQLITE_DEFINES =
[21327]118MAKECMD = $(MAKECMD) USE_SQLITE=0
[16575]119!ENDIF
[22090]120
[17476]121!IF $(USE_MSSQL)
[22090]122MSSQL_DEFINES = -DUSE_MSSQL
[17476]123MAKECMD = $(MAKECMD) USE_MSSQL=1
[22090]124!ELSE
125MSSQL_DEFINES =
[17476]126!ENDIF
[16575]127
[18177]128MAKECLEANCMD = $(MAKE) $(MDEFINES) GSDLHOME="$(GSDLHOME)" clean
[16575]129
[22090]130all: win32.mak unzip $(INDEXERSDIR) $(PACKAGEDIRS) $(COMPILEDIRS) $(INSTALLDIRS) $(JDBMEDIT_DIR)
[16575]131
132install: win32.mak $(INDEXERSDIR) $(INSTALLDIRS)
133
[18309]134unzip:
135 cd "$(COMMONHOME)"
136 cd packages\windows\crypt
137 if NOT EXIST "crypt" unzip crypt.zip
138 cd "$(COMMONHOME)"
[22766]139 IF NOT EXIST $(EXPAT_DIR) IF EXIST "$(GSDLHOME)\bin\windows\gunzip.exe" IF EXIST "$(GSDLHOME)\bin\windows\tar.exe" "$(GSDLHOME)\bin\windows\gunzip.exe" -cd "$(EXPAT_DIR).tar.gz" | "$(GSDLHOME)\bin\windows\tar.exe" xv --directory=./packages/expat
140 @IF NOT EXIST $(EXPAT_DIR) echo ****** Couldn't extract archive $(EXPAT_DIR).tar.gz. Extract it manually, or check that gunzip.exe and tar.exe exist in GSDLHOME\bin\windows. ******
141 @IF NOT EXIST $(EXPAT_DIR) exit /b 1
[19909]142 cd "$(COMMONHOME)"
143 cd indexers\packages\windows\iconv
144 if NOT EXIST "iconv" unzip iconv.zip
145 cd "$(COMMONHOME)"
[22090]146
[21327]147!IF "$(USE_SQLITE)" == "1"
[19912]148 IF NOT EXIST $(SQLITE_DIR) IF EXIST "$(GSDLHOME)\bin\windows\gunzip.exe" IF EXIST "$(GSDLHOME)\bin\windows\tar.exe" "$(GSDLHOME)\bin\windows\gunzip.exe" -cd "$(SQLITE_DIR).tar.gz" | "$(GSDLHOME)\bin\windows\tar.exe" xv --directory=./packages/sqlite
[21337]149 @IF NOT EXIST $(SQLITE_DIR) echo ****** Couldn't extract archive $(SQLITE_DIR).tar.gz. Extract it manually, or check that gunzip.exe and tar.exe exist in GSDLHOME\bin\windows. ******
150 @IF NOT EXIST $(SQLITE_DIR) exit /b 1
[22090]151 cd "$(COMMONHOME)"
[21327]152!ENDIF
[18309]153
[22090]154!IF "$(USE_JDBM)" == "1"
155 IF NOT EXIST $(JDBM_DIR)\jdbm-1.0 IF EXIST "$(GSDLHOME)\bin\windows\gunzip.exe" IF EXIST "$(GSDLHOME)\bin\windows\tar.exe" "$(GSDLHOME)\bin\windows\gunzip.exe" -cd "$(JDBM_DIR)\gs-jdbm-1.0.tar.gz" | "$(GSDLHOME)\bin\windows\tar.exe" xv --directory=./packages/jdbm
156 @IF NOT EXIST $(JDBM_DIR)\jdbm-1.0 echo ****** Couldn't extract archive $(JDBM_DIR)\gs-jdbm-1.0.tar.gz. Extract it manually, or check that gunzip.exe and tar.exe exist in GSDLHOME\bin\windows. ******
157 @IF NOT EXIST $(JDBM_DIR)\jdbm-1.0 exit /b 1
158!ENDIF
159
[16575]160clean:
[16577]161 cd "$(COMMONHOME)"
[16575]162 cd packages\windows\crypt\crypt
163 $(MAKECLEANCMD)
[22090]164!IF EXIST ("packages\gdbm\gdbm-1.8.3")
[16575]165 cd "$(COMMONHOME)"
[18078]166 cd packages\gdbm\gdbm-1.8.3
[16575]167 $(MAKECLEANCMD)
[22090]168!ENDIF
[16575]169 cd "$(COMMONHOME)"
[22817]170!IF EXIST (packages\expat)
[22766]171 cd packages\expat
[16575]172 $(MAKECLEANCMD)
173 cd "$(COMMONHOME)"
[22817]174!ENDIF
[16575]175 cd src\lib
176 $(MAKECLEANCMD)
[22090]177!IF EXIST ("src\gdbmedit")
[16575]178 cd "$(COMMONHOME)"
179 cd src\gdbmedit\txt2db
180 $(MAKECLEANCMD)
181 cd "$(COMMONHOME)"
182 cd src\gdbmedit\db2txt
183 $(MAKECLEANCMD)
184 cd "$(COMMONHOME)"
[18443]185 cd src\gdbmedit\gdbmget
186 $(MAKECLEANCMD)
187 cd "$(COMMONHOME)"
188 cd src\gdbmedit\gdbmset
189 $(MAKECLEANCMD)
190 cd "$(COMMONHOME)"
191 cd src\gdbmedit\gdbmkeys
192 $(MAKECLEANCMD)
193 cd "$(COMMONHOME)"
194 cd src\gdbmedit\gdbmdel
195 $(MAKECLEANCMD)
[22090]196!ENDIF
[19527]197# cd "$(COMMONHOME)"
198# cd src\getpw
199# $(MAKECLEANCMD)
[18443]200 cd "$(COMMONHOME)"
[16575]201 cd indexers
[21471]202 set DEBUG=$(DEBUG)
203 set ENABLE_MG=$(ENABLE_MG)
204 set ENABLE_MGPP=$(ENABLE_MGPP)
205 set ENABLE_LUCENE=$(ENABLE_LUCENE)
[16575]206 call winMake.bat clean
[21471]207 set DEBUG=
208 set ENABLE_MG=
209 set ENABLE_MGPP=
210 set ENABLE_LUCENE=
[16575]211 cd "$(COMMONHOME)"
[17502]212 cd packages\search4j
[19265]213 $(MAKECLEANCMD)
[21338]214!IF EXIST ("$(SQLITE_DIR)")
[17502]215 cd "$(COMMONHOME)"
[19265]216 cd "$(SQLITE_DIR)"
217 $(MAKECLEANCMD)
[21821]218 if exist "$(COMMONHOME)\packages\sqlite\lib\sqlite3.lib" del "$(COMMONHOME)\packages\sqlite\lib\sqlite3.lib"
[19265]219!ENDIF
[22090]220 cd "$(COMMONHOME)"
[16575]221
222$(COMPILEDIRS): FORCE
[16577]223 cd "$(COMMONHOME)"
[16575]224 cd "$@"
225 $(MAKECMD)
226 cd "$(GSDLHOME)"
227
[22090]228!IF "$(INSTALLDIRS)" != ""
[16575]229$(INSTALLDIRS): FORCE
[16577]230 cd "$(COMMONHOME)"
[16575]231 cd "$@"
232 $(MAKECMD)
233 $(MAKECMD) install
234 cd "$(COMMONHOME)"
[22090]235!ENDIF
[16575]236
[21332]237$(SQLITE_DIR): FORCE
[16577]238 cd "$(COMMONHOME)"
[16575]239 cd "$@"
240 $(MAKECMD)
241 $(MAKECMD) install
242 cd "$(COMMONHOME)"
243
[22090]244$(JDBM_DIR): FORCE
245 cd "$(COMMONHOME)\$(JDBM_DIR)\jdbm-1.0"
246 set DEBUG=$(DEBUG)
247 call winMake.bat all
248 call winMake.bat install
249 set DEBUG=
250
251$(JDBMEDIT_DIR): FORCE
252!IF "$(USE_JDBM)" == "1"
253 cd "$(COMMONHOME)"
254 cd "$@"
255 set DEBUG=$(DEBUG)
256 call winMake.bat all
257 call winMake.bat install
258 set DEBUG=
259!ENDIF
260
[16575]261$(INDEXERSDIR): FORCE
[16577]262 cd "$(COMMONHOME)"
[16575]263 cd "$@"
[19527]264 set DEBUG=$(DEBUG)
[21327]265 set ENABLE_MG=$(ENABLE_MG)
266 set ENABLE_MGPP=$(ENABLE_MGPP)
267 set ENABLE_LUCENE=$(ENABLE_LUCENE)
268
[21435]269!IF $(ENABLE_JNI)
[21365]270 call winMake.bat all with-jni
271 call winMake.bat install with-jni
272!ELSE
273 call winMake.bat all without-jni
274 call winMake.bat install without-jni
275!ENDIF
[19909]276
[19527]277 set DEBUG=
[21327]278 set ENABLE_MG=
279 set ENABLE_MGPP=
280 set ENABLE_LUCENE=
[16575]281 if NOT EXIST "$(GSDLHOME)\bin\windows" mkdir "$(GSDLHOME)\bin\windows"
282 if NOT EXIST "$(GSDLHOME)\bin\java" mkdir "$(GSDLHOME)\bin\java"
283 for %%i in (bin\*.exe) do \
[21337]284 if exist %%i copy %%i "$(GSDLHOME)\bin\windows"
[16577]285 if EXIST "lucene-gs\LuceneWrapper.jar" copy "lucene-gs\LuceneWrapper.jar" "$(GSDLHOME)\bin\java"
[22090]286 @if NOT EXIST "lucene-gs\LuceneWrapper.jar" echo Warning: Failed to find lucene-gs\LuceneWrapper.jar. Greenstone will not be able to use Lucene for indexing
[16575]287 cd "$(GSDLHOME)"
288
289FORCE:
290
Note: See TracBrowser for help on using the repository browser.