source: trunk/configure.in @ 2063

Last change on this file since 2063 was 2063, checked in by gah, 14 years ago
File size: 23.2 KB
Line 
1
2AC_INIT([Rappture],[1.1],[rappture@nanohub.org])
3dnl AC_CONFIG_HEADER(src/core/RpConfig.h)
4AC_CONFIG_AUX_DIR(cf)
5AC_CONFIG_HEADER(src/core/config.h)
6
7#------------------------------------------------------------------------
8# Handle the --prefix=... option
9#------------------------------------------------------------------------
10
11if test "${prefix}" = "NONE"; then
12    prefix=/usr/local
13fi
14if test "${exec_prefix}" = "NONE"; then
15    exec_prefix=$prefix
16fi
17
18if test "${libdir}" != "${prefix}/lib"; then
19    LIB_SEARCH_DIRS="-L${prefix}/lib -L${libdir}"
20else
21    LIB_SEARCH_DIRS="-L${libdir}"
22fi
23
24AC_SUBST(LIB_SEARCH_DIRS)
25
26AC_PROG_INSTALL
27AC_PROG_INSTALL
28AC_PROG_RANLIB
29AC_PROG_LN_S
30AC_PROG_MKDIR_P
31AC_PROG_MAKE_SET
32
33# Check for C, C++, and FORTRAN
34AC_PROG_CC
35AC_PROG_CXX
36# Avoid g95
37AC_PROG_F77([g77 gfortran f77 fort77 f90 xlf xlf90 fl32])
38
39AC_LANG([C])
40
41AC_HEADER_STDC
42AC_CHECK_FUNC(atol,,AC_MSG_ERROR(oops! no atol ?!?))
43
44AC_LANG([C++])
45
46AC_CHECK_FUNCS([sysinfo])
47AC_CHECK_HEADERS(sys/sysinfo.h)
48
49AC_CHECK_LIB(m, main,,AC_MSG_ERROR(librappture requires libm))
50AC_CHECK_LIB(stdc++, main,,AC_MSG_ERROR(librappture requires libstdc++))
51AC_CHECK_HEADERS(algorithm,,AC_MSG_WARN(STL classes missing ?))
52AC_CHECK_HEADERS(cctype,,AC_MSG_WARN(STL classes missing ?))
53AC_CHECK_HEADERS(cfloat,,AC_MSG_WARN(STL classes missing ?))
54AC_CHECK_HEADERS(cmath,,AC_MSG_WARN(STL classes missing ?))
55AC_CHECK_HEADERS(cstdio,,AC_MSG_WARN(STL classes missing ?))
56AC_CHECK_HEADERS(cstdlib,,AC_MSG_WARN(STL classes missing ?))
57AC_CHECK_HEADERS(cstring,,AC_MSG_WARN(STL classes missing ?))
58AC_CHECK_HEADERS(fstream,,AC_MSG_WARN(STL classes missing ?))
59AC_CHECK_HEADERS(list,,AC_MSG_WARN(STL classes missing ?))
60AC_CHECK_HEADERS(iostream,,AC_MSG_WARN(STL classes missing ?))
61AC_CHECK_HEADERS(iterator,,AC_MSG_WARN(STL classes missing ?))
62AC_CHECK_HEADERS(sstream,,AC_MSG_WARN(STL classes missing ?))
63AC_CHECK_HEADERS(stack,,AC_MSG_WARN(STL classes missing ?))
64AC_CHECK_HEADERS(string,,AC_MSG_WARN(STL classes missing ?))
65AC_CHECK_HEADERS(vector,,AC_MSG_WARN(STL classes missing ?))
66
67AC_CHECK_HEADERS(assert.h,,AC_MSG_WARN(C headers missing ?))
68AC_CHECK_HEADERS(ctype.h,,AC_MSG_WARN(C headers missing ?))
69AC_CHECK_HEADERS(errno.h,,AC_MSG_WARN(C headers missing ?))
70AC_CHECK_HEADERS(limits.h,,AC_MSG_WARN(C headers missing ?))
71AC_CHECK_HEADERS(string.h,,AC_MSG_WARN(C headers missing ?))
72AC_CHECK_HEADERS(stdlib.h,,AC_MSG_WARN(C headers missing ?))
73AC_CHECK_HEADERS(stddef.h,,AC_MSG_WARN(C headers missing ?))
74AC_CHECK_HEADERS(float.h,,AC_MSG_WARN(C headers missing ?))
75AC_CHECK_HEADERS(math.h,,AC_MSG_WARN(C headers missing ?))
76dnl AC_CHECK_HEADERS(ieeefp.h,,AC_MSG_WARN(C headers missing ?))
77AC_CHECK_HEADERS(malloc.h,,AC_MSG_WARN(C headers missing ?))
78AC_CHECK_HEADERS(memory.h,,AC_MSG_WARN(C headers missing ?))
79AC_CHECK_HEADERS(unistd.h,,AC_MSG_WARN(C headers missing ?))
80
81AC_CHECK_HEADERS(inttypes.h,,AC_MSG_WARN(C headers missing ?))
82if test "${ac_cv_header_inttypes_h}" = "yes" ; then
83  HAVE_INTTYPES_H=1
84else
85  HAVE_INTTYPES_H=0
86fi
87AC_SUBST(HAVE_INTTYPES_H)
88
89
90SC_CONFIG_CFLAGS
91
92make_command=""
93for m in "$MAKE" make gmake gnumake ; do
94  if test "x${m}" != "x" ; then
95    if  ( sh -c "$m --version" 2>/dev/null | grep GNU >/dev/null ) ; then
96      make_command=$m; break;
97    fi
98  fi
99done
100if test "x${make_command}" = "x" ; then
101  AC_MSG_ERROR([Requires GNU make. You can specify a version with \$MAKE])
102fi
103AC_SUBST(MAKE, ${make_command})
104
105AC_ARG_ENABLE(
106    [gui],
107    [AS_HELP_STRING([--enable-gui], [build code related to the graphical user interface @<:@default=yes@:>@])],
108    [],
109    [enable_gui=yes])
110
111ENABLE_GUI=
112if test "$enable_gui" != "no" ; then
113    ENABLE_GUI="yes"
114fi
115AC_SUBST(ENABLE_GUI)
116
117rp_with_tclsh="yes"
118AC_ARG_WITH(
119    [tclsh],
120    [AS_HELP_STRING([--with-tclsh[=DIR]],
121        [location of tclsh @<:@default=yes@:>@])],
122    [],
123    [rp_with_tclsh=$withval])
124
125TCL_VERSION="8.4"
126for dir in \
127 ${exec_prefix} \
128 ${exec_prefix}/lib ; do
129  tclconfig="${dir}/tclConfig.sh"
130  if test -f "$tclconfig" ; then
131    . $tclconfig
132    break
133  fi
134done
135
136TCLSH=""
137if test "${rp_with_tclsh}" != "no" ; then
138  tclsh="tclsh${TCL_VERSION}"
139  if test "${rp_with_tclsh}" = "yes" ; then
140    AC_PATH_PROG(TCLSH, ${tclsh}, [], [${exec_prefix}/bin:${PATH}])
141  else
142    AC_PATH_PROG(TCLSH, ${tclsh}, [], [${rp_with_tclsh}/bin:${rp_with_tclsh}])
143  fi
144  if test "x${TCLSH}" = "x" ; then
145    AC_ERROR([cant find tclsh])
146  fi
147fi
148AC_SUBST(TCLSH)
149
150 
151TCL_INC_SPEC="$TCL_INCLUDE_SPEC"
152
153if test "x$rp_with_tcllib" != "x" ; then
154  tclconfig="${rp_with_tcllib}/tclConfig.sh"
155  if test -f "$tclconfig" ; then
156    . $tclconfig
157  fi
158  TCL_LIB_SPEC="-L${rp_with_tcllib} -ltcl${TCL_VERSION}"
159fi
160if test "x$rp_with_tclinclude" != "x" ; then
161   TCL_INC_SPEC="-I${rp_with_tclinclude}"
162fi
163
164AC_SUBST(TCL_VERSION)
165AC_SUBST(TCL_INC_SPEC)
166AC_SUBST(TCL_LIB_SPEC)
167
168AC_ARG_WITH(
169    [vtk],
170    [AS_HELP_STRING([--with-vtk[=DIR]],
171        [location of vtk library @<:@default=yes@:>@])],
172    [rp_with_vtk=$withval], [rp_with_vtk=yes])
173
174AC_MSG_CHECKING([for vtk])
175VTKDIR=""
176
177if test "$rp_with_vtk" != "no" ; then
178  if test "$rp_with_vtk" = "yes" ; then
179    for path in \
180     $libdir \
181     $prefix/lib \
182     $exec_prefix/lib \
183     /usr/lib
184    do
185      for vtk in $path/vtk-* ; do
186        if test -d "${vtk}" ; then
187          VTKDIR=${vtk}
188        fi
189      done
190      if test "x${VTKDIR}" != "x" ; then
191        break
192      fi
193    done
194  fi
195fi
196AC_SUBST(VTKDIR)
197AC_MSG_RESULT([$VTKDIR])
198
199
200AC_ARG_WITH(
201    [matlab],
202    [AS_HELP_STRING([--with-matlab[=DIR]],
203        [location of matlab and mex compiler @<:@default=yes@:>@])],
204    [rp_with_matlab=$withval],
205    [rp_with_matlab=yes])
206
207MCC=""
208MEX=""
209MEX_ARCH=""
210MEXEXT=""
211MATLAB=
212if test "$rp_with_matlab" != "no" ; then
213  if test "$rp_with_matlab" = "yes" ; then
214    AC_PATH_PROG(MATLAB, matlab)
215  else
216    AC_PATH_PROG(MATLAB, matlab, [], [${rp_with_matlab}/bin:${rp_with_matlab}])
217  fi
218fi
219
220if test "x$MATLAB" != "x" ; then
221  # Found matlab.  May be a symlink to the real binary.  Run "matlab -e"
222  # to tell where matlab is installed.
223
224  matlab_bindir=`${MATLAB} -e | grep "MATLAB=" | sed s/MATLAB=//`/bin
225
226  # Now see if we can find "mex" or "mexext" there.
227  AC_PATH_PROG(MEX, mex, [], [${matlab_bindir}])
228  AC_PATH_PROG(MEXEXT, mexext, [], [${matlab_bindir}])
229
230  # Run "mexext" to get the expected module extension for this platform.
231  AC_MSG_CHECKING([for mex extension])
232  if test "x$MEXEXT" != "x" ; then
233    MEXEXT=`$MEXEXT`
234  else
235    MEXEXT="mexglx"
236  fi
237  AC_MSG_RESULT([$MEXEXT])
238  AC_PATH_PROG(MCC, mcc, [], [${matlab_bindir}])
239  AC_MSG_CHECKING([for mcc extension])
240fi
241
242AC_SUBST(MCC)
243AC_SUBST(MEX)
244AC_SUBST(MATLAB)
245AC_SUBST(MEX_ARCH)
246AC_SUBST(MEXEXT)
247
248# Standard octave search (use the installed version of octave)
249AC_ARG_WITH(
250    [octave],
251    [AS_HELP_STRING([--with-octave[=DIR]],
252        [location of octave compiler MKOCTFILE @<:@default=yes@:>@])],
253    [rp_with_octave=$withval],
254    [rp_with_octave=yes])
255
256OCTAVE=
257OCTAVE2=
258OCTAVE3=
259OCTAVE_VERSION=
260OCTAVE_VERSION_MAJOR=
261MKOCTFILE=
262MKOCTFILE2=
263MKOCTFILE3=
264if test "$rp_with_octave" != "no" ; then
265  if test "$rp_with_octave" = "yes" ; then
266    AC_PATH_PROG(OCTAVE, octave)
267    AC_PATH_PROG(MKOCTFILE, mkoctfile)
268  else
269    MKOCTFILE=$rp_with_octave
270    OCTAVE=$rp_with_octave
271  fi
272fi
273if test "x${OCTAVE}" != "x" ; then
274  OCTAVE_VERSION=`${OCTAVE} -v | grep version | cut -d' ' -f4`
275  OCTAVE_VERSION_MAJOR=`echo ${OCTAVE_VERSION} | cut -d'.' -f1`
276  if test "${OCTAVE_VERSION_MAJOR}" == "3" ; then
277    OCTAVE3=$OCTAVE
278    MKOCTFILE3=$MKOCTFILE
279  fi
280  if test "${OCTAVE_VERSION_MAJOR}" == "2" ; then
281    OCTAVE2=$OCTAVE
282    MKOCTFILE2=$MKOCTFILE
283  fi
284fi
285
286# Check if octave2 was designated *in addition* to the installed version.
287AC_ARG_WITH(
288    [octave2],
289    [AS_HELP_STRING([--with-octave2[=DIR]],
290        [location of octave compiler MKOCTFILE @<:@default=no@:>@])],
291    [rp_with_octave2=$withval],
292    [rp_with_octave2=no])
293
294if test "$rp_with_octave2" != "no" ; then
295  if test "$rp_with_octave2" = "yes" ; then
296    AC_PATH_PROG(octave2, octave)
297    AC_PATH_PROG(mkoctfile2, mkoctfile)
298  else
299    octave2=$rp_with_octave2
300    mkoctfile2=`dirname $rp_with_octave2`/mkoctfile
301  fi
302fi
303if test "x${octave2}" != "x" ; then
304  version=`${octave2} -v | grep version | cut -d' ' -f4`
305  version_major=`echo ${version} | cut -d'.' -f1`
306  if test "$version_major" = "2" ; then
307    OCTAVE2=$octave2
308    MKOCTFILE2=$mkoctfile2
309  fi
310fi
311
312# Check if octave3 was designated *in addition* to the installed version.
313
314AC_ARG_WITH(
315    [octave3],
316    [AS_HELP_STRING([--with-octave3[=DIR]],
317        [location of octave compiler MKOCTFILE @<:@default=no@:>@])],
318    [rp_with_octave3=$withval],
319    [rp_with_octave3=no])
320
321if test "$rp_with_octave3" != "no" ; then
322  if test "$rp_with_octave3" = "yes" ; then
323    AC_PATH_PROG(octave3, octave)
324    AC_PATH_PROG(mkoctfile3, mkoctfile)
325  else
326    octave3=$rp_with_octave3
327    mkoctfile3=`dirname $rp_with_octave3`/mkoctfile
328  fi
329fi
330
331if test "x${octave3}" != "x" ; then
332  version=`${octave3} -v | grep version | cut -d' ' -f4`
333  version_major=`echo ${version} | cut -d'.' -f1`
334  if test "$version_major" = "3" ; then
335    OCTAVE3=$rp_with_octave3
336    MKOCTFILE3=$mkoctfile3
337  fi
338fi
339
340AC_SUBST(OCTAVE2)
341AC_SUBST(OCTAVE3)
342AC_SUBST(OCTAVE)
343AC_SUBST(OCTAVE_VERSION)
344AC_SUBST(OCTAVE_VERSION_MAJOR)
345AC_SUBST(MKOCTFILE)
346AC_SUBST(MKOCTFILE2)
347AC_SUBST(MKOCTFILE3)
348
349AC_ARG_WITH(
350    [perl],
351    [AS_HELP_STRING([--with-perl[=DIR]], [location of perl @<:@default=yes@:>@])],
352    [],
353    [rp_with_perl=yes])
354
355PERL=
356PERL_INCLUDES=
357PERL_ARCHLIB=
358PERL_ARCHLIBEXP=
359PERL_VERSION=
360PERL_VENDORLIB=
361PERL_PRIVLIB=
362PERL_CPPFLAGS=
363PERL_CCFlAGS=
364PERL_VERSION_RV=
365PERL_LIBSPEC=
366if test "$rp_with_perl" != "no" ; then
367  if test "$rp_with_perl" != "yes" ; then
368    AC_PATH_PROG(PERL, perl, [], [$rp_with_perl/bin:$rp_with_perl])
369  else
370    AC_PATH_PROG(PERL, perl)
371  fi
372  if test "x${PERL}" != "x" ; then
373    PERL_ARCHLIB=`${PERL} -MConfig -e 'print $Config{archlib}'`
374    PERL_VERSION=`${PERL} -MConfig -e 'print $Config{version}'`
375    PERL_CCFLAGS=`${PERL} -MConfig -e 'print $Config{ccflags}'`
376    PERL_CPPFLAGS=`${PERL} -MConfig -e 'print $Config{cppflags}'`
377    PERL_VENDORLIB=`${PERL} -MConfig -e 'print $Config{vendorlib}'`
378    PERL_PRIVLIB=`${PERL} -MConfig -e 'print $Config{privlib}'`
379    PERL_INSTALLARCHLIB=`${PERL} -MConfig -e 'print $Config{installarchlib}'`
380    PERL_ARCHLIBEXP=`${PERL} -MConfig -e 'print $Config{archlibexp}'`
381    PERL_VERSION_RV=`echo ${PERL_VERSION} | cut -d'.' -f1-2`
382    # libperl may or may not be installed.  Check for its existence.
383    if test -f "${PERL_ARCHLIBEXP}/CORE/libperl${SHLIB_SUFFIX}" ; then
384      PERL_LIBSPEC="-L${PERL_ARCHLIBEXP}/CORE -lperl"
385    fi
386  fi
387fi
388AC_SUBST(PERL)
389AC_SUBST(PERL_INCLUDES)
390AC_SUBST(PERL_ARCHLIB)
391AC_SUBST(PERL_ARCHLIBEXP)
392AC_SUBST(PERL_VERSION)
393AC_SUBST(PERL_CCFLAGS)
394AC_SUBST(PERL_CPPFLAGS)
395AC_SUBST(PERL_VENDORLIB)
396AC_SUBST(PERL_PRIVLIB)
397AC_SUBST(PERL_INSTALLARCHLIB)
398AC_SUBST(PERL_VERSION_RV)
399AC_SUBST(PERL_LIBSPEC)
400
401PYTHON=""
402PYTHON_CFLAGS=""
403PYTHON_CPPFLAGS=""
404PYTHON_DISTUTILS=""
405PYTHON_INCLUDES=""
406PYTHON_LDFLAGS=""
407PYTHON_LIB=""
408PYTHON_LIBDIR=""
409PYTHON_SITE_DIR=""
410PYTHON_SITE_PACKAGES=""
411PYTHON_VERSION=""
412pythondir=""
413
414AC_ARG_WITH([python],
415    [AS_HELP_STRING([--with-python[=DIR]],[location of python @<:@default=yes@:>@])],
416    [],
417    [rp_with_python=yes])
418
419if test "$rp_with_python" != "no" ; then
420  if test "$rp_with_python" = "yes" ; then
421    AC_PATH_PROG(PYTHON, python python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5)
422  else
423    AC_PATH_PROG(PYTHON, python, [], [${rp_with_python}/bin:${rp_with_python}])
424  fi
425  AC_MSG_CHECKING([for Python version])
426  if test "x${PYTHON}" != "x"; then
427    PYTHON_VERSION=`${PYTHON} -c "import sys; print sys.version[[0:3]]"`
428  fi
429  AC_MSG_RESULT([$PYTHON_VERSION])
430fi
431
432if test "x${PYTHON_VERSION}" != "x"; then
433  PYTHON_INCLUDES=$incdir
434  AC_MSG_CHECKING([for Python distutils])
435  PYTHON_DISTUTILS=""
436  ${PYTHON} -c "from distutils.core import setup; setup(name='test')" \
437        build build_ext 2>&1 > /dev/null
438  if test $? = 0 ; then
439    PYTHON_DISTUTILS="yes"
440  fi
441  AC_MSG_RESULT([$PYTHON_DISTUTILS])
442  if test "${PYTHON_DISTUTILS}" = "yes" ; then
443    PYTHON_SITE_PACKAGES=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib()"`
444    #
445    # Check for Python include path
446    #
447    AC_MSG_CHECKING([path to Python headers])
448    PYTHON_INCDIR=`${PYTHON} -c "import distutils.sysconfig; \
449     print distutils.sysconfig.get_python_inc();"`
450    AC_MSG_RESULT([$PYTHON_INCDIR])
451    #
452    # Python distutils found, get settings from python directly
453    #
454    PYTHON_SITE_DIR="`${PYTHON} -c 'from distutils import sysconfig; print sysconfig.get_python_lib(0);'`"
455   
456    PYTHON_CFLAGS="`$PYTHON -c 'from distutils import sysconfig; flags = [[\"-I\" + sysconfig.get_python_inc(0), \"-I\" + sysconfig.get_python_inc(1), \" \".join(sysconfig.get_config_var(\"CFLAGS\").split())]]; print \" \".join(flags);'`"
457    PYTHON_LDFLAGS="`$PYTHON -c 'from distutils import sysconfig; libs = sysconfig.get_config_var(\"LIBS\").split() + sysconfig.get_config_var(\"SYSLIBS\").split(); libs.append(\"-lpython\"+sysconfig.get_config_var(\"VERSION\")); print \" \".join(libs);'`"
458    PYTHON_LIB="`$PYTHON -c 'from distutils import sysconfig; print \"python\" + sysconfig.get_config_var(\"VERSION\");'`"
459    PYTHON_LIBDIR="`$PYTHON -c 'from distutils import sysconfig; print sysconfig.get_config_var(\"LIBDIR\");'`"
460    save_CPPFLAGS=$CPPFLAGS
461    CPPFLAGS="$CPPFLAGS -I${PYTHON_INCDIR}"
462    AC_CHECK_HEADERS([Python.h], [found=yes], [found=no])
463    CPPFLAGS=$save_CPPFLAGS
464    if test "$found" = "no" ; then
465      PYTHON_DISTUTILS=""
466    fi
467  fi
468fi
469
470AC_SUBST(PYTHON)
471AC_SUBST(PYTHON_VERSION)
472AC_SUBST(PYTHON_INCLUDES)
473AC_SUBST(PYTHON_CFLAGS)
474AC_SUBST(PYTHON_INCDIR)
475AC_SUBST(PYTHON_LDFLAGS)
476AC_SUBST(PYTHON_LIB)
477AC_SUBST(PYTHON_SITE_DIR)
478AC_SUBST(PYTHON_LIBDIR)
479AC_SUBST(PYTHON_SITE_PACKAGES)
480AC_SUBST(PYTHON_DISTUTILS)
481
482rp_with_ruby="yes"
483
484RUBY=""
485RUBY_DEV_PKG="no"
486
487AC_ARG_WITH(
488    [ruby],
489    [AS_HELP_STRING([--with-ruby=DIR], [location of ruby @<:@default=yes@:>@])],
490    [rp_with_ruby=$withval])
491
492if test "${rp_with_ruby}" != "no" ; then
493  if test "${rp_with_ruby}" = "yes" ; then
494    AC_PATH_PROG(RUBY, ruby)
495  else
496    AC_PATH_PROG(RUBY, ruby, [], [${rp_with_ruby}/bin:${rp_with_ruby}])
497  fi
498fi
499AC_SUBST(RUBY)
500
501RUBY_VERSION_RV=
502RUBY_PLATFORM=
503if test "x${RUBY}" != "x" ; then
504  AX_PROG_RUBY_VERSION
505  RUBY_VERSION_RV=`echo ${RUBY_VERSION} | cut -d'.' -f1-2`
506  RUBY_PLATFORM=`ruby -e 'puts RUBY_PLATFORM'`
507  ac_mkmf_result=`${RUBY} -r mkmf -e ";" 2>&1`
508  if test -z "$ac_mkmf_result"; then
509    HAVE_RUBY_DEVEL="yes"
510    AX_RUBY_DEV_FLAGS([${RUBY}])
511  fi
512fi
513AC_SUBST(HAVE_RUBY_DEVEL)
514AC_SUBST(RUBY_VERSION_RV)
515AC_SUBST(RUBY_PLATFORM)
516
517rp_with_java="yes"
518JAVA=""
519JAVAH=""
520JAVAC=""
521JAVA_DEV_PKG="no"
522AC_ARG_WITH(
523    [java],
524    [AS_HELP_STRING([--with-java=DIR], [location of java @<:@default=yes@:>@])],
525    [rp_with_java=$withval])
526
527if test "${rp_with_java}" != "no" ; then
528  if test "${rp_with_java}" = "yes" ; then
529    AC_PATH_PROG(JAVA,  java)
530    AC_PATH_PROG(JAVAC, javac)
531    AC_PATH_PROG(JAVAH, javah)
532  else
533    AC_PATH_PROG(JAVA,  java,  [], [${rp_with_java}/bin:${rp_with_java}])
534    AC_PATH_PROG(JAVAC, javac, [], [${rp_with_java}/bin:${rp_with_java}])
535    AC_PATH_PROG(JAVAH, javah, [], [${rp_with_java}/bin:${rp_with_java}])
536  fi
537fi
538JDK=
539JAVA_HOME=
540JAVA_INC_DIR=
541JAVA_INC_SPEC=
542
543# If java exists, let's look for the jni.h file.
544if test "x${JAVA}" != "x" ; then
545  for d in \
546   /apps/java/jdk1.6.0_01 \
547   /usr/lib/jvm/*sun-1.6* \
548   /opt/sun-jdk-1.6* \
549   /opt/icedtea6-* \
550   /opt/sun-jdk-1.5* \
551   /usr/lib/jvm/*sun-1.5*
552  do
553    if test -r "${d}/include/jni.h" ; then
554      JDK=${d}
555      break;
556    fi
557  done
558  JAVA_HOME=$JDK
559  JAVA_INC_DIR=${JDK}/include
560  JAVA_INC_SPEC="-I${JDK}/include -I${JDK}/include/linux"
561fi
562
563AC_SUBST(JAVA)
564AC_SUBST(JAVAC)
565AC_SUBST(JAVAH)
566AC_SUBST(JAVA_HOME)
567AC_SUBST(JAVA_INC_DIR)
568AC_SUBST(JAVA_INC_SPEC)
569
570RP_BASE=`pwd`
571AC_SUBST(RP_BASE)
572
573SC_ENABLE_SHARED
574
575#--------------------------------------------------------------------
576# This macro figures out what flags to use with the compiler/linker
577# when building shared/static debug/optimized objects.  This information
578# is all taken from the tclConfig.sh file.
579#--------------------------------------------------------------------
580
581AC_SUBST(CFLAGS_DEBUG)
582AC_SUBST(CFLAGS_OPTIMIZE)
583AC_SUBST(STLIB_LD)
584AC_SUBST(SHLIB_LD)
585AC_SUBST(SHLIB_CFLAGS)
586AC_SUBST(SHLIB_LDFLAGS)
587AC_SUBST(SHLIB_SUFFIX)
588
589if test -f "${exec_prefix}/lib/tclConfig.sh" ; then
590  . ${exec_prefix}/lib/tclConfig.sh
591fi
592if test -f "${exec_prefix}/lib/tclConfig.sh" ; then
593  . ${exec_prefix}/lib/tkConfig.sh
594fi
595AC_SUBST(TCL_VERSION)
596AC_SUBST(TK_VERSION)
597
598# -----------------------------------------------------------------------
599#
600# Compiler characteristics:
601#   Check for existence of types of size_t and pid_t
602#
603# -----------------------------------------------------------------------
604
605AC_C_BIGENDIAN
606AC_CHECK_SIZEOF(int)
607AC_CHECK_SIZEOF(long)
608AC_CHECK_SIZEOF(long long)
609AC_CHECK_SIZEOF(void *)
610
611SIZEOF_LONG="${ac_cv_sizeof_long}"
612SIZEOF_LONG_LONG="${ac_cv_sizeof_long_long}"
613SIZEOF_VOID_P="${ac_cv_sizeof_void_p}"
614SIZEOF_INT="${ac_cv_sizeof_int}"
615AC_SUBST(SIZEOF_INT)
616AC_SUBST(SIZEOF_LONG)
617AC_SUBST(SIZEOF_LONG_LONG)
618AC_SUBST(SIZEOF_VOID_P)
619
620
621#--------------------------------------------------------------------
622# Set the default compiler switches based on the --enable-symbols
623# option.
624#--------------------------------------------------------------------
625
626SC_ENABLE_SYMBOLS
627
628
629#--------------------------------------------------------------------
630# search for ffmpeg libraries libavcodec, libavformat, libswscale
631#--------------------------------------------------------------------
632
633AC_CHECK_HEADERS(ffmpeg/avcodec.h,[],[],
634[[#define __STDC_CONSTANT_MACROS 1
635  #ifdef HAVE_FFMPEG_AVCODEC_H
636  # include <ffmpeg/avcodec.h>
637  #endif
638]])
639
640AC_CHECK_HEADERS(libavcodec/avcodec.h,[],[],
641[[#define __STDC_CONSTANT_MACROS 1
642  #ifdef HAVE_LIBAVCODEC_AVCODEC_H
643  # include <libavcodec/avcodec.h>
644  #endif
645]])
646
647AC_CHECK_HEADERS([ffmpeg/avformat.h],[],[],
648[[#define __STDC_CONSTANT_MACROS 1
649  #ifdef HAVE_FFMPEG_AVFORMAT_H
650  # include <ffmpeg/avformat.h>
651  #endif
652]])
653
654AC_CHECK_HEADERS([libavformat/avformat.h],[],[],
655[[#define __STDC_CONSTANT_MACROS 1
656  #ifdef HAVE_LIBAVFORMAT_AVFORMAT_H
657  # include <libavformat/avformat.h>
658  #endif
659]])
660
661AC_CHECK_HEADERS([ffmpeg/avutil.h],[],[],
662[[#define __STDC_CONSTANT_MACROS 1
663  #ifdef HAVE_FFMPEG_AVUTIL_H
664  # include <ffmpeg/avutil.h>
665  #endif
666]])
667
668AC_CHECK_HEADERS([libavutil/avutil.h],[],[],
669[[#define __STDC_CONSTANT_MACROS 1
670  #ifdef HAVE_LIBAVUTIL_AVUTIL_H
671  # include <libavutil/avutil.h>
672  #endif
673]])
674
675AC_CHECK_HEADERS([ffmpeg/swscale.h],[],[],
676[[#define __STDC_CONSTANT_MACROS 1
677  #ifdef HAVE_FFMPEG_SWSCALE_H
678  # include <ffmpeg/swscale.h>
679  #endif
680]])
681
682AC_CHECK_HEADERS([libswscale/swscale.h],[],[],
683[[#define __STDC_CONSTANT_MACROS 1
684  #ifdef HAVE_LIBSWSCALE_SWSCALE_H
685  # include <libswscale/swscale.h>
686  #endif
687]])
688
689HAVE_FFMPEG_LIBS=""
690if [[ \( "${ac_cv_header_ffmpeg_avcodec_h}" = "yes" -o \
691        "${ac_cv_header_libavcodec_avcodec_h}" = "yes" \) -a \
692     \( "${ac_cv_header_ffmpeg_avformat_h}" = "yes" -o \
693        "${ac_cv_header_libavformat_avformat_h}" = "yes" \) -a \
694     \( "${ac_cv_header_ffmpeg_avutil_h}" = "yes" -o \
695        "${ac_cv_header_libavutil_avutil_h}" = "yes" \) -a \
696     \( "${ac_cv_header_ffmpeg_swscale_h}" = "yes" -o \
697        "${ac_cv_header_libswscale_swscale_h}" = "yes" \) ]] ; then
698  HAVE_FFMPEG_LIBS="yes"
699  AC_DEFINE(BUILD_with_ffmpeg, 1, [Build rappture with ffmpeg widgets])
700else
701  HAVE_FFMPEG_LIBS=""
702fi
703
704AC_CHECK_FUNCS(img_convert)
705AC_CHECK_FUNCS(sws_scale)
706AC_SUBST(HAVE_FFMPEG_LIBS)
707
708ac_configure_args="--disable-threads --enable-shared"
709AC_CONFIG_SUBDIRS( [packages/optimizer/src] )
710
711dnl read Makefile.in and write Makefile
712AC_CONFIG_FILES([
713    Makefile
714    packages/Makefile
715    src/Makefile
716    src/core/Makefile
717    src/core2/Makefile
718    src/objects/Makefile
719    src/objects/RpHash.h
720    gui/Makefile
721    gui/apps/Makefile
722    gui/apps/about
723    gui/apps/encodedata
724    gui/apps/rappture
725    gui/apps/rappture-csh.env
726    gui/apps/rappture.env
727    gui/apps/rappture.use
728    gui/apps/rerun
729    gui/apps/simsim
730    gui/apps/xmldiff
731    gui/pkgIndex.tcl
732    gui/scripts/Makefile
733    instant/Makefile
734    instant/irappture
735    lang/Makefile
736    lang/java/Makefile
737    lang/java/rappture/Makefile
738    lang/perl/Makefile
739    lang/perl/Makefile.PL
740    lang/python/Makefile
741    lang/python/setup.py
742    lang/matlab/Makefile
743    lang/octave/Makefile
744    lang/octave/octave2/Makefile
745    lang/octave/octave3/Makefile
746    lang/ruby/Makefile
747    lang/ruby/build.rb
748    lang/tcl/Makefile
749    lang/tcl/pkgIndex.tcl
750    lang/tcl/src/Makefile
751    lang/tcl/scripts/Makefile
752    lang/tcl/tests/Makefile
753    lib/Makefile
754    examples/3D/Makefile
755    examples/Makefile
756    examples/app-fermi/2.0/Makefile
757    examples/app-fermi/Makefile
758    examples/app-fermi/cee/Makefile
759    examples/app-fermi/fortran/Makefile
760    examples/app-fermi/java/Makefile
761    examples/app-fermi/matlab/Makefile
762    examples/app-fermi/matlab/compiled/Makefile
763    examples/app-fermi/matlab/uncompiled/Makefile
764    examples/app-fermi/octave/2/Makefile
765    examples/app-fermi/octave/3/Makefile
766    examples/app-fermi/octave/Makefile
767    examples/app-fermi/perl/Makefile
768    examples/app-fermi/python/Makefile
769    examples/app-fermi/ruby/Makefile
770    examples/app-fermi/tcl/Makefile
771    examples/app-fermi/wrapper/Makefile
772    examples/app-fermi/wrapper/cee/Makefile
773    examples/app-fermi/wrapper/perl/Makefile
774    examples/app-fermi/wrapper/python/Makefile
775    examples/app-fermi/wrapper/tcl/Makefile
776    examples/c-example/Makefile
777    examples/canvas/Makefile
778    examples/demo.bash
779    examples/flow/Makefile
780    examples/flow/demo1/Makefile
781    examples/flow/demo2/Makefile
782    examples/flow/demo3/Makefile
783    examples/graph/Makefile
784    examples/objects/Makefile
785    examples/objects/axis/Makefile
786    examples/objects/contour/Makefile
787    examples/objects/curve/Makefile
788    examples/objects/dxWriter/Makefile
789    examples/objects/floatBuffer/Makefile
790    examples/objects/histogram/Makefile
791    examples/objects/library/Makefile
792    examples/objects/number/Makefile
793    examples/objects/path/Makefile
794    examples/objects/plot/Makefile
795    examples/objects/scatter/Makefile
796    examples/objects/string/Makefile
797    examples/objects/tree/Makefile
798    examples/objects/xmlparser/Makefile
799    examples/zoo/Makefile
800    examples/zoo/binary/Makefile
801    examples/zoo/boolean/Makefile
802    examples/zoo/choice/Makefile
803    examples/zoo/cloud/Makefile
804    examples/zoo/cloud/matlab/Makefile
805    examples/zoo/curve/Makefile
806    examples/zoo/enable/Makefile
807    examples/zoo/field/Makefile
808    examples/zoo/group/Makefile
809    examples/zoo/image/Makefile
810    examples/zoo/image/docs/Makefile
811    examples/zoo/image/examples/Makefile
812    examples/zoo/integer/Makefile
813    examples/zoo/integer2/Makefile
814    examples/zoo/loader/Makefile
815    examples/zoo/loader/examples/Makefile
816    examples/zoo/loadrun/Makefile
817    examples/zoo/log/Makefile
818    examples/zoo/note/Makefile
819    examples/zoo/note/docs/Makefile
820    examples/zoo/number/Makefile
821    examples/zoo/number2/Makefile
822    examples/zoo/parallelepiped/Makefile
823    examples/zoo/periodicelement/Makefile
824    examples/zoo/phase/Makefile
825    examples/zoo/sequence/Makefile
826    examples/zoo/sequence/examples/Makefile
827    examples/zoo/string/Makefile
828    examples/zoo/structure/Makefile
829    examples/zoo/structure/examples/Makefile
830    examples/zoo/table/Makefile
831    examples/zoo/unirect2d/Makefile
832    oldtest/Makefile
833    oldtest/src/Makefile
834])
835AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.