1: dnl Process this file with autoconf to produce a configure script.
2: AC_INIT([rpl],[4.1.30])
3: AC_CANONICAL_TARGET
4: AC_CANONICAL_TARGET
5: AM_INIT_AUTOMAKE(silent-rules)
6: AM_SILENT_RULES([yes])
7: AC_SUBST(target_cpu)
8: AC_CONFIG_HEADERS([rplconfig.h])
9:
10: dnl Libraries
11: NCURSES=ncurses-6.0
12: READLINE=readline-7.0
13: UNITS=units-2.16
14: GSL=gsl-2.5
15: GPP=gpp-3.0
16: GNUPLOT=gnuplot-5.2.5
17: FILE=file-5.33
18: ICONV=libiconv-1.15
19: SQLITE=sqlite-3.26.0
20: OPENSSL=openssl-1.1.1a
21: OPENMOTIF=motif-2.3.8
22: LIBXPM=libXpm-3.5.12
23: SIGSEGV=libsigsegv-2.12
24: ZLIB=zlib-1.2.11
25:
26: GMP=gmp-6.1.2
27: MPFR=mpfr-4.0.1
28: MPFI=mpfi-1.5.3
29: NTL=ntl-11.0.0
30: COCOA=CoCoALib-0.99600
31: PARI=pari-2.9.5
32: GIAC=giac-1.4.9
33:
34: dnl 32 bits ABI
35: AC_ARG_WITH(gcc_version,
36: [ --with-gcc-version force gcc version],[
37: CC=gcc-$with_gcc_version
38: CXX=g++-$with_gcc_version
39: CF=gfortran-$with_gcc_version
40: F77=gfortran-$with_gcc_version
41: AC_SUBST(CC)
42: AC_SUBST(CXX)
43: AC_SUBST(CF)
44: AC_SUBST(F77)
45: ],[])
46:
47: dnl Checks for Bash
48: BASH_PATH=$(which bash)
49: BASH=$(which bash | sed 's/\//\\\//g')
50:
51: if test x$BASH = x; then
52: AC_MSG_ERROR([Cannot find bash! You have to install it.])
53: fi
54:
55: AC_SUBST(BASH)
56: AC_SUBST(BASH_PATH)
57:
58: dnl Checks for C compiler
59: AC_PROG_CC(gcc)
60:
61: EXT_SQL=
62:
63: AM_PROG_CC_C_O
64:
65: if test "$GCC" != yes; then
66: AC_MSG_ERROR([Cannot find gcc! You have to install it.])
67: fi
68:
69: dnl Checks for C++ compiler
70: AC_PROG_CXX(g++)
71:
72: if test "$GXX" != yes; then
73: AC_MSG_ERROR([Cannot find g++! You have to install it.])
74: fi
75:
76: dnl Checks for Fortran 77 compiler
77: AC_PROG_F77(gfortran)
78:
79: dnl Check for Fortran 9* compiler
80: AC_PROG_FC(gfortran)
81:
82: if test x"$F77" = x; then
83: AC_MSG_ERROR([Cannot find gfortran! You have to install it.])
84: fi
85:
86: if test x"$FC" = x; then
87: AC_MSG_ERROR([Cannot find gfortran! You have to install it.])
88: fi
89:
90: OPTIMISATION_C=-O3
91: OPTIMISATION_CXX=-O3
92: OPTIMISATION_F=-O3
93:
94: dnl X paths
95: AC_PATH_X
96: AC_PATH_XTRA
97:
98: if test "$ac_x_includes" != "no"; then
99: if test x"$ac_x_includes" != x; then
100: X_CFLAGS="$X_CFLAGS -I$ac_x_includes"
101: includeX="-I$ac_x_includes"
102: fi
103: fi
104: if test "$ac_x_libraries" != "no"; then
105: if test x"$ac_x_libraries" != x; then
106: X_LIBS="$X_LIBS -L$ac_x_libraries"
107: fi
108: fi
109:
110: dnl 32 bits ABI
111: AC_ARG_WITH(32bits-abi,
112: [ --with-32bits-abi force 32bits ABI (multilib)],[
113: if test "$with_32bits_abi" = "no"; then
114: ABI=
115: else
116: ABI=-m32
117: fi],[
118: ABI=
119: ]
120: )
121:
122: if test x$ABI = x; then
123: AC_ARG_WITH(64bits-abi,
124: [ --with-64bits-abi force 64bits ABI (multilib)],[
125: if test "$with_64bits_abi" = "no"; then
126: ABI=
127: else
128: ABI=-m64
129: fi],[
130: ABI=
131: ]
132: )
133: fi
134:
135: LDFLAGS="$LDFLAGS $ABI"
136:
137: AC_ARG_WITH(sysroot,
138: [ --with-sysroot sysroot for cross compilation],[
139: if test "$with_sysroot" = "no" -o "$with_rpltools" = "yes"; then
140: AC_MSG_ERROR([You have to specify sysroot path !])
141: else
142: SYSROOT="-I$with_sysroot/usr/include"
143: SYSROOT2=$with_sysroot
144: fi],[
145: SYSROOT=
146: SYSROOT2=
147: ]
148: )
149:
150: AC_ARG_ENABLE(recursive,
151: [ --enable-recursive recursive configuration (default=yes)],[
152: if test "$enableval" = "yes"; then
153: RECURSIVE=yes
154: else
155: RECURSIVE=no
156: fi],[
157: RECURSIVE=yes
158: ]
159: )
160:
161: AC_ARG_ENABLE(native,
162: [ --enable-native enable gcc native compiler option (default=no)],[
163: if test "$enableval" = "yes"; then
164: CFLAGS="$CFLAGS -mtune=native -march=native"
165: FFLAGS="$FFLAGS -mtune=native -march=native"
166: CXXFLAGS="$CXXFLAGS -mtune=native -march=native"
167: FCFLAGS="$FCFLAGS -mtune=native -march=native"
168: else
169: NATIVE=
170: fi],[
171: NATIVE=
172: ]
173: )
174:
175: AC_ARG_WITH(rpltools,
176: [ --with-rpltools specify rpltools path used for cross compilation],[
177: if test "$with_rpltools" = "no" -o "$with_rpltools" = "yes"; then
178: AC_MSG_ERROR([You have to specify rpltools path !])
179: else
180: RPLTOOLS=$with_rpltools
181: fi],[
182: RPLTOOLS=\$\(top_builddir\)
183: ]
184: )
185:
186: AC_SUBST(RPLTOOLS)
187:
188: dnl RPL/CAS support
189: AC_ARG_ENABLE(rplcas,
190: [ --enable-rplcas compile rplcas (default=no)],[
191: if test "$enableval" = "no"; then
192: RPLCAS=-URPLCAS
193: LIBRPLCAS=
194: INCRPLCAS=
195: else
196: RPLCAS=-DRPLCAS
197: LIBRPLCAS="\$(top_builddir)/rplcas/lib/librplcas.a"
198: LIBS+="-lcurl"
199: INCRPLCAS="-I\$(top_builddir)/rplcas/include/giac \
200: -I\$(top_builddir)/rplcas/include"
201: fi],[
202: RPLCAS=-URPLCAS
203: LIBRPLCAS=
204: INCRPLCAS=
205: ]
206: )
207:
208: AC_SUBST(ABI)
209: AC_SUBST(RPLCAS)
210: AC_SUBST(LIBRPLCAS)
211: AC_SUBST(INCRPLCAS)
212:
213: dnl Options
214: AC_ARG_ENABLE(optimization,
215: [ --enable-optimization set compiler flags [[default=environment variables -O2, enable=environment variables -O3]]], [
216: if test "$enableval" = "no"; then
217: CFLAGS=$ABI
218: FFLAGS=$ABI
219: CXXFLAGS=$ABI
220: FCFLAGS=$ABI
221: else
222: CFLAGS="$CFLAGS $ABI $OPTIMISATION_C"
223: FFLAGS="$FFLAGS $ABI $OPTIMISATION_F"
224: CXXFLAGS="$CXXFLAGS $ABI $OPTIMISATION_CXX"
225: FCFLAGS="$FCFLAGS $ABI $OPTIMISATION_F"
226: fi],[
227: CFLAGS="$CFLAGS $ABI -O2"
228: FFLAGS="$FFLAGS $ABI -O2"
229: CXXFLAGS="$CXXFLAGS $ABI -O2"
230: FCFLAGS="$FCFLAGS $ABI -O2"
231: ]
232: )
233:
234: CFLAGS="$CFLAGS -fno-strict-overflow"
235:
236: AC_MSG_CHECKING([for usable shared memory])
237: AC_COMPILE_IFELSE(
238: [AC_LANG_PROGRAM([#include <sys/shm.h>
239: ],
240: [ return(0); ])],
241: [SHARED_MEMORY=-DSHARED_MEMORY; AC_MSG_RESULT(yes)],
242: [SHARED_MEMORY=-USHARED_MEMORY; AC_MSG_RESULT(no)]
243: )
244: AC_SUBST(SHARED_MEMORY)
245:
246: AC_C_INLINE
247:
248: if test "$ac_cv_c_inline" != no ; then
249: AC_DEFINE(HAVE_INLINE,1,[inline keywork or macro available])
250: AC_SUBST(HAVE_INLINE)
251: fi
252:
253: AC_ARG_ENABLE(sysv-ipcs,
254: [ --enable-sysv-ipcs use SystemV IPC functions [[default=guessed]]], [
255: if test "$enableval" = "no"; then
256: IPCS_SYSV=-UIPCS_SYSV
257: POSIX_IPCS=no
258: else
259: IPCS_SYSV=-DIPCS_SYSV
260: POSIX_IPCS=yes
261: fi],
262: REG=$LIBS
263: POSIX_IPCS=guessed
264: LIBS="-lrt -lpthread"
265: [AC_MSG_CHECKING([for POSIX semaphores and shared objects])
266: AC_LINK_IFELSE(
267: [AC_LANG_PROGRAM([#include <sys/mman.h>
268: #include <sys/stat.h>
269: #include <fcntl.h>
270: ],
271: [ int fd; char *sem = "/test";
272: fd = shm_open(sem , O_CREAT | O_RDWR, S_IRUSR | S_IWUSR);
273: close(fd);
274: shm_unlink(sem);
275: fd = sem_open(sem, O_CREAT | O_RDWR, S_IRUSR | S_IWUSR, 0);
276: close(fd);
277: sem_unlink(sem);
278: return(0);
279: ])],
280: [IPCS_SYSV=-UIPCS_SYSV; AC_MSG_RESULT(yes)],
281: [IPCS_SYSV=-DIPCS_SYSV; AC_MSG_RESULT(no)]
282: )]
283: LIBS=$REG
284: )
285:
286: if test "$IPCS_SYSV" = "-UIPCS_SYSV" -a "$POSIX_IPCS" = "guessed"; then
287: REG=$LIBS
288: LIBS=-pthread
289: AC_MSG_CHECKING([for POSIX anonymous semaphores])
290: AC_LINK_IFELSE(
291: [AC_LANG_PROGRAM([#include <semaphore.h>
292: ],
293: [ sem_t sem;
294: if (sem_init(&sem, 1, 0) != 0) return(1);
295: sem_destroy(&sem);
296: return(0);
297: ])],
298: [SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES; AC_MSG_RESULT(yes)],
299: [SEMAPHORES_NOMMES=-DSEMAPHORES_NOMMES; AC_MSG_RESULT(no)]
300: )
301: LDFLAGS=$LIBS
302: LIBS=$REG
303: else
304: SEMAPHORES_NOMMES=-USEMAPHORES_NOMMES
305: fi
306:
307: AC_ARG_ENABLE(full-static,
308: [ --enable-full-static build static RPL/2 engine [[default=shared]]], [
309: if test "$enableval" = "no"; then
310: STATIC=no
311: else
312: STATIC=yes
313: fi],
314: STATIC=no)
315:
316: AC_ARG_ENABLE(final-encoding,
317: [ --enable-final-encoding force final encoding [[default=guessed]]], [
318: if test "$enableval" = "no"; then
319: FINAL_ENCODING="\$(shell locale charmap | \
320: \$(AWK) '/\=/ { print \$\$3;} !/\=/ { print \$\$1;}')"
321: FORCED_FINAL_ENCODING=0
322: else
323: FINAL_ENCODING="$enable_final_encoding"
324: FORCED_FINAL_ENCODING=1
325: fi], [
326: FORCED_FINAL_ENCODING=0
327: FINAL_ENCODING="\$(shell locale charmap | \
328: \$(AWK) '/\=/ { print \$\$3;} !/\=/ { print \$\$1;}')"])
329:
330: AC_ARG_ENABLE(tex,
331: [ --enable-tex provide the TeX support [[default=guessed]]], [
332: if test "$enableval" = "no"; then
333: TEX_SUPPORT=no
334: else
335: TEX_SUPPORT=yes
336: fi],
337: TEX_SUPPORT=guessed)
338:
339: AC_ARG_ENABLE(vim,
340: [ --enable-vim provide the vim support [[default=guessed]]], [
341: if test "$enableval" = "no"; then
342: VIM_SUPPORT=no
343: DEBVIM=
344: else
345: VIM_SUPPORT=yes
346: DEBVIM=", vim"
347: fi],
348: VIM_SUPPORT=guessed)
349:
350: AC_ARG_ENABLE(embedded-gnuplot,
351: [ --enable-embedded-gnuplot build gnuplot provided by this package [[default=yes]]], [
352: if test "$enableval" = "no"; then
353: MYGNUPLOT=no
354: else
355: MYGNUPLOT=yes
356: fi], [
357: MYGNUPLOT=yes])
358:
359: AC_ARG_ENABLE(gnuplot,
360: [ --enable-gnuplot provide the GnuPlot support [[default=guessed]]],
361: [
362: if test "$enableval" = "no"; then
363: GNUPLOT_SUPPORT=no
364: MYGNUPLOT=no
365: FORCE_GNUPLOT_PATH=-UFORCE_GNUPLOT_PATH
366: else
367: GNUPLOT_SUPPORT=yes
368: FORCE_GNUPLOT_PATH=-DFORCE_GNUPLOT_PATH
369: fi], [
370: if test "$MYGNUPLOT" = "yes"; then
371: GNUPLOT_SUPPORT=yes
372: FORCE_GNUPLOT_PATH=-DFORCE_GNUPLOT_PATH
373: else
374: GNUPLOT_SUPPORT=guessed
375: FORCE_GNUPLOT_PATH=-UFORCE_GNUPLOT_PATH
376: fi])
377:
378: libX=""
379: LIBMOTIF=""
380: INCMOTIF=""
381: BUILD_OPENMOTIF=""
382: MODULE_MOTIF=""
383:
384: AC_ARG_ENABLE(motif,
385: [ --enable-motif provide the Motif support [[default=guessed]]], [
386: if test "$enableval" = "no"; then
387: MOTIF_SUPPORT="-UMOTIF_SUPPORT"
388: else
389: MOTIF_SUPPORT="-DMOTIF_SUPPORT"
390: fi],
391: if test "$have_x" = "yes"; then
392: MOTIF_SUPPORT="-DMOTIF_SUPPORT"
393: else
394: MOTIF_SUPPORT="-UMOTIF_SUPPORT"
395: fi)
396:
397: if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPPORT"; then
398: libX="$X_LIBS -lXt -lX11 -lXext -lXinerama"
399: LIBMOTIF="\$(top_builddir)/tools/$OPENMOTIF/install/lib/libXm.a \
400: \$(top_builddir)/tools/$LIBXPM/src/.libs/libXpm.a"
401: INCMOTIF="-I\$(top_srcdir)/tools/$OPENMOTIF/lib \
402: -I\$(top_builddir)/tools/$OPENMOTIF/lib \
403: -I\$(top_srcdir)/tools/$LIBXPM/include"
404: BUILD_OPENMOTIF="$LIBXPM $OPENMOTIF"
405:
406: if test $RECURSIVE = yes; then
407: AC_CONFIG_SUBDIRS(tools/$LIBXPM)
408: AC_CONFIG_SUBDIRS(tools/$OPENMOTIF)
409: fi;
410:
411: MODULE_MOTIF="modules/motif"
412: fi
413:
414: AC_ARG_ENABLE(experimental,
415: [ --enable-experimental enable experimental code [[default=no]]], [
416: if test "$enableval" = "no"; then
417: EXPERIMENTAL_CODE="-UEXPERIMENTAL_CODE"
418: else
419: EXPERIMENTAL_CODE="-DEXPERIMENTAL_CODE"
420: fi],
421: EXPERIMENTAL_CODE="-UEXPERIMENTAL_CODE")
422:
423: AC_ARG_ENABLE(debug,
424: [ --enable-debug enable debug code [[default=no]]], [
425: if test "$enableval" = "no"; then
426: DEBUG="-UDEBUG_MEMOIRE -UDEBUG_ERREURS"
427: else
428: DEBUG="-DDEBUG_MEMOIRE -UDEBUG_ERREURS"
429: fi], [DEBUG="-UDEBUG_MEMOIRE -UDEBUG_ERREURS"])
430:
431: AC_ARG_ENABLE(profile,
432: [ --enable-profile enable profile code [[default=no]]], [
433: if test "$enableval" = "no"; then
434: PROFILAGE=""
435: else
436: PROFILAGE="-pg"
437: fi], [PROFILAGE=""])
438:
439: AC_SUBST(PROFILAGE)
440:
441: dnl Checks for uuencode
442: AC_CHECK_PROG(UUENCODE, uuencode, yes, no)
443: if test "$UUENCODE" = no; then
444: AC_MSG_ERROR([Can not find uuencode !])
445: fi
446:
447: dnl Checks for patch
448: AC_CHECK_PROG(PATCH, patch, yes, no)
449: if test "$PATCH" = no; then
450: AC_MSG_ERROR([Can not find patch !])
451: fi
452:
453: if test ! -d tools; then
454: mkdir tools
455: fi
456: if test ! -d "$srcdir"/tools/$NCURSES; then
457: gunzip -c "$srcdir"/tools/$NCURSES.tar.gz | \
458: (cd "$srcdir/tools" && tar -xf -)
459: (cd "$srcdir/tools/"$NCURSES && \
460: for i in $(ls ../$NCURSES*.sh.gz);
461: do echo Uncompressing script $i; TMP=$i; gunzip -c $i > ${TMP%.*};
462: done;
463: for i in $(ls ../$NCURSES*.sh);
464: do echo Applying script $i && chmod 775 $i && ./$i;
465: done;
466: for i in $(ls ../$NCURSES*.patch.gz);
467: do echo Applying patch $i && \
468: gunzip -c $i | patch -p1;
469: done;
470: for i in $(ls ../ncurses-6.1*.patch.gz);
471: do echo Applying patch $i && \
472: gunzip -c $i | patch -p1;
473: done);
474: fi
475: if test ! -d "$srcdir"/tools/$READLINE; then
476: gunzip -c "$srcdir"/tools/$READLINE.tar.gz | \
477: (cd "$srcdir/tools" && tar -xf -)
478: fi
479: if test ! -d "$srcdir"/tools/$UNITS; then
480: gunzip -c "$srcdir"/tools/$UNITS.tar.gz | \
481: (cd "$srcdir/tools" && tar -xf -)
482: fi
483: if test ! -d "$srcdir"/tools/$GSL; then
484: gunzip -c "$srcdir"/tools/$GSL.tar.gz | \
485: (cd "$srcdir/tools" && tar -xf -)
486: if test $(uname) = "OS/2"; then
487: (cd "$srcdir"/tools/$GSL; \
488: TMP=$(mktemp tmp.XXXXXXXXXX); \
489: sed -e '1,$s/\${1+"\$@"}/"\$@"/g' ltmain.sh > $TMP; \
490: \mv -f $TMP ltmain.sh)
491: fi
492: fi
493: if test ! -d "$srcdir"/tools/$GPP; then
494: gunzip -c "$srcdir"/tools/$GPP.tar.gz | \
495: (cd "$srcdir/tools" && tar -xf -)
496: fi
497: if test ! -d "$srcdir"/tools/$FILE; then
498: gunzip -c "$srcdir"/tools/$FILE.tar.gz | \
499: (cd "$srcdir/tools" && tar -xf - )
500: (cd "$srcdir/tools"/$FILE && gunzip -c ../$FILE.diff.gz | patch -p1 && \
501: autoreconf)
502: fi
503: if test ! -d "$srcdir"/tools/$SQLITE; then
504: gunzip -c "$srcdir"/tools/$SQLITE.tar.gz | \
505: (cd "$srcdir/tools" && tar -xf -)
506: fi
507: if test ! -d "$srcdir"/tools/$SIGSEGV; then
508: gunzip -c "$srcdir"/tools/$SIGSEGV.tar.gz | \
509: (cd "$srcdir/tools" && tar -xf -)
510: (cd "$srcdir/tools/$SIGSEGV" && ./autogen.sh --skip-gnulib)
511: fi
512: if test ! -d "$srcdir"/tools/$ICONV; then
513: gunzip -c "$srcdir"/tools/$ICONV.tar.gz | \
514: (cd "$srcdir/tools" && tar -xf -)
515: (cd "$srcdir"/tools/$ICONV && ln -sf ../$SIGSEGV/gnulib gnulib)
516: fi
517: if test ! -d "$srcdir"/tools/$OPENMOTIF; then
518: gunzip -c "$srcdir"/tools/$OPENMOTIF.tar.gz | \
519: (cd "$srcdir/tools" && tar -xf -)
520: fi
521: if test ! -d "$srcdir"/tools/$LIBXPM; then
522: gunzip -c "$srcdir"/tools/$LIBXPM.tar.gz | \
523: (cd "$srcdir/tools" && tar -xf -)
524: fi
525: if test ! -d tools/$OPENSSL; then
526: gunzip -c "$srcdir"/tools/$OPENSSL.tar.gz | \
527: (cd tools && tar -xf -)
528: fi
529: if test ! -d tools/$ZLIB; then
530: gunzip -c "$srcdir"/tools/$ZLIB.tar.gz | \
531: (cd tools && tar -xf - && cd $ZLIB && ./configure --static)
532: fi
533: if test ! -d rplcas; then
534: mkdir rplcas
535: fi
536: if test ! -d "$srcdir"/rplcas/$GMP; then
537: gunzip -c "$srcdir"/rplcas/$GMP.tar.gz | \
538: (cd "$srcdir/rplcas" && tar -xf -)
539: fi
540: if test ! -d "$srcdir"/rplcas/$MPFR; then
541: gunzip -c "$srcdir"/rplcas/$MPFR.tar.gz | \
542: (cd "$srcdir/rplcas" && tar -xf -)
543: fi
544: if test ! -d "$srcdir"/rplcas/$MPFI; then
545: gunzip -c "$srcdir"/rplcas/$MPFI.tar.gz | \
546: (cd "$srcdir/rplcas" && tar -xf -)
547: fi
548: if test ! -d rplcas/$NTL; then
549: gunzip -c "$srcdir"/rplcas/$NTL.tar.gz | \
550: (cd rplcas && tar -xf -)
551: fi
552: if test ! -d rplcas/$COCOA; then
553: gunzip -c "$srcdir"/rplcas/$COCOA.tar.gz | \
554: (cd rplcas && tar -xf -)
555: fi
556: if test ! -d rplcas/$PARI; then
557: gunzip -c "$srcdir"/rplcas/$PARI.tar.gz | \
558: (cd rplcas && tar -xf -)
559: fi
560: if test ! -d "$srcdir"/rplcas/$GIAC; then
561: gunzip -c "$srcdir"/rplcas/$GIAC.tar.gz | \
562: (cd "$srcdir/rplcas" && tar -xf -)
563: fi
564:
565: touch tools/openmotif.lib
566:
567: dnl Default installation directory
568: AC_PREFIX_DEFAULT(/usr/local)
569:
570: dnl Set final install path
571: AC_ARG_ENABLE(final-run-path,
572: [ --enable-final-run-path=PATH enable another final run path than PREFIX], [
573: if test "x$enable_final_run_path" = "x"; then
574: AC_MSG_NOTICE("No path with --enable-final-run-path.")
575: AC_MSG_ERROR("You should specify final path !")
576: else
577: RUNPATH="$enable_final_run_path"
578: fi
579: ],
580: RUNPATH="\${prefix}"
581: )
582: AC_SUBST(RUNPATH)
583:
584: dnl Checks for programs
585: AC_PROG_INSTALL
586: AC_PROG_LN_S
587: AC_PROG_MAKE_SET
588: AC_PROG_RANLIB
589:
590: dnl Checks for nawk
591: AC_CHECK_PROG(AWK, nawk, yes, no)
592: if test "$AWK" = no; then
593: AC_CHECK_PROG(AWK, gawk, yes, no)
594: if test "$AWK" = no; then
595: AC_MSG_ERROR([Can not find nawk !])
596: fi
597: fi
598:
599: dnl Checks for sed
600: AC_CHECK_PROG(SED, sed, yes, no)
601: if test "$SED" = no; then
602: AC_MSG_ERROR([Can not find sed !])
603: fi
604:
605: dnl Checks for yacc
606: AC_CHECK_PROG(YACC, yacc, yes, no)
607: if test "$YACC" = no; then
608: AC_MSG_ERROR([Can not find yacc !])
609: fi
610:
611: dnl Checks for TeX, LaTeX, dvips, gs, gv, vim and gnuplot
612: if test "$TEX_SUPPORT" = guessed; then
613: POSTSCRIPT_SUPPORT="-DPOSTSCRIPT_SUPPORT"
614:
615: AC_CHECK_PROG(TEX, tex, yes, no)
616: if test "$TEX" = no; then
617: AC_MSG_WARN([Cannot find TeX! You may install it.
618: Download at http://tex.loria.fr/
619: ])
620: POSTSCRIPT_SUPPORT="-UPOSTSCRIPT_SUPPORT"
621: fi
622:
623: AC_CHECK_PROG(LATEX, latex, yes, no)
624: if test "$LATEX" = no; then
625: AC_MSG_WARN([Cannot find LaTeX! You may install it.
626: Download at http://tex.loria.fr/
627: ])
628: POSTSCRIPT_SUPPORT="-UPOSTSCRIPT_SUPPORT"
629: fi
630:
631: AC_CHECK_PROG(DVIPS, dvips, yes, no)
632: if test "$DVIPS" = no; then
633: AC_MSG_WARN([Cannot find dvips! You may install it.
634: Download at http://tex.loria.fr/
635: ])
636: POSTSCRIPT_SUPPORT="-UPOSTSCRIPT_SUPPORT"
637: fi
638:
639: AC_CHECK_PROG(GS, gs, yes, no)
640: if test "$GS" = no; then
641: AC_MSG_WARN([Cannot find gs! You may install it.
642: Download at http://ftp.lip6.fr/
643: ])
644: POSTSCRIPT_SUPPORT="-UPOSTSCRIPT_SUPPORT"
645: fi
646:
647: AC_CHECK_PROG(GV, gv, yes, no)
648: if test "$GV" = no; then
649: AC_MSG_WARN([Cannot find gv! You may install it.
650: Download at http://ftp.lip6.fr/
651: ])
652: POSTSCRIPT_SUPPORT="-UPOSTSCRIPT_SUPPORT"
653: fi
654: else
655: if test "$TEX_SUPPORT" = no; then
656: POSTSCRIPT_SUPPORT="-UPOSTSCRIPT_SUPPORT"
657: else
658: POSTSCRIPT_SUPPORT="-DPOSTSCRIPT_SUPPORT"
659: fi
660: fi
661:
662: if test "$GNUPLOT_SUPPORT" = guessed; then
663: AC_CHECK_PROG(GNUPLOT_P, gnuplot, yes, no)
664: if test "$GNUPLOT_P" = no; then
665: AC_MSG_WARN([Cannot find gnuplot! You may install it.
666: Download at http://www.gnuplot.vt.edu/
667: ])
668: GNUPLOT_SUPPORT="-UGNUPLOT_SUPPORT"
669: else
670: GNUPLOT_SUPPORT="-DGNUPLOT_SUPPORT"
671: fi
672: else
673: if test "$GNUPLOT_SUPPORT" = no; then
674: GNUPLOT_SUPPORT="-UGNUPLOT_SUPPORT"
675: else
676: GNUPLOT_SUPPORT="-DGNUPLOT_SUPPORT"
677: fi
678: fi
679:
680: if test "$VIM_SUPPORT" = guessed; then
681: AC_CHECK_PROG(VIM, vim, yes, no)
682: if test "$VIM" = no; then
683: AC_MSG_WARN([Cannot find vim! You may install it.
684: Download at http://www.vim.org/
685: ])
686: VIM_SUPPORT="-UVIM_SUPPORT"
687: DEBVIM=
688: else
689: VIM_SUPPORT="-DVIM_SUPPORT"
690: DEBVIM=", vim"
691: fi
692: else
693: if test "$VIM_SUPPORT" = no; then
694: VIM_SUPPORT="-UVIM_SUPPORT"
695: DEBVIM=
696: else
697: VIM_SUPPORT="-DVIM_SUPPORT"
698: DEBVIM=", vim"
699: fi
700: fi
701:
702: dnl Substitutions
703: AC_SUBST(GNUPLOT_SUPPORT)
704: AC_SUBST(FORCE_GNUPLOT_PATH)
705: AC_SUBST(POSTSCRIPT_SUPPORT)
706: AC_SUBST(VIM_SUPPORT)
707: AC_SUBST(EXPERIMENTAL_CODE)
708: AC_SUBST(DEBUG)
709: AC_SUBST(MOTIF_SUPPORT)
710: AC_SUBST(libX)
711: AC_SUBST(includeX)
712:
713: dnl Date
714: DATE=$(env LC_ALL=C date +"%A, %e %B %Y %T %z")
715: DATE_FR=$(env LC_ALL=fr_FR date +"%A, %e %B %Y %T %z")
716: AC_SUBST(DATE)
717: AC_SUBST(DATE_FR)
718:
719: dnl Checks for libraries
720: AC_CHECK_LIB(m, main,, AC_MSG_ERROR([Can not find libm !]))
721: AC_CHECK_LIB(c, pthread_mutex_init,,
722: [AC_CHECK_LIB(pthread, main,,
723: AC_MSG_ERROR([Can not find libpthread !]))])
724: if test "$MOTIF_SUPPORT" = "-DMOTIF_SUPPORT"; then
725: AC_CHECK_LIB(Xinerama, XineramaIsActive,,
726: AC_MSG_ERROR([Can not find libXinerama !]))
727: fi
728: AC_CHECK_LIB(gomp, omp_get_num_procs,, AC_MSG_ERROR([Can not find libgomp !]))
729: OPENMP=-lgomp
730: AC_SUBST(OPENMP)
731:
732: dnl Check for union semun
733: AC_CHECK_TYPE([union semun], SEMUN=-DUNION_SEMUN, SEMUN=-UUNION_SEMUN, [[
734: #include <sys/sem.h>
735: ]])
736:
737: dnl Check for IPv6 support
738: AC_CHECK_TYPE([struct sockaddr_in6], IPV6=-DIPV6, IPV6=-UIPV6, [[
739: #include <sys/types.h>
740: #include <netinet/in.h>
741: ]])
742:
743: dnl Do we need to use -ldl?
744: if test "$CYGWIN" != yes; then
745: AC_CHECK_LIB(dl, dlopen, LIBS="$LIBS -ldl",
746: AC_MSG_WARN([libdl doesn't seem to be needed on this system.]))
747: fi
748:
749: dnl Do we need to use -lrt?
750: AC_CHECK_LIB(rt, nanosleep, LIBS="$LIBS -lrt",
751: AC_MSG_WARN([librt doesn't seem to be needed on this system.]))
752:
753: AC_CHECK_LIB(rt, shm_open, LIBS="$LIBS -lrt",
754: AC_MSG_WARN([librt doesn't seem to be needed on this system.]))
755:
756: AC_CHECK_LIB(pthread, pthread_create, LIBS="$LIBS -lpthread",
757: AC_MSG_WARN([libpthread doesn't seem to be needed on this system.]))
758:
759: dnl Do we need to use -lsocket?
760: AC_CHECK_LIB(socket, bind, LIBS="$LIBS -lsocket",
761: AC_MSG_WARN([libsocket doesn't seem to be needed on this system.]))
762:
763: dnl Check for SQL libraries
764: MYSQL_SUPPORT="-UMYSQL_SUPPORT"
765: AC_ARG_WITH(mysql,
766: [ --with-mysql=PATH specify directory for installed mysql],
767: [], [with_mysql=check])
768:
769: if test "x$with_mysql" = xcheck -o "x$with_mysql" = xyes; then
770: libMySQLinc="-I/usr/include"
771: libMySQLlib="/usr/lib"
772:
773: AC_MSG_CHECKING(for libmysql includes in /usr/include)
774: saved_CFLAGS="$CFLAGS"
775: CFLAGS="$CFLAGS -L/$libMySQLinc"
776: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT";
777: libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"])
778: CFLAGS=$saved_CFLAGS
779:
780: if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then
781: AC_MSG_CHECKING(for libmysql includes in /usr/include/mysql)
782: saved_CFLAGS="$CFLAGS"
783: CFLAGS="$CFLAGS $libMySQLinc/mysql"
784: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT";
785: libMySQLinc=$libMySQLinc],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"])
786: CFLAGS=$saved_CFLAGS
787: libMySQLinc=$libMySQLinc/mysql
788: fi
789:
790: if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then
791: AC_MSG_CHECKING(for libmysql includes in /usr/local/include)
792: saved_CFLAGS="$CFLAGS"
793: CFLAGS="$CFLAGS $libMySQLinc/../local/include"
794: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT";
795: libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"])
796: CFLAGS=$saved_CFLAGS
797: libMySQLinc=$libMySQLinc/../local/include
798: libMySQLlib=$libMySQLlib/../local/lib
799: fi
800:
801: if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then
802: AC_MSG_CHECKING(for libmysql includes in /usr/local/include/mysql)
803: saved_CFLAGS="$CFLAGS"
804: CFLAGS="$CFLAGS $libMySQLinc/../local/include/mysql"
805: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT";
806: libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"])
807: CFLAGS=$saved_CFLAGS
808: libMySQLinc=$libMySQLinc/../local/include/mysql
809: libMySQLlib=$libMySQLlib/../local/lib
810: fi
811: else
812: if test "x$with_mysql" != xno; then
813: libMySQLinc="-I$with_mysql/include"
814: libMySQLlib="$with_mysql/lib"
815:
816: AC_MSG_CHECKING(for libmysql includes in $with_mysql)
817: saved_CFLAGS="$CFLAGS"
818: CFLAGS="$CFLAGS $libMySQLinc"
819: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT";
820: libMySQLinc=$libMySQLinc/mysql],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"])
821: CFLAGS=$saved_CFLAGS
822:
823: if test "$MYSQL_SUPPORT" = "-UMYSQL_SUPPORT"; then
824: AC_MSG_CHECKING(for libmysql includes in $with_mysql/mysql)
825: saved_CFLAGS="$CFLAGS"
826: CFLAGS="$CFLAGS $libMySQLinc/mysql"
827: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[]])],[AC_MSG_RESULT([yes]); MYSQL_SUPPORT="-DMYSQL_SUPPORT";
828: libMySQLinc=$libMySQLinc],[AC_MSG_RESULT([no]); MYSQL_SUPPORT="-UMYSQL_SUPPORT"])
829: CFLAGS=$saved_CFLAGS
830: libMySQLinc=$libMySQLinc/mysql
831: fi
832: else
833: MYSQL_SUPPORT="-UMYSQL_SUPPORT"
834: fi
835: fi
836:
837: if test "$MYSQL_SUPPORT" = "-DMYSQL_SUPPORT"; then
838: MYSQL_LIB=no
839:
840: if test $MYSQL_LIB = no; then
841: AC_MSG_CHECKING(for libmysql libraries in $libMySQLlib)
842: saved_LIBS="$LIBS"
843: if test $STATIC = no; then
844: LIBS="$LIBS -L/$libMySQLlib -lmysqlclient_r $libMySQLinc"
845: else
846: LIBS="$LIBS $libMySQLlib/libmysqlclient_r.a $libMySQLinc"
847: fi
848: AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "mysql.h"]], [[MYSQL mysql; mysql_init(&mysql);]])],[AC_MSG_RESULT([yes]); MYSQL_LIB="yes"],[AC_MSG_RESULT([no]); MYSQL_LIB="no"])
849: LIBS=$saved_LIBS;
850: if test $STATIC = no; then
851: libMySQLlib="-L/$libMySQLlib -lmysqlclient_r"
852: else
853: libMySQLlib="$libMySQLlib/libmysqlclient_r.a"
854: EXT_SQL="$EXT_SQL $libMySQLlib"
855: fi
856: fi
857:
858: if test $MYSQL_LIB = no; then
859: MYSQL_SUPPORT="-UMYSQL_SUPPORT"
860: fi
861: fi
862:
863: DEBMYSQL=
864:
865: if test "$MYSQL_SUPPORT" != "-DMYSQL_SUPPORT"; then
866: libMySQLinc=
867: libMySQLlib=
868: else
869: DEBMYSQL=", libmysqlclient18"
870: fi
871:
872: AC_SUBST(MYSQL_SUPPORT)
873: AC_SUBST(libMySQLinc)
874: AC_SUBST(libMySQLlib)
875:
876: POSTGRESQL_SUPPORT=-UPOSTGRESQL_SUPPORT
877: AC_ARG_WITH(postgresql,
878: [ --with-postgresql=PATH specify directory for installed postgresql],
879: [], [with_postgresql=check])
880:
881: # with_postgresql : check [pas défini], yes [uniquement --with],
882: # no [--without], valeur [--with=valeur].
883:
884: if test "x$with_postgresql" = xcheck -o "x$with_postgresql" = xyes; then
885: libPgSQLinc="-I/usr/include"
886: libPgSQLlib="/usr/lib"
887:
888: AC_MSG_CHECKING(for libpq includes in /usr/include)
889: saved_CFLAGS="$CFLAGS"
890: CFLAGS="$CFLAGS $libPgSQLinc"
891: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]); POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]); POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
892: CFLAGS=$saved_CFLAGS
893:
894: if test "$POSTGRESQL_SUPPORT" = "-UPOSTGRESQL_SUPPORT"; then
895: AC_MSG_CHECKING(for libpq includes in /usr/include/postgresql)
896: saved_CFLAGS="$CFLAGS"
897: CFLAGS="$CFLAGS $libPgSQLinc/postgresql"
898: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
899: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
900: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
901: CFLAGS=$saved_CFLAGS
902: libPgSQLinc=$libPgSQLinc/postgresql
903: fi
904:
905: if test "$POSTGRESQL_SUPPORT" = "-UPOSTGRESQL_SUPPORT"; then
906: AC_MSG_CHECKING(for libpq includes in /usr/include/pgsql)
907: saved_CFLAGS="$CFLAGS"
908: CFLAGS="$CFLAGS $libPgSQLinc/pgsql"
909: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
910: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
911: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
912: CFLAGS=$saved_CFLAGS
913: libPgSQLinc=$libPgSQLinc/pgsql
914: fi
915:
916: if test "$POSTGRESQL_SUPPORT" = "-UPOSTGRESQL_SUPPORT"; then
917: AC_MSG_CHECKING(for libpq includes in /usr/local/include)
918: saved_CFLAGS="$CFLAGS"
919: CFLAGS="$CFLAGS $libPgSQLinc/../local/include"
920: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
921: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
922: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
923: CFLAGS=$saved_CFLAGS
924: libPgSQLinc=$libPgSQLinc/../local/include
925: libPgSQLlib=$libPgSQLlib/../local/lib
926: fi
927:
928: if test "$POSTGRESQL_SUPPORT" = "-UPOSTGRESQL_SUPPORT"; then
929: AC_MSG_CHECKING(for libpq includes in /usr/local/include/postgresql)
930: saved_CFLAGS="$CFLAGS"
931: CFLAGS="$CFLAGS $libPgSQLinc/../local/include/postgresql"
932: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
933: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
934: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
935: CFLAGS=$saved_CFLAGS
936: libPgSQLinc=$libPgSQLinc/../local/include/postgresql
937: libPgSQLlib=$libPgSQLlib/../local/lib
938: fi
939:
940: if test "$POSTGRESQL_SUPPORT" = "-UPOSTGRESQL_SUPPORT"; then
941: AC_MSG_CHECKING(for libpq includes in /usr/local/include/pgsql)
942: saved_CFLAGS="$CFLAGS"
943: CFLAGS="$CFLAGS $libPgSQLinc/../local/include/pgsql"
944: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
945: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
946: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
947: CFLAGS=$saved_CFLAGS
948: libPgSQLinc=$libPgSQLinc/local/include/pgsql
949: libPgSQLlib=$libPgSQLlib/../local/lib
950: fi
951: else
952: if test "x$with_postgresql" != xno; then
953: libPgSQLinc="-I$with_postgresql/include"
954: libPgSQLlib="$with_postgresql/lib"
955:
956: AC_MSG_CHECKING(for libpq includes in $libPgSQLinc)
957: saved_CFLAGS="$CFLAGS"
958: CFLAGS="$CFLAGS $libPgSQLinc"
959: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
960: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
961: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
962: CFLAGS=$saved_CFLAGS
963:
964: if test "$POSTGRESQL_SUPPORT" = "-UPOSTGRESQL_SUPPORT"; then
965: AC_MSG_CHECKING(for libpq includes in $libPgSQLinc/postgresql)
966: saved_CFLAGS="$CFLAGS"
967: CFLAGS="$CFLAGS $libPgSQLinc/postgresql"
968: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
969: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
970: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
971: CFLAGS=$saved_CFLAGS
972: libPgSQLinc=$libPgSQLinc/postgresql
973: fi
974:
975: if test "$POSTGRESQL_SUPPORT" = "-UPOSTGRESQL_SUPPORT"; then
976: AC_MSG_CHECKING(for libpq includes in $libPgSQLinc/pgsql)
977: saved_CFLAGS="$CFLAGS"
978: CFLAGS="$CFLAGS $libPgSQLinc/pgsql"
979: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[]])],[AC_MSG_RESULT([yes]);
980: POSTGRESQL_SUPPORT="-DPOSTGRESQL_SUPPORT"],[AC_MSG_RESULT([no]);
981: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"])
982: CFLAGS=$saved_CFLAGS
983: libPgSQLinc=$libPgSQLinc/pgsql
984: fi
985: else
986: POSTGRESQL_SUPPORT="-UPOSTGRESQL_SUPPORT"
987: fi
988: fi
989:
990: if test "$POSTGRESQL_SUPPORT" = "-DPOSTGRESQL_SUPPORT"; then
991: POSTGRESQL_LIB=no
992:
993: if test $POSTGRESQL_LIB = no; then
994: AC_MSG_CHECKING(for libpq libraries in $libPgSQLlib)
995: saved_LIBS="$LIBS"
996: if test $STATIC = no; then
997: LIBS="$LIBS -L/$libPgSQLlib $libPgSQLinc -lpq"
998: else
999: LIBS="$LIBS $libPgSQLlib/libpq.a $libPgSQLinc"
1000: fi
1001: AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "libpq-fe.h"]], [[PGconn *conn; const char *conninfo="dbname=postgres"; conn =
1002: PQconnectdb(conninfo);]])],[AC_MSG_RESULT([yes]); POSTGRESQL_LIB="yes"],[AC_MSG_RESULT([no]); POSTGRESQL_LIB="no"])
1003: LIBS=$saved_LIBS;
1004: if test $STATIC = no; then
1005: libPgSQLlib="-L/$libPgSQLlib -lpq"
1006: else
1007: libPgSQLlib="$libPgSQLlib/libpq.a"
1008: EXT_SQL="$EXT_SQL $libPgSQLlib"
1009: fi
1010: fi
1011: fi
1012:
1013: DEBPQ=
1014:
1015: if test "$POSTGRESQL_SUPPORT" != "-DPOSTGRESQL_SUPPORT"; then
1016: libPgSQLinc=
1017: libPgSQLlib=
1018: else
1019: DEBPQ=", libpq5"
1020: fi
1021:
1022: AC_SUBST(POSTGRESQL_SUPPORT)
1023: AC_SUBST(libPgSQLinc)
1024: AC_SUBST(libPgSQLlib)
1025:
1026: # with_postgresql : check [pas défini], yes [uniquement --with],
1027: # no [--without], valeur [--with=valeur].
1028: AC_ARG_WITH(bourne_shell,
1029: [ --with-bourne-shell=PATH specify path for OS/2 bourne shell],
1030: [], [with_bourne_shell=no])
1031:
1032: if test "x$with_bourne_shell" = xyes; then
1033: AC_MSG_ERROR([You have to specify a valide shell path !])
1034: fi
1035:
1036: if test "x$with_bourne_shell" = xno; then
1037: if test $(uname) = "OS/2"; then
1038: AC_MSG_ERROR([With OS/2 or eComstation, you have to specify a valide
1039: shell path with --with-bourne-shell=PATH !])
1040: fi
1041:
1042: BSH_PATH=
1043: else
1044: if test ! -x $with_bourne_shell; then
1045: AC_MSG_ERROR([$with_bourne_shell is not executable !])
1046: fi
1047:
1048: if test $(uname) = "OS/2"; then
1049: with_os2_bourne_shell=$(echo $with_bourne_shell | \
1050: sed -e '1,$s/\//\\\\\\\\/g')
1051: BSH_PATH=-DBOURNE_SHELL=\"\\\"$with_os2_bourne_shell\\\"\"
1052: else
1053: AC_MSG_WARN([--with-bourne-shell ignored])
1054: BSH_PATH=
1055: fi
1056: fi
1057:
1058: dnl Checks for sizes
1059: AC_CHECK_SIZEOF(void *, 4)
1060: AC_CHECK_SIZEOF(char, 1)
1061: AC_CHECK_SIZEOF(short int, 2)
1062: AC_CHECK_SIZEOF(int, 4)
1063: AC_CHECK_SIZEOF(long int, 4)
1064: AC_CHECK_SIZEOF(long long int, 8)
1065: AC_CHECK_SIZEOF(float, 4)
1066: AC_CHECK_SIZEOF(double, 8)
1067: AC_CHECK_SIZEOF(long double, 12)
1068:
1069: dnl Checks for header files.
1070: AC_HEADER_DIRENT
1071: AC_HEADER_STDC
1072: AC_HEADER_SYS_WAIT
1073: AC_CHECK_HEADERS(dlfcn.h fcntl.h math.h pwd.h signal.h string.h termios.h \
1074: time.h unistd.h sys/resource.h sys/stat.h sys/time.h sys/timeb.h \
1075: sys/types.h sys/select.h sys/wait.h stdio.h stdlib.h pthread.h)
1076:
1077: dnl Checks for typedefs, structures, and compiler characteristics.
1078: AC_C_CONST
1079: AC_TYPE_UID_T
1080: AC_TYPE_PID_T
1081: AC_TYPE_SIZE_T
1082: AC_HEADER_TIME
1083: AC_STRUCT_TM
1084:
1085: dnl Checks for library functions.
1086: AC_DIAGNOSE([obsolete],[your code may safely assume C89 semantics that RETSIGTYPE is void.
1087: Remove this warning and the `AC_CACHE_CHECK' when you adjust the code.])dnl
1088: AC_CACHE_CHECK([return type of signal handlers],[ac_cv_type_signal],[AC_COMPILE_IFELSE(
1089: [AC_LANG_PROGRAM([#include <sys/types.h>
1090: #include <signal.h>
1091: ],
1092: [return *(signal (0, 0)) (0) == 1;])],
1093: [ac_cv_type_signal=int],
1094: [ac_cv_type_signal=void])])
1095: AC_DEFINE_UNQUOTED([RETSIGTYPE],[$ac_cv_type_signal],[Define as the return type of signal handlers
1096: (`int' or `void').])
1097:
1098: AC_FUNC_STRCOLL
1099: AC_FUNC_STRFTIME
1100: AC_FUNC_VPRINTF
1101: AC_CHECK_FUNCS(ftime getcwd putenv select strcspn strdup \
1102: strerror strspn strstr strtod)
1103:
1104: dnl Check for OpenSSL os/comp
1105: AC_ARG_WITH(openssl_arch,
1106: [ --with-openssl-arch=ARCH specify os and compiler for openssl (ARCH or list)],
1107: [], [with_openssl_arch=none])
1108:
1109: if test $(uname) = "OS/2"; then
1110: bash -c "cd tools/$OPENSSL && os2/OS2-EMX.cmd"
1111: else
1112: if test $build = $host; then
1113: OPENSSL_CROSS=
1114: else
1115: OPENSSL_CROSS="AR=$host-ar RANLIB=$host-ranlib CC=$host-gcc NM=$host-nm"
1116: fi
1117: echo $build $host
1118: echo $OPENSSL_CROSS
1119: if test "x$with_openssl_arch" = xnone; then
1120: (cd tools/$OPENSSL && sh -c "$OPENSSL_CROSS ./config no-asm")
1121: elif test "x$with_openssl_arch" = xyes -o "x$with_openssl_arch" = xno; then
1122: (cd tools/$OPENSSL && ./Configure)
1123: AC_MSG_ERROR([OS/COMP informations are required!])
1124: elif test "x$with_openssl_arch" = xlist; then
1125: (cd tools/$OPENSSL && ./Configure)
1126: AC_MSG_ERROR([Please specify OS and Architecture])
1127: else
1128: (cd tools/$OPENSSL && sh -c "$OPENSSL_CROSS ./Configure no-asm \
1129: $with_openssl_arch")
1130: fi
1131: fi
1132:
1133: if test "$MYGNUPLOT" = "yes"; then
1134: if test ! -d "$srcdir"/tools/$GNUPLOT; then
1135: gunzip -c "$srcdir"/tools/$GNUPLOT.tar.gz | \
1136: (cd "$srcdir/tools" && tar -xf -)
1137: fi
1138:
1139: if test $RECURSIVE = yes; then
1140: AC_CONFIG_SUBDIRS(tools/$GNUPLOT)
1141: fi
1142:
1143: GNUPLOT_COMPILATION=$GNUPLOT
1144: else
1145: GNUPLOT_COMPILATION=
1146: fi
1147:
1148: AC_SUBST(GNUPLOT_COMPILATION)
1149:
1150: HOST=$target
1151: AC_SUBST(HOST)
1152: BUILD=$build
1153: AC_SUBST(BUILD)
1154:
1155: my_save_cflags="$CFLAGS"
1156: FPCFLAGS=""
1157:
1158: CFLAGS=-malign-double
1159: AC_MSG_CHECKING([whether CC supports -malign-double])
1160: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
1161: [AC_MSG_RESULT([yes]); FPCFLAGS="$FPCFLAGS -malign-double"],
1162: [AC_MSG_RESULT([no])])
1163: #CFLAGS=-mieee-fp
1164: #AC_MSG_CHECKING([whether CC supports -mieee-fp])
1165: #AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
1166: # [AC_MSG_RESULT([yes]); FPCFLAGS="$FPCFLAGS -mieee-fp"],
1167: # [AC_MSG_RESULT([no])])
1168: CFLAGS=-mieee
1169: AC_MSG_CHECKING([whether CC supports -mieee])
1170: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
1171: [AC_MSG_RESULT([yes]); FPCFLAGS="$FPCFLAGS -mieee"],
1172: [AC_MSG_RESULT([no])])
1173: CFLAGS=$my_save_cflags
1174:
1175: CFLAGS="$CFLAGS $FPCFLAGS -Wall -funsigned-char -Wno-pointer-sign"
1176: FFLAGS="$FFLAGS $FPCFLAGS -Wall -fno-f2c"
1177: FCFLAGS="$FCFLAGS $FPCFLAGS -Wall -fno-f2c"
1178: CXXFLAGS="$CXXFLAGS $FPCFLAGS -Wall -funsigned-char"
1179:
1180: case $target_os in
1181:
1182: cygwin*)
1183: OS=Cygwin
1184: break ;;
1185:
1186: interix*)
1187: OS=Interix
1188: break ;;
1189:
1190: *)
1191: OS=$(uname)
1192: break ;;
1193:
1194: esac
1195:
1196: AC_SUBST(OS)
1197:
1198: MALLOC=
1199: NO_EXPORT_DYNAMIC=-Wl,--no-export-dynamic
1200:
1201: case $OS in
1202: Darwin)
1203: EXPORT_DYNAMIC=-Wl,-flat_namespace
1204: NESTED_FUNCTIONS=-fnested-functions
1205: CXXFLAGS="$CXXFLAGS -D_GLIBCXX_FULLY_DYNAMIC_STRING"
1206: ac_configure_args="$ac_configure_args --with-readline=builtin \
1207: --disable-shared --enable-static --enable-threads \
1208: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1209: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1210: LDFLAGS=\"$LDFLAGS\""
1211: C_STANDARD=-std=gnu99
1212: ELF=
1213: break ;;
1214:
1215: Cygwin)
1216: EXPORT_DYNAMIC=-Wl,--export-all-symbols
1217: NESTED_FUNCTIONS=
1218: ac_configure_args="$ac_configure_args --with-readline=builtin \
1219: --disable-shared --enable-static --enable-threads \
1220: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1221: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1222: LDFLAGS=\"$LDFLAGS\""
1223: C_STANDARD=-std=gnu99
1224: ELF=
1225: break ;;
1226:
1227: Interix)
1228: EXPORT_DYNAMIC=-Wl,--export-all-symbols
1229: NESTED_FUNCTIONS=
1230: ac_configure_args="$ac_configure_args --with-readline=builtin \
1231: --disable-shared --enable-static --enable-threads \
1232: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1233: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1234: LDFLAGS=\"$LDFLAGS\""
1235: C_STANDARD=-std=gnu99
1236: ELF=
1237: break;;
1238:
1239: AIX)
1240: EXPORT_DYNAMIC=-Wl,--export-dynamic
1241: NESTED_FUNCTIONS=
1242: ac_configure_args="$ac_configure_args --with-readline=builtin \
1243: --disable-shared --enable-static --enable-threads \
1244: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1245: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1246: LDFLAGS=\"$LDFLAGS\""
1247: C_STANDARD=-std=gnu99
1248: ELF=
1249: break ;;
1250:
1251: OS/2)
1252: if test $FORCED_FINAL_ENCODING -eq 0; then \
1253: FINAL_ENCODING=CP850; \
1254: FORCED_FINAL_ENCODING=1;\
1255: fi;
1256: OS=OS2
1257: NESTED_FUNCTIONS=
1258: EXPORT_DYNAMIC=-Zmap
1259: ac_configure_args="$ac_configure_args --without-readline \
1260: --without-cairo --disable-shared --enable-static \
1261: --enable-threads \
1262: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1263: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1264: LDFLAGS=\"$LDFLAGS\""
1265: C_STANDARD=
1266: ELF=
1267: break;;
1268:
1269: OpenBSD)
1270: if test $FORCED_FINAL_ENCODING -eq 0; then \
1271: FINAL_ENCODING=UTF-8; \
1272: FORCED_FINAL_ENCODING=1;\
1273: fi;
1274: EXPORT_DYNAMIC=-Wl,--export-dynamic
1275: NESTED_FUNCTIONS=
1276: ac_configure_args="$ac_configure_args --with-readline=builtin \
1277: --disable-shared --enable-static --enable-threads \
1278: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1279: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1280: LDFLAGS=\"$LDFLAGS\""
1281: C_STANDARD=-std=gnu99
1282: ELF=
1283: break;;
1284:
1285: SunOS)
1286: EXPORT_DYNAMIC=-Wl,--export-dynamic
1287: NESTED_FUNCTIONS=
1288:
1289: ac_configure_args="$ac_configure_args --with-readline=builtin \
1290: --disable-shared --enable-static --enable-threads \
1291: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1292: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1293: LDFLAGS=\"$LDFLAGS\""
1294: C_STANDARD=-std=gnu99
1295: MALLOC=-lumem
1296: ELF=
1297: break ;;
1298:
1299: NetBSD)
1300: EXPORT_DYNAMIC=-Wl,--export-dynamic
1301: NESTED_FUNCTIONS=
1302:
1303: ac_configure_args="$ac_configure_args --with-readline=builtin \
1304: --disable-shared --enable-static --enable-threads \
1305: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1306: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1307: LDFLAGS=\"$LDFLAGS\""
1308: C_STANDARD=-std=gnu99
1309: GCCBIN=`which gcc`
1310: GCCLIB=`dirname $GCCBIN`/../lib
1311: ELF="-Wl,-R/usr/pkg/lib -Wl,-R$GCCLIB"
1312: break ;;
1313:
1314: *)
1315: EXPORT_DYNAMIC=-Wl,--export-dynamic
1316: NESTED_FUNCTIONS=
1317:
1318: ac_configure_args="$ac_configure_args --with-readline=builtin \
1319: --disable-shared --enable-static --enable-threads \
1320: CFLAGS=\"$CFLAGS\" CXXFLAGS=\"$CXXFLAGS\" \
1321: FFLAGS=\"$FFLAGS\" FCFLAGS=\"$FCFLAGS\" \
1322: LDFLAGS=\"$LDFLAGS\""
1323: C_STANDARD=-std=gnu99
1324: ELF=
1325: break ;;
1326: esac
1327:
1328: dnl Correction d'un problème de compilation pour GNUplot 5.0.0
1329: ac_configure_args="$ac_configure_args --disable-wxwidgets"
1330: dnl Correction d'un problème d'ABI avec readline
1331: ac_configure_args="$ac_configure_args \
1332: --with-abi-version=5.9 --with-rel-version=5.9"
1333:
1334: case $OS in
1335: OS2)
1336: WHOLE_LIB1=""
1337: WHOLE_LIB2=""
1338: LIB_PREFIX=""
1339: break ;;
1340:
1341: *)
1342: WHOLE_LIB1="-Wl,-whole-archive"
1343: WHOLE_LIB2="-Wl,-no-whole-archive"
1344: LIB_PREFIX="lib"
1345: break ;;
1346: esac
1347:
1348: BROKEN_SIGSEGV=-UBROKEN_SIGSEGV
1349: BUILD_SIGSEGV=$SIGSEGV
1350: if test x"$LIB_PREFIX" = x"lib"; then
1351: LIBSIGSEGV=\$\(top_builddir\)/tools/$SIGSEGV/src/.libs/libsigsegv.a
1352: else
1353: LIBSIGSEGV=\$\(top_builddir\)/tools/$SIGSEGV/src/.libs/sigsegv.a
1354: fi
1355: INCSIGSEGV="-I\$(top_builddir)/tools/$SIGSEGV/src"
1356: CYGWIN_LDFLAGS=
1357:
1358: case $HOST in
1359: x86_64-*-linux-gnu)
1360: ARCH=amd64
1361: break ;;
1362:
1363: i?86-*-linux-gnu)
1364: ARCH=i386
1365: break ;;
1366:
1367: arm-unknown-linux-gnueabi)
1368: ARCH=armel
1369: break;;
1370:
1371: mips*el-unknown-linux-gnu)
1372: ARCH=mipsel
1373: break;;
1374:
1375: x86_64-*-cygwin)
1376: BROKEN_SIGSEGV=-DBROKEN_SIGSEGV
1377: BUILD_SIGSEGV=
1378: INCSIGSEGV=
1379: LIBSIGSEGV=
1380: ARCH=$(echo $HOST | cut -f1 -d-)
1381: CYGWIN_LDFLAGS=-Wl,--allow-multiple-definition \
1382: -Wl,--out-implib,rpl.exe.a
1383: break;;
1384:
1385: *)
1386: ARCH=$(echo $HOST | cut -f1 -d-)
1387: break ;;
1388: esac
1389:
1390: AC_SUBST(INCSIGSEGV)
1391: AC_SUBST(LIBSIGSEGV)
1392: AC_SUBST(WHOLE_LIB1)
1393: AC_SUBST(WHOLE_LIB2)
1394: AC_SUBST(LIB_PREFIX)
1395: AC_SUBST(CYGWIN_LDFLAGS)
1396:
1397: AC_SUBST(C_STANDARD)
1398: AC_SUBST(EXPORT_DYNAMIC)
1399: AC_SUBST(NO_EXPORT_DYNAMIC)
1400: AC_SUBST(NESTED_FUNCTIONS)
1401: AC_SUBST(SEMAPHORES_NOMMES)
1402: AC_SUBST(IPCS_SYSV)
1403: AC_SUBST(SEMUN)
1404: AC_SUBST(IPV6)
1405: AC_SUBST(BSH_PATH)
1406: AC_SUBST(ELF)
1407: AC_SUBST(ARCH)
1408:
1409: AC_SUBST(NCURSES)
1410: AC_SUBST(READLINE)
1411: AC_SUBST(UNITS)
1412: AC_SUBST(GSL)
1413: AC_SUBST(GPP)
1414: AC_SUBST(GNUPLOT)
1415: AC_SUBST(FILE)
1416: AC_SUBST(ICONV)
1417: AC_SUBST(SQLITE)
1418: AC_SUBST(OPENSSL)
1419: AC_SUBST(LIBXPM)
1420: AC_SUBST(OPENMOTIF)
1421: AC_SUBST(BUILD_OPENMOTIF)
1422: AC_SUBST(SIGSEGV)
1423: AC_SUBST(FINAL_ENCODING)
1424: AC_SUBST(FORCED_FINAL_ENCODING)
1425: AC_SUBST(DATE)
1426: AC_SUBST(EXT_SQL)
1427: AC_SUBST(MALLOC)
1428: AC_SUBST(GMP)
1429: AC_SUBST(MPFR)
1430: AC_SUBST(MPFI)
1431: AC_SUBST(NTL)
1432: AC_SUBST(COCOA)
1433: AC_SUBST(PARI)
1434: AC_SUBST(GIAC)
1435: AC_SUBST(INCMOTIF)
1436: AC_SUBST(LIBMOTIF)
1437: AC_SUBST(MODULE_MOTIF)
1438: AC_SUBST(ZLIB)
1439: AC_SUBST(BUILD_SIGSEGV)
1440: AC_SUBST(BROKEN_SIGSEGV)
1441:
1442: AC_SUBST(CFLAGS)
1443: AC_SUBST(CXXFLAGS)
1444: AC_SUBST(FFLAGS)
1445: AC_SUBST(FCFLAGS)
1446: AC_SUBST(LDFLAGS)
1447: AC_SUBST(SYSROOT)
1448: AC_SUBST(SYSROOT2)
1449:
1450: AC_SUBST(DEBPQ)
1451: AC_SUBST(DEBMYSQL)
1452: AC_SUBST(DEBVIM)
1453:
1454: if test $RECURSIVE = yes; then
1455: AC_CONFIG_SUBDIRS(tools/$NCURSES)
1456: AC_CONFIG_SUBDIRS(tools/$READLINE)
1457: AC_CONFIG_SUBDIRS(tools/$GSL)
1458: AC_CONFIG_SUBDIRS(tools/$GPP)
1459: AC_CONFIG_SUBDIRS(tools/$FILE)
1460: AC_CONFIG_SUBDIRS(tools/$ICONV)
1461: AC_CONFIG_SUBDIRS(tools/$SQLITE)
1462: AC_CONFIG_SUBDIRS(tools/$UNITS)
1463: if test x$BUILD_SIGSEGV = x$SIGSEGV; then
1464: AC_CONFIG_SUBDIRS(tools/$SIGSEGV)
1465: fi
1466: fi
1467:
1468: AC_CONFIG_FILES(Makefile)
1469: AC_CONFIG_FILES(HEADER)
1470: AC_CONFIG_FILES(tools/Makefile)
1471: AC_CONFIG_FILES(src/Makefile)
1472: AC_CONFIG_FILES(man/Makefile)
1473: AC_CONFIG_FILES(man/fr_FR/Makefile)
1474: AC_CONFIG_FILES(doc/Makefile)
1475: AC_CONFIG_FILES(scripts/Makefile)
1476: AC_CONFIG_FILES(scripts/mkrplso)
1477: AC_CONFIG_FILES(scripts/rplcc)
1478: AC_CONFIG_FILES(scripts/rpllink)
1479: AC_CONFIG_FILES(rpltags/Makefile)
1480: AC_CONFIG_FILES(rpliconv/Makefile)
1481: AC_CONFIG_FILES(rplsums/Makefile)
1482: AC_CONFIG_FILES(rplcas/Makefile)
1483: AC_CONFIG_FILES(rplawk/Makefile)
1484: AC_CONFIG_FILES(lapack/lapack/Makefile)
1485: AC_CONFIG_FILES(lapack/blas/Makefile)
1486: AC_CONFIG_FILES(modules/motif/Makefile)
1487: AC_CONFIG_FILES(modules/sets/Makefile)
1488:
1489: AC_CONFIG_FILES(man/rpl.1)
1490: AC_CONFIG_FILES(man/rplcc.1)
1491: AC_CONFIG_FILES(man/rpllink.1)
1492: AC_CONFIG_FILES(man/rpltags.1)
1493: AC_CONFIG_FILES(man/mkrplso.1)
1494: AC_CONFIG_FILES(man/fr_FR/rpl.1)
1495: AC_CONFIG_FILES(man/fr_FR/rplcc.1)
1496: AC_CONFIG_FILES(man/fr_FR/rpllink.1)
1497: AC_CONFIG_FILES(man/fr_FR/rpltags.1)
1498: AC_CONFIG_FILES(man/fr_FR/mkrplso.1)
1499:
1500: AC_CONFIG_FILES(DEBIAN/control)
1501:
1502: AC_OUTPUT
CVSweb interface <joel.bertrand@systella.fr>