* Bug #12705 fixed - Elementary_functions & m2sci: members() function
[scilab.git] / scilab / configure.ac
1 #
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 #
7 # This file must be used under the terms of the CeCILL.
8 # This source file is licensed as described in the file COPYING, which
9 # you should have received as part of this distribution.  The terms
10 # are also available at
11 # http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
12 #
13
14 dnl Process this file with autoconf to produce a configure script.
15
16
17 AC_REVISION($Revision$)dnl
18 AC_INIT([Scilab],[5],[http://bugzilla.scilab.org/])
19 AC_PREREQ(2.68)
20 AC_CONFIG_MACRO_DIR([m4/])
21
22 SCI_BUILDDIR="`pwd`"
23 SCI_SRCDIR="$srcdir"
24 SCI_SRCDIR_FULL="`cd $SCI_SRCDIR && pwd`"
25
26 SCILAB_VERSION_MAJOR=5
27 SCILAB_VERSION_MINOR=5
28 SCILAB_VERSION_MAINTENANCE=0
29 AC_SUBST(SCILAB_VERSION_MAJOR)
30 AC_SUBST(SCILAB_VERSION_MINOR)
31 AC_SUBST(SCILAB_VERSION_MAINTENANCE)
32
33
34 SCILAB_LIBRARY_VERSION=$SCILAB_VERSION_MAJOR:$SCILAB_VERSION_MINOR:$SCILAB_VERSION_MAINTENANCE
35 AC_SUBST(SCILAB_LIBRARY_VERSION)
36
37 SCILAB_BINARY_VERSION=$SCILAB_VERSION_MAJOR.$SCILAB_VERSION_MINOR.$SCILAB_VERSION_MAINTENANCE
38 AC_SUBST(SCILAB_BINARY_VERSION)
39
40 #shared library versioning
41 #GENERIC_LIBRARY_VERSION=1:2:0
42 #                       | | |
43 #                +------+ | +---+
44 #                |        |     |
45 #             current:revision:age
46 #                |        |     |
47 #                |        |     +- increment if interfaces have been added
48 #                |        |        set to zero if interfaces have been removed
49 #                                  or changed
50 #                |        +- increment if source code has changed
51 #                |           set to zero if current is incremented
52 #                +- increment if interfaces have been added, removed or changed
53
54 # Check if we have a space in the path to the source tree
55 SPACE_IN_PATH=`echo "$SCI_SRCDIR_FULL"|grep " " > /dev/null; echo $?`
56 if test "$SPACE_IN_PATH" = "0"; then
57    AC_MSG_WARN([=====================================])
58    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...])
59    AC_MSG_WARN([=====================================])
60    sleep 180
61 fi
62
63 AC_CONFIG_AUX_DIR(config)
64 AC_CONFIG_HEADERS([modules/core/includes/machine.h])
65
66 # strip executable
67 AM_PROG_INSTALL_STRIP
68 AC_PROG_LN_S
69
70 AC_CUSTOM_LARGE_FILE
71
72 # In order to be able to change the scilab directory
73 # See http://wiki.debian.org/RpathIssue
74 AC_RELOCATABLE
75 AC_RELOCATABLE_LIBRARY
76 AC_LIB_RPATH
77
78 # If configure detect that timestamp changed,
79 # it tries to rebuild configure & makefile which can be a painmaker
80 # if the version is different
81 AM_MAINTAINER_MODE
82
83 AM_INIT_AUTOMAKE([-Wall foreign]) # Not using -Werror because we override {C,F}FLAGS in order to disable optimisation
84
85 AC_CANONICAL_HOST
86
87 #################################
88 ## all the --with-* argument help
89 #################################
90
91
92 AC_ARG_ENABLE(debug,
93    AC_HELP_STRING([--enable-debug],[Do not optimize and print warning messages (C/C++/Fortran/Java code)]))
94
95 AC_ARG_ENABLE(debug-C,
96    AC_HELP_STRING([--enable-debug-C],[Do not optimize and print warning messages (C code)]))
97
98 AC_ARG_ENABLE(debug-CXX,
99    AC_HELP_STRING([--enable-debug-CXX],[Do not optimize and print warning messages (C++ code)]))
100
101 AC_ARG_ENABLE(debug-java,
102    AC_HELP_STRING([--enable-debug-java],[Print warning messages and line numbers (Java code)]))
103
104 AC_ARG_ENABLE(debug-fortran,
105    AC_HELP_STRING([--enable-debug-fortran],[Do not optimize and print warning messages (Fortran code)]))
106
107 AC_ARG_ENABLE(debug-linker,
108    AC_HELP_STRING([--enable-debug-linker],[Print warning messages from the linker (ld)]))
109
110 AC_ARG_ENABLE(code-coverage,
111    AC_HELP_STRING([--enable-code-coverage],[Enable code coverage]))
112
113 AC_ARG_ENABLE(stop-on-warning,
114    AC_HELP_STRING([--enable-stop-on-warning],[Stop the compilation on the first warning found in the C/C++ code]))
115
116 AC_ARG_WITH(gcc,
117     AC_HELP_STRING([--with-gcc],[Use gcc C compiler ]))
118
119 AC_ARG_WITH(gfortran,
120     AC_HELP_STRING([--with-gfortran],[Use gfortran, GNU Fortran 95 compiler]))
121
122 AC_ARG_WITH(intelcompilers,
123     AC_HELP_STRING([--with-intelcompilers],[Use Intel C (icc) and Fortran (ifort) proprietary compilers (GNU/Linux only) ]))
124
125 AC_ARG_WITH(tk,
126     AC_HELP_STRING([--without-tk],[Disable the interface to Tcl/Tk ]))
127
128 AC_ARG_WITH(javasci,
129     AC_HELP_STRING([--without-javasci],[Disable the Java/Scilab interface (javasci)]))
130
131 AC_ARG_ENABLE(compilation-tests,
132     AC_HELP_STRING([--enable-compilation-tests],[Enable unitary tests and checks at compilation time]))
133
134 AC_ARG_WITH(gui,
135     AC_HELP_STRING([--without-gui],[Disable the Scilab Graphical User Interface (GUI). Intended for embedded/clustering/grid Scilab ]))
136
137 AC_ARG_ENABLE(build-swig,
138     AC_HELP_STRING([--enable-build-swig],[Regenerate Java => C wrappers produces by Swig (A Java Development Kit (JDK) is mandatory for this option)]))
139
140 AC_ARG_ENABLE(build-giws,
141     AC_HELP_STRING([--enable-build-giws],[Regenerate C/C++ => Java wrappers produces by Giws (A Java Development Kit (JDK) is mandatory for this option)]))
142
143
144 ################################################
145 ########## compilator & misc programs detection
146 ################################################
147
148 AC_PROG_CPP
149 AC_PROG_GREP
150
151 ######
152 #### Mac OS X set of fink path with provided
153 ######
154
155 AC_ARG_WITH(fink_prefix,
156 AC_HELP_STRING([--with-fink-prefix],[Provide a fink prefix. Default: /sw/ ]))
157 # Need MacosX Version to specify some path.                                  
158 case "$host_os" in
159      *Darwin* | *darwin*)
160               AC_GET_MACOSX_VERSION
161      ;;
162 esac
163
164 case "$host" in
165     *darwin*)
166         if test -n "$with_fink_prefix"; then
167             # If with-fink-prefix is provided, use the provided path to make sure that we will
168             # use it to detect dependencies (for example, gfortran is not provided in xcode.
169             # Therefor, we use the one in fink)
170             FINK_PREFIX="$with_fink_prefix/"
171
172             # Exec the init script of fink to make sure that the env is set
173             if test -f $with_fink_prefix/bin/init.sh; then
174                 echo "source $with_fink_prefix/bin/init.sh executed to set the env"
175                 source $with_fink_prefix/bin/init.sh
176             else
177                 AC_MSG_WARN([Could not find the fink init.sh script: $with_fink_prefix/bin/init.sh])
178             fi
179         else
180             FINK_PREFIX="/sw/"
181         fi
182
183         #Append to the default flags on Apple machines
184         CPPFLAGS="$CPPFLAGS -I$FINK_PREFIX/include/"
185         LDFLAGS="$LDFLAGS -L$FINK_PREFIX/lib/"
186         ;;
187 esac
188
189 AC_ARG_WITH(min_macosx_version,
190 AC_HELP_STRING([--with-min-macosx-version],[Force compilers to generate binaries compatible with MacOSX minimal version.]))
191 case "$host" in
192     *darwin*)
193     if test -n "$with_min_macosx_version"; then
194        MIN_MACOSX_VERSION=$with_min_macosx_version
195        #Append to the default flags on Apple machines
196        ARCH_CFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
197        ARCH_CXXFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
198        ARCH_FFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
199        ARCH_LDFLAGS="-mmacosx-version-min=$MIN_MACOSX_VERSION"
200        # We need this to be passed to all linker commands
201        LDFLAGS="$LDFLAGS -mmacosx-version-min=$MIN_MACOSX_VERSION"
202     fi
203 ;;
204 esac
205
206
207 #####################################################
208 ## Look for pkg-config
209 #####################################################
210 PKG_PROG_PKG_CONFIG
211
212 #####################################################
213 ## check if options are correct (or not)
214 #####################################################
215
216 if test "$with_intelcompilers" = yes -a "$with_gcc" = yes; then
217     AC_MSG_ERROR([Conflicting options : you specified two compiler series])
218 fi
219
220 ######## fortran ########
221
222 if test "$with_gfortran" = yes; then
223    AC_PROG_F77(gfortran)
224    if test -z "$F77"; then
225      AC_MSG_ERROR([You asked me to use gfortran but i haven't been able to find it])
226     fi
227 fi
228
229 if test "$with_intelcompilers" = yes; then
230    AC_PROG_F77(ifc ifort)
231    if test -z "$F77"; then
232      AC_MSG_ERROR([You asked me to use ifc (intel fortran compiler) but i haven't been able to find it])
233     fi
234 fi
235
236 if test -z "$F77"; then
237 ## No Fortran compiler specified... Prefer gfortran and intel compilers
238    AC_PROG_F77([gfortran ifc ifort])
239    if test -z "$F77"; then
240         # Best effort to find a compiler (might be g77)
241         AC_PROG_F77
242    fi
243 fi
244
245
246 # case statements were introduced in fortran 90 so we can use that
247 # as a test to see if our compiler is fortran 90 compatible.
248 f90compatible=false
249 if test -z "$F77"; then
250   AC_MSG_ERROR([No fortran compiler found. Cannot compile scilab without a fortran compiler])
251 fi
252
253 AC_MSG_CHECKING([if $F77 is a fortran 90 compatible compiler])
254  f90compatible=false
255 AC_LANG_PUSH([Fortran 77])
256 AC_COMPILE_IFELSE([
257       PROGRAM hello
258         do 50 i = 1, 5
259            select case ( i )
260               case (1)
261                  print*, "case is 1, i is ", i
262               case ( 2 : 3 )
263                  print*, "case is 2 to 3, i is ", i
264               case default
265                  print*, "default case, i is ", i
266               end select
267  50           continue
268       END
269     ],
270     [AC_MSG_RESULT([yes])
271      AC_DEFINE([G95_FORTRAN],[],[uses G95 fortran])
272      f90compatible=true
273     ],
274     [AC_MSG_RESULT([no])]
275 )
276 AC_LANG_POP([Fortran 77])
277
278 ############ C ###############
279
280
281 if test "$with_gcc" = yes; then
282    AC_PROG_CC(gcc)
283    if test -z "$CC"; then
284      AC_MSG_ERROR([You asked me to use gcc but i haven't been able to find it])
285     fi
286 fi
287
288 if test "$with_intelcompilers" = yes; then
289    AC_PROG_CC(icc ecc)
290    if test -z "$CC"; then
291      AC_MSG_ERROR([You asked me to use icc (intel C compiler) but I haven't been able to find it])
292     fi
293 fi
294
295 if test -z "$CC"; then
296 # No C compiler specified... We rely on Autoconf to find the best
297    AC_PROG_CC
298 fi
299
300 if test -z "$CC"; then
301   AC_MSG_ERROR([No C Compiler found. Cannot compile Scilab without a C compiler])
302 fi
303
304 AC_CHECK_SIZEOF([int])
305 AC_CHECK_SIZEOF([long])
306
307 ### C++ ###
308 AC_PROG_CXX
309 # we can't just do something like
310 # AC_CHECK_PROG(cxx_present, $CXX, "yes", "no")
311 # because if the user has specified the full path of the desired C++ compiler then AC_CHECK_PROG
312 # will fail.  If AC_PROG_CXX fails to find a c++ compiler it will set CXX=g++ so just run AC_CHECK_PROG
313 # in this special case
314 case $CXX in
315     g++)
316         AC_CHECK_PROG([cxx_present], [$CXX], [yes], [no])
317         if test "x$cxx_present" != "xyes"; then
318             AC_MSG_ERROR([No C++ compiler found. Cannot compile scilab without a C++ compiler])
319         fi
320         ;;
321 esac
322
323 # for "subdir-objects"
324
325 AM_PROG_CC_C_O
326 AC_PROG_F77_C_O
327
328
329 # If this option is provided, enable the debug on C & C++
330 if test "$enable_stop_on_warning" = yes; then
331    enable_debug_C=yes
332    enable_debug_CXX=yes
333 fi
334
335 if test "$enable_debug" = yes; then
336    enable_debug_fortran=yes
337    enable_debug_C=yes
338    enable_debug_CXX=yes
339    enable_debug_java=yes
340 else
341    enable_debug=no
342 fi
343
344 if test "$enable_debug_fortran" = yes; then
345    FFLAGS="`echo "$FFLAGS"| sed -e 's|-O[0-9+]|-O0|'`"
346 else
347    enable_debug_fortran=no
348 fi
349
350 if test "$enable_debug_C" = yes; then
351    CFLAGS="`echo "$CFLAGS"| sed -e 's|-O[0-9+]|-O0|'`"
352 else
353    enable_debug_C=no
354 fi
355
356 if test "$enable_debug_CXX" = yes; then
357    CXXFLAGS="`echo "$CXXFLAGS"| sed -e 's|-O[0-9+]|-O0|'`"
358 else
359    enable_debug_CXX=no
360 fi
361
362 if test "$enable_debug_java" = yes; then
363    LOGGING_LEVEL="INFO"
364 else
365    LOGGING_LEVEL="SEVERE"
366 fi
367 AC_SUBST(LOGGING_LEVEL)
368
369 if test "x${prefix}" = "xNONE"; then
370   prefix="${ac_default_prefix}"
371 fi
372
373 ###############################
374 ## get the version
375 ###############################
376
377 SCIVERSION=`cat $SCI_SRCDIR/Version.incl | sed -e "s/SCIVERSION=//" `
378
379 #############################################
380 ## Compilers and options according to machine
381 #############################################
382
383 ######################
384 ######## Set compilation options for intel C/Fortran compilers
385 ######################
386
387 if test "$with_intelcompilers" = yes; then
388    SCI_INTEL_COMPILER()
389 fi
390
391 ########### FORTRAN ######################
392
393
394 ######################
395 ######## With gfortran ...
396 ######################
397 if test -n "$F77"; then
398    case "$F77" in
399      gfortran*)
400         ## With GNU Compiler enable the code coverage
401         if test "$enable_code_coverage" = yes; then
402             CODECOVERAGE_FFLAGS="-fprofile-arcs -ftest-coverage"
403         fi
404      ;;
405      g77*)
406         AC_MSG_ERROR([g77 is no longer supported. Please consider switching to gfortran])
407      ;;
408    esac
409
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
414             *\ ${flag}\ *)
415                 # flag is already present
416                 ;;
417
418             *)
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}"
425                     ],
426                     [AC_MSG_RESULT([no])]
427                 )
428                 ;;
429         esac
430     done
431     AC_LANG_POP([Fortran 77])
432    else
433       DEBUG_FFLAGS="-DNDEBUG"
434    fi
435       case "$host" in
436          x86_64-*-linux*)
437             ARCH_FFLAGS="-m64 -fPIC"
438                     ;;
439         # Dec Alpha OSF 4
440         alpha*-dec-osf4.*)
441           ARCH_FFLAGS="-fpe3"
442         ;;
443         alpha*-dec-osf*)
444             ARCH_FFLAGS="-fpe3 -switch nosqrt_recip"
445         ;;
446         rs6000-*-*)
447             ARCH_FFLAGS="-qcharlen=4096"
448             ;;
449         mips-*-ultrix*)
450             ARCH_FFLAGS="-O0 -fpe1"
451         ;;
452           *-*-hpux9.*)
453             ARCH_FFLAGS="+Obb1200 +E4 -Dhpux"
454         ;;
455           *-*-hpux10.*)
456             if test "$enable_debug_fortran" = yes; then
457                 ARCH_FFLAGS="+E4 +Z +DAportable -Dhpux"
458             else
459                 ARCH_FFLAGS="+O2 +E4 +Z +DAportable -Dhpux"
460             fi
461 #            ARCH_LDFLAGS="-Wl,+vnocompatwarnings,-E /usr/lib/libdld.sl"
462
463             ;;
464           *-*-hpux11.*)
465            if test "$enable_debug_fortran" = yes; then
466               ARCH_FFLAGS=" +Z +DAportable -Dhpux"
467              else
468               ARCH_FFLAGS="+O2 +Z +DAportable -Dhpux"
469            fi
470            ARCH_LDFLAGS="-ldld -lnsl -lU77 -lm"
471
472      ;;
473       esac
474
475 fi
476
477 #########################
478 # setting parameters according to system types
479 #########################
480
481 case "$host" in
482     *-*-hpux9.*|*-*-hpux10.*|*-*-hpux11.*)
483         HPUX=1
484     ;;
485     sparc-*)
486         SPARC=1
487     ;;
488     mips-sgi-irix*)
489       MIPS_SGI_IRIX=1
490     ;;
491      *-*-solaris*)
492      SOLARIS=1
493      ;;
494     *darwin*)
495       MACOSX=1
496     ;;
497 esac
498
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")
504
505
506
507 ############
508 ## C++
509 ############
510
511
512 if test -z "$CXX"; then
513   AC_MSG_ERROR([No C++ compiler found. Cannot compile scilab without a C++ compiler])
514 fi
515
516 case "$CXX" in
517     g++-* | g++ | ccache*g++ | ccache*g++-* )
518         ## With GNU C++ Compiler
519
520         # enable the code coverage
521         if test "$enable_code_coverage" = yes; then
522             CODECOVERAGE_CXXFLAGS="-fprofile-arcs -ftest-coverage"
523         fi
524
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"
527             case "$host" in
528                 *-linux-gnu )
529                     # Only doing that under Linux
530                     DEBUG_CXXFLAGS="$DEBUG_CXXFLAGS -fdiagnostics-show-option -Werror=format-security"
531                 ;;
532             esac
533         else
534             DEBUG_CXXFLAGS="-DNDEBUG"
535         fi
536         COMPILER_CXXFLAGS="-fno-stack-protector " # bug 3131
537         COMPILER_LDFLAGS="-lstdc++"
538     ;;
539
540     clang-* | clang)
541         # clang linker expect an explict declaration
542         #¬†until the http://libcxx.llvm.org/ release, we select the GNU one.
543         COMPILER_LDFLAGS="-lstdc++"
544     ;;
545 esac
546
547 #### 64 bits detection
548 IS_64_BITS_CPU=false
549 case "$host" in
550          x86_64-*-linux-gnu | x86_64-linux-gnu | ia64-*-linux-gnu | alpha-*-linux-gnu | alpha-*-netbsd* | x86_64-*-netbsd* | sparc64-*-netbsd*)
551                 IS_64_BITS_CPU=true
552     ;;
553 esac
554
555 ##########"
556
557 case "$CC" in
558      gcc-* | gcc | ccache*gcc | ccache*gcc-* )
559    ## With GNU Compiler
560
561    # enable the code coverage
562    if test "$enable_code_coverage" = yes; then
563     CODECOVERAGE_CFLAGS="-fprofile-arcs -ftest-coverage"
564    fi
565
566    if test "$enable_debug_C" = yes; then
567       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"
568       # used to be -O
569       # -D_FORTIFY_SOURCE=2
570       case "$host" in
571       *-linux-gnu )
572       # Only doing that under Linux
573         if test "$enable_debug_linker" = yes; then
574             LDFLAGS="$LDFLAGS -Wl,--warn-common,-x"
575         fi
576           DEBUG_CFLAGS="$DEBUG_CFLAGS -fdiagnostics-show-option -Werror=format-security"
577           ;;
578           esac
579    else
580       DEBUG_CFLAGS="-DNDEBUG"
581    fi
582
583    COMPILER_CFLAGS="-fno-stack-protector " # bug 3131
584    # Explictly disable the as needed. It was disable by default but Ubuntu
585    # activated it by default since release 11.04. See bug #8961.
586    # Once all cyclic dependencies have been dropped, this line could be removed.
587    # Check if linker supports --as-needed and --no-as-needed options
588    if $LD --help 2>/dev/null | grep no-as-needed > /dev/null; then
589       COMPILER_LDFLAGS="$COMPILER_LDFLAGS -Wl,--no-as-needed"
590    fi
591
592
593    case "$host" in
594      x86_64-*-linux-gnu | x86_64-linux-gnu)
595         ARCH_CFLAGS="-m64"
596     ;;
597      alpha-*-linux-gnu)
598         ARCH_CFLAGS="-mieee-with-inexact"
599         ARCH_LDFLAGS="-mieee-with-inexact"
600     ;;
601      powerpc-*-linux-gnu)
602         ARCH_CFLAGS="-D_GNU_SOURCE"
603     ;;
604      *-*-solaris*)
605         ARCH_CFLAGS="-DSVR4 -DSYSV -Dsolaris"
606     ;;
607    *-*-freebsd*)
608      ARCH_CFLAGS="-Dfreebsd"
609      ARCH_LDFLAGS="-lm"
610      ;;
611
612   alpha-*-netbsd*)
613     ARCH_CFLAGS="-Dnetbsd -mieee"
614     ARCH_FFLAGS="-Dnetbsd -mieee"
615     ;;
616
617   *-*-netbsd*)
618     ARCH_CFLAGS="-Dnetbsd"
619     ;;
620
621   *-*-darwin*)
622     ARCH_CFLAGS="$ARCH_CFLAGS -no_compact_linkedit"
623     ARCH_CXXFLAGS="$ARCH_CXXFLAGS -no_compact_linkedit"
624     ARCH_LDFLAGS="$ARCH_LDFLAGS -no_compact_linkedit"
625     # We need this to be passed to all linker commands
626     LDFLAGS="$LDFLAGS -no_compact_linkedit"
627
628     case "$F77" in
629          gfortran-*|gfortran)
630              # Extract from gfortran -v the version it has been built for
631                MAC_DETECTED_ARCH="`$F77 -v 2>&1|grep "Target:"|sed -e "s/Target: \([[a-z0-9A-Z_]]*\).*/\1/g"`"
632          ;;
633          *)
634         AC_MSG_WARN([gfortran not used. Could not detect the architecture. Switch to the default case: x86_64])
635         MAC_DETECTED_ARCH="x86_64"
636          ;;
637     esac
638     CC="$CC -arch $MAC_DETECTED_ARCH"
639     CXX="$CXX -arch $MAC_DETECTED_ARCH"
640     ;;
641 esac
642 ;; # end of the gcc case on the $CC
643    *)
644
645         ## CC compiler (not GCC)
646         if test "$enable_debug_C" != yes; then
647              ARCH_CFLAGS="-DNDEBUG"
648         fi
649
650 case "$host" in
651 # Dec Alpha OSF 4
652   alpha*-dec-osf4.*)
653       ARCH_CFLAGS="-std -ieee_with_inexact"
654       ARCH_LDFLAGS="-ieee_with_inexact"
655       ;;
656   alpha*-dec-osf*)
657       ARCH_CFLAGS="-ieee_with_inexact"
658       ARCH_LDFLAGS="-ieee_with_inexact"
659       ;;
660   rs6000-*-*) # IBM AIX RS 6000 (NO LONGER SUPPORTED)
661     ARCH_CFLAGS="-Daix -DSYSV"
662   ;;
663   mips-sgi-irix*) # SGI
664     ARCH_CFLAGS="-DSYSV -DSVR4"
665   ;;
666   *-*-hpux9.*)
667     ARCH_CFLAGS="-DSYSV -Dhpux"
668   ;;
669   *-*-hpux10.*) # HP 10
670     if test "$enable_debug_C" = yes; then
671       ARCH_CFLAGS="-DSYSV -Dhpux"
672     else
673       ARCH_CFLAGS="-DSYSV -Dhpux +Z +DAportable"
674     fi
675   ;;
676
677   *-*-hpux11.*) # HP 11
678     ARCH_CFLAGS="-DSYSV -Dhpux -Dhppa +Z +DAportable"
679   ;;
680   *-*-solaris*) # SUN SOLARIS
681     ARCH_CFLAGS="-DSVR4 -DSYSV -Dsolaris -I/usr/local/include/"
682     ARCH_LDFLAGS="-L/usr/local/lib/"
683   ;;
684 esac
685 ;; # end of not a gcc compiler
686 esac
687
688
689 # enable the code coverage
690 if test "$enable_code_coverage" = yes; then
691    AC_PATH_PROG(LCOV, lcov)
692    if test -z "$LCOV" ; then
693         AC_MSG_ERROR([Cannot find lcov. Please install it (package lcov under Debian) or remove the option --enable-code-coverage])
694    fi
695    AC_PATH_PROG(GENHTML, genhtml)
696    if test -z "$GENHTML" ; then
697         AC_MSG_ERROR([Cannot find genhtml. Please install it (package lcov under Debian) or remove the option --enable-code-coverage])
698    fi
699    CODECOVERAGE_LDFLAGS="-coverage -lgcov"
700 fi
701 AM_CONDITIONAL(CODE_COVERAGE, test "$enable_code_coverage" = yes)
702
703 # flag for possible compilations in configure
704 SCILIBS_CFLAGS=''
705 SCILIBS_CXXFLAGS=''
706 SCILIBS_FFLAGS=''
707
708 if test $IS_64_BITS_CPU = true -o "$MACOSX" = "1"; then
709    if test $f90compatible = false; then
710       AC_MSG_ERROR([64 bits support needs a fortran 90 compiler (try --with-gfortran).])
711    fi
712    AC_DEFINE([USE_DYNAMIC_STACK], [], [If we are building a 64 bits version])
713 fi
714
715 AM_CONDITIONAL(IS_64_BITS_CPU, test $IS_64_BITS_CPU = true)
716 AM_CONDITIONAL(USE_DYNAMIC_STACK, test $IS_64_BITS_CPU = true -o "$MACOSX" = "1")
717
718 ################
719 ## SSE
720 ## By default, for x86 CPU, enable the SSE.
721 ## Note that it is already the case with 64 bits CPU
722 ## (these extensions are enabled by default by gcc)
723 ################
724
725 case "$host" in
726      i*86-linux-gnu|i*86-*-linux-gnu)
727         SSE_CFLAGS="-msse"
728         SSE_FFLAGS="-msse"
729         SSE_CXXFLAGS="-msse"
730      ;;
731 esac
732
733 #######################
734 ## test for underscores (name mangling issues between C and fortran)
735 #######################
736 AC_CHECK_UNDERSCORE_FORTRAN()
737
738
739 #################
740 ## HDF5
741 #################
742
743 AC_HDF5()
744 # The Java detection is done after in this file.
745
746
747 #################
748 ## scirenderer
749 #################
750
751 AC_ARG_WITH(external-scirenderer,
752     AC_HELP_STRING([--with-external-scirenderer],[Disable the usage of the internal copy of scirenderer. Intended for packaging of Scilab]))
753
754 AM_CONDITIONAL(EXTERNAL_SCIRENDERER, test "$with_external_scirenderer" = yes)
755
756
757 #################
758 ## XCOS
759 #################
760
761 AC_ARG_WITH(xcos,
762     AC_HELP_STRING([--without-xcos],[Disable Xcos]))
763
764 AC_ARG_WITH(modelica,
765     AC_HELP_STRING([--without-modelica],[Disable the OCaml module (modelica)]))
766
767
768 if test "$with_gui" = no; then
769    AC_MSG_WARN([GUI is disabled. Disabling then xcos])
770    with_xcos=no
771 fi
772
773 XCOS_ENABLE=no
774
775 if test "$with_xcos" != no -a "$with_gui" != no; then
776    AC_DEFINE([WITH_XCOS], [], [With XCOS])
777
778    save_LIBS="$LIBS"
779
780    AC_CHECK_LIB([rt], [clock_gettime],
781               [RT_LIB="-lrt";
782               AC_DEFINE([HAVE_CLOCK_GETTIME], [1],[Whether clock_gettime is available]) ],
783         [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])]
784    )
785    LIBS="$save_LIBS"
786    AC_SUBST(RT_LIB)
787
788
789 #################
790 ## ocaml which only called when using Xcos
791 #################
792
793    if test "$with_modelica" != no; then
794       AC_CHECK_PROG_OCAML()
795    fi
796    XCOS_ENABLE=yes
797
798 fi
799
800 AC_SUBST(XCOS_ENABLE)
801
802 AM_CONDITIONAL(OCAML, test "$with_modelica" != no -a "$OCAMLC" != no -a "$OCAMLOPT" != no)
803 AM_CONDITIONAL(XCOS, test "$XCOS_ENABLE" != no)
804
805 ###########################
806 ## test for JAVA compiler
807 ###########################
808
809 if test "$with_javasci" != no -o "$with_gui" != no -o "$enable_build_help" != no; then
810
811    # See if --with-jdk command line argument is given
812      # Try to detect the installed JVM, this could be controlled
813      # by the above --with options
814      AC_JAVA_WITH_JDK
815      AC_JAVA_DETECT_JVM
816      case "$ac_java_jvm_version" in
817         1.6 | 1.7)
818         ;;
819         *)
820             AC_MSG_ERROR([Wrong version of Java. Expected at least 1.6. Found $ac_java_jvm_version])
821         ;;
822      esac
823
824    if test "$ac_java_jvm_name" = "jdk"; then
825         JAVA_HOME=$ac_java_jvm_dir
826         JAVA_VERSION=$ac_java_jvm_version
827 #     AC_JAVA_TOOLS
828         AC_JAVA_JNI_INCLUDE
829         JAVA_JNI_INCLUDE=$ac_java_jvm_jni_include_flags
830
831         case "$host_os" in
832              *Darwin* | *darwin*)
833                # Mac OS X does not link against the lib but uses -framework
834                JAVA_JNI_LIBS="-framework JavaVM"
835              ;;
836              *)
837                AC_JAVA_JNI_LIBS
838                JAVA_JNI_LIBS=$ac_java_jvm_jni_lib_flags
839                JAVA_JNI_LIBS_PRELOAD=$ac_java_jvm_ld_preload
840              ;;
841         esac
842
843         AC_JAVA_CLASSPATH
844         JAVA_CLASSPATH=$ac_java_classpath
845         AC_JAVA_TOOLS
846         AC_JAVA_ANT
847
848         case "$host_os" in
849              *Darwin* | *darwin*)
850                   JAVA_HOME=""
851              ;;
852         esac
853
854
855         if test "$with_gui" != no; then
856
857                 if test $XCOS_ENABLE = yes; then
858                    # jgraphx
859                    AC_JAVA_CHECK_PACKAGE([jgraphx],[com.mxgraph.model.mxCell],[Diagram design])
860                    JGRAPHX=$PACKAGE_JAR_FILE
861                    AC_SUBST(JGRAPHX)
862
863                    AC_JAVA_CHECK_VERSION_PACKAGE([jgraphx],[import com.mxgraph.view.mxGraph;],$JGRAPHX,[2.0.0.1],[mxGraph.VERSION],[],[])
864
865                 fi
866
867                 if test "$with_external_scirenderer" = yes; then
868                    # scirenderer
869                    AC_JAVA_CHECK_PACKAGE([scirenderer],[org.scilab.forge.scirenderer.PackageInfo],[Scilab Renderer])
870                    SCIRENDERER=$PACKAGE_JAR_FILE
871                    SCIRENDERER_CP=$PACKAGE_JAR_FILE
872
873                    AC_JAVA_CHECK_VERSION_PACKAGE([scirenderer],[import org.scilab.forge.scirenderer.PackageInfo;],$SCIRENDERER,[1.1.0],[PackageInfo.VERSION])
874                  else
875                    echo "Use external version of scirenderer"
876                    # Use the scirenderer in Scilab sources
877                    SCIRENDERER="\${modules.dir}/scirenderer/\${build.jar.dir}/scirenderer.jar"
878                    SCIRENDERER_CP="\$SCILAB/modules/scirenderer/jar/scirenderer.jar"
879                 fi
880                 AC_SUBST(SCIRENDERER)
881                 AC_SUBST(SCIRENDERER_CP)
882
883                # Docking system
884                 AC_JAVA_CHECK_PACKAGE([flexdock],[org.flexdock.docking.DockingManager],[Scilab Gui])
885                 FLEXDOCK=$PACKAGE_JAR_FILE
886                 AC_SUBST(FLEXDOCK)
887
888                 AC_JAVA_CHECK_VERSION_PACKAGE([flexdock],[import org.flexdock.util.Utilities;],$FLEXDOCK,[1.2.4],[Utilities.VERSION])
889
890                 # Swing look&feel implementations
891                 AC_JAVA_CHECK_PACKAGE([looks],[com.jgoodies.looks.common.MenuItemRenderer],[Scilab Gui - Look and feel],"yes")
892                 LOOKS=$PACKAGE_JAR_FILE
893
894                 # Named differently under ArchLinux or Fedora
895                 if test -z "$LOOKS"; then
896                     AC_JAVA_CHECK_PACKAGE([jgoodies-looks],[com.jgoodies.looks.common.MenuItemRenderer],[Scilab Gui - Look and feel])
897                     LOOKS=$PACKAGE_JAR_FILE
898                 fi
899                 AC_SUBST(LOOKS)
900
901                 #  Skin Look and Feel
902                 AC_JAVA_CHECK_PACKAGE([skinlf],[com.l2fprod.util.AccessUtils],[Scilab Gui - Skin Look and Feel])
903                 SKINLF=$PACKAGE_JAR_FILE
904                 AC_SUBST(SKINLF)
905
906                 # JOGL 2
907                 AC_JAVA_CHECK_PACKAGE([jogl2],[javax.media.opengl.glu.GLUnurbs],[Scilab 3D rendering - Version 2.0])
908                 JOGL2=$PACKAGE_JAR_FILE
909                 AC_SUBST(JOGL2)
910
911                 if test "$MACOSX" = 1; then
912                    echo "Check of the presence of libjogl.jnilib and libjogl_awt.jnilib disabled under Mac OS X"
913                 else
914                    LDFLAGS_save=$LDFLAGS
915                    # Provide known paths where distribs/OS can store JNI libs
916                    LDFLAGS="$LDFLAGS -L/usr/lib/jni -L/usr/lib64/jni"                   # Debian
917                    LDFLAGS="$LDFLAGS -L/usr/lib/java -L/usr/lib64/java"                 # jpackage.org
918                    LDFLAGS="$LDFLAGS -L/usr/lib/jogl2 -L/usr/lib64/jogl2"               # RedHat
919                    LDFLAGS="$LDFLAGS -L$SCI_SRCDIR/thirdparty -L$SCI_SRCDIR/lib/thirdparty -L$SCI_SRCDIR/bin"        # Scilab thirdparties
920                    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])])
921                    if test -z "$JOGL2_LIBS"; then # The previous test failed add more options to the LDFLAGS
922                        # the space after "jogl" in the following line is on
923                        # purpose to disable the cache
924                           AC_CHECK_LIB([jogl_desktop ], [glTexParameterf],
925                        [JOGL2_LIBS="-ljogl_desktop -lGL"],
926                        [AC_MSG_ERROR(["libjogl: Library
927 missing (Cannot find symbol glTexParameterf). Check if libjogl - C/Java (JNI)
928 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."])],
929                        [-lGL])
930                    fi
931
932                    LDFLAGS=$LDFLAGS_save
933                 fi
934
935                 # JoGL Native <=> Java connector
936                 AC_JAVA_CHECK_PACKAGE([gluegen2-rt],[jogamp.common.os.MachineDescriptionRuntime],[Scilab 3D rendering])
937                 GLUEGEN2_RT=$PACKAGE_JAR_FILE
938                 AC_SUBST(GLUEGEN2_RT)
939
940                 if test "$MACOSX" = 1; then
941                    echo "Check of the presence of libgluegen-rt.jnilib disabled under Mac OS X"
942                 else
943                    LDFLAGS_save=$LDFLAGS
944                    # Provide known paths where distribs/OS can store JNI libs
945                    LDFLAGS="$LDFLAGS -L/usr/lib/jni -L/usr/lib64/jni"                   # Debian
946                    LDFLAGS="$LDFLAGS -L/usr/lib/java -L/usr/lib64/java"                 # jpackage.org
947                    LDFLAGS="$LDFLAGS -L/usr/lib/gluegen2 -L/usr/lib64/gluegen2"         # RedHat
948                    LDFLAGS="$LDFLAGS -L$SCI_SRCDIR/thirdparty -L$SCI_SRCDIR/lib/thirdparty -L$SCI_SRCDIR/bin"        # Scilab thirdparties
949                    symbol="Java_jogamp_common_jvm_JVMUtil_initialize"
950                    AC_CHECK_LIB([gluegen2-rt], [$symbol], [GLUEGEN2_RT_LIBS="-lgluegen2-rt"],
951                    [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.])],
952                    [-ldl])
953                    LDFLAGS=$LDFLAGS_save
954                 fi
955
956                 # Jhall
957                 AC_JAVA_CHECK_PACKAGE([jhall],[javax.help.JHelp],[Scilab Help Browser],"yes")
958                 JHALL=$PACKAGE_JAR_FILE
959
960                 # Named differently under Mandriva or Fedora
961                 if test -z "$JHALL"; then
962                     AC_JAVA_CHECK_PACKAGE([javahelp2],[javax.help.JHelp],[Scilab Help Browser])
963                     JHALL=$PACKAGE_JAR_FILE
964                 fi
965                 AC_SUBST(JHALL)
966
967                 # Console API
968                 AC_JAVA_CHECK_PACKAGE([jrosetta-API],[com.artenum.rosetta.interfaces.core.ConsoleConfiguration],[JRosetta : Console API Artenum / Scilab],"yes")
969                 JROSETTA_API=$PACKAGE_JAR_FILE
970                 if test -z "$JROSETTA_API"; then
971                         AC_JAVA_CHECK_PACKAGE([jrosetta-api],[com.artenum.rosetta.interfaces.core.ConsoleConfiguration],[JRosetta : Console API Artenum / Scilab])
972                         JROSETTA_API=$PACKAGE_JAR_FILE
973                 fi
974                 AC_SUBST(JROSETTA_API)
975
976                 # Console Core
977                 AC_JAVA_CHECK_PACKAGE([jrosetta-engine],[com.artenum.rosetta.core.action.AbstractConsoleAction],[JRosetta : Console Core Artenum / Scilab])
978                 JROSETTA_ENGINE=$PACKAGE_JAR_FILE
979                 AC_SUBST(JROSETTA_ENGINE)
980                 AC_JAVA_CHECK_VERSION_PACKAGE([jrosetta-engine],[import com.artenum.rosetta.util.ConfigurationBuilder;],$JROSETTA_ENGINE,[1.0.4],[ConfigurationBuilder.getVersion()])
981
982
983                 # MathML rendering solution
984                 # Used in both graphic & help
985                 AC_JAVA_CHECK_PACKAGE([jeuclid-core],[net.sourceforge.jeuclid.LayoutContext],[MathML rendering solution (at least version 3.1.X)])
986                 JEUCLID_CORE=$PACKAGE_JAR_FILE
987                 AC_SUBST(JEUCLID_CORE)
988
989
990                 ################ Mandatory for graphic_export features #####
991                 # XML to PDF/other Translator
992                 AC_JAVA_CHECK_PACKAGE([fop],[org.apache.fop.pdf.PDFInfo],[XML to PDF Translator (fop)])
993                 FOP=$PACKAGE_JAR_FILE
994                 AC_SUBST(FOP)
995
996                 # xml.apache.org SVG Library (under mandriva for example)
997                 AC_JAVA_CHECK_PACKAGE([batik-all],[org.apache.batik.parser.Parser],[Apache SVG Library],"yes")
998                 BATIK=$PACKAGE_JAR_FILE
999
1000                 if test -z "$BATIK"; then
1001                    # Other other distribs
1002                    AC_JAVA_CHECK_PACKAGE([batik],[org.apache.batik.parser.Parser],[Apache SVG Library])
1003                    BATIK=$PACKAGE_JAR_FILE
1004                 fi
1005                 AC_SUBST(BATIK)
1006                 AC_JAVA_CHECK_VERSION_PACKAGE([batik],[import org.apache.batik.Version;],$BATIK,[1.7],[Version.getVersion()])
1007
1008                 # Commons I/O library
1009                 AC_JAVA_CHECK_PACKAGE([commons-io],[org.apache.commons.io.output.CountingOutputStream],[Commons I/O library])
1010                 COMMONS_IO=$PACKAGE_JAR_FILE
1011                 AC_SUBST(COMMONS_IO)
1012
1013                 # XML graphics common
1014                 AC_JAVA_CHECK_PACKAGE([xmlgraphics-commons],[org.apache.xmlgraphics.util.Service],[Commons graphics library])
1015                 XMLGRAPHICS_COMMONS=$PACKAGE_JAR_FILE
1016                 AC_SUBST(XMLGRAPHICS_COMMONS)
1017
1018                 # Avalon Framework (PDF)
1019                 AC_JAVA_CHECK_PACKAGE([avalon-framework],[org.apache.avalon.framework.configuration.ConfigurationException],[Common framework for Java server application])
1020                 AVALON_FRAMEWORK=$PACKAGE_JAR_FILE
1021                 AC_SUBST(AVALON_FRAMEWORK)
1022
1023                 # XML API EXT (conversion of a SVG => PNG)
1024                 AC_JAVA_CHECK_PACKAGE([xml-apis-ext],[org.w3c.dom.svg.SVGDocument],[XML Commons external code],"yes")
1025                 XML_APIS_EXT=$PACKAGE_JAR_FILE
1026
1027                 if test -z "$XML_APIS_EXT"; then
1028                     # Other other distribs (Ex: Fedora/Redhat)
1029                     AC_JAVA_CHECK_PACKAGE([xml-commons-apis-ext],[org.w3c.dom.svg.SVGDocument],[XML Commons external code])
1030                     XML_APIS_EXT=$PACKAGE_JAR_FILE
1031                 fi
1032                 AC_SUBST(XML_APIS_EXT)
1033
1034                 ################ END Mandatory for graphic_export features #####
1035
1036
1037                 # Logging (flexdock dep)
1038                 AC_JAVA_CHECK_PACKAGE([commons-logging],[org.apache.commons.logging.LogFactory],[Apache logging])
1039                 COMMONS_LOGGING=$PACKAGE_JAR_FILE
1040                 AC_SUBST(COMMONS_LOGGING)
1041
1042                 # JLaTeXMath
1043                 AC_JAVA_CHECK_PACKAGE([jlatexmath],[org.scilab.forge.jlatexmath.TeXFormula],[LaTex Rendering])
1044                 JLATEXMATH=$PACKAGE_JAR_FILE
1045                 AC_SUBST(JLATEXMATH)
1046
1047                 AC_JAVA_CHECK_VERSION_PACKAGE([jlatexmath],[import org.scilab.forge.jlatexmath.TeXFormula;],$JLATEXMATH,[1.0.2],[TeXFormula.VERSION])
1048
1049                 # JLaTeXMath FOP
1050                 AC_JAVA_CHECK_PACKAGE([jlatexmath-fop],[org.scilab.forge.jlatexmath.fop.JLaTeXMathObj],[LaTex Rendering - FOP plugin])
1051                 JLATEXMATH_FOP=$PACKAGE_JAR_FILE
1052                 AC_SUBST(JLATEXMATH_FOP)
1053
1054                 AC_DEFINE([WITH_GUI],[],[With the JAVA stuff (GUI, Console, JOGL...)])
1055
1056         fi
1057
1058         # Checkstyle (code checking)
1059         AC_JAVA_CHECK_PACKAGE([checkstyle],[com.puppycrawl.tools.checkstyle.CheckStyleTask],[Checkstyle - code checking],"yes")
1060         CHECKSTYLE=$PACKAGE_JAR_FILE
1061         AC_SUBST(CHECKSTYLE)
1062
1063         # Commons beanutils (dependency of checkstyle)
1064         AC_JAVA_CHECK_PACKAGE([commons-beanutils],[org.apache.commons.beanutils.Converter],[Bean utility],"yes")
1065         COMMONS_BEANUTILS=$PACKAGE_JAR_FILE
1066         AC_SUBST(COMMONS_BEANUTILS)
1067
1068         # antlr (dependency of checkstyle)
1069         AC_JAVA_CHECK_PACKAGE([antlr],[antlr.TokenStreamException],[language tool for constructing recognizers],"yes")
1070         ANTLR=$PACKAGE_JAR_FILE
1071         AC_SUBST(ANTLR)
1072
1073         # Junit 4 (java unitary test)
1074         AC_JAVA_CHECK_PACKAGE([junit4],[org.junit.Assert],[Junit4 - Unit tests],"yes")
1075         JUNIT4=$PACKAGE_JAR_FILE
1076         AC_SUBST(JUNIT4)
1077
1078         # Cobertura (java code coverage)
1079         AC_JAVA_CHECK_PACKAGE([cobertura],[net.sourceforge.cobertura.merge.Main],[cobertura - Java code coverage],"yes")
1080         COBERTURA=$PACKAGE_JAR_FILE
1081         AC_SUBST(COBERTURA)
1082
1083         # ASM (a dependency of Cobertura)
1084         AC_JAVA_CHECK_PACKAGE([asm3],[org.objectweb.asm.Type],[Java bytecode manipulation (dep of cobertura)],"yes")
1085         ASM3=$PACKAGE_JAR_FILE
1086         AC_SUBST(ASM3)
1087         if test -z "$ASM3"; then
1088                 AC_JAVA_CHECK_PACKAGE([asm],[org.objectweb.asm.Type],[Java bytecode manipulation (dep of cobertura)],"yes")
1089                 ASM3=$PACKAGE_JAR_FILE
1090         fi
1091
1092     else
1093         AC_MSG_WARN([Sun javac not found: I will not build the java interface])
1094         if test "$ac_java_jvm_name" != ""; then
1095             AC_MSG_WARN([We do not support $ac_java_jvm_name yet])
1096         fi
1097     fi
1098     AC_SUBST(JAVA_JNI_INCLUDE)
1099     AC_SUBST(JAVA_JNI_LIBS)
1100     AC_SUBST(JAVA_HOME)
1101
1102
1103     if test "$enable_debug_java" = yes; then
1104         JAVAC_DEBUG="on"
1105     else
1106         JAVAC_DEBUG="off"
1107     fi
1108     AC_SUBST(JAVAC_DEBUG)
1109
1110     if test "$enable_build_swig" != no -a "$enable_build_swig" != ""; then
1111         SWIG_PROG()
1112         SWIG_ENABLE_JAVA()
1113         AC_SUBST(SWIG_BIN)
1114         AC_SUBST(SWIG_JAVA)
1115
1116     fi
1117
1118     # Giws is the equivalent of Swig developed by the Scilab team
1119     # in order to provide a wrapper to Java from C/C++
1120     if test "$enable_build_giws" != no -a "$enable_build_giws" != ""; then
1121         AC_GIWS([1.3.0])
1122     fi
1123 fi
1124
1125 JAVA_ENABLE=yes
1126
1127 if test -z "$JAVAC"; then
1128    JAVA_ENABLE=no
1129 fi
1130
1131 AC_SUBST(JAVA_ENABLE)
1132
1133 # Xcos is not checked here because gui=no disables it
1134 AM_CONDITIONAL(NEED_JAVA, test "$with_javasci" != no -o "$with_gui" != no -o "$enable_build_help" != no)
1135 AM_CONDITIONAL(GUI, test "$with_gui" != no)
1136 AM_CONDITIONAL(JAVASCI, test "$with_javasci" != no)
1137 AM_CONDITIONAL(SWIG, test "$enable_build_swig" != no -a "$enable_build_swig" != "")
1138 AM_CONDITIONAL(GIWS, test "$enable_build_giws" != no  -a "$enable_build_giws" != "")
1139
1140 ##############################################################
1141 ## GUI module
1142 ##############################################################
1143
1144 GUI_ENABLE=no
1145
1146 if test "$JAVA_ENABLE" != no; then
1147    GUI_ENABLE=yes
1148 fi
1149
1150 if test "$with_gui" != no; then
1151    GUI_ENABLE=yes
1152 fi
1153
1154 AC_SUBST(GUI_ENABLE)
1155
1156 ##############################################################
1157 ## test for functions in standard C library and C math library
1158 ##############################################################
1159
1160 # Provided by unistd.h
1161 AC_CHECK_FUNCS([sleep] [usleep] [dup2] [getcwd] [getpagesize] [getpass])
1162 AC_CHECK_FUNCS([rmdir])
1163
1164 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])])
1165
1166 # Provided by <regex.h>
1167 AC_CHECK_FUNCS([regcomp])
1168
1169 # Provided by stdlib.h
1170 AC_CHECK_FUNCS([atexit] [putenv] [setenv])
1171
1172 # Provided by String.h
1173 AC_CHECK_FUNCS([bzero] [memmove] [memset] [strcasecmp] [strerror] [strchr] [strdup] [strpbrk] [strrchr] [strstr] [strtol])
1174
1175 # Provided by select.h
1176 AC_CHECK_FUNCS([select])
1177
1178 # Provided by pwd.h
1179 AC_CHECK_FUNCS([endpwent])
1180
1181 # Provided by netdb.h
1182 AC_CHECK_FUNCS([gethostbyaddr] [gethostbyname] [gethostname])
1183
1184 # Provided by time.h
1185 AC_CHECK_FUNCS([gettimeofday])
1186
1187 # Provided by ctype.h
1188 AC_CHECK_FUNCS([isascii])
1189
1190 # Provided by wctype.h
1191 AC_CHECK_FUNCS([iswprint])
1192
1193 # Provided by types.h
1194 AC_CHECK_FUNCS([mkdir])
1195
1196 # Provided by mman.h
1197 AC_CHECK_FUNCS([munmap])
1198
1199 # Provided by signal.h
1200 AC_CHECK_FUNCS([strsignal])
1201
1202
1203 # Check of the libm (lib math). Macro provided by libtool.
1204 save_LDFLAGS="$LDFLAGS"
1205 LT_LIB_M()
1206
1207 # Provided by math.h
1208
1209 LDFLAGS="$LDFLAGS $LIBM"
1210 AC_CHECK_FUNCS([pow] [sqrt] [finite] [floor] [exp10] [erf] [erfc] [isnan])
1211
1212 ### If isinf exists or not (used to not be the case under Solaris)
1213 ### See bug #4164
1214 AC_DEFINE([HAVE_ISINF],[1],[Have isinf function or macro equivalent])
1215 AC_CHECK_FUNC([isinf],,[
1216         AC_DEFINE([isinf(x)],[(!finite(x) && x==x)],[Provide a macro to do isinf])
1217 ])
1218 LIBS="$LIBS $LIBM"
1219 LDFLAGS="$save_LDFLAGS"
1220
1221 # Provided by regex.h
1222 AC_CHECK_FUNCS([re_comp])
1223
1224 # Provided by socket.h
1225 AC_CHECK_FUNCS([socket])
1226
1227 # Provided by utsname.h
1228 AC_CHECK_FUNCS([uname])
1229
1230 # Provided by wtloop.c
1231 AC_CHECK_FUNCS([setlocale])
1232
1233 # Function memcmp used in modules/fileio/src/c/xls.c
1234 AC_FUNC_MEMCMP
1235
1236 # function stat used in modules/core/src/c/link_std.c
1237 AC_FUNC_STAT
1238
1239 # function strtod used in modules/core/src/c/getval.c
1240 AC_FUNC_STRTOD
1241
1242 ########################
1243 ## test for header files
1244 ########################
1245
1246 AC_CHECK_HEADERS([limits.h values.h])
1247
1248 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])
1249
1250 # check header dirent
1251 AC_HEADER_DIRENT
1252
1253 # static struct timeval defined or not | used in modules/core/src/c/timer.c
1254 AC_HEADER_TIME
1255
1256 # check if the specific header is available or not | used in modules/core/src/c/link_SYSV.c
1257 AC_HEADER_SYS_WAIT
1258
1259
1260 #######################
1261 ## Test for structures ##
1262 #######################
1263 AC_CHECK_MEMBERS([struct stat.st_blksize])
1264 AC_CHECK_MEMBERS([struct stat.st_rdev])
1265
1266
1267 #######################
1268 ## MISC Test
1269 #######################
1270
1271 # gettext.  See http://www.gnu.org/software/hello/manual/gettext/AM_005fGNU_005fGETTEXT.html
1272 AM_GNU_GETTEXT([external])
1273 AM_GNU_GETTEXT_VERSION([0.16])
1274
1275 # function closedir used in modules/metanet/src/c/files.c
1276 AC_FUNC_CLOSEDIR_VOID
1277
1278 # Signals used in modules/core/src/c/realmain.c
1279 AC_TYPE_SIGNAL
1280
1281 # struct tm used in modules/core/src/c/history.c
1282 AC_STRUCT_TM
1283
1284 # st_blocks in the struct in modules/io/sci_gateway/c/intfilestat.c
1285 AC_STRUCT_ST_BLOCKS
1286
1287
1288 ##################
1289 ## termcap library
1290 ##################
1291
1292 # some systems may have a system curses implementation as well as ncurses
1293 # installed.  We need to be consistent in making sure we get the correct
1294 # library to go with the correct header and also provide a way for the user
1295 # to have some control over which is picked when both are available.
1296 #
1297 # For now, just check for -lcurses and then -lncurses.  The user control
1298 # may need to be revisited
1299
1300 TERMCAP_LIB=no
1301
1302 # Various observations:
1303 #
1304 #  ncurses
1305 #    - installs ncurses.h and possibly curses.h as a link to ncurses.h
1306 #    - installs -lncurses.
1307 #    - need to include term.h for tgetent() but tgetent() is in -lncurses.a
1308 #
1309 # curses as found in NetBSD-4 and NetBSD-5
1310 #    - installs curses.h
1311 #    - need to include termcap.h and link with -ltermcap for tgetent()
1312 #
1313
1314 AC_CHECK_LIB([curses],[main])
1315 if test $ac_cv_lib_curses_main = no ; then
1316     AC_CHECK_LIB([ncurses],[main])
1317 fi
1318
1319 # make sure we have what we need for tgetent
1320 AC_SEARCH_LIBS([tgetent],[termcap])
1321
1322 AC_CHECK_HEADERS([ncurses.h curses.h])
1323
1324 if test "x$ac_cv_lib_curses_main" = "xyes" -o "x$ac_cv_lib_ncurses_main" = "xyes" ; then
1325   AC_DEFINE([HAVE_TERMCAP],[],[Have Term Cap])
1326 else
1327  AC_MSG_ERROR([No termcap library detected. Please install ncurses dev library (or termcap library)])
1328 fi
1329
1330 ##################
1331 ## other libraries
1332 ##################
1333
1334 AC_CHECK_LIB(dl, dlopen)
1335
1336 AC_SEARCH_LIBS([pthread_join],[pthread])
1337
1338 #################
1339 ## FFTW
1340 #################
1341
1342 AC_ARG_WITH(fftw,
1343     AC_HELP_STRING([--without-fftw],[Disable the interface to the FFTW 3 library]))
1344
1345 FFTW_ENABLE=no
1346 if test "$with_fftw" != no; then
1347    AC_FFTW()
1348    FFTW_ENABLE=yes
1349 fi
1350
1351 AC_SUBST(FFTW_ENABLE)
1352 AM_CONDITIONAL(FFTW, test "$with_fftw" != no)
1353
1354
1355 #################
1356 ## MPI
1357 #################
1358
1359 # Not in Scilab 5.0
1360 #AC_ARG_WITH(mpi,
1361 #    [  --with-mpi               compile with MPI library])
1362 #
1363 #if test "$with_mpi" = yes; then
1364 #   AC_OPENMPI()
1365 #   # We will have to detect other implementation of OpenMPI
1366 #fi
1367 #AM_CONDITIONAL(MPI, test "$with_mpi" = yes)
1368
1369 #################
1370 ## OpenMP
1371 #################
1372
1373 AC_ARG_WITH(openmp,
1374     AC_HELP_STRING([--without-openmp],[Disable the usage of OpenMP (parallelization of some algoritms)]))
1375
1376 OPENMP_ENABLE=no
1377 if test "$with_openmp" != no; then
1378 #   AC_OPENMP
1379     OPENMP_CFLAGS="-fopenmp"
1380     OPENMP_CXXFLAGS="-fopenmp"
1381     OPENMP_LIBS="-lgomp"
1382
1383     AC_CHECK_HEADERS([omp.h], [],
1384      [AC_MSG_ERROR([Could not find omp.h])])
1385
1386     OPENMP_ENABLE=yes
1387 fi
1388 AC_SUBST(OPENMP_ENABLE)
1389 AC_SUBST(OPENMP_CFLAGS)
1390 AC_SUBST(OPENMP_CXXFLAGS)
1391 AC_SUBST(OPENMP_LIBS)
1392
1393 AM_CONDITIONAL(OPENMP, test "$with_openmp" != no)
1394
1395
1396 #######################
1397 ## Test for libxml
1398 #######################
1399
1400 AC_LIBXML2()
1401
1402 #######################
1403 ## Test for gettext
1404 #######################
1405
1406 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"
1407 ALL_LINGUAS_DOC="en_US fr_FR pt_BR ja_JP ru_RU"
1408
1409 AC_ARG_ENABLE(build-localization,
1410         AC_HELP_STRING([--disable-build-localization],[Disable the localization build])
1411         )
1412 BUILD_LOCALIZATION_ENABLE=no
1413
1414 if test "$enable_build_localization" != no; then
1415
1416    AC_SUBST(ALL_LINGUAS)
1417    AC_SUBST(ALL_LINGUAS_DOC)
1418    AC_CHECK_FUNCS([bind_textdomain_codeset])
1419
1420    AC_PATH_PROG(MSGCAT, msgcat, no)
1421 #   AC_PATH_PROG(MSGFMT, msgfmt, no)
1422 #   AC_PATH_PROG(XGETTEXT, xgettext, no)
1423
1424    if test x$MSGFMT = xno; then
1425       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 ])
1426       fi
1427     if test x$MSGCAT = xno; then
1428       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 ])
1429     fi
1430     BUILD_LOCALIZATION_ENABLE=yes
1431 fi
1432 AM_CONDITIONAL(GENERATE_LOCALIZATION_FILES, test "$BUILD_LOCALIZATION_ENABLE" = yes)
1433
1434 #######################
1435 ## Test for blas/Atlas and lapack
1436 #######################
1437 AC_MSG_CHECKING([if BLAS, ATLAS or MKL is available])
1438 echo ""
1439 ACX_BLAS(
1440         [AC_MSG_RESULT([$BLAS_TYPE found])]
1441         ,
1442         AC_MSG_ERROR([Impossible to find a BLAS compatible library (see BLAS or ATLAS).])
1443         )
1444
1445 AC_MSG_CHECKING([if LAPACK is available])
1446 echo ""
1447 ACX_LAPACK(
1448         [AC_MSG_RESULT([$LAPACK_TYPE found])],
1449         AC_MSG_ERROR([Impossible to find the LAPACK library.])
1450         )
1451
1452
1453 AC_ARG_WITH(arpack-ng,
1454     AC_HELP_STRING([--without-arpack-ng],[Disable the interface to ARPACK-NG]))
1455
1456 ARPACK_NG=no
1457 if test "$with_arpack_ng" != no; then
1458    ARPACK_NG=yes
1459    AC_MSG_CHECKING([if ARPACK-NG is available])
1460 echo ""
1461 ACX_ARPACK(
1462         [AC_MSG_RESULT([ARPACK-NG library found])],
1463         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/ ).])
1464         )
1465
1466 CHECK_ARPACK_OK(
1467 [AC_MSG_RESULT([Working ARPACK-NG library found (probably ARPACK-NG or a patched version of ARPACK)])],
1468 [AC_MSG_ERROR([ARPACK library found, but seems not to work properly. Please make sure you are using arpack-ng])
1469 ])
1470 else
1471    AC_MSG_CHECKING([Skip ARPACK-NG detection])
1472 fi
1473
1474 AM_CONDITIONAL(ARPACK_NG, test "$ARPACK_NG" != "no")
1475
1476
1477 #################
1478 ## UMFPACK
1479 #################
1480
1481 AC_ARG_WITH(umfpack,
1482     AC_HELP_STRING([--without-umfpack],[Disable the interface to the UMFPACK library]))
1483
1484 UMFPACK_ENABLE=no
1485 if test "$with_umfpack" != no; then
1486    AC_UMFPACK([$BLAS_LIBS])
1487    UMFPACK_ENABLE=yes
1488 fi
1489
1490 AC_SUBST(UMFPACK_ENABLE)
1491 AM_CONDITIONAL(UMFPACK, test "$with_umfpack" != no)
1492
1493 #######################
1494 ## Test for PCRE
1495 #######################
1496
1497 AC_PCRE()
1498
1499 #######################
1500 ## Test for CURL
1501 #######################
1502
1503 AC_CURL()
1504
1505 #################
1506 ## Tcl/Tk library
1507 #################
1508
1509 WITH_TKSCI=no
1510 if test "$with_tk" != no; then
1511    if test "$MACOSX" = "1"; then
1512       AC_MSG_ERROR([Due to technical constraints, Tcl/Tk must be disabled under Mac OS X (--without-tk)])
1513    fi
1514
1515     # check user arguments
1516     USER_TCL_LIB_PATH=""
1517     USER_TCL_INC_PATH=""
1518     AC_ARG_WITH(tcl-library,
1519         AC_HELP_STRING([--with-tcl-library=DIR],[Set the path to the TCL library]),
1520         [  USER_TCL_LIB_PATH=$withval
1521     ])
1522     AC_ARG_WITH(tcl-include,
1523         AC_HELP_STRING([--with-tcl-include=DIR],[Set the path to the TCL headers]),
1524         [  USER_TCL_INC_PATH=$withval
1525     ])
1526
1527     USER_TK_LIB_PATH=$USER_TCL_LIB_PATH
1528     USER_TK_INC_PATH=$USER_TCL_INC_PATH
1529
1530     AC_ARG_WITH(tk-library,
1531         AC_HELP_STRING([--with-tk-library=DIR],[Set the path to the TK library]),
1532         [  USER_TK_LIB_PATH=$withval
1533     ])
1534
1535     AC_ARG_WITH(tk-include,
1536         AC_HELP_STRING([--with-tk-include=DIR],[Set the path to the TK headers]),
1537         [  USER_TK_INC_PATH=$withval
1538     ])
1539
1540 ###########################
1541 ########## X11 checks
1542 ###########################
1543         ## This check is mandatory since tk needs Xlib headers and libs
1544         AC_PATH_XTRA
1545         ##
1546
1547     saved_cflags="$CFLAGS"
1548     saved_ldflags="$LDFLAGS"
1549     saved_cppflags="$CXXFLAGS"
1550
1551     AC_CHECK_LIB([dl], [main], [TCLTK_LIBS=" -ldl"])
1552     AC_CHECK_TCLTK
1553
1554     # set variables
1555     if test "$WITH_TKSCI" = yes; then
1556         AC_DEFINE([WITH_TK], [], [With TK])
1557     else
1558         AC_MSG_ERROR([TCL/TK not found. Use --without-tk or specify the librairies and include paths manually])
1559     fi
1560
1561     AC_SUBST(TCLTK_LIBS)
1562     AC_SUBST(TCL_INC_PATH)
1563     AC_SUBST(TK_INC_PATH)
1564
1565 fi
1566 AC_SUBST(WITH_TKSCI)
1567 AM_CONDITIONAL(TCLTK, test "$WITH_TKSCI" = yes)
1568
1569 #################
1570 ## MATIO LIBRARY (MAT File I/O Library)
1571 #################
1572
1573
1574 AC_ARG_WITH(matio,
1575     AC_HELP_STRING([--without-matio],[Disable the interface to Matio (MAT File I/O library)]))
1576
1577 AC_ARG_WITH(matio_include,
1578         AC_HELP_STRING([--with-matio-include=DIR],[Set the path to the MATIO headers]),
1579         [with_matio_include="-I$withval"], [])
1580
1581 AC_ARG_WITH(matio_library,
1582         AC_HELP_STRING([--with-matio-library=DIR],[Set the path to the MATIO libraries]),
1583         [with_matio_library="-L$withval"], [])
1584
1585 MATIO_ENABLE=no
1586
1587 if test "$with_matio" != no; then
1588    if test -n "$with_matio_include" -o -n "$with_matio_library" ; then
1589       MATIO_CFLAGS="$with_matio_include"
1590       MATIO_LIBS="$with_matio_library -lm -lz -lmatio -lhdf5"
1591    else
1592       PKG_CHECK_MODULES(MATIO, [matio >= 1.5.0])
1593    fi
1594
1595    save_CFLAGS="$CFLAGS"
1596    save_LIBS="$LIBS"
1597
1598    CFLAGS="$CFLAGS $MATIO_CFLAGS"
1599    LIBS="$LIBS $MATIO_LIBS"
1600
1601    AC_CHECK_HEADERS([matio.h], [],
1602      [AC_MSG_ERROR([Invalid MATIO_CFLAGS returned by pkg-config. Try to define MATIO_CFLAGS.])])
1603    AC_CHECK_LIB([matio], [Mat_Open], [],
1604      [AC_MSG_ERROR([Invalid MATIO_LIBS returned by pkg-config. Try to define MATIO_LIBS.])])
1605
1606    LIBS="$save_LIBS"
1607    CFLAGS="$save_CFLAGS"
1608
1609    AC_DEFINE([WITH_MATIO], [], [With the MATIO library])
1610    MATIO_ENABLE=yes
1611
1612    AC_SUBST(MATIO_LIBS)
1613    AC_SUBST(MATIO_CFLAGS)
1614 fi
1615
1616
1617 AC_SUBST(MATIO_ENABLE)
1618 AM_CONDITIONAL(MATIO, test "$with_matio" != no)
1619
1620 #############################
1621 ## Documentation management #
1622 #############################
1623
1624 HELP_ENABLE=yes
1625
1626 AC_ARG_ENABLE(build-help,
1627         AC_HELP_STRING([--disable-build-help],[Disable the help build])
1628         )
1629
1630 if test "$enable_build_help" != no; then
1631     AC_DOCBOOK()
1632 else
1633     HELP_ENABLE=no
1634 fi
1635
1636 if test "$JAVA_ENABLE" = no; then
1637     HELP_ENABLE=no
1638 fi
1639
1640 AC_SUBST(HELP_ENABLE)
1641
1642 AM_CONDITIONAL(BUILD_HELP, test $HELP_ENABLE = yes)
1643
1644 ## Install XML help files ###
1645
1646 AC_ARG_WITH(install-help-xml,
1647         AC_HELP_STRING([--with-install-help-xml],[make install will install XML files])
1648         )
1649 HELP_INSTALL_ENABLE=no
1650 if test "$with_install_help_xml" != no -a "$with_install_help_xml" != ""; then
1651    HELP_INSTALL_ENABLE=yes
1652 fi
1653 AM_CONDITIONAL(INSTALL_HELP_XML, test "$HELP_INSTALL_ENABLE" != "")
1654
1655 ## Doxygen help generation
1656 AC_ARG_ENABLE(build-doxygen,
1657     AC_HELP_STRING([--enable-build-doxygen],[Generate doxygen C/C++ documentation]))
1658
1659 DOXYGEN_ENABLE=yes
1660 if test "$enable_build_doxygen" != no -a "$enable_build_doxygen" != ""; then
1661     AC_DOXYGEN()
1662 else
1663     DOXYGEN_ENABLE=no
1664 fi
1665 AM_CONDITIONAL(DOXYGEN, test $DOXYGEN_ENABLE = yes)
1666
1667 ##############################################################
1668 ## Javasci module
1669 ##############################################################
1670
1671 JAVASCI_ENABLE=yes
1672
1673 if test "$JAVA_ENABLE" = no -o "$JAVASCI" = no; then
1674    JAVASCI_ENABLE=no
1675 fi
1676
1677 AC_SUBST(JAVASCI_ENABLE)
1678
1679
1680 ##############################################################
1681 ## Enable test at compilation time
1682 ##############################################################
1683
1684 COMPILATION_TESTS=no
1685 if test "$enable_compilation_tests" != no -a "$enable_compilation_tests" != ""; then
1686    COMPILATION_TESTS=yes
1687 fi
1688
1689 if test COMPILATION_TESTS=yes -a "$JUNIT4" == ""; then
1690    AC_MSG_WARN([--enable-compilation-tests deactivated: Could not find Junit4"])
1691    COMPILATION_TESTS=no
1692 fi
1693
1694 AM_CONDITIONAL(COMPILATION_TESTS, test "$COMPILATION_TESTS" != "no")
1695
1696 ##############################################################
1697 ## Enable the global force link
1698 ##############################################################
1699
1700 AC_ARG_ENABLE(force-full-link,
1701     AC_HELP_STRING([--enable-force-full-link],[Forces the explicit link between libscilab and some "on-the-fly" loaded libraries. NOT USE IN PRODUCTION.]))
1702
1703 FORCE_FULL_LINK="no"
1704 if test "$enable_force_full_link" == "yes"; then
1705     FORCE_FULL_LINK="yes"
1706 fi
1707
1708 AM_CONDITIONAL(FORCE_LINK, test "$FORCE_FULL_LINK" == "yes")
1709
1710 ##############################################################
1711 ## demo_tools module
1712 ##############################################################
1713
1714 DEMOTOOLS_ENABLE=yes
1715
1716 if test "$GUI_ENABLE" = no; then
1717    DEMOTOOLS_ENABLE=no
1718 fi
1719
1720 AC_SUBST(DEMOTOOLS_ENABLE)
1721
1722 ##############################################################
1723 ## graphics/renderer/graphic_export module
1724 ##############################################################
1725
1726 GRAPHICS_ENABLE=yes
1727
1728 if test "$GUI_ENABLE" = no; then
1729    GRAPHICS_ENABLE=no
1730 fi
1731
1732 AC_SUBST(GRAPHICS_ENABLE)
1733
1734 #########################
1735 ## libtool
1736 #########################
1737
1738 AM_DISABLE_STATIC
1739 LT_PREREQ([2.2.7])
1740 AC_PROG_LIBTOOL([shared dlopen])
1741 AM_PROG_LIBTOOL
1742
1743
1744 # Avoid to link all the dep from others libraries (*.la included by LIBADD)
1745 link_all_deplibs=no
1746
1747 # Check to see if building shared libraries
1748 libtool_build_shared_libs=no
1749 if test "$enable_shared" = "yes"; then
1750   libtool_build_shared_libs=yes
1751 fi
1752
1753 # Check to see if building static libraries
1754 libtool_build_static_libs=no
1755 if test "$enable_static" = "yes"; then
1756   libtool_build_static_libs=yes
1757 fi
1758
1759 # AM_CONDITIONAL(ENABLE_STATIC, test "$libtool_build_static_libs" = yes)
1760 # Fake to disable the static build
1761 AM_CONDITIONAL(ENABLE_STATIC, test "$libtool_build_static_libs" = xxxx)
1762
1763 AC_C_CONST()
1764 AC_C_INLINE()
1765
1766 AC_BACKTRACE()
1767
1768 ##########
1769 ##### Code quality
1770 ##########
1771 AC_PATH_PROG(SPLINT, splint, no)
1772
1773 ##########
1774 ##### Detect ccache and use it by default if available
1775 ##########
1776
1777 AC_ARG_ENABLE(ccache,
1778         AC_HELP_STRING([--disable-ccache],[Disable the use of ccache])
1779         )
1780 AC_PATH_PROG(CCACHE, ccache)
1781 if test x"$CCACHE" != x -a "$enable_ccache" != no; then
1782   CC="$CCACHE $CC"
1783   CXX="$CCACHE $CXX"
1784 fi
1785
1786 #######################
1787 ###### Creation of the header file (machine.h)
1788 #######################
1789
1790 AC_DEFINE_UNQUOTED([PATH_SEPARATOR], ["$PATH_SEPARATOR"],
1791 [The default path separator character.])
1792
1793 AH_TOP([#ifndef MACHINE_H
1794 #define MACHINE_H
1795 /* This file defines global element configuration of the build host */
1796 ])
1797
1798 AH_BOTTOM([
1799
1800 #ifdef DIR_SEPARATOR
1801        #undef DIR_SEPARATOR
1802 #endif
1803 #define DIR_SEPARATOR "/"
1804
1805 #endif /* MACHINE_H  */
1806 ])
1807
1808 # Define the standard extension of a dynamic library
1809 AC_DEFINE_UNQUOTED([SHARED_LIB_EXT],["$shrext_cmds"],[Extension of a shared library])
1810
1811 #################
1812 ## stop on warning
1813 #################
1814
1815 # Stop to compile scilab when a warning is found ...
1816 # This stuff is at the end of the configure.ac because it causes some
1817 # problem with AC_COMPILE (the -Werror is added to the test)
1818 #
1819 dnl @TODO : -O0 is only to bypass Stack shit... Must be removed.
1820 if test "$enable_stop_on_warning" = yes; then
1821     WARNING_CFLAGS="-Werror=implicit-function-declaration -O0"
1822     WARNING_CXXFLAGS="-Werror=implicit-function-declaration -O0"
1823 fi
1824
1825 # SCI_*FLAGS contains all defaults values detected on configure
1826 SCI_CFLAGS=$(echo   $LARGEFILE_CFLAGS   $CODECOVERAGE_CFLAGS   $DEBUG_CFLAGS   $ARCH_CFLAGS   $COMPILER_CFLAGS   $SCILIBS_CFLAGS   $SSE_CFLAGS   $BACKTRACE_CFLAGS   $WARNING_CFLAGS)
1827 SCI_CXXFLAGS=$(echo $LARGEFILE_CXXFLAGS $CODECOVERAGE_CXXFLAGS $DEBUG_CXXFLAGS $ARCH_CXXFLAGS $COMPILER_CXXFLAGS $SCILIBS_CXXFLAGS $SSE_CXXFLAGS $BACKTRACE_CXXFLAGS $WARNING_CXXFLAGS)
1828 SCI_FFLAGS=$(echo   $LARGEFILE_FFLAGS   $CODECOVERAGE_FFLAGS   $DEBUG_FFLAGS   $ARCH_FFLAGS   $COMPILER_FFLAGS   $SCILIBS_FFLAGS   $SSE_FFLAGS   $BACKTRACE_FFLAGS   $WARNING_FFLAGS)
1829 SCI_LDFLAGS=$(echo  $LARGEFILE_LDFLAGS  $CODECOVERAGE_LDFLAGS  $DEBUG_LDFLAGS  $ARCH_LDFLAGS  $COMPILER_LDFLAGS  $SCILIBS_LDFLAGS  $SSE_LDFLAGS  $BACKTRACE_LDFLAGS  $WARNING_LDFLAGS)
1830 AC_SUBST(SCI_CFLAGS)
1831 AC_SUBST(SCI_CXXFLAGS)
1832 AC_SUBST(SCI_FFLAGS)
1833 AC_SUBST(SCI_LDFLAGS)
1834
1835 AC_CONFIG_FILES([
1836 contrib/Makefile
1837 desktop/images/icons/Makefile
1838 desktop/Makefile
1839 modules/helptools/Makefile
1840 modules/data_structures/Makefile
1841 modules/differential_equations/Makefile
1842 modules/optimization/Makefile
1843 modules/elementary_functions/Makefile
1844 modules/special_functions/Makefile
1845 modules/io/Makefile
1846 modules/completion/Makefile
1847 modules/history_manager/Makefile
1848 modules/jvm/Makefile
1849 modules/commons/Makefile
1850 modules/sound/Makefile
1851 modules/statistics/Makefile
1852 modules/mexlib/Makefile
1853 modules/sparse/Makefile
1854 modules/linear_algebra/Makefile
1855 modules/polynomials/Makefile
1856 modules/symbolic/Makefile
1857 modules/signal_processing/Makefile
1858 modules/arnoldi/Makefile
1859 modules/interpolation/Makefile
1860 modules/intersci/Makefile
1861 modules/localization/Makefile
1862 modules/cacsd/Makefile
1863 modules/boolean/Makefile
1864 modules/integer/Makefile
1865 modules/double/Makefile
1866 modules/fileio/Makefile
1867 modules/spreadsheet/Makefile
1868 modules/string/Makefile
1869 modules/time/Makefile
1870 modules/graphics/Makefile
1871 modules/graphic_export/Makefile
1872 modules/graphic_objects/Makefile
1873 modules/renderer/Makefile
1874 modules/action_binding/Makefile
1875 modules/gui/Makefile
1876 modules/randlib/Makefile
1877 modules/tclsci/Makefile
1878 modules/windows_tools/Makefile
1879 modules/core/Makefile
1880 modules/prebuildjava/Makefile
1881 modules/api_scilab/Makefile
1882 modules/call_scilab/Makefile
1883 modules/types/Makefile
1884 modules/hdf5/Makefile
1885 modules/fftw/Makefile
1886 modules/umfpack/Makefile
1887 modules/scicos/Makefile
1888 modules/scicos_blocks/Makefile
1889 modules/functions/Makefile
1890 modules/dynamic_link/Makefile
1891 modules/overloading/Makefile
1892 modules/javasci/Makefile
1893 modules/m2sci/Makefile
1894 modules/compatibility_functions/Makefile
1895 modules/development_tools/Makefile
1896 modules/output_stream/Makefile
1897 modules/console/Makefile
1898 modules/demo_tools/Makefile
1899 modules/genetic_algorithms/Makefile
1900 modules/simulated_annealing/Makefile
1901 modules/parameters/Makefile
1902 modules/matio/Makefile
1903 modules/atoms/Makefile
1904 modules/xcos/Makefile
1905 modules/scinotes/Makefile
1906 modules/ui_data/Makefile
1907 modules/graph/Makefile
1908 modules/parallel/Makefile
1909 modules/modules_manager/Makefile
1910 modules/history_browser/Makefile
1911 modules/preferences/Makefile
1912 modules/xml/Makefile
1913 modules/external_objects/Makefile
1914 modules/Makefile
1915 Makefile
1916 scilab.pc
1917 etc/modules.xml
1918 etc/classpath.xml
1919 etc/Info.plist
1920 etc/logging.properties
1921 scilab.properties
1922 scilab-lib.properties
1923 scilab-lib-doc.properties
1924 modules/helptools/etc/SciDocConf.xml
1925 modules/core/includes/version.h
1926 ])
1927
1928 # Detection of the module for the future version of Scilab 6
1929 # ie we detect module which ends with _yasp
1930
1931 if test "$enable_yasp" = yes; then
1932    AC_CONFIG_FILES([
1933    modules/development_tools/src/fake/Makefile
1934   ])
1935 fi
1936
1937 # This script is used by Xcos in order to regenerate the function/block list
1938 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])
1939
1940 # Generate stack.h
1941 if test "$IS_64_BITS_CPU" = true -o "$MACOSX" = "1"; then
1942    stack_h_cpp_flags=-DUSE_DYNAMIC_STACK
1943 else
1944    stack_h_cpp_flags=
1945 fi
1946
1947 AC_CONFIG_COMMANDS([modules/core/includes/stack.h],
1948   [if ! $CPP $stack_h_cpp_flags - < $srcdir/modules/core/includes/stack.h.in |\
1949               $GREP -v '^#' > $srcdir/modules/core/includes/stack.h ; then
1950      AC_MSG_ERROR([stack.h generation failed])
1951    fi],
1952   [CPP="$CPP"
1953    GREP="$GREP"
1954    stack_h_cpp_flags="$stack_h_cpp_flags"
1955   ])
1956
1957 AC_OUTPUT
1958
1959 # To distribution packager, you can uncomment this stuff is you want to
1960 # disable the rpath issue
1961 # However, you will have to set all the LD_LIBRARY_PATH to .libs/ directory
1962 # since scilab is compiling macros and help into the source tree (ie before
1963 # the "make install")
1964 # You should consider using chrpath:
1965 # http://directory.fsf.org/project/chrpath/
1966 # to remove it before the make install
1967
1968 #case ${host} in
1969 #  *-pc-linux-gnu)
1970 #    AC_MSG_RESULT([Fixing libtool for -rpath problems.])
1971 #    sed < libtool > libtool-2 \
1972 #    's/^hardcode_libdir_flag_spec.*$/hardcode_libdir_flag_spec=" -D__LIBTOOL_IS_A_FOOL__ "/'
1973 #    mv libtool-2 libtool
1974 #    chmod 755 libtool
1975 #  ;;
1976 #esac
1977 #
1978
1979 echo ""
1980
1981 echo "Scilab is configured as follows. Please verify that this configuration"
1982 echo "matches your expectations."
1983 echo ""
1984 echo "Host system type : $host"
1985 echo ""
1986 echo "                  Option                        Value"
1987 echo "-------------------------------------------------------------------------"
1988 echo "Shared libraries.......      --enable-shared=$libtool_build_shared_libs"
1989 echo "Static libraries.......      --enable-static=$libtool_build_static_libs"
1990 echo "GNU ld.................      --with-gnu-ld=$with_gnu_ld"
1991 echo "Enable debug ..........      --enable-debug=$enable_debug"
1992 echo "Enable debug C.........      --enable-debug-C=$enable_debug_C"
1993 echo "Enable debug C++.......      --enable-debug-CXX=$enable_debug_CXX"
1994 echo "Enable debug Java......      --enable-debug-java=$enable_debug_java"
1995 echo "Enable debug Fortran...      --enable-debug-fortran=$enable_debug_fortran"
1996 echo "Enable stop on warning.      --enable-stop-on-warning=$enable_stop_on_warning"
1997
1998 echo ""
1999 echo "Compiler Configuration:"
2000 echo "  Intel (--with-intelcompilers) .... =        $with_intelcompilers"
2001 echo "  GNU gcc (--with-gcc) ............. =        $with_gcc"
2002 echo "  GNU Fortran 95 (--with-gfortran) . =        $with_gfortran"
2003 echo ""
2004 echo "Options:"
2005 echo "  Do not use TCL/TK (--without-tk) ................. = $with_tk"
2006 echo "  TCL include (--with-tcl-include) ................. = $USER_TCL_INC_PATH"
2007 echo "  TCL library (--with-tcl-library) ................. = $USER_TCL_LIB_PATH"
2008 echo "  TK include (--with-tk-include) ................... = $USER_TK_INC_PATH"
2009 echo "  TK library (--with-tk-library) ................... = $USER_TK_LIB_PATH"
2010 echo "  Install XML Help (--with-install-help-xml) ....... = $with_install_help_xml"
2011 echo "  Compilation tests (--enable-compilation-tests) ... = $COMPILATION_TESTS"
2012 echo "  Make the package relocatable (--enable-relocatable)= $RELOCATABLE"
2013 echo "  Use FFTW (--without-fftw) ........................ = $with_fftw"
2014 echo "  Use MATIO (--without-matio) ...................... = $with_matio"
2015
2016 echo ""
2017 if test "$with_gui" = no; then
2018    echo "Not using Xcos because of the option --without-gui"
2019 else
2020 if test $XCOS_ENABLE = yes; then
2021    echo "Xcos enable"
2022    echo "Build modelica compiler (--without-modelica) ....... = $with_modelica"
2023    echo ""
2024    if test "$with_ocaml" != no -a "$OCAMLC" != no -a "$OCAMLOPT" != no; then
2025      echo "Ocaml Configuration (for Modelica compiler):"
2026      echo "  OCAMLC ............. = $OCAMLC"
2027      echo "  OCAMLOPT ........... = $OCAMLOPT"
2028      echo "  OCAMLDEP ........... = $OCAMLDEP"
2029    else
2030      echo "Will not build Modelica compiler"
2031    fi
2032 else
2033    echo "Not using Xcos"
2034 fi
2035 fi
2036
2037 echo ""
2038 if test "$enable_code_coverage" = yes;  then
2039    echo "Code coverage configuration:"
2040    echo "  LCOV .............. = $LCOV"
2041    echo "  GENHTML ........... = $GENHTML"
2042 else
2043    echo "Not using code coverage"
2044 fi
2045
2046 echo ""
2047 if test $OPENMP_ENABLE = yes; then
2048    echo "OpenMP Configuration:"
2049    echo "OpenMP CFLAGS ...... = $OPENMP_CFLAGS"
2050    echo "OpenMP CXXFLAGS .... = $OPENMP_CXXFLAGS"
2051    echo "OpenMP LIBS ........ = $OPENMP_LIBS"
2052    echo "OpenMP LDFLAGS ..... = $OPENMP_LDFLAGS"
2053 else
2054    echo "Not using OpenMP"
2055 fi
2056
2057 echo ""
2058 if test $FFTW_ENABLE = yes;  then
2059    echo "FFTW Configuration:"
2060    echo "  FFTW LIBS .......... = $FFTW3_LIB"
2061    echo "  FFTW CFLAGS ........ = $FFTW3_CFLAGS"
2062 else
2063    echo "Not using FFTW"
2064 fi
2065
2066 echo ""
2067 if test $MATIO_ENABLE = yes;  then
2068    echo "MATIO Configuration:"
2069    echo "  MATIO LIBS .......... = $MATIO_LIBS"
2070    echo "  MATIO CFLAGS ........ = $MATIO_CFLAGS"
2071 else
2072    echo "Not using MATIO"
2073 fi
2074
2075 echo ""
2076 if test $UMFPACK_ENABLE = yes;  then
2077    echo "UMFPACK Configuration:"
2078    echo "  UMFPACK LIBS ....... = $UMFPACK_LIB"
2079    echo "  UMFPACK CFLAGS ..... = $UMFPACK_CFLAGS"
2080    if test $SUITESPARSE = yes; then
2081       echo "  UMFPACK SUITESPARSE  = Yes"
2082    else
2083       echo "  UMFPACK SUITESPARSE  = No"
2084    fi
2085 else
2086    echo "Not using UMFPACK"
2087 fi
2088
2089
2090 echo ""
2091 echo "BLAS/LAPACK/ATLAS Configuration:"
2092 echo "  BLAS LIBS ............. = $BLAS_LIBS"
2093 echo "  BLAS TYPE ............. = $BLAS_TYPE"
2094 echo "  LAPACK LIBS ........... = $LAPACK_LIBS"
2095 echo "  LAPACK TYPE ........... = $LAPACK_TYPE"
2096 echo "  ARPACK LIBS ........... = $ARPACK_LIBS"
2097 echo ""
2098
2099 echo ""
2100 if test $BUILD_LOCALIZATION_ENABLE != no; then
2101    echo "Gettext/localization configuration:"
2102    echo "  xgettext ............... = $XGETTEXT"
2103    echo "  msgfmt  ................ = $MSGFMT"
2104    echo "  msgfmt_opts ............ = $MSGFMT_OPTS"
2105    echo "  msgcat  ................ = $MSGCAT"
2106 else
2107    echo "Won't generate localization files"
2108 fi
2109
2110 echo ""
2111 if test $HELP_ENABLE = yes; then
2112    echo "Documentation building configuration:"
2113    echo "  Docbook XSL path ....... = $DOCBOOK_ROOT"
2114    echo "  Saxon XSLT ............. = $SAXON"
2115    echo "  XML commons external ... = $XML_APIS_EXT"
2116 else
2117    echo "No documentation generated"
2118 fi
2119
2120 echo ""
2121 echo "Java Configuration:"
2122 if test ! -z "$JAVAC"; then
2123 echo "  JAVA_HOME ........... = $JAVA_HOME"
2124 echo "  JAVAC ............... = $JAVAC"
2125 echo "  JAVA_CLASSPATH ...... = $JAVA_CLASSPATH"
2126 echo "  JAVA_VERSION ........ = $JAVA_VERSION"
2127 echo "  JAVAC_FLAGS ......... = $JAVAC_FLAGS"
2128 echo "  JAVA_JNI_INCLUDE .... = $JAVA_JNI_INCLUDE"
2129 echo "  JAVA_JNI_LIBS ....... = $JAVA_JNI_LIBS"
2130 echo "  JAVA_JNI_LIBS_PRELOAD = $JAVA_JNI_LIBS_PRELOAD"
2131 echo "  JAVA ................ = $JAVA"
2132 echo "  JAVADOC ............. = $JAVADOC"
2133 echo "  JAR ................. = $JAR"
2134 echo "  ANT ................. = $ANT"
2135 else
2136 echo "  JAVA disabled"
2137 fi
2138
2139
2140 echo ""
2141 echo "Java dependencies:"
2142 if test ! -z "$JAVAC"; then
2143 echo "  Flexdock ............ = $FLEXDOCK"
2144 echo "  JOGL 2............... = $JOGL2"
2145 echo "  JOGL 2 LIBS (JNI) ... = $JOGL2_LIBS"
2146 echo "  Gluegen 2 ........... = $GLUEGEN2_RT"
2147 echo "  Gluegen 2 LIBS (JNI)  = $GLUEGEN2_RT_LIBS"
2148 echo "  Jeuclid (MathML) .... = $JEUCLID_CORE"
2149 echo "  Jhall  .............. = $JHALL"
2150 echo "  Jrosetta (API) ...... = $JROSETTA_API"
2151 echo "  Jrosetta (Engine) ... = $JROSETTA_ENGINE"
2152 echo "  Commons Logging ..... = $COMMONS_LOGGING"
2153 echo "  JGraph X ............ = $JGRAPHX"
2154 echo "  SciRenderer ......... = $SCIRENDERER"
2155 echo "  JLaTeXMath .......... = $JLATEXMATH"
2156 fi
2157
2158 echo ""
2159 if test ! -z "$JAVAC"; then
2160 echo "Documentation, graphic export:"
2161 echo "  FOP (XML => PDF) .... = $FOP"
2162 echo "  JLaTeXMath Fop ...... = $JLATEXMATH_FOP"
2163 echo "  Batik (SVG) ......... = $BATIK"
2164 echo "  Avalon Framework .... = $AVALON_FRAMEWORK"
2165 echo "  Commons I/O ......... = $COMMONS_IO"
2166 echo "  XML graphics commons  = $XMLGRAPHICS_COMMONS"
2167 fi
2168
2169
2170 echo ""
2171 echo "Code quality (optional):"
2172 echo "  Checkstyle .......... = $CHECKSTYLE"
2173 echo "  Commons-beanutils ... = $COMMONS_BEANUTILS"
2174 echo "  Antlr ............... = $ANTLR"
2175 echo "  Junit4 .............. = $JUNIT4"
2176 echo "  Cobertura ........... = $COBERTURA"
2177 echo "  splint .............. = $SPLINT"
2178
2179 echo ""
2180 echo "TCL/TK configuration:"
2181 echo "  TK_INC_PATH ........ = $TK_INC_PATH"
2182 echo "  TCL_INC_PATH ....... = $TCL_INC_PATH"
2183 echo "  TCLTK_LIBS ......... = $TCLTK_LIBS"
2184 echo "  TCL_SERIAL_VERSION . = $TCL_SERIAL_VERSION"
2185 echo "  TK_SERIAL_VERSION .. = $TK_SERIAL_VERSION"
2186
2187 echo ""
2188 echo "XML configuration:"
2189 echo "  XML_FLAGS .......... = $XML_FLAGS"
2190 echo "  XML_LIBS ........... = $XML_LIBS"
2191 echo "  XML_VERSION ........ = $XML_VERSION"
2192
2193 echo ""
2194 echo "HDF5 configuration:"
2195 echo "  HDF5 CFLAGS ......... = $HDF5_CFLAGS"
2196 echo "  HDF5 LIBS ........... = $HDF5_LIBS"
2197
2198 echo ""
2199 echo "PCRE configuration:"
2200 echo "  PCRE_CFLAGS ........ = $PCRE_CFLAGS"
2201 echo "  PCRE_LIBS .......... = $PCRE_LIBS"
2202 echo "  PCRE_VERSION ....... = $PCRE_VERSION"
2203
2204 echo ""
2205 echo "CURL configuration:"
2206 echo "  CURL_CFLAGS ........ = $CURL_CFLAGS"
2207 echo "  CURL_LIBS .......... = $CURL_LIBS"
2208 echo "  CURL_VERSION ....... = $CURL_VERSION"
2209
2210
2211 echo ""
2212 echo "SWIG Configuration:"
2213 if test ! -z "$SWIG_BIN"; then
2214 echo "  SWIG_BIN ........... = $SWIG_BIN"
2215 echo "  SWIG_JAVA .......... = $SWIG_JAVA"
2216 else
2217 echo "  SWIG generation disabled"
2218 fi
2219
2220 echo ""
2221 echo "GIWS Configuration:"
2222 if test ! -z "$GIWS_BIN"; then
2223 echo "  GIWS_BIN ........... = $GIWS_BIN"
2224 else
2225 echo "  GIWS generation disabled"
2226 fi
2227
2228 echo ""
2229 echo "Libtool config:"
2230 echo "  objext .............. = $objext"
2231 echo "  libext (static) ..... = $libext"
2232 echo "  shrext_cmds ......... = $shrext_cmds"
2233 echo "  exeext .............. = $exeext"
2234
2235 echo ""
2236
2237 echo "Compilation paths:"
2238 echo "  srcdir .............. = $SCI_SRCDIR"
2239 echo "  srcdir_full ......... = $SCI_SRCDIR_FULL"
2240 echo "  builddir ............ = $SCI_BUILDDIR"
2241 if test "$SCI_SRCDIR_FULL" != "$SCI_BUILDDIR"; then
2242 echo "  VPATH build ......... = Activated"
2243 fi
2244
2245 echo ""
2246 echo "Platform information:"
2247 echo "  host ........... = $host"
2248 echo "  host_cpu ....... = $host_cpu"
2249 echo "  host_vendor .... = $host_vendor"
2250 echo "  host_os ... .... = $host_os"
2251 echo "  hostname ....... = $ac_hostname"
2252 echo "  CPU 64 bits .... = $IS_64_BITS_CPU"
2253 if test -n "$MAC_DETECTED_ARCH"; then
2254 echo "  Mac OS X arch .. = $MAC_DETECTED_ARCH"
2255 echo "  Mac OS X version = $macosx_version"
2256 fi
2257
2258 echo ""
2259 echo "Options used to compile and link:"
2260 echo "  prefix ......... = $prefix"
2261 echo "  localedir ...... = $localedir"
2262 echo "  VERSION ........ = $PACKAGE_VERSION"
2263 echo "  CC ............. = $CC"
2264 echo "  CFLAGS ......... = $CFLAGS"
2265 echo "  SCI_CFLAGS ..... = $SCI_CFLAGS"
2266 echo "  DEFS ........... = $DEFS"
2267 echo "  LD ............. = $LD"
2268 echo "  LDFLAGS ........ = $LDFLAGS"
2269 echo "  SCI_LDFLAGS .... = $SCI_LDFLAGS"
2270 echo "  LIBS ........... = $LIBS"
2271 echo "  CXX ............ = $CXX"
2272 echo "  CXXFLAGS ....... = $CXXFLAGS"
2273 echo "  SCI_CXXFLAGS ... = $SCI_CXXFLAGS"
2274 echo "  F77 ............ = $F77"
2275 echo "  FFLAGS ......... = $FFLAGS"
2276 echo "  SCI_FFLAGS ..... = $SCI_FFLAGS"
2277 echo "  F77_LDFLAGS .... = $F77_LDFLAGS"
2278 echo "  TERMCAP_LIB .... = $TERMCAP_LIB"
2279 echo ""