2 # Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 # Copyright (C) INRIA - 2006-2008 - Sylvestre Ledru
4 # Copyright (C) DIGITEO - 2009-2011 - Sylvestre Ledru
5 # Copyright (C) DIGITEO - 2009 - Pierre MARECHAL <pierre.marechal@scilab.org>
6 # Copyright (C) Scilab Enterprises - 2014 - Clement DAVID <clement.david@scilab-enterprises.com>
8 # This file must be used under the terms of the CeCILL.
9 # This source file is licensed as described in the file COPYING, which
10 # you should have received as part of this distribution. The terms
11 # are also available at
12 # http://www.cecill.info/licences/Licence_CeCILL_V2.1-en.txt
15 dnl Process this file with autoconf to produce a configure script.
18 AC_REVISION($Revision$)dnl
19 AC_INIT([Scilab],[5],[http://bugzilla.scilab.org/])
21 AC_CONFIG_MACRO_DIR([m4])
25 SCI_SRCDIR_FULL="`cd $SCI_SRCDIR && pwd`"
27 SCILAB_VERSION_MAJOR=5
28 SCILAB_VERSION_MINOR=5
29 SCILAB_VERSION_MAINTENANCE=1
30 AC_SUBST(SCILAB_VERSION_MAJOR)
31 AC_SUBST(SCILAB_VERSION_MINOR)
32 AC_SUBST(SCILAB_VERSION_MAINTENANCE)
35 SCILAB_LIBRARY_VERSION=$SCILAB_VERSION_MAJOR:$SCILAB_VERSION_MINOR:$SCILAB_VERSION_MAINTENANCE
36 AC_SUBST(SCILAB_LIBRARY_VERSION)
38 SCILAB_BINARY_VERSION=$SCILAB_VERSION_MAJOR.$SCILAB_VERSION_MINOR.$SCILAB_VERSION_MAINTENANCE
39 AC_SUBST(SCILAB_BINARY_VERSION)
41 #shared library versioning
42 #GENERIC_LIBRARY_VERSION=1:2:0
46 # current:revision:age
48 # | | +- increment if interfaces have been added
49 # | | set to zero if interfaces have been removed
51 # | +- increment if source code has changed
52 # | set to zero if current is incremented
53 # +- increment if interfaces have been added, removed or changed
55 # Check if we have a space in the path to the source tree
56 SPACE_IN_PATH=`echo "$SCI_SRCDIR_FULL"|grep " " > /dev/null; echo $?`
57 if test "$SPACE_IN_PATH" = "0"; then
58 AC_MSG_WARN([=====================================])
59 AC_MSG_WARN([Configure thinks that there is a space in the path to the source. This may cause problem with libtool and some other things...])
60 AC_MSG_WARN([=====================================])
64 AC_CONFIG_AUX_DIR(config)
65 AC_CONFIG_HEADERS([modules/core/includes/machine.h])
74 # In order to be able to change the scilab directory
75 # See http://wiki.debian.org/RpathIssue
77 AC_RELOCATABLE_LIBRARY
80 # If configure detect that timestamp changed,
81 # it tries to rebuild configure & makefile which can be a painmaker
82 # if the version is different
85 AM_INIT_AUTOMAKE([-Wall foreign serial-tests subdir-objects]) # Not using -Werror because we override {C,F}FLAGS in order to disable optimisation
89 #################################
90 ## all the --with-* argument help
91 #################################
95 AC_HELP_STRING([--enable-debug],[Do not optimize and print warning messages (C/C++/Fortran/Java code)]))
97 AC_ARG_ENABLE(debug-C,
98 AC_HELP_STRING([--enable-debug-C],[Do not optimize and print warning messages (C code)]))
100 AC_ARG_ENABLE(debug-CXX,
101 AC_HELP_STRING([--enable-debug-CXX],[Do not optimize and print warning messages (C++ code)]))
103 AC_ARG_ENABLE(debug-java,
104 AC_HELP_STRING([--enable-debug-java],[Print warning messages and line numbers (Java code)]))
106 AC_ARG_ENABLE(debug-fortran,
107 AC_HELP_STRING([--enable-debug-fortran],[Do not optimize and print warning messages (Fortran code)]))
109 AC_ARG_ENABLE(debug-linker,
110 AC_HELP_STRING([--enable-debug-linker],[Print warning messages from the linker (ld)]))
112 AC_ARG_ENABLE(code-coverage,
113 AC_HELP_STRING([--enable-code-coverage],[Enable code coverage]))
115 AC_ARG_ENABLE(stop-on-warning,
116 AC_HELP_STRING([--enable-stop-on-warning],[Stop the compilation on the first warning found in the C/C++ code]))
119 AC_HELP_STRING([--with-gcc],[Use gcc C compiler ]))
121 AC_ARG_WITH(gfortran,
122 AC_HELP_STRING([--with-gfortran],[Use gfortran, GNU Fortran 95 compiler]))
124 AC_ARG_WITH(intelcompilers,
125 AC_HELP_STRING([--with-intelcompilers],[Use Intel C (icc) and Fortran (ifort) proprietary compilers (GNU/Linux only) ]))
128 AC_HELP_STRING([--without-tk],[Disable the interface to Tcl/Tk ]))
131 AC_HELP_STRING([--without-javasci],[Disable the Java/Scilab interface (javasci)]))
133 AC_ARG_ENABLE(compilation-tests,
134 AC_HELP_STRING([--enable-compilation-tests],[Enable unitary tests and checks at compilation time]))
137 AC_HELP_STRING([--without-gui],[Disable the Scilab Graphical User Interface (GUI). Intended for embedded/clustering/grid Scilab ]))
139 AC_ARG_WITH(build-swig,
140 AC_HELP_STRING([--enable-build-swig=path],[Regenerate Java => C and Scilab => C wrappers produces by Swig]),
141 [with_build_swig=$withval],
146 AC_ARG_ENABLE(build-giws,
147 AC_HELP_STRING([--enable-build-giws],[Regenerate C/C++ => Java wrappers produces by Giws]))
150 ################################################
151 ########## compilator & misc programs detection
152 ################################################
158 #### Mac OS X set of fink path with provided
161 AC_ARG_WITH(fink_prefix,
162 AC_HELP_STRING([--with-fink-prefix],[Provide a fink prefix. Default: /sw/ ]))
163 # Need MacosX Version to specify some path.
166 AC_GET_MACOSX_VERSION
172 if test -n "$with_fink_prefix"; then
173 # If with-fink-prefix is provided, use the provided path to make sure that we will
174 # use it to detect dependencies (for example, gfortran is not provided in xcode.
175 # Therefor, we use the one in fink)
176 FINK_PREFIX="$with_fink_prefix/"
178 # Exec the init script of fink to make sure that the env is set
179 if test -f $with_fink_prefix/bin/init.sh; then
180 echo "source $with_fink_prefix/bin/init.sh executed to set the env"
181 source $with_fink_prefix/bin/init.sh
183 AC_MSG_WARN([Could not find the fink init.sh script: $with_fink_prefix/bin/init.sh])
189 #Append to the default flags on Apple machines
190 CPPFLAGS="$CPPFLAGS -I$FINK_PREFIX/include/"
191 LDFLAGS="$LDFLAGS -L$FINK_PREFIX/lib/"
195 AC_ARG_WITH(min_macosx_version,
196 AC_HELP_STRING([--with-min-macosx-version],[Force compilers to generate binaries compatible with MacOSX minimal version.]))
199 if test -n "$with_min_macosx_version"; then
200 MIN_MACOSX_VERSION=$with_min_macosx_version
201 #Append to the default flags on Apple machines
202 ARCH_CFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
203 ARCH_CXXFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
204 ARCH_FFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
205 ARCH_LDFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
206 # We need this to be passed to all linker commands
207 LDFLAGS="$LDFLAGS -mmacosx-version-min=$MIN_MACOSX_VERSION"
213 #####################################################
214 ## Look for pkg-config
215 #####################################################
218 #####################################################
219 ## check if options are correct (or not)
220 #####################################################
222 if test "$with_intelcompilers" = yes -a "$with_gcc" = yes; then
223 AC_MSG_ERROR([Conflicting options : you specified two compiler series])
226 ######## fortran ########
228 if test "$with_gfortran" = yes; then
229 AC_PROG_F77(gfortran)
230 if test -z "$F77"; then
231 AC_MSG_ERROR([You asked me to use gfortran but i haven't been able to find it])
235 if test "$with_intelcompilers" = yes; then
236 AC_PROG_F77(ifc ifort)
237 if test -z "$F77"; then
238 AC_MSG_ERROR([You asked me to use ifc (intel fortran compiler) but i haven't been able to find it])
242 if test -z "$F77"; then
243 ## No Fortran compiler specified... Prefer gfortran and intel compilers
244 AC_PROG_F77([gfortran ifc ifort])
245 if test -z "$F77"; then
246 # Best effort to find a compiler (might be g77)
252 # case statements were introduced in fortran 90 so we can use that
253 # as a test to see if our compiler is fortran 90 compatible.
255 if test -z "$F77"; then
256 AC_MSG_ERROR([No fortran compiler found. Cannot compile scilab without a fortran compiler])
259 AC_MSG_CHECKING([if $F77 is a fortran 90 compatible compiler])
261 AC_LANG_PUSH([Fortran 77])
267 print*, "case is 1, i is ", i
269 print*, "case is 2 to 3, i is ", i
271 print*, "default case, i is ", i
276 [AC_MSG_RESULT([yes])
277 AC_DEFINE([G95_FORTRAN],[],[uses G95 fortran])
280 [AC_MSG_RESULT([no])]
282 AC_LANG_POP([Fortran 77])
284 ############ C ###############
287 if test "$with_gcc" = yes; then
289 if test -z "$CC"; then
290 AC_MSG_ERROR([You asked me to use gcc but i haven't been able to find it])
294 if test "$with_intelcompilers" = yes; then
296 if test -z "$CC"; then
297 AC_MSG_ERROR([You asked me to use icc (intel C compiler) but I haven't been able to find it])
301 if test -z "$CC"; then
302 # No C compiler specified... We rely on Autoconf to find the best
306 if test -z "$CC"; then
307 AC_MSG_ERROR([No C Compiler found. Cannot compile Scilab without a C compiler])
310 AC_CHECK_SIZEOF([int])
311 AC_CHECK_SIZEOF([long])
315 # we can't just do something like
316 # AC_CHECK_PROG(cxx_present, $CXX, "yes", "no")
317 # because if the user has specified the full path of the desired C++ compiler then AC_CHECK_PROG
318 # will fail. If AC_PROG_CXX fails to find a c++ compiler it will set CXX=g++ so just run AC_CHECK_PROG
319 # in this special case
322 AC_CHECK_PROG([cxx_present], [$CXX], [yes], [no])
323 if test "x$cxx_present" != "xyes"; then
324 AC_MSG_ERROR([No C++ compiler found. Cannot compile scilab without a C++ compiler])
329 # for "subdir-objects"
335 if test "$enable_debug" = yes; then
336 enable_debug_fortran=yes
339 enable_debug_java=yes
344 if test "$enable_debug_fortran" = yes; then
345 FFLAGS="`echo "$FFLAGS"| sed -e 's|-O[0-9+]|-O0|'`"
347 enable_debug_fortran=no
350 if test "$enable_debug_C" = yes; then
351 CFLAGS="`echo "$CFLAGS"| sed -e 's|-O[0-9+]|-O0|'`"
356 if test "$enable_debug_CXX" = yes; then
357 CXXFLAGS="`echo "$CXXFLAGS"| sed -e 's|-O[0-9+]|-O0|'`"
362 if test "$enable_debug_java" = yes; then
365 LOGGING_LEVEL="SEVERE"
367 AC_SUBST(LOGGING_LEVEL)
369 if test "x${prefix}" = "xNONE"; then
370 prefix="${ac_default_prefix}"
373 ###############################
375 ###############################
377 SCIVERSION=`cat $SCI_SRCDIR/Version.incl | sed -e "s/SCIVERSION=//" `
379 #############################################
380 ## Compilers and options according to machine
381 #############################################
383 ######################
384 ######## Set compilation options for intel C/Fortran compilers
385 ######################
387 if test "$with_intelcompilers" = yes; then
391 ########### FORTRAN ######################
394 ######################
395 ######## With gfortran ...
396 ######################
397 if test -n "$F77"; then
400 ## With GNU Compiler enable the code coverage
401 if test "$enable_code_coverage" = yes; then
402 CODECOVERAGE_FFLAGS="-fprofile-arcs -ftest-coverage"
406 AC_MSG_ERROR([g77 is no longer supported. Please consider switching to gfortran])
410 if test "$enable_debug_fortran" = yes; then
411 AC_LANG_PUSH([Fortran 77])
412 for flag in -g -Wall -Wsurprising; do
413 case " ${FFLAGS} " in
415 # flag is already present
419 AC_MSG_CHECKING([if the Fortran compiler accepts ${flag}])
420 ac_save_FFLAGS="$FFLAGS"
421 FFLAGS="$FFLAGS ${flag}"
422 AC_COMPILE_IFELSE([AC_LANG_PROGRAM()],
423 [AC_MSG_RESULT([yes])
424 DEBUG_FFLAGS="${flag}"
426 [AC_MSG_RESULT([no])]
431 AC_LANG_POP([Fortran 77])
433 DEBUG_FFLAGS="-DNDEBUG"
437 ARCH_FFLAGS="-m64 -fPIC"
444 ARCH_FFLAGS="-fpe3 -switch nosqrt_recip"
447 ARCH_FFLAGS="-qcharlen=4096"
450 ARCH_FFLAGS="-O0 -fpe1"
453 ARCH_FFLAGS="+Obb1200 +E4 -Dhpux"
456 if test "$enable_debug_fortran" = yes; then
457 ARCH_FFLAGS="+E4 +Z +DAportable -Dhpux"
459 ARCH_FFLAGS="+O2 +E4 +Z +DAportable -Dhpux"
461 # ARCH_LDFLAGS="-Wl,+vnocompatwarnings,-E /usr/lib/libdld.sl"
465 if test "$enable_debug_fortran" = yes; then
466 ARCH_FFLAGS=" +Z +DAportable -Dhpux"
468 ARCH_FFLAGS="+O2 +Z +DAportable -Dhpux"
470 ARCH_LDFLAGS="-ldld -lnsl -lU77 -lm"
477 #########################
478 # setting parameters according to system types
479 #########################
482 *-*-hpux9.*|*-*-hpux10.*|*-*-hpux11.*)
499 AM_CONDITIONAL(IS_MACOSX, test -n "$MACOSX")
500 AM_CONDITIONAL(IS_HPUX, test -n "$HPUX")
501 AM_CONDITIONAL(IS_SPARC, test -n "$SPARC")
502 AM_CONDITIONAL(IS_SOLARIS, test -n "$SOLARIS")
503 AM_CONDITIONAL(IS_MIPS_SGI_IRIX, test -n "$MIPS_SGI_IRIX")
512 if test -z "$CXX"; then
513 AC_MSG_ERROR([No C++ compiler found. Cannot compile scilab without a C++ compiler])
517 g++-* | g++ | ccache*g++ | ccache*g++-* )
518 ## With GNU C++ Compiler
520 # enable the code coverage
521 if test "$enable_code_coverage" = yes; then
522 CODECOVERAGE_CXXFLAGS="-fprofile-arcs -ftest-coverage"
525 if test "$enable_debug_CXX" = yes; then
526 DEBUG_CXXFLAGS="-pipe -Wshadow -Wpointer-arith -Wcast-align -Wreturn-type -Wswitch -Wtrigraphs -Wcomment -W -Wchar-subscripts -Wformat -Wparentheses -Wsign-compare -Wwrite-strings -Wunused -Wno-strict-aliasing -Wextra -Wall -g3 -Wunsafe-loop-optimizations"
529 # Only doing that under Linux
530 DEBUG_CXXFLAGS="$DEBUG_CXXFLAGS -fdiagnostics-show-option -Werror=format-security"
534 DEBUG_CXXFLAGS="-DNDEBUG"
536 COMPILER_CXXFLAGS="-fno-stack-protector " # bug 3131
541 #### 64 bits detection
544 x86_64-*-linux-gnu | x86_64-linux-gnu | ia64-*-linux-gnu | alpha-*-linux-gnu | alpha-*-netbsd* | x86_64-*-netbsd* | sparc64-*-netbsd*)
552 gcc-* | gcc | ccache*gcc | ccache*gcc-* )
555 # enable the code coverage
556 if test "$enable_code_coverage" = yes; then
557 CODECOVERAGE_CFLAGS="-fprofile-arcs -ftest-coverage"
560 if test "$enable_debug_C" = yes; then
561 DEBUG_CFLAGS="-pipe -Wformat -Wshadow -Wfloat-equal -Wpointer-arith -Wcast-align -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wmissing-noreturn -Wendif-labels -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wwrite-strings -Winline -Wredundant-decls -Wall -Wchar-subscripts -Wextra -Wuninitialized -Wno-format-y2k -Wmissing-format-attribute -Wno-missing-field-initializers -Wno-strict-aliasing -Wold-style-definition -g3 -Wunsafe-loop-optimizations"
563 # -D_FORTIFY_SOURCE=2
566 # Only doing that under Linux
567 if test "$enable_debug_linker" = yes; then
568 LDFLAGS="$LDFLAGS -Wl,--warn-common,-x"
570 DEBUG_CFLAGS="$DEBUG_CFLAGS -fdiagnostics-show-option -Werror=format-security"
574 DEBUG_CFLAGS="-DNDEBUG"
577 COMPILER_CFLAGS="-fno-stack-protector " # bug 3131
578 # Explictly disable the as needed. It was disable by default but Ubuntu
579 # activated it by default since release 11.04. See bug #8961.
580 # Once all cyclic dependencies have been dropped, this line could be removed.
581 # Check if linker supports --as-needed and --no-as-needed options
582 if $LD --help 2>/dev/null | grep no-as-needed > /dev/null; then
583 LDFLAGS="$LDFLAGS -Wl,--no-as-needed"
588 x86_64-*-linux-gnu | x86_64-linux-gnu)
592 ARCH_CFLAGS="-mieee-with-inexact"
593 ARCH_LDFLAGS="-mieee-with-inexact"
596 ARCH_CFLAGS="-D_GNU_SOURCE"
599 ARCH_CFLAGS="-DSVR4 -DSYSV -Dsolaris"
602 ARCH_CFLAGS="-Dfreebsd"
607 ARCH_CFLAGS="-Dnetbsd -mieee"
608 ARCH_FFLAGS="-Dnetbsd -mieee"
612 ARCH_CFLAGS="-Dnetbsd"
616 ARCH_CFLAGS="$ARCH_CFLAGS -no_compact_linkedit"
617 ARCH_CXXFLAGS="$ARCH_CXXFLAGS -no_compact_linkedit"
618 ARCH_LDFLAGS="$ARCH_LDFLAGS -no_compact_linkedit"
619 # We need this to be passed to all linker commands
620 LDFLAGS="$LDFLAGS -no_compact_linkedit"
624 # Extract from gfortran -v the version it has been built for
625 MAC_DETECTED_ARCH="`$F77 -v 2>&1|grep "Target:"|sed -e "s/Target: \([[a-z0-9A-Z_]]*\).*/\1/g"`"
628 AC_MSG_WARN([gfortran not used. Could not detect the architecture. Switch to the default case: x86_64])
629 MAC_DETECTED_ARCH="x86_64"
632 CC="$CC -arch $MAC_DETECTED_ARCH"
633 CXX="$CXX -arch $MAC_DETECTED_ARCH"
636 ;; # end of the gcc case on the $CC
639 ## CC compiler (not GCC)
640 if test "$enable_debug_C" != yes; then
641 ARCH_CFLAGS="-DNDEBUG"
647 ARCH_CFLAGS="-std -ieee_with_inexact"
648 ARCH_LDFLAGS="-ieee_with_inexact"
651 ARCH_CFLAGS="-ieee_with_inexact"
652 ARCH_LDFLAGS="-ieee_with_inexact"
654 rs6000-*-*) # IBM AIX RS 6000 (NO LONGER SUPPORTED)
655 ARCH_CFLAGS="-Daix -DSYSV"
657 mips-sgi-irix*) # SGI
658 ARCH_CFLAGS="-DSYSV -DSVR4"
661 ARCH_CFLAGS="-DSYSV -Dhpux"
663 *-*-hpux10.*) # HP 10
664 if test "$enable_debug_C" = yes; then
665 ARCH_CFLAGS="-DSYSV -Dhpux"
667 ARCH_CFLAGS="-DSYSV -Dhpux +Z +DAportable"
671 *-*-hpux11.*) # HP 11
672 ARCH_CFLAGS="-DSYSV -Dhpux -Dhppa +Z +DAportable"
674 *-*-solaris*) # SUN SOLARIS
675 ARCH_CFLAGS="-DSVR4 -DSYSV -Dsolaris -I/usr/local/include/"
676 ARCH_LDFLAGS="-L/usr/local/lib/"
679 ;; # end of not a gcc compiler
683 # enable the code coverage
684 if test "$enable_code_coverage" = yes; then
685 AC_PATH_PROG(LCOV, lcov)
686 if test -z "$LCOV" ; then
687 AC_MSG_ERROR([Cannot find lcov. Please install it (package lcov under Debian) or remove the option --enable-code-coverage])
689 AC_PATH_PROG(GENHTML, genhtml)
690 if test -z "$GENHTML" ; then
691 AC_MSG_ERROR([Cannot find genhtml. Please install it (package lcov under Debian) or remove the option --enable-code-coverage])
693 CODECOVERAGE_LDFLAGS="-coverage -lgcov"
695 AM_CONDITIONAL(CODE_COVERAGE, test "$enable_code_coverage" = yes)
697 # flag for possible compilations in configure
702 if test $IS_64_BITS_CPU = true -o "$MACOSX" = "1"; then
703 if test $f90compatible = false; then
704 AC_MSG_ERROR([64 bits support needs a fortran 90 compiler (try --with-gfortran).])
708 AM_CONDITIONAL(IS_64_BITS_CPU, test $IS_64_BITS_CPU = true)
712 ## By default, for x86 CPU, enable the SSE.
713 ## Note that it is already the case with 64 bits CPU
714 ## (these extensions are enabled by default by gcc)
718 i*86-linux-gnu|i*86-*-linux-gnu)
725 #######################
726 ## test for underscores (name mangling issues between C and fortran)
727 #######################
728 AC_CHECK_UNDERSCORE_FORTRAN()
736 # The Java detection is done after in this file.
743 AC_ARG_WITH(external-scirenderer,
744 AC_HELP_STRING([--with-external-scirenderer],[Disable the usage of the internal copy of scirenderer. Intended for packaging of Scilab]))
746 AM_CONDITIONAL(EXTERNAL_SCIRENDERER, test "$with_external_scirenderer" = yes)
754 AC_HELP_STRING([--without-xcos],[Disable Xcos]))
756 AC_ARG_WITH(modelica,
757 AC_HELP_STRING([--without-modelica],[Disable the OCaml module (modelica)]))
760 if test "$with_gui" = no; then
761 AC_MSG_WARN([GUI is disabled. Disabling then xcos])
767 if test "$with_xcos" != no -a "$with_gui" != no; then
768 AC_DEFINE([WITH_XCOS], [], [With XCOS])
772 AC_CHECK_LIB([rt], [clock_gettime],
774 AC_DEFINE([HAVE_CLOCK_GETTIME], [1],[Whether clock_gettime is available]) ],
775 [AC_MSG_WARN([librt: library missing (Cannot find symbol clock_gettime). Check if librt is installed (it is usually provided by the libc) and if the version is correct])]
782 ## ocaml which only called when using Xcos
785 if test "$with_modelica" != no; then
786 AC_CHECK_PROG_OCAML()
792 AC_SUBST(XCOS_ENABLE)
794 AM_CONDITIONAL(OCAML, test "$with_modelica" != no -a "$OCAMLC" != no -a "$OCAMLOPT" != no)
795 AM_CONDITIONAL(XCOS, test "$XCOS_ENABLE" != no)
797 ###########################
798 ## test for JAVA compiler
799 ###########################
800 if test "$with_javasci" != no -o "$with_gui" != no -o "$enable_build_help" != no; then
802 # See if --with-jdk command line argument is given
803 # Try to detect the installed JVM, this could be controlled
804 # by the above --with options
806 if test "$with_jdk" != no; then
809 case "$ac_java_jvm_version" in
813 AC_MSG_ERROR([Wrong version of Java. Expected at least 1.6. Found $ac_java_jvm_version])
817 if test "$ac_java_jvm_name" = "jdk"; then
818 JAVA_HOME=$ac_java_jvm_dir
819 JAVA_VERSION=$ac_java_jvm_version
823 JAVA_JNI_INCLUDE=$ac_java_jvm_jni_include_flags
827 # Mac OS X does not link against the lib but uses -framework
828 JAVA_JNI_LIBS="-framework JavaVM"
832 JAVA_JNI_LIBS=$ac_java_jvm_jni_lib_flags
833 JAVA_JNI_LIBS_PRELOAD=$ac_java_jvm_ld_preload
838 JAVA_CLASSPATH=$ac_java_classpath
849 if test "$with_gui" != no; then
851 if test $XCOS_ENABLE = yes; then
853 AC_JAVA_CHECK_PACKAGE([jgraphx],[com.mxgraph.model.mxCell],[Diagram design])
854 JGRAPHX=$PACKAGE_JAR_FILE
857 AC_JAVA_CHECK_VERSION_PACKAGE([jgraphx],[import com.mxgraph.view.mxGraph;],$JGRAPHX,[2.0.0.1],[mxGraph.VERSION],[],[])
861 if test "$with_external_scirenderer" = yes; then
863 AC_JAVA_CHECK_PACKAGE([scirenderer],[org.scilab.forge.scirenderer.PackageInfo],[Scilab Renderer])
864 SCIRENDERER=$PACKAGE_JAR_FILE
865 SCIRENDERER_CP=$PACKAGE_JAR_FILE
867 AC_JAVA_CHECK_VERSION_PACKAGE([scirenderer],[import org.scilab.forge.scirenderer.PackageInfo;],$SCIRENDERER,[1.1.0],[PackageInfo.VERSION])
869 echo "Use external version of scirenderer"
870 # Use the scirenderer in Scilab sources
871 SCIRENDERER="\${modules.dir}/scirenderer/\${build.jar.dir}/scirenderer.jar"
872 SCIRENDERER_CP="\$SCILAB/modules/scirenderer/jar/scirenderer.jar"
874 AC_SUBST(SCIRENDERER)
875 AC_SUBST(SCIRENDERER_CP)
878 AC_JAVA_CHECK_PACKAGE([flexdock],[org.flexdock.docking.DockingManager],[Scilab Gui])
879 FLEXDOCK=$PACKAGE_JAR_FILE
882 AC_JAVA_CHECK_VERSION_PACKAGE([flexdock],[import org.flexdock.util.Utilities;],$FLEXDOCK,[1.2.4],[Utilities.VERSION])
884 # Swing look&feel implementations
885 AC_JAVA_CHECK_PACKAGE([looks],[com.jgoodies.looks.common.MenuItemRenderer],[Scilab Gui - Look and feel],"yes")
886 LOOKS=$PACKAGE_JAR_FILE
888 # Named differently under ArchLinux or Fedora
889 if test -z "$LOOKS"; then
890 AC_JAVA_CHECK_PACKAGE([jgoodies-looks],[com.jgoodies.looks.common.MenuItemRenderer],[Scilab Gui - Look and feel])
891 LOOKS=$PACKAGE_JAR_FILE
896 AC_JAVA_CHECK_PACKAGE([skinlf],[com.l2fprod.util.AccessUtils],[Scilab Gui - Skin Look and Feel])
897 SKINLF=$PACKAGE_JAR_FILE
901 AC_JAVA_CHECK_PACKAGE([jogl2],[javax.media.opengl.glu.GLUnurbs],[Scilab 3D rendering - Version 2.0])
902 JOGL2=$PACKAGE_JAR_FILE
905 if test "$MACOSX" = 1; then
906 echo "Check of the presence of libjogl.jnilib and libjogl_awt.jnilib disabled under Mac OS X"
908 LDFLAGS_save=$LDFLAGS
909 # Provide known paths where distribs/OS can store JNI libs
910 LDFLAGS="$LDFLAGS -L/usr/lib/jni -L/usr/lib64/jni" # Debian
911 LDFLAGS="$LDFLAGS -L/usr/lib/java -L/usr/lib64/java" # jpackage.org
912 LDFLAGS="$LDFLAGS -L/usr/lib/jogl2 -L/usr/lib64/jogl2" # RedHat
913 LDFLAGS="$LDFLAGS -L$SCI_SRCDIR/thirdparty -L$SCI_SRCDIR/lib/thirdparty -L$SCI_SRCDIR/bin" # Scilab thirdparties
914 AC_CHECK_LIB([jogl_desktop], [glTexParameterf], [JOGL2_LIBS="-ljogl_desktop"],[AC_MSG_WARN([Could not link against -ljogl_desktop. Will try against -ljogl_desktop -lGL])])
915 if test -z "$JOGL2_LIBS"; then # The previous test failed add more options to the LDFLAGS
916 # the space after "jogl" in the following line is on
917 # purpose to disable the cache
918 AC_CHECK_LIB([jogl_desktop ], [glTexParameterf],
919 [JOGL2_LIBS="-ljogl_desktop -lGL"],
920 [AC_MSG_ERROR(["libjogl: Library
921 missing (Cannot find symbol glTexParameterf). Check if libjogl - C/Java (JNI)
922 interface for JOGL2 - or libGL (OpenGL library) are installed and if the version is correct. Note that you might have to update etc/librarypath.xml to provide the actual path to the JNI libraries."])],
926 LDFLAGS=$LDFLAGS_save
929 # JoGL Native <=> Java connector
930 AC_JAVA_CHECK_PACKAGE([gluegen2-rt],[jogamp.common.os.MachineDescriptionRuntime],[Scilab 3D rendering])
931 GLUEGEN2_RT=$PACKAGE_JAR_FILE
932 AC_SUBST(GLUEGEN2_RT)
934 if test "$MACOSX" = 1; then
935 echo "Check of the presence of libgluegen-rt.jnilib disabled under Mac OS X"
937 LDFLAGS_save=$LDFLAGS
938 # Provide known paths where distribs/OS can store JNI libs
939 LDFLAGS="$LDFLAGS -L/usr/lib/jni -L/usr/lib64/jni" # Debian
940 LDFLAGS="$LDFLAGS -L/usr/lib/java -L/usr/lib64/java" # jpackage.org
941 LDFLAGS="$LDFLAGS -L/usr/lib/gluegen2 -L/usr/lib64/gluegen2" # RedHat
942 LDFLAGS="$LDFLAGS -L$SCI_SRCDIR/thirdparty -L$SCI_SRCDIR/lib/thirdparty -L$SCI_SRCDIR/bin" # Scilab thirdparties
943 symbol="Java_jogamp_common_jvm_JVMUtil_initialize"
944 AC_CHECK_LIB([gluegen2-rt], [$symbol], [GLUEGEN2_RT_LIBS="-lgluegen2-rt"],
945 [AC_MSG_ERROR([libgluegen2-rt: Library missing (Cannot find symbol $symbol). Check if libgluegen-rt - C/Java (JNI) interface for GLUEGEN2 - is installed and if the version is correct. Note that you might have to update etc/librarypath.xml to provide the actual path to the JNI libraries.])],
947 LDFLAGS=$LDFLAGS_save
951 AC_JAVA_CHECK_PACKAGE([jhall],[javax.help.JHelp],[Scilab Help Browser],"yes")
952 # Named differently under Mandriva or Fedora
953 if test -z "$PACKAGE_JAR_FILE"; then
954 AC_JAVA_CHECK_PACKAGE([javahelp2],[javax.help.JHelp],[Scilab Help Browser])
956 JHALL=$PACKAGE_JAR_FILE
960 AC_JAVA_CHECK_PACKAGE([jrosetta-API],[com.artenum.rosetta.interfaces.core.ConsoleConfiguration],[JRosetta : Console API Artenum / Scilab],"yes")
961 if test -z "$PACKAGE_JAR_FILE"; then
962 AC_JAVA_CHECK_PACKAGE([jrosetta-api],[com.artenum.rosetta.interfaces.core.ConsoleConfiguration],[JRosetta : Console API Artenum / Scilab])
964 JROSETTA_API=$PACKAGE_JAR_FILE
965 AC_SUBST(JROSETTA_API)
968 AC_JAVA_CHECK_PACKAGE([jrosetta-engine],[com.artenum.rosetta.core.action.AbstractConsoleAction],[JRosetta : Console Core Artenum / Scilab])
969 JROSETTA_ENGINE=$PACKAGE_JAR_FILE
970 AC_SUBST(JROSETTA_ENGINE)
971 AC_JAVA_CHECK_VERSION_PACKAGE([jrosetta-engine],[import com.artenum.rosetta.util.ConfigurationBuilder;],$JROSETTA_ENGINE,[1.0.4],[ConfigurationBuilder.getVersion()])
974 # MathML rendering solution
975 # Used in both graphic & help
976 AC_JAVA_CHECK_PACKAGE([jeuclid-core],[net.sourceforge.jeuclid.LayoutContext],[MathML rendering solution (at least version 3.1.X)])
977 JEUCLID_CORE=$PACKAGE_JAR_FILE
978 AC_SUBST(JEUCLID_CORE)
981 ################ Mandatory for graphic_export features #####
982 # XML to PDF/other Translator
983 AC_JAVA_CHECK_PACKAGE([fop],[org.apache.fop.pdf.PDFInfo],[XML to PDF Translator (fop)])
984 FOP=$PACKAGE_JAR_FILE
987 AC_ARG_WITH(emf, [AS_HELP_STRING([--without-emf],
988 [disable support for EMF (Windows Metafile) export])])
989 if test "x$with_emf" != xno; then
991 AC_JAVA_CHECK_PACKAGE([freehep-graphics2d],[org.freehep.graphics2d.VectorGraphics],[Freehep Graphics2D])
992 FREEHEP_GRAPHICS2D=$PACKAGE_JAR_FILE
993 AC_SUBST(FREEHEP_GRAPHICS2D)
995 # Freehep GraphicsIO EMF
996 AC_JAVA_CHECK_PACKAGE([freehep-graphicsio-emf],[org.freehep.graphicsio.emf.EMFGraphics2D],[Freehep GraphicsIO EMF])
997 FREEHEP_GRAPHICSIO_EMF=$PACKAGE_JAR_FILE
998 AC_SUBST(FREEHEP_GRAPHICSIO_EMF)
1000 # Freehep GraphicsIO
1001 AC_JAVA_CHECK_PACKAGE([freehep-graphicsio],[org.freehep.graphicsio.VectorGraphicsIO],[Freehep GraphicsIO])
1002 FREEHEP_GRAPHICSIO=$PACKAGE_JAR_FILE
1003 AC_SUBST(FREEHEP_GRAPHICSIO)
1006 AC_JAVA_CHECK_PACKAGE([freehep-io],[org.freehep.util.io.XMLSequence],[Freehep IO])
1007 FREEHEP_IO=$PACKAGE_JAR_FILE
1008 AC_SUBST(FREEHEP_IO)
1011 AC_JAVA_CHECK_PACKAGE([freehep-util],[org.freehep.util.StringUtilities],[Freehep Util])
1012 FREEHEP_UTIL=$PACKAGE_JAR_FILE
1013 AC_SUBST(FREEHEP_UTIL)
1016 # xml.apache.org SVG Library (under mandriva for example)
1017 AC_JAVA_CHECK_PACKAGE([batik-all],[org.apache.batik.parser.Parser],[Apache SVG Library],"yes")
1018 BATIK=$PACKAGE_JAR_FILE
1020 if test -z "$BATIK"; then
1021 # Other other distribs
1022 AC_JAVA_CHECK_PACKAGE([batik],[org.apache.batik.parser.Parser],[Apache SVG Library])
1023 BATIK=$PACKAGE_JAR_FILE
1026 AC_JAVA_CHECK_VERSION_PACKAGE([batik],[import org.apache.batik.Version;],$BATIK,[1.7],[Version.getVersion()])
1028 # Commons I/O library
1029 AC_JAVA_CHECK_PACKAGE([commons-io],[org.apache.commons.io.output.CountingOutputStream],[Commons I/O library])
1030 COMMONS_IO=$PACKAGE_JAR_FILE
1031 AC_SUBST(COMMONS_IO)
1033 # XML graphics common
1034 AC_JAVA_CHECK_PACKAGE([xmlgraphics-commons],[org.apache.xmlgraphics.util.Service],[Commons graphics library])
1035 XMLGRAPHICS_COMMONS=$PACKAGE_JAR_FILE
1036 AC_SUBST(XMLGRAPHICS_COMMONS)
1038 # Avalon Framework (PDF)
1039 AC_JAVA_CHECK_PACKAGE([avalon-framework],[org.apache.avalon.framework.configuration.ConfigurationException],[Common framework for Java server application])
1040 AVALON_FRAMEWORK=$PACKAGE_JAR_FILE
1041 AC_SUBST(AVALON_FRAMEWORK)
1043 # XML API EXT (conversion of a SVG => PNG)
1044 AC_JAVA_CHECK_PACKAGE([xml-apis-ext],[org.w3c.dom.svg.SVGDocument],[XML Commons external code],"yes")
1045 XML_APIS_EXT=$PACKAGE_JAR_FILE
1047 if test -z "$XML_APIS_EXT"; then
1048 # Other other distribs (Ex: Fedora/Redhat)
1049 AC_JAVA_CHECK_PACKAGE([xml-commons-apis-ext],[org.w3c.dom.svg.SVGDocument],[XML Commons external code])
1050 XML_APIS_EXT=$PACKAGE_JAR_FILE
1052 AC_SUBST(XML_APIS_EXT)
1054 ################ END Mandatory for graphic_export features #####
1057 # Logging (flexdock dep)
1058 AC_JAVA_CHECK_PACKAGE([commons-logging],[org.apache.commons.logging.LogFactory],[Apache logging])
1059 COMMONS_LOGGING=$PACKAGE_JAR_FILE
1060 AC_SUBST(COMMONS_LOGGING)
1063 AC_JAVA_CHECK_PACKAGE([jlatexmath],[org.scilab.forge.jlatexmath.TeXFormula],[LaTex Rendering])
1064 JLATEXMATH=$PACKAGE_JAR_FILE
1065 AC_SUBST(JLATEXMATH)
1067 AC_JAVA_CHECK_VERSION_PACKAGE([jlatexmath],[import org.scilab.forge.jlatexmath.TeXFormula;],$JLATEXMATH,[1.0.3],[TeXFormula.VERSION])
1070 AC_JAVA_CHECK_PACKAGE([jlatexmath-fop],[org.scilab.forge.jlatexmath.fop.JLaTeXMathObj],[LaTex Rendering - FOP plugin])
1071 JLATEXMATH_FOP=$PACKAGE_JAR_FILE
1072 AC_SUBST(JLATEXMATH_FOP)
1074 AC_DEFINE([WITH_GUI],[],[With the JAVA stuff (GUI, Console, JOGL...)])
1078 # Checkstyle (code checking)
1079 AC_JAVA_CHECK_PACKAGE([checkstyle],[com.puppycrawl.tools.checkstyle.CheckStyleTask],[Checkstyle - code checking],"yes")
1080 CHECKSTYLE=$PACKAGE_JAR_FILE
1081 AC_SUBST(CHECKSTYLE)
1083 # Commons beanutils (dependency of checkstyle)
1084 AC_JAVA_CHECK_PACKAGE([commons-beanutils],[org.apache.commons.beanutils.Converter],[Bean utility],"yes")
1085 COMMONS_BEANUTILS=$PACKAGE_JAR_FILE
1086 AC_SUBST(COMMONS_BEANUTILS)
1088 # antlr (dependency of checkstyle)
1089 AC_JAVA_CHECK_PACKAGE([antlr],[antlr.TokenStreamException],[language tool for constructing recognizers],"yes")
1090 ANTLR=$PACKAGE_JAR_FILE
1093 # Junit 4 (java unitary test)
1094 AC_JAVA_CHECK_PACKAGE([junit4],[org.junit.Assert],[Junit4 - Unit tests],"yes")
1095 if test -z "$PACKAGE_JAR_FILE"; then
1096 AC_JAVA_CHECK_PACKAGE([junit],[org.junit.Assert],[Junit4 -
1099 JUNIT4=$PACKAGE_JAR_FILE
1102 # Cobertura (java code coverage)
1103 AC_JAVA_CHECK_PACKAGE([cobertura],[net.sourceforge.cobertura.merge.Main],[cobertura - Java code coverage],"yes")
1104 COBERTURA=$PACKAGE_JAR_FILE
1107 # ASM (a dependency of Cobertura)
1108 AC_JAVA_CHECK_PACKAGE([asm3],[org.objectweb.asm.Type],[Java bytecode manipulation (dep of cobertura)],"yes")
1109 if test -z "$ASM3"; then
1110 AC_JAVA_CHECK_PACKAGE([asm],[org.objectweb.asm.Type],[Java bytecode manipulation (dep of cobertura)],"yes")
1112 ASM3=$PACKAGE_JAR_FILE
1115 AC_JAVA_CHECK_PACKAGE([ecj],[org.eclipse.jdt.core.compiler.batch.BatchCompiler],[Eclipse Java compiler],"yes")
1116 ECJ=$PACKAGE_JAR_FILE
1117 if test -z "$ECJ"; then
1118 ECJ='$SCILAB/thirdparty/ecj.jar'
1123 AC_MSG_WARN([Sun javac not found: I will not build the java interface])
1124 if test "$ac_java_jvm_name" != ""; then
1125 AC_MSG_WARN([We do not support $ac_java_jvm_name yet])
1128 AC_SUBST(JAVA_JNI_INCLUDE)
1129 AC_SUBST(JAVA_JNI_LIBS)
1133 if test "$enable_debug_java" = yes; then
1138 AC_SUBST(JAVAC_DEBUG)
1140 if test "$with_build_swig" != no -a "$with_build_swig" != ""; then
1143 SWIG_ENABLE_SCILAB()
1146 AC_SUBST(SWIG_SCILAB)
1150 # Giws is the equivalent of Swig developed by the Scilab team
1151 # in order to provide a wrapper to Java from C/C++
1152 if test "$enable_build_giws" != no -a "$enable_build_giws" != ""; then
1156 fi # "$with_jdk" != no;
1160 if test -z "$JAVAC"; then
1164 AC_SUBST(JAVA_ENABLE)
1166 # Xcos is not checked here because gui=no disables it
1167 AM_CONDITIONAL(NEED_JAVA, [test "$with_jdk" != no -a \( "$with_javasci" != no -o "$with_gui" != no -o "$enable_build_help" != no \)])
1168 AM_CONDITIONAL(GUI, [test "$with_jdk" != no -a "$with_gui" != no])
1169 AM_CONDITIONAL(JAVASCI, [test "$with_jdk" != no -a "$with_javasci" != no])
1170 AM_CONDITIONAL(SWIG, [test "$with_jdk" != no -a "$with_build_swig" != no -a "$with_build_swig" != ""])
1171 AM_CONDITIONAL(GIWS, [test "$with_jdk" != no -a "$enable_build_giws" != no -a "$enable_build_giws" != ""])
1173 ##############################################################
1175 ##############################################################
1179 if test "$JAVA_ENABLE" != no; then
1183 if test "$with_gui" != no; then
1187 AC_SUBST(GUI_ENABLE)
1189 ##############################################################
1190 ## test for functions in standard C library and C math library
1191 ##############################################################
1193 # Provided by unistd.h
1194 AC_CHECK_FUNCS([sleep] [usleep] [dup2] [getcwd] [getpagesize] [getpass])
1195 AC_CHECK_FUNCS([rmdir])
1197 AC_CHECK_FUNC([getwd],AC_DEFINE([HAVE_GETWD],[1],[Define to 1 if you have the `getwd' function.]),[AC_DEFINE([getwd(x)],[getcwd(x,1024)],[Don't use getwd but getcwd])])
1199 # Provided by <regex.h>
1200 AC_CHECK_FUNCS([regcomp])
1202 # Provided by stdlib.h
1203 AC_CHECK_FUNCS([atexit] [putenv] [setenv])
1205 # Provided by String.h
1206 AC_CHECK_FUNCS([bzero] [memmove] [memset] [strcasecmp] [strerror] [strchr] [strdup] [strpbrk] [strrchr] [strstr] [strtol])
1208 # Provided by select.h
1209 AC_CHECK_FUNCS([select])
1212 AC_CHECK_FUNCS([endpwent])
1214 # Provided by netdb.h
1215 AC_CHECK_FUNCS([gethostbyaddr] [gethostbyname] [gethostname])
1217 # Provided by time.h
1218 AC_CHECK_FUNCS([gettimeofday])
1220 # Provided by ctype.h
1221 AC_CHECK_FUNCS([isascii])
1223 # Provided by wctype.h
1224 AC_CHECK_FUNCS([iswprint])
1226 # Provided by types.h
1227 AC_CHECK_FUNCS([mkdir])
1229 # Provided by mman.h
1230 AC_CHECK_FUNCS([munmap])
1232 # Provided by signal.h
1233 AC_CHECK_FUNCS([strsignal])
1236 # Check of the libm (lib math). Macro provided by libtool.
1237 save_LDFLAGS="$LDFLAGS"
1240 # Provided by math.h
1242 LDFLAGS="$LDFLAGS $LIBM"
1243 AC_CHECK_FUNCS([pow] [sqrt] [finite] [floor] [exp10] [erf] [erfc] [isnan])
1245 ### If isinf exists or not (used to not be the case under Solaris)
1247 AC_DEFINE([HAVE_ISINF],[1],[Have isinf function or macro equivalent])
1248 AC_CHECK_FUNC([isinf],,[
1249 AC_DEFINE([isinf(x)],[(!finite(x) && x==x)],[Provide a macro to do isinf])
1252 LDFLAGS="$save_LDFLAGS"
1254 # Provided by regex.h
1255 AC_CHECK_FUNCS([re_comp])
1257 # Provided by socket.h
1258 AC_CHECK_FUNCS([socket])
1260 # Provided by utsname.h
1261 AC_CHECK_FUNCS([uname])
1263 # Provided by wtloop.c
1264 AC_CHECK_FUNCS([setlocale])
1266 # Function memcmp used in modules/fileio/src/c/xls.c
1269 # function stat used in modules/core/src/c/link_std.c
1272 # function strtod used in modules/core/src/c/getval.c
1275 ########################
1276 ## test for header files
1277 ########################
1279 AC_CHECK_HEADERS([limits.h values.h])
1281 AC_CHECK_HEADERS([fcntl.h float.h libintl.h locale.h malloc.h netdb.h netinet/in.h nlist.h sgtty.h stddef.h sys/file.h sys/ioctl.h sys/param.h sys/socket.h sys/time.h sys/timeb.h sys/utsname.h syslog.h term.h termcap.h termio.h termios.h wchar.h wctype.h time.h])
1283 # check header dirent
1286 # static struct timeval defined or not | used in modules/core/src/c/timer.c
1289 # check if the specific header is available or not | used in modules/core/src/c/link_SYSV.c
1293 #######################
1294 ## Test for structures ##
1295 #######################
1296 AC_CHECK_MEMBERS([struct stat.st_blksize])
1297 AC_CHECK_MEMBERS([struct stat.st_rdev])
1300 #######################
1302 #######################
1304 # gettext. See http://www.gnu.org/software/hello/manual/gettext/AM_005fGNU_005fGETTEXT.html
1305 AM_GNU_GETTEXT([external])
1306 AM_GNU_GETTEXT_VERSION([0.16])
1308 # function closedir used in modules/metanet/src/c/files.c
1309 AC_FUNC_CLOSEDIR_VOID
1311 # Signals used in modules/core/src/c/realmain.c
1314 # struct tm used in modules/core/src/c/history.c
1317 # st_blocks in the struct in modules/io/sci_gateway/c/intfilestat.c
1325 # some systems may have a system curses implementation as well as ncurses
1326 # installed. We need to be consistent in making sure we get the correct
1327 # library to go with the correct header and also provide a way for the user
1328 # to have some control over which is picked when both are available.
1330 # For now, just check for -lcurses and then -lncurses. The user control
1331 # may need to be revisited
1335 # Various observations:
1338 # - installs ncurses.h and possibly curses.h as a link to ncurses.h
1339 # - installs -lncurses.
1340 # - need to include term.h for tgetent() but tgetent() is in -lncurses.a
1342 # curses as found in NetBSD-4 and NetBSD-5
1343 # - installs curses.h
1344 # - need to include termcap.h and link with -ltermcap for tgetent()
1347 AC_CHECK_LIB([curses],[main])
1348 if test $ac_cv_lib_curses_main = no ; then
1349 AC_CHECK_LIB([ncurses],[main])
1352 # make sure we have what we need for tgetent
1353 AC_SEARCH_LIBS([tgetent],[termcap])
1355 AC_CHECK_HEADERS([ncurses.h curses.h])
1357 if test "x$ac_cv_lib_curses_main" = "xyes" -o "x$ac_cv_lib_ncurses_main" = "xyes" ; then
1358 AC_DEFINE([HAVE_TERMCAP],[],[Have Term Cap])
1360 AC_MSG_ERROR([No termcap library detected. Please install ncurses dev library (or termcap library)])
1367 AC_CHECK_LIB(dl, dlopen)
1369 AC_SEARCH_LIBS([pthread_join],[pthread])
1376 AC_HELP_STRING([--without-fftw],[Disable the interface to the FFTW 3 library]))
1379 if test "$with_fftw" != no; then
1384 AC_SUBST(FFTW_ENABLE)
1385 AM_CONDITIONAL(FFTW, test "$with_fftw" != no)
1392 # Disable by default the build of MPI:
1393 # * It is hard to package
1394 # * People are administrating cluster know about rebuilding packages
1395 # * They use their own MPI library
1397 AC_HELP_STRING([--with-mpi],[compile with MPI library]))
1400 if test "$with_mpi" == yes; then
1402 # We will have to detect other implementation of OpenMPI
1405 AC_SUBST(MPI_ENABLE)
1407 AM_CONDITIONAL(MPI, test "$with_mpi" == yes)
1414 AC_HELP_STRING([--without-openmp],[Disable the usage of OpenMP (parallelization of some algoritms)]))
1417 if test "$with_openmp" != no; then
1419 OPENMP_CFLAGS="-fopenmp"
1420 OPENMP_CXXFLAGS="-fopenmp"
1421 OPENMP_LIBS="-lgomp"
1423 AC_CHECK_HEADERS([omp.h], [],
1424 [AC_MSG_ERROR([Could not find omp.h])])
1428 AC_SUBST(OPENMP_ENABLE)
1429 AC_SUBST(OPENMP_CFLAGS)
1430 AC_SUBST(OPENMP_CXXFLAGS)
1431 AC_SUBST(OPENMP_LIBS)
1433 AM_CONDITIONAL(OPENMP, test "$with_openmp" != no)
1436 #######################
1438 #######################
1442 #######################
1444 #######################
1446 ALL_LINGUAS="en_US fr_FR zh_CN zh_TW ru_RU ca_ES de_DE es_ES pt_BR ja_JP it_IT uk_UA pl_PL cs_CZ"
1447 ALL_LINGUAS_DOC="en_US fr_FR pt_BR ja_JP ru_RU"
1449 AC_ARG_ENABLE(build-localization,
1450 AC_HELP_STRING([--disable-build-localization],[Disable the localization build])
1452 BUILD_LOCALIZATION_ENABLE=no
1454 if test "$enable_build_localization" != no; then
1456 AC_SUBST(ALL_LINGUAS)
1457 AC_SUBST(ALL_LINGUAS_DOC)
1458 AC_CHECK_FUNCS([bind_textdomain_codeset])
1460 AC_PATH_PROG(MSGCAT, msgcat, no)
1461 # AC_PATH_PROG(MSGFMT, msgfmt, no)
1462 # AC_PATH_PROG(XGETTEXT, xgettext, no)
1464 if test x$MSGFMT = xno; then
1465 AC_ERROR([The msgfmt command is required to build Scilab. If it is installed on your system, ensure that it is in your path. If it is not, install GNU gettext to continue or use the option --disable-build-localization ])
1467 if test x$MSGCAT = xno; then
1468 AC_ERROR([The msgcat command is required to build Scilab. If it is installed on your system, ensure that it is in your path. If it is not, install GNU gettext to continue or use the option --disable-build-localization ])
1470 BUILD_LOCALIZATION_ENABLE=yes
1472 AM_CONDITIONAL(GENERATE_LOCALIZATION_FILES, test "$BUILD_LOCALIZATION_ENABLE" = yes)
1474 #######################
1475 ## Test for blas/Atlas and lapack
1476 #######################
1477 AC_MSG_CHECKING([if BLAS, ATLAS or MKL is available])
1480 [AC_MSG_RESULT([$BLAS_TYPE found])]
1482 AC_MSG_ERROR([Impossible to find a BLAS compatible library (see BLAS or ATLAS).])
1485 AC_MSG_CHECKING([if LAPACK is available])
1488 [AC_MSG_RESULT([$LAPACK_TYPE found])],
1489 AC_MSG_ERROR([Impossible to find the LAPACK library.])
1493 AC_ARG_WITH(arpack-ng,
1494 AC_HELP_STRING([--without-arpack-ng],[Disable the interface to ARPACK-NG]))
1497 if test "$with_arpack_ng" != no; then
1499 AC_MSG_CHECKING([if ARPACK-NG is available])
1502 [AC_MSG_RESULT([ARPACK-NG library found])],
1503 AC_MSG_ERROR([Impossible to find the ARPACK library. Please note that arpack was bundled with version prior to 5.4.0 and Scilab requires arpack-ng ( http://forge.scilab.org/index.php/p/arpack-ng/ ).])
1507 [AC_MSG_RESULT([Working ARPACK-NG library found (probably ARPACK-NG or a patched version of ARPACK)])],
1508 [AC_MSG_ERROR([ARPACK library found, but seems not to work properly. Please make sure you are using arpack-ng])
1511 AC_MSG_CHECKING([Skip ARPACK-NG detection])
1514 AM_CONDITIONAL(ARPACK_NG, test "$ARPACK_NG" != "no")
1521 AC_ARG_WITH(umfpack,
1522 AC_HELP_STRING([--without-umfpack],[Disable the interface to the UMFPACK library]))
1525 if test "$with_umfpack" != no; then
1526 AC_UMFPACK([$BLAS_LIBS])
1530 AC_SUBST(UMFPACK_ENABLE)
1531 AM_CONDITIONAL(UMFPACK, test "$with_umfpack" != no)
1533 #######################
1535 #######################
1539 #######################
1541 #######################
1550 if test "$with_tk" != no; then
1551 if test "$MACOSX" = "1"; then
1552 AC_MSG_ERROR([Due to technical constraints, Tcl/Tk must be disabled under Mac OS X (--without-tk)])
1555 # check user arguments
1556 USER_TCL_LIB_PATH=""
1557 USER_TCL_INC_PATH=""
1558 AC_ARG_WITH(tcl-library,
1559 AC_HELP_STRING([--with-tcl-library=DIR],[Set the path to the TCL library]),
1560 [ USER_TCL_LIB_PATH=$withval
1562 AC_ARG_WITH(tcl-include,
1563 AC_HELP_STRING([--with-tcl-include=DIR],[Set the path to the TCL headers]),
1564 [ USER_TCL_INC_PATH=$withval
1567 USER_TK_LIB_PATH=$USER_TCL_LIB_PATH
1568 USER_TK_INC_PATH=$USER_TCL_INC_PATH
1570 AC_ARG_WITH(tk-library,
1571 AC_HELP_STRING([--with-tk-library=DIR],[Set the path to the TK library]),
1572 [ USER_TK_LIB_PATH=$withval
1575 AC_ARG_WITH(tk-include,
1576 AC_HELP_STRING([--with-tk-include=DIR],[Set the path to the TK headers]),
1577 [ USER_TK_INC_PATH=$withval
1580 ###########################
1581 ########## X11 checks
1582 ###########################
1583 ## This check is mandatory since tk needs Xlib headers and libs
1587 saved_cflags="$CFLAGS"
1588 saved_ldflags="$LDFLAGS"
1589 saved_cppflags="$CXXFLAGS"
1591 AC_CHECK_LIB([dl], [main], [TCLTK_LIBS=" -ldl"])
1595 if test "$WITH_TKSCI" = yes; then
1596 AC_DEFINE([WITH_TK], [], [With TK])
1598 AC_MSG_ERROR([TCL/TK not found. Use --without-tk or specify the librairies and include paths manually])
1601 AC_SUBST(TCLTK_LIBS)
1602 AC_SUBST(TCL_INC_PATH)
1603 AC_SUBST(TK_INC_PATH)
1606 AC_SUBST(WITH_TKSCI)
1607 AM_CONDITIONAL(TCLTK, test "$WITH_TKSCI" = yes)
1610 ## MATIO LIBRARY (MAT File I/O Library)
1615 AC_HELP_STRING([--without-matio],[Disable the interface to Matio (MAT File I/O library)]))
1617 AC_ARG_WITH(matio_include,
1618 AC_HELP_STRING([--with-matio-include=DIR],[Set the path to the MATIO headers]),
1619 [with_matio_include="-I$withval"], [])
1621 AC_ARG_WITH(matio_library,
1622 AC_HELP_STRING([--with-matio-library=DIR],[Set the path to the MATIO libraries]),
1623 [with_matio_library="-L$withval"], [])
1627 if test "$with_matio" != no; then
1628 if test -n "$with_matio_include" -o -n "$with_matio_library" ; then
1629 MATIO_CFLAGS="$with_matio_include"
1630 MATIO_LIBS="$with_matio_library -lm -lz -lmatio -lhdf5"
1632 PKG_CHECK_MODULES(MATIO, [matio >= 1.5.0])
1635 save_CFLAGS="$CFLAGS"
1638 CFLAGS="$CFLAGS $MATIO_CFLAGS"
1639 LIBS="$LIBS $MATIO_LIBS"
1641 AC_CHECK_HEADERS([matio.h], [],
1642 [AC_MSG_ERROR([Invalid MATIO_CFLAGS returned by pkg-config. Try to define MATIO_CFLAGS.])])
1643 AC_CHECK_LIB([matio], [Mat_Open], [],
1644 [AC_MSG_ERROR([Invalid MATIO_LIBS returned by pkg-config. Try to define MATIO_LIBS.])])
1647 CFLAGS="$save_CFLAGS"
1649 AC_DEFINE([WITH_MATIO], [], [With the MATIO library])
1652 AC_SUBST(MATIO_LIBS)
1653 AC_SUBST(MATIO_CFLAGS)
1657 AC_SUBST(MATIO_ENABLE)
1658 AM_CONDITIONAL(MATIO, test "$with_matio" != no)
1660 #############################
1661 ## Documentation management #
1662 #############################
1666 AC_ARG_ENABLE(build-help,
1667 AC_HELP_STRING([--disable-build-help],[Disable the help build])
1670 if test "$enable_build_help" != no; then
1676 if test "$JAVA_ENABLE" = no; then
1680 AC_SUBST(HELP_ENABLE)
1682 AM_CONDITIONAL(BUILD_HELP, test $HELP_ENABLE = yes)
1684 ## Install XML help files ###
1686 AC_ARG_WITH(install-help-xml,
1687 AC_HELP_STRING([--with-install-help-xml],[make install will install XML files])
1689 HELP_INSTALL_ENABLE=no
1690 if test "$with_install_help_xml" != no -a "$with_install_help_xml" != ""; then
1691 HELP_INSTALL_ENABLE=yes
1693 AM_CONDITIONAL(INSTALL_HELP_XML, test "$HELP_INSTALL_ENABLE" != "")
1695 ## Doxygen help generation
1696 AC_ARG_ENABLE(build-doxygen,
1697 AC_HELP_STRING([--enable-build-doxygen],[Generate doxygen C/C++ documentation]))
1700 if test "$enable_build_doxygen" != no -a "$enable_build_doxygen" != ""; then
1705 AM_CONDITIONAL(DOXYGEN, test $DOXYGEN_ENABLE = yes)
1707 ##############################################################
1709 ##############################################################
1713 if test "$JAVA_ENABLE" = no -o "$JAVASCI" = no; then
1717 AC_SUBST(JAVASCI_ENABLE)
1720 ##############################################################
1721 ## Enable test at compilation time
1722 ##############################################################
1724 COMPILATION_TESTS=no
1725 if test "$enable_compilation_tests" != no -a "$enable_compilation_tests" != ""; then
1726 COMPILATION_TESTS=yes
1729 if test COMPILATION_TESTS=yes -a "$JUNIT4" == ""; then
1730 AC_MSG_WARN([--enable-compilation-tests deactivated: Could not find Junit4"])
1731 COMPILATION_TESTS=no
1734 AM_CONDITIONAL(COMPILATION_TESTS, test "$COMPILATION_TESTS" != "no")
1736 ##############################################################
1737 ## Enable the global force link
1738 ##############################################################
1740 AC_ARG_ENABLE(force-full-link,
1741 AC_HELP_STRING([--enable-force-full-link],[Forces the explicit link between libscilab and some "on-the-fly" loaded libraries. NOT USE IN PRODUCTION.]))
1743 FORCE_FULL_LINK="no"
1744 if test "$enable_force_full_link" == "yes"; then
1745 FORCE_FULL_LINK="yes"
1748 AM_CONDITIONAL(FORCE_LINK, test "$FORCE_FULL_LINK" == "yes")
1750 ##############################################################
1751 ## demo_tools module
1752 ##############################################################
1754 DEMOTOOLS_ENABLE=yes
1756 if test "$GUI_ENABLE" = no; then
1760 AC_SUBST(DEMOTOOLS_ENABLE)
1762 ##############################################################
1763 ## graphics/renderer/graphic_export module
1764 ##############################################################
1768 if test "$GUI_ENABLE" = no; then
1772 AC_SUBST(GRAPHICS_ENABLE)
1774 #########################
1776 #########################
1780 AC_PROG_LIBTOOL([shared dlopen])
1783 # Eliminate -lstdc++ addition to postdeps for cross compiles.
1784 postdeps_CXX=`echo " $postdeps_CXX " | sed 's, -lstdc++ ,,g'`
1786 # Avoid to link all the dep from others libraries (*.la included by LIBADD)
1789 # Check to see if building shared libraries
1790 libtool_build_shared_libs=no
1791 if test "$enable_shared" = "yes"; then
1792 libtool_build_shared_libs=yes
1795 # Check to see if building static libraries
1796 libtool_build_static_libs=no
1797 if test "$enable_static" = "yes"; then
1798 libtool_build_static_libs=yes
1801 # AM_CONDITIONAL(ENABLE_STATIC, test "$libtool_build_static_libs" = yes)
1802 # Fake to disable the static build
1803 AM_CONDITIONAL(ENABLE_STATIC, test "$libtool_build_static_libs" = xxxx)
1813 AC_PATH_PROG(SPLINT, splint, no)
1816 ##### Detect ccache and use it by default if available
1819 AC_ARG_ENABLE(ccache,
1820 AC_HELP_STRING([--disable-ccache],[Disable the use of ccache])
1822 AC_PATH_PROG(CCACHE, ccache)
1823 if test x"$CCACHE" != x -a "$enable_ccache" != no; then
1828 #######################
1829 ###### Creation of the header file (machine.h)
1830 #######################
1832 AC_DEFINE_UNQUOTED([PATH_SEPARATOR], ["$PATH_SEPARATOR"],
1833 [The default path separator character.])
1835 AH_TOP([#ifndef MACHINE_H
1837 /* This file defines global element configuration of the build host */
1842 #ifdef DIR_SEPARATOR
1843 #undef DIR_SEPARATOR
1845 #define DIR_SEPARATOR "/"
1847 #endif /* MACHINE_H */
1850 # Define the standard extension of a dynamic library
1851 AC_DEFINE_UNQUOTED([SHARED_LIB_EXT],["$shrext_cmds"],[Extension of a shared library])
1856 ## Update the years in the various part of the code.
1859 if test ! -f modules/core/src/c/banier.c; then
1860 AC_MSG_ERROR([Could not find the Scilab banier file.])
1863 CURRENT_YEAR=`date "+%Y"`
1864 DETECTED_YEAR=`grep "Copyright (c) 2011-" modules/core/src/c/banier.c|sed -e "s/.*Copyright (c) 2011-\([[0-9]]*\).*/\1/g"`
1866 if test "$CURRENT_YEAR" != "$DETECTED_YEAR"; then
1867 sed -i -e "s| 2011-$DETECTED_YEAR | 2011-$CURRENT_YEAR |g" modules/core/src/c/banier.c modules/windows_tools/src/c/scilab_windows/console.c
1868 sed -i -e "s| 2011-$DETECTED_YEAR Scilab Enterprises| 2011-$CURRENT_YEAR Scilab Enterprises|g" etc/Info.plist.in
1869 sed -i -e "s|VALUE \"LegalCopyright\", \"Copyright (C) $DETECTED_YEAR|VALUE \"LegalCopyright\", \"Copyright (C) $CURRENT_YEAR|" $(find . -iname '*.rc')
1870 AC_MSG_WARN([New year ($CURRENT_YEAR) detected. Copyright files updated. Please commit them ASAP.])
1875 ## Make sure that the libstdc++ and libgcc can be compiled as static
1878 AC_CHECK_STDCPP_STATIC()
1884 # Stop to compile scilab when a warning is found ...
1885 # This stuff is at the end of the configure.ac because it causes some
1886 # problem with AC_COMPILE (the -Werror is added to the test)
1888 if test "$enable_stop_on_warning" = yes; then
1889 WARNING_CFLAGS="-Werror=implicit-function-declaration -Werror=declaration-after-statement "
1890 WARNING_CXXFLAGS="-Werror=implicit-function-declaration "
1893 # SCI_*FLAGS contains all defaults values detected on configure
1894 SCI_CFLAGS=$(echo $LARGEFILE_CFLAGS $CODECOVERAGE_CFLAGS $DEBUG_CFLAGS $ARCH_CFLAGS $COMPILER_CFLAGS $SCILIBS_CFLAGS $SSE_CFLAGS $BACKTRACE_CFLAGS $WARNING_CFLAGS)
1895 SCI_CXXFLAGS=$(echo $LARGEFILE_CXXFLAGS $CODECOVERAGE_CXXFLAGS $DEBUG_CXXFLAGS $ARCH_CXXFLAGS $COMPILER_CXXFLAGS $SCILIBS_CXXFLAGS $SSE_CXXFLAGS $BACKTRACE_CXXFLAGS $WARNING_CXXFLAGS)
1896 SCI_FFLAGS=$(echo $LARGEFILE_FFLAGS $CODECOVERAGE_FFLAGS $DEBUG_FFLAGS $ARCH_FFLAGS $COMPILER_FFLAGS $SCILIBS_FFLAGS $SSE_FFLAGS $BACKTRACE_FFLAGS $WARNING_FFLAGS)
1897 SCI_LDFLAGS=$(echo $LARGEFILE_LDFLAGS $CODECOVERAGE_LDFLAGS $DEBUG_LDFLAGS $ARCH_LDFLAGS $SCILIBS_LDFLAGS $SSE_LDFLAGS $BACKTRACE_LDFLAGS $WARNING_LDFLAGS)
1898 AC_SUBST(SCI_CFLAGS)
1899 AC_SUBST(SCI_CXXFLAGS)
1900 AC_SUBST(SCI_FFLAGS)
1901 AC_SUBST(SCI_LDFLAGS)
1905 desktop/images/icons/Makefile
1907 modules/helptools/Makefile
1908 modules/data_structures/Makefile
1909 modules/differential_equations/Makefile
1910 modules/optimization/Makefile
1911 modules/elementary_functions/Makefile
1912 modules/special_functions/Makefile
1914 modules/completion/Makefile
1915 modules/history_manager/Makefile
1916 modules/jvm/Makefile
1917 modules/commons/Makefile
1918 modules/sound/Makefile
1919 modules/statistics/Makefile
1920 modules/mexlib/Makefile
1921 modules/sparse/Makefile
1922 modules/linear_algebra/Makefile
1923 modules/polynomials/Makefile
1924 modules/symbolic/Makefile
1925 modules/signal_processing/Makefile
1926 modules/arnoldi/Makefile
1927 modules/interpolation/Makefile
1928 modules/intersci/Makefile
1929 modules/localization/Makefile
1930 modules/cacsd/Makefile
1931 modules/boolean/Makefile
1932 modules/integer/Makefile
1933 modules/double/Makefile
1934 modules/fileio/Makefile
1935 modules/spreadsheet/Makefile
1936 modules/string/Makefile
1937 modules/time/Makefile
1938 modules/graphics/Makefile
1939 modules/graphic_export/Makefile
1940 modules/graphic_objects/Makefile
1941 modules/renderer/Makefile
1942 modules/action_binding/Makefile
1943 modules/gui/Makefile
1944 modules/mpi/Makefile
1945 modules/randlib/Makefile
1946 modules/tclsci/Makefile
1947 modules/windows_tools/Makefile
1948 modules/core/Makefile
1949 modules/prebuildjava/Makefile
1950 modules/api_scilab/Makefile
1951 modules/call_scilab/Makefile
1952 modules/types/Makefile
1953 modules/hdf5/Makefile
1954 modules/fftw/Makefile
1955 modules/umfpack/Makefile
1956 modules/scicos/Makefile
1957 modules/scicos_blocks/Makefile
1958 modules/functions/Makefile
1959 modules/dynamic_link/Makefile
1960 modules/overloading/Makefile
1961 modules/javasci/Makefile
1962 modules/m2sci/Makefile
1963 modules/compatibility_functions/Makefile
1964 modules/development_tools/Makefile
1965 modules/output_stream/Makefile
1966 modules/console/Makefile
1967 modules/demo_tools/Makefile
1968 modules/genetic_algorithms/Makefile
1969 modules/simulated_annealing/Makefile
1970 modules/parameters/Makefile
1971 modules/matio/Makefile
1972 modules/atoms/Makefile
1973 modules/xcos/Makefile
1974 modules/scinotes/Makefile
1975 modules/ui_data/Makefile
1976 modules/graph/Makefile
1977 modules/parallel/Makefile
1978 modules/modules_manager/Makefile
1979 modules/history_browser/Makefile
1980 modules/preferences/Makefile
1981 modules/xml/Makefile
1982 modules/external_objects/Makefile
1983 modules/external_objects_java/Makefile
1990 etc/logging.properties
1992 scilab-lib.properties
1993 scilab-lib-doc.properties
1994 modules/helptools/etc/SciDocConf.xml
1995 modules/core/includes/version.h
1996 modules/core/includes/stack.h
1999 # Detection of the module for the future version of Scilab 6
2000 # ie we detect module which ends with _yasp
2002 if test "$enable_yasp" = yes; then
2004 modules/development_tools/src/fake/Makefile
2008 # This script is used by Xcos in order to regenerate the function/block list
2009 AC_CONFIG_COMMANDS_POST([chmod +x $SCI_SRCDIR_FULL/modules/scicos_blocks/src/scripts/GenBlocks.sh $SCI_SRCDIR_FULL/modules/dynamic_link/src/scripts/scicompile.sh $SCI_SRCDIR_FULL/modules/dynamic_link/src/scripts/compilerDetection.sh $SCI_SRCDIR_FULL/modules/dynamic_link/src/scripts/configure])
2013 # To distribution packager, you can uncomment this stuff is you want to
2014 # disable the rpath issue
2015 # However, you will have to set all the LD_LIBRARY_PATH to .libs/ directory
2016 # since scilab is compiling macros and help into the source tree (ie before
2017 # the "make install")
2018 # You should consider using chrpath:
2019 # http://directory.fsf.org/project/chrpath/
2020 # to remove it before the make install
2024 # AC_MSG_RESULT([Fixing libtool for -rpath problems.])
2025 # sed < libtool > libtool-2 \
2026 # 's/^hardcode_libdir_flag_spec.*$/hardcode_libdir_flag_spec=" -D__LIBTOOL_IS_A_FOOL__ "/'
2027 # mv libtool-2 libtool
2035 echo "Scilab is configured as follows. Please verify that this configuration"
2036 echo "matches your expectations."
2038 echo "Host system type : $host"
2040 echo " Option Value"
2041 echo "-------------------------------------------------------------------------"
2042 echo "Shared libraries....... --enable-shared=$libtool_build_shared_libs"
2043 echo "Static libraries....... --enable-static=$libtool_build_static_libs"
2044 echo "GNU ld................. --with-gnu-ld=$with_gnu_ld"
2045 echo "Enable debug .......... --enable-debug=$enable_debug"
2046 echo "Enable debug C......... --enable-debug-C=$enable_debug_C"
2047 echo "Enable debug C++....... --enable-debug-CXX=$enable_debug_CXX"
2048 echo "Enable debug Java...... --enable-debug-java=$enable_debug_java"
2049 echo "Enable debug Fortran... --enable-debug-fortran=$enable_debug_fortran"
2050 echo "Enable stop on warning. --enable-stop-on-warning=$enable_stop_on_warning"
2053 echo "Compiler Configuration:"
2054 echo " Intel (--with-intelcompilers) .... = $with_intelcompilers"
2055 echo " GNU gcc (--with-gcc) ............. = $with_gcc"
2056 echo " GNU Fortran 95 (--with-gfortran) . = $with_gfortran"
2059 echo " Do not use TCL/TK (--without-tk) ................. = $with_tk"
2060 echo " TCL include (--with-tcl-include) ................. = $USER_TCL_INC_PATH"
2061 echo " TCL library (--with-tcl-library) ................. = $USER_TCL_LIB_PATH"
2062 echo " TK include (--with-tk-include) ................... = $USER_TK_INC_PATH"
2063 echo " TK library (--with-tk-library) ................... = $USER_TK_LIB_PATH"
2064 echo " Install XML Help (--with-install-help-xml) ....... = $with_install_help_xml"
2065 echo " Compilation tests (--enable-compilation-tests) ... = $COMPILATION_TESTS"
2066 echo " Make the package relocatable (--enable-relocatable)= $RELOCATABLE"
2067 echo " Use FFTW (--without-fftw) ........................ = $with_fftw"
2068 echo " Use MATIO (--without-matio) ...................... = $with_matio"
2071 if test "$with_gui" = no; then
2072 echo "Not using Xcos because of the option --without-gui"
2074 if test $XCOS_ENABLE = yes; then
2076 echo "Build modelica compiler (--without-modelica) ....... = $with_modelica"
2078 if test "$with_modelica" != no -a "$OCAMLC" != no -a "$OCAMLOPT" != no; then
2079 echo "Ocaml Configuration (for Modelica compiler):"
2080 echo " OCAMLC ............. = $OCAMLC"
2081 echo " OCAMLOPT ........... = $OCAMLOPT"
2082 echo " OCAMLDEP ........... = $OCAMLDEP"
2084 echo "Will not build Modelica compiler"
2087 echo "Not using Xcos"
2092 if test "$enable_code_coverage" = yes; then
2093 echo "Code coverage configuration:"
2094 echo " LCOV .............. = $LCOV"
2095 echo " GENHTML ........... = $GENHTML"
2097 echo "Not using code coverage"
2101 if test $OPENMP_ENABLE = yes; then
2102 echo "OpenMP Configuration:"
2103 echo "OpenMP CFLAGS ...... = $OPENMP_CFLAGS"
2104 echo "OpenMP CXXFLAGS .... = $OPENMP_CXXFLAGS"
2105 echo "OpenMP LIBS ........ = $OPENMP_LIBS"
2106 echo "OpenMP LDFLAGS ..... = $OPENMP_LDFLAGS"
2108 echo "Not using OpenMP"
2112 if test $FFTW_ENABLE = yes; then
2113 echo "FFTW Configuration:"
2114 echo " FFTW LIBS .......... = $FFTW3_LIB"
2115 echo " FFTW CFLAGS ........ = $FFTW3_CFLAGS"
2117 echo "Not using FFTW"
2121 if test $MATIO_ENABLE = yes; then
2122 echo "MATIO Configuration:"
2123 echo " MATIO LIBS .......... = $MATIO_LIBS"
2124 echo " MATIO CFLAGS ........ = $MATIO_CFLAGS"
2126 echo "Not using MATIO"
2130 if test $UMFPACK_ENABLE = yes; then
2131 echo "UMFPACK Configuration:"
2132 echo " UMFPACK LIBS ....... = $UMFPACK_LIB"
2133 echo " UMFPACK CFLAGS ..... = $UMFPACK_CFLAGS"
2134 if test $SUITESPARSE = yes; then
2135 echo " UMFPACK SUITESPARSE = Yes"
2137 echo " UMFPACK SUITESPARSE = No"
2140 echo "Not using UMFPACK"
2145 echo "BLAS/LAPACK/ATLAS Configuration:"
2146 echo " BLAS LIBS ............. = $BLAS_LIBS"
2147 echo " BLAS TYPE ............. = $BLAS_TYPE"
2148 echo " LAPACK LIBS ........... = $LAPACK_LIBS"
2149 echo " LAPACK TYPE ........... = $LAPACK_TYPE"
2150 echo " ARPACK LIBS ........... = $ARPACK_LIBS"
2154 if test "$with_mpi" == yes; then
2155 echo "OpenMPI Configuration:"
2156 echo "OpenMPI LIBS ........... = $OPENMPI_LIBS"
2157 echo "OpenMPI C Compiler ..... = $OPENMPI_CC"
2158 echo "OpenMPI C++ Compiler ... = $OPENMPI_CXX"
2159 echo "OpenMPI F77 Compiler ... = $MPIF77"
2161 echo "Not using MPI"
2165 if test $BUILD_LOCALIZATION_ENABLE != no; then
2166 echo "Gettext/localization configuration:"
2167 echo " xgettext ............... = $XGETTEXT"
2168 echo " msgfmt ................ = $MSGFMT"
2169 echo " msgfmt_opts ............ = $MSGFMT_OPTS"
2170 echo " msgcat ................ = $MSGCAT"
2172 echo "Won't generate localization files"
2176 if test $HELP_ENABLE = yes; then
2177 echo "Documentation building configuration:"
2178 echo " Docbook XSL path ....... = $DOCBOOK_ROOT"
2179 echo " Saxon XSLT ............. = $SAXON"
2180 echo " XML commons external ... = $XML_APIS_EXT"
2182 echo "No documentation generated"
2186 echo "Java Configuration:"
2187 if test ! -z "$JAVAC"; then
2188 echo " JAVA_HOME ........... = $JAVA_HOME"
2189 echo " JAVAC ............... = $JAVAC"
2190 echo " JAVA_CLASSPATH ...... = $JAVA_CLASSPATH"
2191 echo " JAVA_VERSION ........ = $JAVA_VERSION"
2192 echo " JAVAC_FLAGS ......... = $JAVAC_FLAGS"
2193 echo " JAVA_JNI_INCLUDE .... = $JAVA_JNI_INCLUDE"
2194 echo " JAVA_JNI_LIBS ....... = $JAVA_JNI_LIBS"
2195 echo " JAVA_JNI_LIBS_PRELOAD = $JAVA_JNI_LIBS_PRELOAD"
2196 echo " JAVA ................ = $JAVA"
2197 echo " JAVADOC ............. = $JAVADOC"
2198 echo " JAR ................. = $JAR"
2199 echo " ANT ................. = $ANT"
2201 echo " JAVA disabled"
2206 echo "Java dependencies:"
2207 if test ! -z "$JAVAC"; then
2208 echo " Flexdock ............ = $FLEXDOCK"
2209 echo " JOGL 2............... = $JOGL2"
2210 echo " JOGL 2 LIBS (JNI) ... = $JOGL2_LIBS"
2211 echo " Gluegen 2 ........... = $GLUEGEN2_RT"
2212 echo " Gluegen 2 LIBS (JNI) = $GLUEGEN2_RT_LIBS"
2213 echo " Jeuclid (MathML) .... = $JEUCLID_CORE"
2214 echo " Jhall .............. = $JHALL"
2215 echo " Jrosetta (API) ...... = $JROSETTA_API"
2216 echo " Jrosetta (Engine) ... = $JROSETTA_ENGINE"
2217 echo " Commons Logging ..... = $COMMONS_LOGGING"
2218 echo " JGraph X ............ = $JGRAPHX"
2219 echo " SciRenderer ......... = $SCIRENDERER"
2220 echo " JLaTeXMath .......... = $JLATEXMATH"
2221 echo " ECJ ................. = $ECJ"
2225 if test ! -z "$JAVAC"; then
2226 echo "Documentation, graphic export:"
2227 echo " FOP (XML => PDF) .... = $FOP"
2228 echo " JLaTeXMath Fop ...... = $JLATEXMATH_FOP"
2229 echo " Batik (SVG) ......... = $BATIK"
2230 echo " Avalon Framework .... = $AVALON_FRAMEWORK"
2231 echo " Commons I/O ......... = $COMMONS_IO"
2232 echo " XML graphics commons = $XMLGRAPHICS_COMMONS"
2237 echo "Code quality (optional):"
2238 echo " Checkstyle .......... = $CHECKSTYLE"
2239 echo " Commons-beanutils ... = $COMMONS_BEANUTILS"
2240 echo " Antlr ............... = $ANTLR"
2241 echo " Junit4 .............. = $JUNIT4"
2242 echo " Cobertura ........... = $COBERTURA"
2243 echo " splint .............. = $SPLINT"
2246 echo "TCL/TK configuration:"
2247 echo " TK_INC_PATH ........ = $TK_INC_PATH"
2248 echo " TCL_INC_PATH ....... = $TCL_INC_PATH"
2249 echo " TCLTK_LIBS ......... = $TCLTK_LIBS"
2250 echo " TCL_SERIAL_VERSION . = $TCL_SERIAL_VERSION"
2251 echo " TK_SERIAL_VERSION .. = $TK_SERIAL_VERSION"
2254 echo "XML configuration:"
2255 echo " XML_FLAGS .......... = $XML_FLAGS"
2256 echo " XML_LIBS ........... = $XML_LIBS"
2257 echo " XML_VERSION ........ = $XML_VERSION"
2260 echo "HDF5 configuration:"
2261 echo " HDF5 CFLAGS ......... = $HDF5_CFLAGS"
2262 echo " HDF5 LIBS ........... = $HDF5_LIBS"
2265 echo "PCRE configuration:"
2266 echo " PCRE_CFLAGS ........ = $PCRE_CFLAGS"
2267 echo " PCRE_LIBS .......... = $PCRE_LIBS"
2268 echo " PCRE_VERSION ....... = $PCRE_VERSION"
2271 echo "CURL configuration:"
2272 echo " CURL_CFLAGS ........ = $CURL_CFLAGS"
2273 echo " CURL_LIBS .......... = $CURL_LIBS"
2274 echo " CURL_VERSION ....... = $CURL_VERSION"
2278 echo "SWIG Configuration:"
2279 if test ! -z "$SWIG_BIN"; then
2280 echo " SWIG_BIN ........... = $SWIG_BIN"
2281 echo " SWIG_JAVA .......... = $SWIG_JAVA"
2283 echo " SWIG generation disabled"
2287 echo "GIWS Configuration:"
2288 if test ! -z "$GIWS_BIN"; then
2289 echo " GIWS_BIN ........... = $GIWS_BIN"
2291 echo " GIWS generation disabled"
2295 echo "Libtool config:"
2296 echo " objext .............. = $objext"
2297 echo " libext (static) ..... = $libext"
2298 echo " shrext_cmds ......... = $shrext_cmds"
2299 echo " exeext .............. = $exeext"
2303 echo "Compilation paths:"
2304 echo " srcdir .............. = $SCI_SRCDIR"
2305 echo " srcdir_full ......... = $SCI_SRCDIR_FULL"
2306 echo " builddir ............ = $SCI_BUILDDIR"
2307 if test "$SCI_SRCDIR_FULL" != "$SCI_BUILDDIR"; then
2308 echo " VPATH build ......... = Activated"
2312 echo "Platform information:"
2313 echo " host ........... = $host"
2314 echo " host_cpu ....... = $host_cpu"
2315 echo " host_vendor .... = $host_vendor"
2316 echo " host_os ... .... = $host_os"
2317 echo " hostname ....... = $ac_hostname"
2318 echo " CPU 64 bits .... = $IS_64_BITS_CPU"
2319 if test -n "$MAC_DETECTED_ARCH"; then
2320 echo " Mac OS X arch .. = $MAC_DETECTED_ARCH"
2321 echo " Mac OS X version = $macosx_version"
2325 echo "Options used to compile and link:"
2326 echo " prefix ......... = $prefix"
2327 echo " localedir ...... = $localedir"
2328 echo " VERSION ........ = $PACKAGE_VERSION"
2329 echo " CC ............. = $CC"
2330 echo " CFLAGS ......... = $CFLAGS"
2331 echo " SCI_CFLAGS ..... = $SCI_CFLAGS"
2332 echo " DEFS ........... = $DEFS"
2333 echo " LD ............. = $LD"
2334 echo " LDFLAGS ........ = $LDFLAGS"
2335 echo " SCI_LDFLAGS .... = $SCI_LDFLAGS"
2336 echo " LIBS ........... = $LIBS"
2337 echo " CXX ............ = $CXX"
2338 echo " CXXFLAGS ....... = $CXXFLAGS"
2339 echo " SCI_CXXFLAGS ... = $SCI_CXXFLAGS"
2340 echo " F77 ............ = $F77"
2341 echo " FFLAGS ......... = $FFLAGS"
2342 echo " SCI_FFLAGS ..... = $SCI_FFLAGS"
2343 echo " F77_LDFLAGS .... = $F77_LDFLAGS"
2344 echo " TERMCAP_LIB .... = $TERMCAP_LIB"