root/main/branches/64_bit_Greenstone/greenstone2/common-src/configure.in @ 24031

Revision 23508, 11.3 KB (checked in by sjm84, 9 years ago)

Committing 64 bit changes into the branch

  • Property svn:executable set to *
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
218dnl AC_MSG_CHECKING(to see if architecture is 64-bit)
219dnl arch_64bit=no
220dnl case "$host_cpu" in
221dnl x86_64) arch_64bit=yes ;;
222dnl esac
223
224#moved CORBA MICO directory test to get version of MICO
225if test $USE_CORBA = 1; then
226
227if test $MICO_DIR = "default"; then
228#do something
229MICO_INC="-I packages/mico/mico/include"
230else
231#build the micotest program
232MICO_INC= ""
233if test $MICO_DIR != yes; then
234MICO_INC="-I $MICO_DIR"
235fi
236fi
237
238#get MICO_VER value
239sh -c "$CC -c micotest.cpp -o micotest.o $MICO_INC 2>&1" > /dev/null
240sh -c "$CC -o micotest micotest.o -lstdc++ 2>&1" > /dev/null
241MICO_VER=`./micotest` || MICO_VER=2.3.5
242sh -c "rm micotest"
243sh -c "rm micotest.o"
244
245#do test of MICO_VER
246if test MICO_VER != 0; then
247AC_DEFINE(MICO_VER)
248AC_SUBST(MICO_VER)
249fi
250#end USE_CORBA test
251fi
252
253dnl Checks for typedefs, structures, and compiler characteristics.
254AC_AIX
255AC_ISC_POSIX
256AC_MINIX
257fp_C_PROTOTYPES
258AC_C_CONST
259AC_TYPE_OFF_T
260AC_TYPE_SIZE_T
261AC_HEADER_TIME
262AC_STRUCT_TM
263
264dnl --- This should be in the stdc checking -----------------
265if test "$ac_cv_prog_cc_stdc" = '-Xc'; then
266dnl The Pyramids running SMP_DC.OSx on MIPS r3000 chips with
267dnl /usr/opt/cc3.11/bin/cc treat -Xc as full ANSI mode - no POSIX or
268dnl XOPEN extensions (like popen).
269dnl Unfortunately -D_{XOPEN,POSIX}_SOURCE can't provide all that mg
270dnl needs. So drop back to -Xa
271AC_TRY_COMPILE(
272[#include <stdio.h>
273], [ FILE *rubbish = popen("yes", "r"); ],,
274[CC="`echo $CC | sed 's/-Xc/-Xa/'`"    ac_cv_prog_cc_stdc='-Xa'])
275fi
276dnl ----------------------
277
278
279dnl Checks for libraries.
280dnl check for -lg:
281AC_HAVE_LIBRARY(g)
282dnl check for -lm:
283AC_HAVE_LIBRARY(m)
284dnl check for -lcrypt:
285AC_HAVE_LIBRARY(crypt)
286#if test $ENABLE_ACCENTFOLD = 1; then
287#AC_HAVE_LIBRARY(iconv)
288#fi
289
290dnl Checks for header files.
291AC_HEADER_DIRENT
292AC_HEADER_STDC
293AC_CHECK_HEADERS(fcntl.h limits.h sys/time.h unistd.h crypt.h string.h memory.h sys/procfs.h sys/stat.h)
294AC_EGREP_HEADER(fread, stdio.h, AC_DEFINE(HAVE_FREAD_DECL))
295AC_EGREP_HEADER(fgetc, stdio.h, AC_DEFINE(HAVE_FGETC_DECL))
296AC_EGREP_HEADER(pr_brksize, sys/procfs.h, AC_DEFINE(HAVE_PR_BRKSIZE))
297
298dnl Checks for library functions.
299AC_FUNC_ALLOCA
300AC_PROG_GCC_TRADITIONAL
301AC_TYPE_SIGNAL
302AC_FUNC_VPRINTF
303AC_CHECK_FUNCS(ftime select strftime strtol getrusage times mallinfo setbuffer getpagesize strerror)
304AC_REPLACE_FUNCS(ftruncate strstr strcasecmp)
305
306dnl see if gettext is in libc. (try the textdomain() function).
307AC_CHECK_FUNC(textdomain, AC_DEFINE(ENABLE_NLS ,1) )
308
309# *** Custom checking (based on GNU tar configure.in) ***
310# ---------------------------------------------------------------------------
311AC_MSG_CHECKING(for HP-UX needing gmalloc)
312if test "`(uname -s) 2> /dev/null`" = 'HP-UX'; then
313  AC_MSG_RESULT(yes)
314  AC_LIBOBJ([gmalloc])
315  AC_DEFINE(HAVE_VALLOC)
316else
317  AC_MSG_RESULT(no)
318  AC_CHECK_FUNCS(valloc)
319fi
320
321# we cannot generate static libraries under Darwin
322AC_MSG_CHECKING(for Apple MacOS X/Darwin)
323if test "`(uname -s) 2> /dev/null`" = 'Darwin'; then
324  AC_MSG_RESULT(yes)
325  STATIC=""
326else
327  AC_MSG_RESULT(no)
328  STATIC="-static "
329fi
330AC_SUBST(STATIC)
331
332fp_WITH_DMALLOC
333fp_WITH_REGEX
334
335# ---------------------------------------------------------------------------
336if test "$ac_cv_func_alloca" = 'no'; then
337dnl    support functions for alloca.c
338  AC_LIBOBJ([xmalloc])
339  AC_LIBOBJ([error])
340fi
341
342
343# ---------------------------------------------------------------------------
344
345dnl
346dnl Switch into C++
347dnl
348AC_LANG_CPLUSPLUS
349
350dnl
351dnl Check if the STL library has any known faults;
352dnl In GCC 2.7.2.x series, some STL library headers are missing
353dnl a file called "new" which is referred to by other headers
354dnl (eg. vector/vector.h); if this applies, then all use of the
355dnl STL will cause a compile fail, so we'd better let the user
356dnl know now, before things really go wrong!
357dnl
358success=no
359AC_MSG_CHECKING("whether STL library has known faults")
360
361dnl - first shot, try simple good old vector on its own
362AC_TRY_COMPILE(
363[#include <vector>
364],
365[],
366success=yes,
367)
368
369dnl - try using the .h equivalent
370if test $success = "no"; then
371AC_TRY_COMPILE(
372[#include <vector.h>
373],
374[],
375success="yes",
376)
377fi
378
379dnl - now try for the objectspace headers
380if test $success = "no"; then
381AC_TRY_COMPILE(
382[#include <ospace\\std\\vector>
383],
384[],
385success="yes",
386)
387fi
388
389if test $success = yes; then
390AC_MSG_RESULT("no")
391else
392AC_MSG_RESULT("yes")
393AC_MSG_ERROR("STL Broken - Obtain newer version of GNU C Compiler")
394fi
395
396gsdlos=`uname | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
397# check for running bash under cygwin
398 if test "`echo $gsdlos | sed 's/cygwin//'`" != "$gsdlos" ;
399 then
400  gsdlos=windows
401 fi
402AC_SUBST(gsdlos)
403
404# check for endianness
405AC_C_BIGENDIAN
406# ---------------------------------------------------------------------------
407if test "$ac_cv_func_alloca" = 'no'; then
408dnl    support functions for alloca.c
409  AC_LIBOBJ([xmalloc.o])
410  AC_LIBOBJ([error])
411fi
412
413# ---------------------------------------------------------------------------
414
415
416dnl
417dnl Locate all children of the modules folder
418dnl
419moduleDirs=""
420MODULEDIRS=""
421if test -d modules ; then
422  for x in `find modules -mindepth 1 -maxdepth 2`; do
423    if test -d "$x"; then
424      d="$x/Makefile.in"
425      if test -e "$d"; then
426  dnl      echo $d
427        moduleDirs="$moduleDirs $x/Makefile"
428        MODULEDIRS="$MODULEDIRS $x"
429      fi
430    fi
431  done
432  echo "Making $moduleDirs in modules directory"
433  AC_SUBST(MODULEDIRS)
434fi
435
436
437# ---------------------------------------------------------------------------
438
439AC_CONFIG_SUBDIRS(packages)
440
441commonsrcprefix=`pwd`
442ac_configure_args="$ac_configure_args --with-libiconv-prefix=$commonsrcprefix/packages/iconv"
443AC_CONFIG_SUBDIRS(indexers)
444
445# the list of folders in the src folder
446srclist="src/lib/Makefile \
447         src/gdbmedit/db2txt/Makefile \
448         src/gdbmedit/txt2db/Makefile \
449         src/gdbmedit/gdbmget/Makefile \
450         src/gdbmedit/gdbmset/Makefile \
451         src/gdbmedit/gdbmkeys/Makefile \
452         src/gdbmedit/gdbmdel/Makefile \
453         src/getpw/Makefile \
454         src/jdbmedit/Makefile"
455
456AC_OUTPUT(packages/Makefile Makefile $srclist $moduleDirs)
457
458
Note: See TracBrowser for help on using the browser.