source: main/trunk/greenstone2/common-src/configure.in@ 24874

Last change on this file since 24874 was 24874, checked in by ak19, 12 years ago

Third set of commits to do with the migration of cgi-bin into common-src, so that upon make install, common-src\cgi-bin will be installed in cgi-bin\GSDLOS(GSDLARCH). The first commit was of changes to files in cgi-bin itself. The second commit was moving cgi-bin. This one involves changes to all the files referring to cgi-bin where this needs to be changed to cgi-bin\OS_and_ARCH.

  • Property svn:executable set to *
File size: 11.7 KB
Line 
1dnl Process this file with autoconf to produce a configure script.
2dnl Use autoconf-2.59 or later... it might not work anymore with
3dnl the older 2.1x versions - jrm21 12/2004
4AC_INIT(src/lib/text_t.h)
5AC_CONFIG_HEADER(config.h)
6
7
8
9
10PACKAGE=gsdl
11VERSION=2.x-svn
12AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
13AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
14AC_SUBST(PACKAGE)
15AC_SUBST(VERSION)
16
17dnl
18dnl Set use of fast cgi
19dnl
20USE_FASTCGI=0
21if test USE_FASTCGI = 1; then
22AC_DEFINE(USE_FASTCGI)
23AC_SUBST(USE_FASTCGI)
24fi
25
26dnl
27dnl Set use of langaction
28dnl
29dnl USE_LANGACTION=0
30if test USE_LANGACTION = 1; then
31AC_DEFINE(USE_LANGACTION)
32AC_SUBST(USE_LANGACTION)
33fi
34
35dnl
36dnl Set use of corba
37dnl
38AC_ARG_ENABLE(corba, [ --enable-corba Enable CORBA support], USE_CORBA=$enableval, USE_CORBA=no)
39if test $USE_CORBA = "yes" -o $USE_CORBA = "1" ; then
40 USE_CORBA=1
41 AC_DEFINE(USE_CORBA,[])
42else
43 USE_CORBA=0
44fi
45AC_SUBST(USE_CORBA)
46
47AC_ARG_WITH(micodir, [ --with-micodir Use installed MICO directory], MICO_DIR=$withval, MICO_DIR="default")
48AC_DEFINE_UNQUOTED(MICO_DIR, "$MICO_DIR")
49AC_SUBST(MICO_DIR)
50
51dnl
52dnl Set use of z39.50
53dnl
54AC_ARG_ENABLE(z3950, [ --enable-z3950 Enable Z39.50 client support], USE_Z3950=$enableval, USE_Z3950=no)
55if test $USE_Z3950 = "yes" -o $USE_Z3950 = "1" ; then
56 USE_Z3950=1
57 AC_DEFINE(USE_Z3950,[])
58else
59 USE_Z3950=0
60fi
61AC_SUBST(USE_Z3950)
62
63dnl
64dnl Set use of yaz - now compiled by default even when z3950 support not required
65dnl
66AC_ARG_ENABLE(yaz, [ --disable-yaz Disable YAZ compilation], USE_YAZ=$enableval, USE_YAZ=yes)
67if test $USE_YAZ = "yes" -o $USE_YAZ = "1" ; then
68 USE_YAZ=1
69 AC_DEFINE(USE_YAZ,[])
70else
71 USE_YAZ=0
72fi
73AC_SUBST(USE_YAZ)
74
75dnl
76dnl Disable all Java compilation
77dnl
78AC_ARG_ENABLE(java, [ --disable-java Disable Java compilation], ENABLE_JAVA=$enableval, ENABLE_JAVA=yes)
79if test $ENABLE_JAVA = "yes" -o $ENABLE_JAVA = "1" ; then
80 ENABLE_JAVA=1
81 if test "x$JAVA_HOME" != "x" ; then
82 echo "Detected JAVA_HOME is set, however this will not be used during compilation"
83 echo "To control the version of 'javac' and 'java' set environment variables JAVAC"
84 echo "and JAVA respectively"
85 export JAVA_HOME=
86 fi
87else
88 ENABLE_JAVA=0
89fi
90AC_SUBST(ENABLE_JAVA)
91
92dnl
93dnl Set use of JDBM (enabled by default)
94dnl
95AC_ARG_ENABLE(jdbm, [ --disable-jdbm Disable JDBM compilation], USE_JDBM=$enableval, USE_JDBM=yes)
96if test $ENABLE_JAVA = "1" -a \( $USE_JDBM = "yes" -o $USE_JDBM = "1" \) ; then
97 USE_JDBM=1
98 AC_DEFINE(USE_JDBM,[])
99else
100 USE_JDBM=0
101fi
102AC_SUBST(USE_JDBM)
103
104dnl
105dnl Set use of GDBM (enabled by default)
106dnl
107AC_ARG_ENABLE(gdbm, [ --disable-gdbm Disable GDBM compilation], USE_GDBM=$enableval, USE_GDBM=yes)
108if test $USE_GDBM = "yes" -o $USE_GDBM = "1" ; then
109 USE_GDBM=1
110 AC_DEFINE(USE_GDBM,[])
111else
112 USE_GDBM=0
113fi
114AC_SUBST(USE_GDBM)
115
116dnl
117dnl disable compilation of accent folding stuff for mgpp (and one day mg)
118dnl
119AC_ARG_ENABLE(accentfold, [ --disable-accentfold Disable Accent Folding for MGPP], ENABLE_ACCENTFOLD=$enableval, ENABLE_ACCENTFOLD=yes)
120if test $ENABLE_ACCENTFOLD = "yes" -o $ENABLE_ACCENTFOLD = "1" ; then
121 ENABLE_ACCENTFOLD=1
122 AC_DEFINE(ENABLE_ACCENTFOLD,[])
123else
124 ENABLE_ACCENTFOLD=0
125fi
126AC_SUBST(ENABLE_ACCENTFOLD)
127
128
129dnl
130dnl Set use of SQLite (enabled by default)
131dnl
132AC_ARG_ENABLE(sqlite, [ --disable-sqlite Disable SQLite support], USE_SQLITE=$enableval, USE_SQLITE=yes)
133if test $USE_SQLITE = "yes" -o $USE_SQLITE = "1" ; then
134 USE_SQLITE=1
135 AC_DEFINE(USE_SQLITE,[])
136else
137 USE_SQLITE=0
138fi
139AC_SUBST(USE_SQLITE)
140
141dnl
142dnl Set compilation of JNI parts of MG and MGPP indexers (disabled by default, which is GS2's default behaviour)
143dnl
144AC_ARG_ENABLE(jni, [ --enable-jni Enable JNI compilation], ENABLE_JNI=$enableval, ENABLE_JNI=no)
145if test $ENABLE_JAVA = "1" -a \( $ENABLE_JNI = "yes" -o $ENABLE_JNI = "1" \) ; then
146 ENABLE_JNI=1
147 AC_DEFINE(ENABLE_JNI,[])
148else
149 ENABLE_JNI=0
150fi
151AC_SUBST(ENABLE_JNI)
152
153dnl
154dnl Set compilation of MG (enabled by default)
155dnl
156AC_ARG_ENABLE(mg, [ --disable-mg Disable MG compilation], ENABLE_MG=$enableval, ENABLE_MG=yes)
157if test $ENABLE_MG = "yes" -o $ENABLE_MG = "1" ; then
158 ENABLE_MG=1
159 AC_DEFINE(ENABLE_MG,[])
160else
161 ENABLE_MG=0
162fi
163AC_SUBST(ENABLE_MG)
164
165dnl
166dnl Set compilation of MGPP (enabled by default)
167dnl
168AC_ARG_ENABLE(mgpp, [ --disable-mgpp Disable MGPP compilation], ENABLE_MGPP=$enableval, ENABLE_MGPP=yes)
169if test $ENABLE_MGPP = "yes" -o $ENABLE_MGPP = "1" ; then
170 ENABLE_MGPP=1
171 AC_DEFINE(ENABLE_MGPP,[])
172else
173 ENABLE_MGPP=0
174fi
175AC_SUBST(ENABLE_MGPP)
176
177dnl
178dnl Set compilation of lucene (enabled by default)
179dnl
180AC_ARG_ENABLE(lucene, [ --disable-lucene Disable Lucene compilation], ENABLE_LUCENE=$enableval, ENABLE_LUCENE=yes)
181if test $ENABLE_JAVA = "1" -a \( $ENABLE_LUCENE = "yes" -o $ENABLE_LUCENE = "1" \) ; then
182 ENABLE_LUCENE=1
183 AC_DEFINE(ENABLE_LUCENE,[])
184else
185 ENABLE_LUCENE=0
186fi
187AC_SUBST(ENABLE_LUCENE)
188
189
190dnl Checks for programs.
191LDFLAGS=$LDFLAGS
192AC_SUBST(LDFLAGS)
193dnl only set CFLAGS if not already set in environment
194if test -z "$CFLAGS"; then
195CFLAGS=-O2
196fi
197AC_SUBST(CFLAGS)
198
199
200AC_PROG_CC
201AC_PROG_CXX
202if test $ENABLE_JAVA = "1" ; then
203 AC_PROG_JAVA
204 AC_PROG_JAVAC
205fi
206AC_PROG_AWK
207AC_PROG_YACC
208dnl get $target_cpu, $target_vendor, and $target_os
209dnl (as well as host_*)
210AC_CANONICAL_SYSTEM
211dnl do we actually want this? It adds a prefix based on host, system etc
212dnl AC_ARG_PROGRAM
213AC_PROG_INSTALL
214AC_PROG_LN_S
215AC_PROG_MAKE_SET
216AC_PROG_RANLIB
217
218AC_MSG_CHECKING(to see if architecture is 64-bit)
219arch_64bit=no
220case "$host_cpu" in
221x86_64) arch_64bit=yes ;;
222esac
223
224if test "$arch_64bit" = yes; then
225 AC_MSG_RESULT(yes)
226 if test -z "$COMPAT32BITFLAGS" ; then
227 COMPAT32BITFLAGS="-m32"
228 fi
229else
230 AC_MSG_RESULT(no)
231 if test -z "$COMPAT32BITFLAGS" ; then
232 COMPAT32BITFLAGS=
233 fi
234fi
235
236# Only need compat32bitflag if using MG or MGPP
237if test "$ENABLE_MG" = "0" ; then
238 COMPAT32BITFLAGS=
239else
240 if test "$ENABLE_MGPP" = "0" ; then
241 COMPAT32BITFLAGS=
242 fi
243fi
244
245export COMPAT32BITFLAGS
246AC_SUBST(COMPAT32BITFLAGS)
247
248
249#moved CORBA MICO directory test to get version of MICO
250if test $USE_CORBA = 1; then
251
252if test $MICO_DIR = "default"; then
253#do something
254MICO_INC="-I packages/mico/mico/include"
255else
256#build the micotest program
257MICO_INC= ""
258if test $MICO_DIR != yes; then
259MICO_INC="-I $MICO_DIR"
260fi
261fi
262
263#get MICO_VER value
264sh -c "$CC -c micotest.cpp -o micotest.o $MICO_INC 2>&1" > /dev/null
265sh -c "$CC -o micotest micotest.o -lstdc++ 2>&1" > /dev/null
266MICO_VER=`./micotest` || MICO_VER=2.3.5
267sh -c "rm micotest"
268sh -c "rm micotest.o"
269
270#do test of MICO_VER
271if test MICO_VER != 0; then
272AC_DEFINE(MICO_VER)
273AC_SUBST(MICO_VER)
274fi
275#end USE_CORBA test
276fi
277
278dnl Checks for typedefs, structures, and compiler characteristics.
279AC_AIX
280AC_ISC_POSIX
281AC_MINIX
282fp_C_PROTOTYPES
283AC_C_CONST
284AC_TYPE_OFF_T
285AC_TYPE_SIZE_T
286AC_HEADER_TIME
287AC_STRUCT_TM
288
289dnl --- This should be in the stdc checking -----------------
290if test "$ac_cv_prog_cc_stdc" = '-Xc'; then
291dnl The Pyramids running SMP_DC.OSx on MIPS r3000 chips with
292dnl /usr/opt/cc3.11/bin/cc treat -Xc as full ANSI mode - no POSIX or
293dnl XOPEN extensions (like popen).
294dnl Unfortunately -D_{XOPEN,POSIX}_SOURCE can't provide all that mg
295dnl needs. So drop back to -Xa
296AC_TRY_COMPILE(
297[#include <stdio.h>
298], [ FILE *rubbish = popen("yes", "r"); ],,
299[CC="`echo $CC | sed 's/-Xc/-Xa/'`" ac_cv_prog_cc_stdc='-Xa'])
300fi
301dnl ----------------------
302
303
304dnl Checks for libraries.
305dnl check for -lg:
306AC_HAVE_LIBRARY(g)
307dnl check for -lm:
308AC_HAVE_LIBRARY(m)
309dnl check for -lcrypt:
310AC_HAVE_LIBRARY(crypt)
311#if test $ENABLE_ACCENTFOLD = 1; then
312#AC_HAVE_LIBRARY(iconv)
313#fi
314
315dnl Checks for header files.
316AC_HEADER_DIRENT
317AC_HEADER_STDC
318AC_CHECK_HEADERS(fcntl.h limits.h sys/time.h unistd.h crypt.h string.h memory.h sys/procfs.h sys/stat.h)
319AC_EGREP_HEADER(fread, stdio.h, AC_DEFINE(HAVE_FREAD_DECL))
320AC_EGREP_HEADER(fgetc, stdio.h, AC_DEFINE(HAVE_FGETC_DECL))
321AC_EGREP_HEADER(pr_brksize, sys/procfs.h, AC_DEFINE(HAVE_PR_BRKSIZE))
322
323dnl Checks for library functions.
324AC_FUNC_ALLOCA
325AC_PROG_GCC_TRADITIONAL
326AC_TYPE_SIGNAL
327AC_FUNC_VPRINTF
328AC_CHECK_FUNCS(ftime select strftime strtol getrusage times mallinfo setbuffer getpagesize strerror)
329AC_REPLACE_FUNCS(ftruncate strstr strcasecmp)
330
331dnl see if gettext is in libc. (try the textdomain() function).
332AC_CHECK_FUNC(textdomain, AC_DEFINE(ENABLE_NLS ,1) )
333
334# *** Custom checking (based on GNU tar configure.in) ***
335# ---------------------------------------------------------------------------
336AC_MSG_CHECKING(for HP-UX needing gmalloc)
337if test "`(uname -s) 2> /dev/null`" = 'HP-UX'; then
338 AC_MSG_RESULT(yes)
339 AC_LIBOBJ([gmalloc])
340 AC_DEFINE(HAVE_VALLOC)
341else
342 AC_MSG_RESULT(no)
343 AC_CHECK_FUNCS(valloc)
344fi
345
346# we cannot generate static libraries under Darwin
347AC_MSG_CHECKING(for Apple MacOS X/Darwin)
348if test "`(uname -s) 2> /dev/null`" = 'Darwin'; then
349 AC_MSG_RESULT(yes)
350 STATIC=""
351else
352 AC_MSG_RESULT(no)
353 STATIC="-static "
354fi
355AC_SUBST(STATIC)
356
357fp_WITH_DMALLOC
358fp_WITH_REGEX
359
360# ---------------------------------------------------------------------------
361if test "$ac_cv_func_alloca" = 'no'; then
362dnl support functions for alloca.c
363 AC_LIBOBJ([xmalloc])
364 AC_LIBOBJ([error])
365fi
366
367
368# ---------------------------------------------------------------------------
369
370dnl
371dnl Switch into C++
372dnl
373AC_LANG_CPLUSPLUS
374
375dnl
376dnl Check if the STL library has any known faults;
377dnl In GCC 2.7.2.x series, some STL library headers are missing
378dnl a file called "new" which is referred to by other headers
379dnl (eg. vector/vector.h); if this applies, then all use of the
380dnl STL will cause a compile fail, so we'd better let the user
381dnl know now, before things really go wrong!
382dnl
383success=no
384AC_MSG_CHECKING("whether STL library has known faults")
385
386dnl - first shot, try simple good old vector on its own
387AC_TRY_COMPILE(
388[#include <vector>
389],
390[],
391success=yes,
392)
393
394dnl - try using the .h equivalent
395if test $success = "no"; then
396AC_TRY_COMPILE(
397[#include <vector.h>
398],
399[],
400success="yes",
401)
402fi
403
404dnl - now try for the objectspace headers
405if test $success = "no"; then
406AC_TRY_COMPILE(
407[#include <ospace\\std\\vector>
408],
409[],
410success="yes",
411)
412fi
413
414if test $success = yes; then
415AC_MSG_RESULT("no")
416else
417AC_MSG_RESULT("yes")
418AC_MSG_ERROR("STL Broken - Obtain newer version of GNU C Compiler")
419fi
420
421gsdlos=`uname | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
422# check for running bash under cygwin
423 if test "`echo $gsdlos | sed 's/cygwin//'`" != "$gsdlos" ;
424 then
425 gsdlos=windows
426 fi
427AC_SUBST(gsdlos)
428
429# check for endianness
430AC_C_BIGENDIAN
431# ---------------------------------------------------------------------------
432if test "$ac_cv_func_alloca" = 'no'; then
433dnl support functions for alloca.c
434 AC_LIBOBJ([xmalloc.o])
435 AC_LIBOBJ([error])
436fi
437
438# ---------------------------------------------------------------------------
439
440
441dnl
442dnl Locate all children of the modules folder
443dnl
444moduleDirs=""
445MODULEDIRS=""
446if test -d modules ; then
447 for x in `find modules -mindepth 1 -maxdepth 2`; do
448 if test -d "$x"; then
449 d="$x/Makefile.in"
450 if test -e "$d"; then
451 dnl echo $d
452 moduleDirs="$moduleDirs $x/Makefile"
453 MODULEDIRS="$MODULEDIRS $x"
454 fi
455 fi
456 done
457 echo "Making $moduleDirs in modules directory"
458 AC_SUBST(MODULEDIRS)
459fi
460
461
462# ---------------------------------------------------------------------------
463
464AC_CONFIG_SUBDIRS(packages)
465
466commonsrcprefix=`pwd`
467ac_configure_args="$ac_configure_args --with-libiconv-prefix=$commonsrcprefix/packages/iconv"
468AC_CONFIG_SUBDIRS(indexers)
469
470# the list of folders in the src folder
471srclist="cgi-bin/Makefile \
472 src/lib/Makefile \
473 src/gdbmedit/db2txt/Makefile \
474 src/gdbmedit/txt2db/Makefile \
475 src/gdbmedit/gdbmget/Makefile \
476 src/gdbmedit/gdbmset/Makefile \
477 src/gdbmedit/gdbmkeys/Makefile \
478 src/gdbmedit/gdbmdel/Makefile \
479 src/getpw/Makefile \
480 src/jdbmedit/Makefile"
481
482AC_OUTPUT(packages/Makefile Makefile $srclist $moduleDirs)
483
484
Note: See TracBrowser for help on using the repository browser.