annotate m4/acinclude.m4 @ 14147:71e28fda7be9 stable

use C++ program to test ARPACK * acinclude.m4 (OCTAVE_CHECK_ARPACK_OK): Use C++ instead of Fortran for the test program.
author John W. Eaton <jwe@octave.org>
date Thu, 05 Jan 2012 00:10:19 -0500
parents 834df9f10963
children 99428221b4e1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1232
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
1 dnl aclocal.m4 -- extra macros for configuring Octave
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
2 dnl
14138
72c96de7a403 maint: update copyright notices for 2012
John W. Eaton <jwe@octave.org>
parents: 14043
diff changeset
3 dnl Copyright (C) 1995-2012 John W. Eaton
1232
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
4 dnl
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
5 dnl This file is part of Octave.
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
6 dnl
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
7 dnl Octave is free software; you can redistribute it and/or modify it
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
8 dnl under the terms of the GNU General Public License as published by the
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6955
diff changeset
9 dnl Free Software Foundation; either version 3 of the License, or (at
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6955
diff changeset
10 dnl your option) any later version.
1232
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
11 dnl
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
12 dnl Octave is distributed in the hope that it will be useful, but WITHOUT
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
13 dnl ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
14 dnl FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
15 dnl for more details.
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
16 dnl
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
17 dnl You should have received a copy of the GNU General Public License
7016
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6955
diff changeset
18 dnl along with Octave; see the file COPYING. If not, see
93c65f2a5668 [project @ 2007-10-12 06:40:56 by jwe]
jwe
parents: 6955
diff changeset
19 dnl <http://www.gnu.org/licenses/>.
2548
b50cc31aa0cd [project @ 1996-11-20 06:43:26 by jwe]
jwe
parents: 2491
diff changeset
20 dnl
9525
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
21 dnl
9577
b03062e16c6f copyirght & FIXME in aclocal.m4
Jaroslav Hajek <highegg@gmail.com>
parents: 9568
diff changeset
22 dnl Copyright (C) 2008 - 2009 Free Software Foundation, Inc.
b03062e16c6f copyirght & FIXME in aclocal.m4
Jaroslav Hajek <highegg@gmail.com>
parents: 9568
diff changeset
23 dnl
9525
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
24 dnl If needed, define the m4_ifblank and m4_ifnblank macros from autoconf 2.64
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
25 dnl This allows us to run with earlier Autoconfs as well.
9577
b03062e16c6f copyirght & FIXME in aclocal.m4
Jaroslav Hajek <highegg@gmail.com>
parents: 9568
diff changeset
26 dnl FIXME: these should go away once Autoconf 2.64 is required or ubiquitous.
b03062e16c6f copyirght & FIXME in aclocal.m4
Jaroslav Hajek <highegg@gmail.com>
parents: 9568
diff changeset
27 dnl
9525
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
28 ifdef([m4_ifblank],[],[
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
29 m4_define([m4_ifblank],
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
30 [m4_if(m4_translit([[$1]], [ ][ ][
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
31 ]), [], [$2], [$3])])])
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
32 dnl
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
33 ifdef([m4_ifnblank],[],[
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
34 m4_define([m4_ifnblank],
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
35 [m4_if(m4_translit([[$1]], [ ][ ][
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
36 ]), [], [$3], [$2])])])
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
37 dnl
2813
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
38 dnl ----------------------------------------------------------------------
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
39 dnl
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
40 dnl Figure out the hardware-vendor-os info.
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
41 dnl
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
42 dnl OCTAVE_HOST_TYPE
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
43 AC_DEFUN([OCTAVE_HOST_TYPE],
2813
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
44 [AC_CANONICAL_HOST
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
45 if test -z "$host"; then
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
46 host=unknown
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
47 fi
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
48 canonical_host_type=$host
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
49 if test "$host" = unknown; then
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
50 AC_MSG_WARN([configuring Octave for unknown system type
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
51 ])
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
52 fi
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
53 AC_SUBST(canonical_host_type)])
2813
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
54 dnl
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
55 dnl Set default value for a variable and substitute it.
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
56 dnl
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
57 dnl OCTAVE_SET_DEFAULT
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
58 AC_DEFUN([OCTAVE_SET_DEFAULT],
3176
fccab8e7d35f [project @ 1998-05-18 20:33:31 by jwe]
jwe
parents: 3174
diff changeset
59 [ifelse($#, 2, [: ${$1=$2}
2813
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
60 ])dnl
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
61 AC_MSG_RESULT([defining $1 to be $$1])
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
62 AC_SUBST($1)])
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
63 dnl
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
64 dnl Check for ar.
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
65 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
66 AC_DEFUN([OCTAVE_PROG_AR],
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
67 [if test -z "$AR"; then
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
68 AR=ar
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
69 fi
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
70 AC_SUBST(AR)
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
71
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
72 if test -z "$ARFLAGS"; then
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
73 ARFLAGS="rc"
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
74 fi
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
75 AC_SUBST(ARFLAGS)
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
76 ])
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
77 dnl
4360
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
78 dnl See if the compiler supports placement delete
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
79 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
80 AC_DEFUN([OCTAVE_PLACEMENT_DELETE],
4360
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
81 [AC_CACHE_CHECK([whether <new> defines placement delete operator],
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
82 octave_cv_placement_delete,
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
83 [AC_LANG_PUSH(C++)
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
84 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <new>]],
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
85 [[operator delete((void *)0, (void *)0);]])],
4360
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
86 octave_cv_placement_delete=yes, octave_cv_placement_delete=no)])
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
87 if test $octave_cv_placement_delete = yes; then
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
88 AC_DEFINE(HAVE_PLACEMENT_DELETE,1,[Define if C++ supports operator delete(void *, void *)])
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
89 fi
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
90 AC_LANG_POP(C++)
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
91 ])
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
92 dnl
4366
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
93 dnl See if the compiler dynamic auto arrays
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
94 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
95 AC_DEFUN([OCTAVE_DYNAMIC_AUTO_ARRAYS],
4366
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
96 [AC_CACHE_CHECK([whether C++ supports dynamic auto arrays],
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
97 octave_cv_dynamic_auto_arrays,
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
98 [AC_LANG_PUSH(C++)
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
99 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]],
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
100 [[void test(char *); int length(); char x[length()]; test(x);]])],
4366
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
101 octave_cv_dynamic_auto_arrays=yes, octave_cv_dynamic_auto_arrays=no)])
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
102 if test $octave_cv_dynamic_auto_arrays = yes; then
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
103 AC_DEFINE(HAVE_DYNAMIC_AUTO_ARRAYS,1,[Define if C++ supports dynamic auto arrays])
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
104 fi
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
105 AC_LANG_POP(C++)
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
106 ])
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
107 dnl
10380
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
108 dnl See if the C++ library has functions to set real and imaginary
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
109 dnl parts of complex numbers independently.
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
110 dnl
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
111 AC_DEFUN([OCTAVE_CXX_COMPLEX_SETTERS],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
112 [AC_CACHE_CHECK([whether complex class can set components independently],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
113 octave_cv_cxx_complex_setters,
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
114 [AC_LANG_PUSH(C++)
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
115 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <complex>]],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
116 [[std::complex<double> x; x.real (1.0); x.imag (2.0);]])],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
117 octave_cv_cxx_complex_setters=yes, octave_cv_cxx_complex_setters=no)])
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
118 if test $octave_cv_cxx_complex_setters = yes; then
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
119 AC_DEFINE(HAVE_CXX_COMPLEX_SETTERS,1,[Define if C++ complex class has void real (T) and void imag (T) methods])
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
120 fi
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
121 AC_LANG_POP(C++)
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
122 ])
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
123 dnl
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
124 dnl See if the C++ library has functions to access real and imaginary
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
125 dnl parts of complex numbers independently via references.
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
126 dnl
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
127 AC_DEFUN([OCTAVE_CXX_COMPLEX_REFERENCE_ACCESSORS],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
128 [AC_CACHE_CHECK([whether complex class can reference components independently],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
129 octave_cv_cxx_complex_reference_accessors,
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
130 [AC_LANG_PUSH(C++)
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
131 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <complex>]],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
132 [[std::complex<double> x; x.real () = 1.0; x.imag () = 1.0;]])],
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
133 octave_cv_cxx_complex_reference_accessors=yes, octave_cv_cxx_complex_reference_accessors=no)])
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
134 if test $octave_cv_cxx_complex_reference_accessors = yes; then
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
135 AC_DEFINE(HAVE_CXX_COMPLEX_REFERENCE_ACCESSORS,1,[Define if C++ complex class has T& real (void) and T& imag (void) methods])
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
136 fi
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
137 AC_LANG_POP(C++)
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
138 ])
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
139 dnl
1707
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
140 dnl The following test is from Karl Berry's Kpathseach library. I'm
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
141 dnl including it here in case we someday want to make the use of
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
142 dnl kpathsea optional.
1708
0d952cd2ea74 [project @ 1996-01-08 00:45:34 by jwe]
jwe
parents: 1707
diff changeset
143 dnl
0d952cd2ea74 [project @ 1996-01-08 00:45:34 by jwe]
jwe
parents: 1707
diff changeset
144 dnl Some BSD putenv's, e.g., FreeBSD, do malloc/free's on the environment.
0d952cd2ea74 [project @ 1996-01-08 00:45:34 by jwe]
jwe
parents: 1707
diff changeset
145 dnl This test program is due to Mike Hibler <mike@cs.utah.edu>.
0d952cd2ea74 [project @ 1996-01-08 00:45:34 by jwe]
jwe
parents: 1707
diff changeset
146 dnl We don't actually need to run this if we don't have putenv, but it
0d952cd2ea74 [project @ 1996-01-08 00:45:34 by jwe]
jwe
parents: 1707
diff changeset
147 dnl doesn't hurt.
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
148 AC_DEFUN([OCTAVE_SMART_PUTENV],
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
149 [AC_MSG_CHECKING([whether putenv uses malloc])
1707
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
150 AC_CACHE_VAL(octave_cv_func_putenv_malloc,
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
151 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
1707
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
152 #define VAR "YOW_VAR"
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
153 #define STRING1 "GabbaGabbaHey"
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
154 #define STRING2 "Yow!!" /* should be shorter than STRING1 */
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
155 extern char *getenv (); /* in case char* and int don't mix gracefully */
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
156 main ()
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
157 {
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
158 char *str1, *rstr1, *str2, *rstr2;
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
159 str1 = getenv (VAR);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
160 if (str1)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
161 exit (1);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
162 str1 = malloc (strlen (VAR) + 1 + strlen (STRING1) + 1);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
163 if (str1 == 0)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
164 exit (2);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
165 strcpy (str1, VAR);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
166 strcat (str1, "=");
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
167 strcat (str1, STRING1);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
168 if (putenv (str1) < 0)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
169 exit (3);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
170 rstr1 = getenv (VAR);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
171 if (rstr1 == 0)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
172 exit (4);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
173 rstr1 -= strlen (VAR) + 1;
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
174 if (strncmp (rstr1, VAR, strlen (VAR)))
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
175 exit (5);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
176 str2 = malloc (strlen (VAR) + 1 + strlen (STRING2) + 1);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
177 if (str2 == 0 || str1 == str2)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
178 exit (6);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
179 strcpy (str2, VAR);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
180 strcat (str2, "=");
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
181 strcat (str2, STRING2);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
182 if (putenv (str2) < 0)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
183 exit (7);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
184 rstr2 = getenv (VAR);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
185 if (rstr2 == 0)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
186 exit (8);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
187 rstr2 -= strlen (VAR) + 1;
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
188 #if 0
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
189 printf ("rstr1=0x%x, rstr2=0x%x\n", rstr1, rstr2);
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
190 /*
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
191 * If string from first call was reused for the second call,
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
192 * you had better not do a free on the first string!
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
193 */
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
194 if (rstr1 == rstr2)
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
195 printf ("#define SMART_PUTENV\n");
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
196 else
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
197 printf ("#undef SMART_PUTENV\n");
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
198 #endif
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
199 exit (rstr1 == rstr2 ? 0 : 1);
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
200 }]])], octave_cv_func_putenv_malloc=yes, octave_cv_func_putenv_malloc=no,
1707
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
201 octave_cv_func_putenv_malloc=no)])dnl
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
202 AC_MSG_RESULT([$octave_cv_func_putenv_malloc])
1707
5ddae4c13f80 [project @ 1996-01-08 00:39:59 by jwe]
jwe
parents: 1315
diff changeset
203 if test $octave_cv_func_putenv_malloc = yes; then
3887
7da18459c08b [project @ 2002-04-04 00:44:21 by jwe]
jwe
parents: 3843
diff changeset
204 AC_DEFINE(SMART_PUTENV,1,[To quiet autoheader.])
1708
0d952cd2ea74 [project @ 1996-01-08 00:45:34 by jwe]
jwe
parents: 1707
diff changeset
205 fi])
1788
b7de2fd2be6b [project @ 1996-01-24 20:47:58 by jwe]
jwe
parents: 1708
diff changeset
206 dnl
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
207 dnl Check to see if C++ compiler needs the new friend template declaration
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
208 dnl syntax.
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
209 dnl
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
210 dnl OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
211 AC_DEFUN([OCTAVE_CXX_NEW_FRIEND_TEMPLATE_DECL], [
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
212 AC_REQUIRE([AC_PROG_CXX])
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
213 AC_MSG_CHECKING([for C++ support for new friend template declaration])
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
214 AC_CACHE_VAL(octave_cv_cxx_new_friend_template_decl, [
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
215 AC_LANG_PUSH(C++)
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
216 rm -f conftest.h
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
217 cat > conftest.h <<EOB
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
218 struct A {
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
219 friend int operator== (const A&, const A&);
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
220 A (int) { }
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
221 };
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
222
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
223 template <class T> int
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
224 operator== (const T&, const T&)
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
225 {
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
226 return 0;
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
227 }
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
228 EOB
5842
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
229 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "conftest.h"]],
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
230 [[A a (1);
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
231 return a == A(1);]])],
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
232 [octave_cv_cxx_new_friend_template_decl=no],
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
233 [octave_cv_cxx_new_friend_template_decl=yes])
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
234 AC_LANG_POP(C++)
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
235 ])
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
236 AC_MSG_RESULT([$octave_cv_cxx_new_friend_template_decl])
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
237 if test $octave_cv_cxx_new_friend_template_decl = yes; then
3887
7da18459c08b [project @ 2002-04-04 00:44:21 by jwe]
jwe
parents: 3843
diff changeset
238 AC_DEFINE(CXX_NEW_FRIEND_TEMPLATE_DECL,1,[Define if your compiler supports `<>' stuff for template friends.])
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
239 fi
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
240 ])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
241 dnl
3233
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
242 dnl Check to see if C compiler handles FLAG command line option. If
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
243 dnl two arguments are specified, execute the second arg as shell
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
244 dnl commands. Otherwise, add FLAG to CFLAGS if the compiler accepts
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
245 dnl the flag.
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
246 dnl
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
247 dnl OCTAVE_CC_FLAG
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
248 AC_DEFUN([OCTAVE_CC_FLAG], [
3908
90dc5c9a9a21 [project @ 2002-04-24 19:53:35 by jwe]
jwe
parents: 3892
diff changeset
249 ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
250 AC_MSG_CHECKING([whether ${CC-cc} accepts $1])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
251 AC_CACHE_VAL(octave_cv_cc_flag_$ac_safe, [
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
252 AC_LANG_PUSH(C)
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
253 XCFLAGS="$CFLAGS"
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
254 CFLAGS="$CFLAGS $1"
5177
86fa011d6404 [project @ 2005-03-03 00:32:34 by jwe]
jwe
parents: 5094
diff changeset
255 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
256 eval "octave_cv_cc_flag_$ac_safe=yes",
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
257 eval "octave_cv_cc_flag_$ac_safe=no")
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
258 CFLAGS="$XCFLAGS"
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
259 AC_LANG_POP(C)
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
260 ])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
261 if eval "test \"`echo '$octave_cv_cc_flag_'$ac_safe`\" = yes"; then
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
262 AC_MSG_RESULT(yes)
3131
9c5160c83bd2 [project @ 1998-01-29 04:46:33 by jwe]
jwe
parents: 3130
diff changeset
263 ifelse([$2], , [
9c5160c83bd2 [project @ 1998-01-29 04:46:33 by jwe]
jwe
parents: 3130
diff changeset
264 CFLAGS="$CFLAGS $1"
9c5160c83bd2 [project @ 1998-01-29 04:46:33 by jwe]
jwe
parents: 3130
diff changeset
265 AC_MSG_RESULT([adding $1 to CFLAGS])], [$2])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
266 else
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
267 AC_MSG_RESULT(no)
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
268 ifelse([$3], , , [$3])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
269 fi
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
270 ])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
271 dnl
3233
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
272 dnl Check to see if C++ compiler handles FLAG command line option. If
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
273 dnl two arguments are specified, execute the second arg as shell
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
274 dnl commands. Otherwise, add FLAG to CXXFLAGS if the compiler accepts
98d0ee053ba4 [project @ 1999-01-27 20:23:40 by jwe]
jwe
parents: 3222
diff changeset
275 dnl the flag.
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
276 dnl
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
277 dnl OCTAVE_CXX_FLAG
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
278 AC_DEFUN([OCTAVE_CXX_FLAG], [
3908
90dc5c9a9a21 [project @ 2002-04-24 19:53:35 by jwe]
jwe
parents: 3892
diff changeset
279 ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
280 AC_MSG_CHECKING([whether ${CXX-g++} accepts $1])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
281 AC_CACHE_VAL(octave_cv_cxx_flag_$ac_safe, [
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
282 AC_LANG_PUSH(C++)
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
283 XCXXFLAGS="$CXXFLAGS"
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
284 CXXFLAGS="$CXXFLAGS $1"
5177
86fa011d6404 [project @ 2005-03-03 00:32:34 by jwe]
jwe
parents: 5094
diff changeset
285 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
286 eval "octave_cv_cxx_flag_$ac_safe=yes",
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
287 eval "octave_cv_cxx_flag_$ac_safe=no")
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
288 CXXFLAGS="$XCXXFLAGS"
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
289 AC_LANG_POP(C++)
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
290 ])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
291 if eval "test \"`echo '$octave_cv_cxx_flag_'$ac_safe`\" = yes"; then
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
292 AC_MSG_RESULT(yes)
3131
9c5160c83bd2 [project @ 1998-01-29 04:46:33 by jwe]
jwe
parents: 3130
diff changeset
293 ifelse([$2], , [
9c5160c83bd2 [project @ 1998-01-29 04:46:33 by jwe]
jwe
parents: 3130
diff changeset
294 CXXFLAGS="$CXXFLAGS $1"
9c5160c83bd2 [project @ 1998-01-29 04:46:33 by jwe]
jwe
parents: 3130
diff changeset
295 AC_MSG_RESULT([adding $1 to CXXFLAGS])], [$2])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
296 else
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
297 AC_MSG_RESULT(no)
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
298 ifelse([$3], , , [$3])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
299 fi
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
300 ])
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
301 dnl
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
302 dnl Check to see if Fortran compiler handles FLAG command line option. If
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
303 dnl two arguments are specified, execute the second arg as shell
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
304 dnl commands. Otherwise, add FLAG to FFLAGS if the compiler accepts
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
305 dnl the flag.
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
306 dnl
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
307 dnl OCTAVE_F77_FLAG
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
308 AC_DEFUN([OCTAVE_F77_FLAG], [
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
309 ac_safe=`echo "$1" | sed 'y%./+-:=%__p___%'`
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
310 AC_MSG_CHECKING([whether ${F77-g77} accepts $1])
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
311 AC_CACHE_VAL(octave_cv_f77_flag_$ac_safe, [
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
312 AC_LANG_PUSH(Fortran 77)
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
313 XFFLAGS="$FFLAGS"
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
314 FFLAGS="$FFLAGS $1"
5177
86fa011d6404 [project @ 2005-03-03 00:32:34 by jwe]
jwe
parents: 5094
diff changeset
315 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
316 eval "octave_cv_f77_flag_$ac_safe=yes",
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
317 eval "octave_cv_f77_flag_$ac_safe=no")
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
318 FFLAGS="$XFFLAGS"
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
319 AC_LANG_POP(Fortran 77)
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
320 ])
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
321 if eval "test \"`echo '$octave_cv_f77_flag_'$ac_safe`\" = yes"; then
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
322 AC_MSG_RESULT(yes)
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
323 ifelse([$2], , [
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
324 FFLAGS="$FFLAGS $1"
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
325 AC_MSG_RESULT([adding $1 to FFLAGS])], [$2])
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
326 else
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
327 AC_MSG_RESULT(no)
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
328 ifelse([$3], , , [$3])
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
329 fi
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
330 ])
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
331 dnl
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
332 dnl Check to see whether the default Fortran INTEGER is 64 bits wide.
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
333 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
334 AC_DEFUN([OCTAVE_CHECK_FORTRAN_INTEGER_SIZE], [
10331
6a50aa2cdf00 never compile ranlib with 8-byte integers
John W. Eaton <jwe@octave.org>
parents: 10257
diff changeset
335 octave_fintsize_save_FFLAGS="$FFLAGS"
6a50aa2cdf00 never compile ranlib with 8-byte integers
John W. Eaton <jwe@octave.org>
parents: 10257
diff changeset
336 FFLAGS="$FFLAGS $F77_INTEGER_8_FLAG"
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
337 AC_LANG_PUSH(Fortran 77)
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
338 AC_CACHE_CHECK([whether $F77 generates correct size integers],
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
339 [octave_cv_fortran_integer_size],
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
340 [AC_COMPILE_IFELSE(
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
341 [ subroutine foo(n, in, out)
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
342 integer n, in(n), out(n)
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
343 integer i
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
344 do 10 i = 1, n
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
345 out(i) = in(i)
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
346 10 continue
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
347 return
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
348 end],
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
349 [mv conftest.$ac_objext fintsize.$ac_objext
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
350
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
351 octave_fintsize_save_LIBS="$LIBS"
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
352 LIBS="fintsize.$ac_objext $[]_AC_LANG_PREFIX[]LIBS"
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
353 AC_LANG_PUSH(C)dnl
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
354 AC_RUN_IFELSE([AC_LANG_PROGRAM([[#include <assert.h>]], [[
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
355 #ifdef USE_64_BIT_IDX_T
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
356 #if IDX_TYPE_LONG
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
357 typedef long octave_idx_type;
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
358 #else
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
359 typedef int octave_idx_type;
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
360 #endif
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
361 #else
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
362 typedef int octave_idx_type;
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
363 #endif
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
364 octave_idx_type n = 2;
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
365 octave_idx_type in[2];
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
366 octave_idx_type out[2];
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
367 in[0] = 13;
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
368 in[0] = 42;
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
369 F77_FUNC(foo,FOO) (&n, &in, &out);
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
370 assert (in[0] == out[0] && in[1] == out[1]);
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
371 ]])],
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
372 [octave_cv_fortran_integer_size=yes],
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
373 [octave_cv_fortran_integer_size=no],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
374 [octave_cv_fortran_integer_size=yes])
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
375 AC_LANG_POP(C)dnl
10331
6a50aa2cdf00 never compile ranlib with 8-byte integers
John W. Eaton <jwe@octave.org>
parents: 10257
diff changeset
376 LIBS="$octave_fintsize_save_LIBS"
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
377 rm -f conftest.$ac_objext fintsize.$ac_objext
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
378 ], [
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
379 rm -f conftest.$ac_objext
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
380 AC_MSG_FAILURE([cannot compile a simple Fortran program])
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
381 octave_cv_fortran_integer_size=no])])
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
382 AC_LANG_POP(Fortran 77)
10331
6a50aa2cdf00 never compile ranlib with 8-byte integers
John W. Eaton <jwe@octave.org>
parents: 10257
diff changeset
383 FFLAGS="$octave_fintsize_save_FFLAGS"
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
384 ])
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
385 dnl
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
386 dnl
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
387 dnl
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
388 dnl OCTAVE_CHECK_LIBRARY(LIBRARY, DOC-NAME, WARN-MSG, HEADER, FUNC,
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
389 dnl LANG, DOC-STRING, EXTRA-CHECK)
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
390 AC_DEFUN([OCTAVE_CHECK_LIBRARY], [
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
391 AC_ARG_WITH([$1-includedir],
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
392 [AS_HELP_STRING([--with-$1-includedir=DIR],
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
393 [look for $2 include files in DIR])],
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
394 [m4_toupper([$1])_CPPFLAGS="-I$withval"])
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
395 AC_SUBST(m4_toupper([$1])_CPPFLAGS)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
396
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
397 AC_ARG_WITH([$1-libdir],
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
398 [AS_HELP_STRING([--with-$1-libdir=DIR],
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
399 [look for $2 libraries in DIR])],
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
400 [m4_toupper([$1])_LDFLAGS="-L$withval"])
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
401 AC_SUBST(m4_toupper([$1])_LDFLAGS)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
402
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
403 AC_ARG_WITH([$1],
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
404 [m4_ifblank([$7],
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
405 [AS_HELP_STRING([--without-$1], [don't use $2 library])],
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
406 [AS_HELP_STRING([--without-$1], [$7])])],
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
407 with_$1=$withval, with_$1=yes)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
408
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
409 m4_toupper([$1])_LIBS=
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
410 case $with_$1 in
9539
41a74dcd14df Clear QHULL_LIBS etc on errors. Interpret --without-qhull etc correctly.
David Grundberg <individ@acc.umu.se>
parents: 9531
diff changeset
411 no)
41a74dcd14df Clear QHULL_LIBS etc on errors. Interpret --without-qhull etc correctly.
David Grundberg <individ@acc.umu.se>
parents: 9531
diff changeset
412 m4_toupper([$1])_LIBS=
41a74dcd14df Clear QHULL_LIBS etc on errors. Interpret --without-qhull etc correctly.
David Grundberg <individ@acc.umu.se>
parents: 9531
diff changeset
413 ;;
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
414 yes | "")
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
415 m4_toupper([$1])_LIBS="-l$1"
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
416 ;;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
417 -* | */* | *.a | *.so | *.so.* | *.o)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
418 m4_toupper([$1])_LIBS="$with_$1"
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
419 ;;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
420 *)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
421 m4_toupper([$1])_LIBS="-l$with_$1"
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
422 ;;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
423 esac
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
424
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
425 [TEXINFO_]m4_toupper([$1])=
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
426 warn_$1="$3"
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
427 if test -n "$m4_toupper([$1])_LIBS"; then
9540
79b5fe2d5646 use Z_LIBS in checks for curl and glpk libraries
John W. Eaton <jwe@octave.org>
parents: 9539
diff changeset
428 octave_check_library_save_CPPFLAGS="$CPPFLAGS"
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
429 CPPFLAGS="$m4_toupper([$1])_CPPFLAGS $CPPFLAGS"
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
430 m4_ifnblank([$6], [AC_LANG_PUSH($6)])
9568
d3fccc4c4b9e use OCTAVE_CHECK_LIBRARY to check for ARPACK
John W. Eaton <jwe@octave.org>
parents: 9543
diff changeset
431 octave_$1_check_for_lib=false
d3fccc4c4b9e use OCTAVE_CHECK_LIBRARY to check for ARPACK
John W. Eaton <jwe@octave.org>
parents: 9543
diff changeset
432 m4_ifblank([$4], [octave_$1_check_for_lib=true],
d3fccc4c4b9e use OCTAVE_CHECK_LIBRARY to check for ARPACK
John W. Eaton <jwe@octave.org>
parents: 9543
diff changeset
433 [AC_CHECK_HEADERS($4, [octave_$1_check_for_lib=true; break])])
d3fccc4c4b9e use OCTAVE_CHECK_LIBRARY to check for ARPACK
John W. Eaton <jwe@octave.org>
parents: 9543
diff changeset
434 if $octave_$1_check_for_lib; then
9540
79b5fe2d5646 use Z_LIBS in checks for curl and glpk libraries
John W. Eaton <jwe@octave.org>
parents: 9539
diff changeset
435 octave_check_library_save_LDFLAGS="$LDFLAGS"
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
436 LDFLAGS="$m4_toupper([$1])_LDFLAGS $LDFLAGS"
9540
79b5fe2d5646 use Z_LIBS in checks for curl and glpk libraries
John W. Eaton <jwe@octave.org>
parents: 9539
diff changeset
437 octave_check_library_save_LIBS="$LIBS"
9520
bd5909b89457 fix OCTAVE_CHECK_LIBRARY
Jaroslav Hajek <highegg@gmail.com>
parents: 9519
diff changeset
438 LIBS="$m4_toupper([$1])_LIBS $LIBS"
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
439 octave_$1_ok=no
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
440 AC_MSG_CHECKING([for $5 in $m4_toupper([$1])_LIBS])
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
441 AC_LINK_IFELSE([AC_LANG_CALL([], [$5])],
9539
41a74dcd14df Clear QHULL_LIBS etc on errors. Interpret --without-qhull etc correctly.
David Grundberg <individ@acc.umu.se>
parents: 9531
diff changeset
442 [octave_$1_ok=yes])
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
443 AC_MSG_RESULT([$octave_$1_ok])
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
444 if test $octave_$1_ok = yes; then
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
445 m4_ifblank([$8], [
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
446 warn_$1=
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
447 AC_DEFINE([HAVE_]m4_toupper([$1]), 1,
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
448 [Define if $2 is available.])
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
449 [TEXINFO_]m4_toupper([$1])="@set [HAVE_]m4_toupper([$1])"], [$8])
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
450 fi
9540
79b5fe2d5646 use Z_LIBS in checks for curl and glpk libraries
John W. Eaton <jwe@octave.org>
parents: 9539
diff changeset
451 LIBS="$octave_check_library_save_LIBS"
9568
d3fccc4c4b9e use OCTAVE_CHECK_LIBRARY to check for ARPACK
John W. Eaton <jwe@octave.org>
parents: 9543
diff changeset
452 LDFLAGS="$octave_check_library_save_LDFLAGS"
d3fccc4c4b9e use OCTAVE_CHECK_LIBRARY to check for ARPACK
John W. Eaton <jwe@octave.org>
parents: 9543
diff changeset
453 fi
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
454 m4_ifnblank([$6], [AC_LANG_POP($6)])
9540
79b5fe2d5646 use Z_LIBS in checks for curl and glpk libraries
John W. Eaton <jwe@octave.org>
parents: 9539
diff changeset
455 CPPFLAGS="$octave_check_library_save_CPPFLAGS"
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
456 fi
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
457 AC_SUBST(m4_toupper([$1])_LIBS)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
458 AC_SUBST([TEXINFO_]m4_toupper([$1]))
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
459 if test -n "$warn_$1"; then
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
460 AC_MSG_WARN([$warn_$1])
9539
41a74dcd14df Clear QHULL_LIBS etc on errors. Interpret --without-qhull etc correctly.
David Grundberg <individ@acc.umu.se>
parents: 9531
diff changeset
461 m4_toupper([$1])_LIBS=
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
462 fi
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
463 ])
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
464 dnl
3729
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
465 dnl Check for flex
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
466 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
467 AC_DEFUN([OCTAVE_PROG_FLEX], [
3729
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
468 ### For now, don't define LEXLIB to be -lfl -- we don't use anything in
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
469 ### it, and it might not be installed.
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
470 ###
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
471 ### Also make sure that we generate an interactive scanner if we are
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
472 ### using flex.
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
473 AC_PROG_LEX
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
474 case "$LEX" in
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
475 flex*)
9794
0d4613a736e9 convert build system to use automake and libtool
John W. Eaton <jwe@octave.org>
parents: 9654
diff changeset
476 LFLAGS="-I"
3729
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
477 AC_MSG_RESULT([defining LFLAGS to be $LFLAGS])
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
478 LEXLIB=
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
479 ;;
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
480 *)
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
481 LEX='$(top_srcdir)/missing flex'
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
482 warn_flex="I didn't find flex, but it's only a problem if you need to reconstruct lex.cc"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
483 AC_MSG_WARN([$warn_flex])
3729
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
484 ;;
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
485 esac
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
486 AC_SUBST(LFLAGS)
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
487 ])
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
488 dnl
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
489 dnl Check for bison
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
490 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
491 AC_DEFUN([OCTAVE_PROG_BISON], [
3729
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
492 AC_PROG_YACC
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
493 case "$YACC" in
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
494 bison*)
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
495 ;;
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
496 *)
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
497 YACC='$(top_srcdir)/missing bison'
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
498 warn_bison="I didn't find bison, but it's only a problem if you need to reconstruct parse.cc"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
499 AC_MSG_WARN([$warn_bison])
3729
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
500 ;;
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
501 esac
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
502 ])
ea62136d86e8 [project @ 2000-10-31 17:17:26 by jwe]
jwe
parents: 3673
diff changeset
503 dnl
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
504 dnl What pager should we use?
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
505 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
506 AC_DEFUN([OCTAVE_PROG_PAGER],
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
507 [if test "$cross_compiling" = yes; then
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
508 DEFAULT_PAGER=less
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
509 AC_MSG_RESULT([assuming $DEFAULT_PAGER exists on $canonical_host_type host])
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
510 AC_SUBST(DEFAULT_PAGER)
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
511 else
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
512 octave_possible_pagers="less more page pg"
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
513 case "$canonical_host_type" in
6103
a2fdc87184cf [project @ 2006-10-26 21:32:17 by jwe]
jwe
parents: 6061
diff changeset
514 *-*-cygwin* | *-*-mingw32* | *-*-msdosmsvc)
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
515 octave_possible_pagers="$octave_possible_pagers more.com"
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
516 ;;
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
517 esac
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
518
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
519 AC_CHECK_PROGS(DEFAULT_PAGER, $octave_possible_pagers, [])
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
520 if test -z "$DEFAULT_PAGER"; then
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
521 warn_less="I couldn't find \`less', \`more', \`page', or \`pg'"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
522 AC_MSG_WARN([$warn_less])
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
523 fi
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
524 fi
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
525 ])
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
526 dnl
6821
b5d4d61d6bad [project @ 2007-08-23 17:32:49 by jwe]
jwe
parents: 6724
diff changeset
527 dnl Does gnuplot exist?
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
528 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
529 AC_DEFUN([OCTAVE_PROG_GNUPLOT], [
9865
763906db555e acinclude.m4: update gnuplot and ghostscript program checks for Windows
Tatsu@Inspiron6000
parents: 9805
diff changeset
530 gp_names="gnuplot"
763906db555e acinclude.m4: update gnuplot and ghostscript program checks for Windows
Tatsu@Inspiron6000
parents: 9805
diff changeset
531 gp_default="gnuplot"
4098
8496ae60db8a [project @ 2002-10-10 05:20:20 by jwe]
jwe
parents: 4095
diff changeset
532 if test "$cross_compiling" = yes; then
7361
a2870fd8ac58 [project @ 2008-01-12 07:50:54 by jwe]
jwe
parents: 7244
diff changeset
533 GNUPLOT="$gp_default"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
534 AC_MSG_RESULT([assuming $GNUPLOT exists on $canonical_host_type host])
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
535 else
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
536 AC_CHECK_PROGS(GNUPLOT, [$gp_names])
7361
a2870fd8ac58 [project @ 2008-01-12 07:50:54 by jwe]
jwe
parents: 7244
diff changeset
537 if test -z "$GNUPLOT"; then
5513
843fa0a80229 [project @ 2005-10-27 02:43:36 by jwe]
jwe
parents: 5512
diff changeset
538 warn_gnuplot=yes
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
539
7361
a2870fd8ac58 [project @ 2008-01-12 07:50:54 by jwe]
jwe
parents: 7244
diff changeset
540 GNUPLOT="$gp_default"
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
541
10011
411325ce32d7 Better warnings when gnuplot is not installed but native graphics are available
Rik <rdrider0-list@yahoo.com>
parents: 9939
diff changeset
542 AC_MSG_WARN([gnuplot not found. It isn't necessary to have gnuplot])
411325ce32d7 Better warnings when gnuplot is not installed but native graphics are available
Rik <rdrider0-list@yahoo.com>
parents: 9939
diff changeset
543 AC_MSG_WARN([installed, but without native graphics or gnuplot])
411325ce32d7 Better warnings when gnuplot is not installed but native graphics are available
Rik <rdrider0-list@yahoo.com>
parents: 9939
diff changeset
544 AC_MSG_WARN([you won't be able to use any of Octave's plotting commands.])
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
545 fi
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
546 fi
7361
a2870fd8ac58 [project @ 2008-01-12 07:50:54 by jwe]
jwe
parents: 7244
diff changeset
547 AC_SUBST(GNUPLOT)
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
548 ])
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
549 dnl
3673
e0b46234555e [project @ 2000-06-05 18:28:54 by jwe]
jwe
parents: 3506
diff changeset
550 dnl Is gperf installed?
e0b46234555e [project @ 2000-06-05 18:28:54 by jwe]
jwe
parents: 3506
diff changeset
551 dnl
e0b46234555e [project @ 2000-06-05 18:28:54 by jwe]
jwe
parents: 3506
diff changeset
552 dnl OCTAVE_PROG_GPERF
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
553 AC_DEFUN([OCTAVE_PROG_GPERF], [
6119
fabb1be5fd84 [project @ 2006-10-28 00:13:58 by jwe]
jwe
parents: 6116
diff changeset
554 AC_CHECK_PROG(GPERF, gperf, gperf, [])
8775
a2a9dc5e8565 octave.gperf: eliminate whitespace to allow gperf 2.7.2 to work
John W. Eaton <jwe@octave.org>
parents: 8724
diff changeset
555 if test -z "$GPERF"; then
3731
c06bae7229cf [project @ 2000-10-31 20:03:19 by jwe]
jwe
parents: 3729
diff changeset
556 GPERF='$(top_srcdir)/missing gperf'
c06bae7229cf [project @ 2000-10-31 20:03:19 by jwe]
jwe
parents: 3729
diff changeset
557 warn_gperf="I didn't find gperf, but it's only a problem if you need to reconstruct oct-gperf.h"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
558 AC_MSG_WARN([$warn_gperf])
3731
c06bae7229cf [project @ 2000-10-31 20:03:19 by jwe]
jwe
parents: 3729
diff changeset
559 fi
c06bae7229cf [project @ 2000-10-31 20:03:19 by jwe]
jwe
parents: 3729
diff changeset
560 AC_SUBST(GPERF)
3673
e0b46234555e [project @ 2000-06-05 18:28:54 by jwe]
jwe
parents: 3506
diff changeset
561 ])
e0b46234555e [project @ 2000-06-05 18:28:54 by jwe]
jwe
parents: 3506
diff changeset
562 dnl
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
563 dnl Is ghostscript installed?
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
564 dnl
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
565 dnl OCTAVE_PROG_GHOSTSCRIPT
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
566 AC_DEFUN([OCTAVE_PROG_GHOSTSCRIPT], [
6116
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
567 case "$canonical_host_type" in
9865
763906db555e acinclude.m4: update gnuplot and ghostscript program checks for Windows
Tatsu@Inspiron6000
parents: 9805
diff changeset
568 *-*-mingw* | *-*-msdosmsvc)
13728
47f803279384 Allow to use MiKTeX ghostscript.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 12733
diff changeset
569 gs_names="gswin32c gs mgs"
6116
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
570 ;;
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
571 *)
9865
763906db555e acinclude.m4: update gnuplot and ghostscript program checks for Windows
Tatsu@Inspiron6000
parents: 9805
diff changeset
572 gs_names="gs"
6116
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
573 ;;
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
574 esac
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
575 AC_CHECK_PROGS(GHOSTSCRIPT, [$gs_names])
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
576 if test -z "$GHOSTSCRIPT"; then
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
577 GHOSTSCRIPT='$(top_srcdir)/missing gs'
12220
052bd17c3e74 acinclude.m4 (OCTAVE_PROG_GHOSTSCRIPT): update warning message
John W. Eaton <jwe@octave.org>
parents: 12166
diff changeset
578 warn_ghostscript="I didn't find ghostscript, so reconstructing figures for the manual will fail, and saving graphics in some output formats will fail when using Octave"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
579 AC_MSG_WARN([$warn_ghostscript])
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
580 fi
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
581 AC_SUBST(GHOSTSCRIPT)
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
582 ])
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
583 dnl
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
584 dnl Is texi2dvi installed?
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
585 dnl
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
586 dnl OCTAVE_PROG_TEXI2DVI
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
587 AC_DEFUN([OCTAVE_PROG_TEXI2DVI], [
6119
fabb1be5fd84 [project @ 2006-10-28 00:13:58 by jwe]
jwe
parents: 6116
diff changeset
588 AC_CHECK_PROG(TEXI2DVI, texi2dvi, texi2dvi, [])
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
589 if test -z "$TEXI2DVI"; then
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
590 TEXI2DVI='$(top_srcdir)/missing texi2dvi'
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
591 warn_texi2dvi="I didn't find texi2dvi, but it's only a problem if you need to reconstruct the DVI version of the manual"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
592 AC_MSG_WARN([$warn_texi2dvi])
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
593 fi
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
594 AC_SUBST(TEXI2DVI)
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
595 ])
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
596 dnl
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
597 dnl Is texi2pdf installed?
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
598 dnl
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
599 dnl OCTAVE_PROG_TEXI2PDF
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
600 AC_DEFUN([OCTAVE_PROG_TEXI2PDF], [
6116
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
601 AC_REQUIRE([OCTAVE_PROG_TEXI2DVI])
6119
fabb1be5fd84 [project @ 2006-10-28 00:13:58 by jwe]
jwe
parents: 6116
diff changeset
602 AC_CHECK_PROG(TEXI2PDF, texi2pdf, texi2pdf, [])
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
603 if test -z "$TEXI2PDF"; then
6116
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
604 missing=true;
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
605 if test -n "$TEXI2DVI"; then
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
606 TEXI2PDF="$TEXI2DVI --pdf"
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
607 missing=false;
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
608 fi
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
609 else
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
610 missing=false;
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
611 fi
b64fb24bf4a0 [project @ 2006-10-27 18:04:49 by jwe]
jwe
parents: 6104
diff changeset
612 if $missing; then
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
613 TEXI2PDF='$(top_srcdir)/missing texi2pdf'
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
614 warn_texi2pdf="I didn't find texi2pdf, but it's only a problem if you need to reconstruct the PDF version of the manual"
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
615 AC_MSG_WARN([$warn_texi2pdf])
5934
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
616 fi
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
617 AC_SUBST(TEXI2PDF)
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
618 ])
8702f00329bf [project @ 2006-08-17 20:29:51 by jwe]
jwe
parents: 5854
diff changeset
619 dnl
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
620 dnl See if the C++ library is ISO compliant.
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
621 dnl FIXME: This is obviously very simplistic, and trivially fooled.
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
622 dnl
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
623 dnl OCTAVE_CXX_ISO_COMPLIANT_LIBRARY
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
624 AC_DEFUN([OCTAVE_CXX_ISO_COMPLIANT_LIBRARY], [
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
625 AC_REQUIRE([AC_PROG_CXX])
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
626 AC_MSG_CHECKING([if C++ library is ISO compliant])
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
627 AC_CACHE_VAL(octave_cv_cxx_iso_compliant_library, [
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
628 AC_LANG_PUSH(C++)
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
629 rm -f conftest.h
3943
a10df4059532 [project @ 2002-05-16 22:31:35 by jwe]
jwe
parents: 3908
diff changeset
630 ### Omitting cwctype for now, since it is broken with gcc-3.0.x and
a10df4059532 [project @ 2002-05-16 22:31:35 by jwe]
jwe
parents: 3908
diff changeset
631 ### possibly other versions...
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
632 for inc in algorithm bitset cassert cctype cerrno cfloat ciso646 \
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
633 climits clocale cmath complex csetjmp csignal cstdarg cstddef \
3943
a10df4059532 [project @ 2002-05-16 22:31:35 by jwe]
jwe
parents: 3908
diff changeset
634 cstdio cstdlib cstring ctime cwchar deque exception \
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
635 fstream functional iomanip ios iosfwd iostream istream iterator \
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
636 limits list locale map memory new numeric ostream queue set \
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
637 sstream stack stdexcept streambuf string strstream typeinfo \
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
638 utility valarray vector; do
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
639 echo "#include <$inc>" >> conftest.h
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
640 done
5842
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
641 AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include "conftest.h"]],
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
642 [[std::bitset<50> flags;
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
643 flags.set();
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
644 int digits = std::numeric_limits<unsigned long>::digits;
5842
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
645 digits = 0;]])],
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
646 [octave_cv_cxx_iso_compliant_library=yes],
ecb61a521d5b [project @ 2006-06-06 15:03:33 by jwe]
jwe
parents: 5775
diff changeset
647 [octave_cv_cxx_iso_compliant_library=no])
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
648 AC_LANG_POP(C++)
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
649 ])
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
650 AC_MSG_RESULT([$octave_cv_cxx_iso_compliant_library])
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
651 if test $octave_cv_cxx_iso_compliant_library = yes; then
3887
7da18459c08b [project @ 2002-04-04 00:44:21 by jwe]
jwe
parents: 3843
diff changeset
652 AC_DEFINE(CXX_ISO_COMPLIANT_LIBRARY, 1, [Define if your C++ runtime library is ISO compliant.])
3769
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
653 fi
7c8e3c42ed04 [project @ 2001-01-31 22:15:51 by jwe]
jwe
parents: 3750
diff changeset
654 ])
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
655 dnl
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
656 dnl Allow the user disable support for command line editing using GNU
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
657 dnl readline.
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
658 dnl
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
659 dnl OCTAVE_ENABLE_READLINE
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
660 AC_DEFUN([OCTAVE_ENABLE_READLINE], [
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
661 USE_READLINE=true
9515
eee9b3150446 more configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9403
diff changeset
662 READLINE_LIBS=
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
663 AC_ARG_ENABLE(readline,
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
664 [ --enable-readline use readline library (default is yes)],
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
665 [if test "$enableval" = no; then
3824
0ee55719541a [project @ 2001-04-26 17:07:21 by jwe]
jwe
parents: 3822
diff changeset
666 USE_READLINE=false
3825
74255bd05bdd [project @ 2001-04-26 19:50:03 by jwe]
jwe
parents: 3824
diff changeset
667 warn_readline="command editing and history features require GNU Readline"
3824
0ee55719541a [project @ 2001-04-26 17:07:21 by jwe]
jwe
parents: 3822
diff changeset
668 fi])
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
669 if $USE_READLINE; then
9515
eee9b3150446 more configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9403
diff changeset
670 save_LIBS="$LIBS"
eee9b3150446 more configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9403
diff changeset
671 LIBS="$TERM_LIBS"
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
672 AC_CHECK_LIB(readline, rl_set_keyboard_input_timeout, [
9515
eee9b3150446 more configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9403
diff changeset
673 READLINE_LIBS="-lreadline"
3887
7da18459c08b [project @ 2002-04-04 00:44:21 by jwe]
jwe
parents: 3843
diff changeset
674 AC_DEFINE(USE_READLINE, 1, [Define to use the readline library.])
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
675 ], [
3824
0ee55719541a [project @ 2001-04-26 17:07:21 by jwe]
jwe
parents: 3822
diff changeset
676 AC_MSG_WARN([I need GNU Readline 4.2 or later])
0ee55719541a [project @ 2001-04-26 17:07:21 by jwe]
jwe
parents: 3822
diff changeset
677 AC_MSG_ERROR([this is fatal unless you specify --disable-readline])
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
678 ])
9515
eee9b3150446 more configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9403
diff changeset
679 LIBS="$save_LIBS"
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
680 fi
9515
eee9b3150446 more configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9403
diff changeset
681 AC_SUBST(READLINE_LIBS)
3822
1a809dae77db [project @ 2001-04-26 16:07:17 by jwe]
jwe
parents: 3769
diff changeset
682 ])
3842
07b99a1889cb [project @ 2001-06-29 18:58:21 by jwe]
jwe
parents: 3835
diff changeset
683 dnl
5854
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
684 dnl Check to see if C++ reintrepret cast works for function pointers.
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
685 dnl
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
686 dnl OCTAVE_CXX_BROKEN_REINTERPRET_CAST
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
687 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
688 AC_DEFUN([OCTAVE_CXX_BROKEN_REINTERPRET_CAST], [
5854
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
689 AC_REQUIRE([AC_PROG_CXX])
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
690 AC_LANG_PUSH(C++)
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
691 AC_CACHE_CHECK([for broken C++ reinterpret_cast],
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
692 octave_cv_cxx_broken_reinterpret_cast, [
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
693 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <cmath>]], [[
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
694 typedef double (*fptr) (double);
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
695 fptr psin = sin;
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
696 void *vptr = reinterpret_cast<void *> (psin);
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
697 psin = reinterpret_cast<fptr> (vptr);]])],
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
698 octave_cv_cxx_broken_reinterpret_cast=no,
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
699 octave_cv_cxx_broken_reinterpret_cast=yes)])
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
700 if test $octave_cv_cxx_broken_reinterpret_cast = yes ; then
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
701 AC_DEFINE(CXX_BROKEN_REINTERPRET_CAST, 1, [Define if C++ reinterpret_cast fails for function pointers.])
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
702 fi
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
703 AC_LANG_POP(C++)])
68f8017ef077 [project @ 2006-06-12 15:54:27 by jwe]
jwe
parents: 5844
diff changeset
704 dnl
7244
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
705 dnl Find find.
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
706 dnl
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
707 # Prefer GNU find if found.
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
708 AN_MAKEVAR([FIND], [OCTAVE_PROG_FIND])
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
709 AN_PROGRAM([gfind], [OCTAVE_PROG_FIND])
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
710 AN_PROGRAM([find], [OCTAVE_PROG_FIND])
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
711 AC_DEFUN([OCTAVE_PROG_FIND],
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
712 [AC_CHECK_PROGS(FIND, gfind find, )])
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
713 dnl
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
714 dnl Find sed.
5a9561046b89 [project @ 2007-12-04 02:27:27 by jwe]
jwe
parents: 7063
diff changeset
715 dnl
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
716 # Check for a fully-functional sed program, that truncates
6955
4aef2ca14cf9 [project @ 2007-10-04 16:38:11 by jwe]
jwe
parents: 6941
diff changeset
717 # as few characters as possible and that supports "\(X\|Y\)"
4aef2ca14cf9 [project @ 2007-10-04 16:38:11 by jwe]
jwe
parents: 6941
diff changeset
718 # style regular expression alternation. Prefer GNU sed if found.
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
719 AC_DEFUN([OCTAVE_PROG_SED],
6955
4aef2ca14cf9 [project @ 2007-10-04 16:38:11 by jwe]
jwe
parents: 6941
diff changeset
720 [AC_MSG_CHECKING([for a usable sed])
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
721 if test -z "$SED"; then
6822
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
722 AC_CACHE_VAL(ac_cv_path_sed, [
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
723 # Loop through the user's path and test for sed and gsed.
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
724 # Then use that list of sed's as ones to test for truncation.
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
725 _AS_PATH_WALK([$PATH],
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
726 [for ac_prog in sed gsed; do
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
727 for ac_exec_ext in '' $ac_executable_extensions; do
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
728 if AS_EXECUTABLE_P(["$as_dir/$ac_prog$ac_exec_ext"]); then
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
729 _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
730 fi
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
731 done
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
732 done
6822
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
733 ])
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
734 AS_TMPDIR(sed)
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
735 _max=0
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
736 _count=0
6822
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
737 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
738 # along with /bin/sed that truncates output.
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
739 for _sed in $_sed_list /usr/xpg4/bin/sed; do
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
740 test ! -f ${_sed} && break
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
741 cat /dev/null > "$tmp/sed.in"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
742 _count=0
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
743 echo $ECHO_N "0123456789$ECHO_C" >"$tmp/sed.in"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
744 # Check for GNU sed and select it if it is found.
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
745 if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
746 octave_cv_path_sed=${_sed}
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
747 break;
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
748 fi
6955
4aef2ca14cf9 [project @ 2007-10-04 16:38:11 by jwe]
jwe
parents: 6941
diff changeset
749 # Reject if RE alternation is not handled.
4aef2ca14cf9 [project @ 2007-10-04 16:38:11 by jwe]
jwe
parents: 6941
diff changeset
750 if test "`echo 'this and that' | ${_sed} -n 's/\(this\|that\).*$/\1/p'`" != "this"; then
4aef2ca14cf9 [project @ 2007-10-04 16:38:11 by jwe]
jwe
parents: 6941
diff changeset
751 continue;
4aef2ca14cf9 [project @ 2007-10-04 16:38:11 by jwe]
jwe
parents: 6941
diff changeset
752 fi
6822
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
753 while true; do
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
754 cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
755 mv "$tmp/sed.tmp" "$tmp/sed.in"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
756 cp "$tmp/sed.in" "$tmp/sed.nl"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
757 echo >>"$tmp/sed.nl"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
758 ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
759 cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
760 # 10000 chars as input seems more than enough
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
761 test $_count -gt 10 && break
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
762 _count=`expr $_count + 1`
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
763 if test $_count -gt $_max; then
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
764 _max=$_count
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
765 octave_cv_path_sed=$_sed
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
766 fi
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
767 done
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
768 done
6822
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
769 rm -rf "$tmp"
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
770 ])
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
771 SED=$octave_cv_path_sed
8004
4363bc94171a aclocal.m4 (OCTAVE_PROG_SED): fail if no usable sed is found
John W. Eaton <jwe@octave.org>
parents: 7996
diff changeset
772 if test -z "$SED"; then
4363bc94171a aclocal.m4 (OCTAVE_PROG_SED): fail if no usable sed is found
John W. Eaton <jwe@octave.org>
parents: 7996
diff changeset
773 AC_MSG_ERROR([no usable version of sed found])
4363bc94171a aclocal.m4 (OCTAVE_PROG_SED): fail if no usable sed is found
John W. Eaton <jwe@octave.org>
parents: 7996
diff changeset
774 fi
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
775 fi
6822
5c4702203cc4 [project @ 2007-08-23 19:43:07 by jwe]
jwe
parents: 6821
diff changeset
776 AC_SUBST(SED)
4084
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
777 AC_MSG_RESULT([$SED])
babc519f245b [project @ 2002-10-03 03:23:14 by jwe]
jwe
parents: 4067
diff changeset
778 ])
5465
d6163c0effd5 [project @ 2005-09-23 15:42:48 by jwe]
jwe
parents: 5307
diff changeset
779 dnl
d6163c0effd5 [project @ 2005-09-23 15:42:48 by jwe]
jwe
parents: 5307
diff changeset
780 dnl Find Perl.
d6163c0effd5 [project @ 2005-09-23 15:42:48 by jwe]
jwe
parents: 5307
diff changeset
781 dnl
d6163c0effd5 [project @ 2005-09-23 15:42:48 by jwe]
jwe
parents: 5307
diff changeset
782 dnl OCTAVE_PROG_PERL
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
783 AC_DEFUN([OCTAVE_PROG_PERL],
6119
fabb1be5fd84 [project @ 2006-10-28 00:13:58 by jwe]
jwe
parents: 6116
diff changeset
784 [AC_CHECK_PROG(PERL, perl, perl, [])
5465
d6163c0effd5 [project @ 2005-09-23 15:42:48 by jwe]
jwe
parents: 5307
diff changeset
785 AC_SUBST(PERL)
d6163c0effd5 [project @ 2005-09-23 15:42:48 by jwe]
jwe
parents: 5307
diff changeset
786 ])
5468
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
787 dnl
5495
71c9d4a6a843 [project @ 2005-10-14 07:29:26 by jwe]
jwe
parents: 5468
diff changeset
788 dnl Find Python.
71c9d4a6a843 [project @ 2005-10-14 07:29:26 by jwe]
jwe
parents: 5468
diff changeset
789 dnl
71c9d4a6a843 [project @ 2005-10-14 07:29:26 by jwe]
jwe
parents: 5468
diff changeset
790 dnl OCTAVE_PROG_PYTHON
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
791 AC_DEFUN([OCTAVE_PROG_PYTHON],
6119
fabb1be5fd84 [project @ 2006-10-28 00:13:58 by jwe]
jwe
parents: 6116
diff changeset
792 [AC_CHECK_PROG(PYTHON, python, python, [])
5495
71c9d4a6a843 [project @ 2005-10-14 07:29:26 by jwe]
jwe
parents: 5468
diff changeset
793 AC_SUBST(PYTHON)
71c9d4a6a843 [project @ 2005-10-14 07:29:26 by jwe]
jwe
parents: 5468
diff changeset
794 ])
71c9d4a6a843 [project @ 2005-10-14 07:29:26 by jwe]
jwe
parents: 5468
diff changeset
795 dnl
5468
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
796 dnl Find desktop-file-install.
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
797 dnl
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
798 dnl OCTAVE_PROG_DESKTOP_FILE_INSTALL
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
799 AC_DEFUN([OCTAVE_PROG_DESKTOP_FILE_INSTALL],
6119
fabb1be5fd84 [project @ 2006-10-28 00:13:58 by jwe]
jwe
parents: 6116
diff changeset
800 [AC_CHECK_PROG(DESKTOP_FILE_INSTALL, desktop-file-install, desktop-file-install, [])
5468
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
801 AC_SUBST(DESKTOP_FILE_INSTALL)
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
802 ])
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
803 dnl
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
804 dnl Check for IEEE 754 data format.
41943dd8d7d8 [project @ 2005-09-23 18:34:46 by jwe]
jwe
parents: 5465
diff changeset
805 dnl
4853
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
806 AC_DEFUN([OCTAVE_IEEE754_DATA_FORMAT],
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
807 [AC_MSG_CHECKING([for IEEE 754 data format])
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
808 AC_CACHE_VAL(octave_cv_ieee754_data_format,
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
809 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
4853
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
810 int
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
811 main (void)
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
812 {
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
813 typedef union { unsigned char c[8]; double d; } ieeebytes;
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
814
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
815 ieeebytes l = {0x1c, 0xbc, 0x6e, 0xf2, 0x54, 0x8b, 0x11, 0x43};
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
816 ieeebytes b = {0x43, 0x11, 0x8b, 0x54, 0xf2, 0x6e, 0xbc, 0x1c};
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
817
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
818 return l.d != 1234567891234567.0 && b.d != 1234567891234567.0;
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
819 }]])],
4853
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
820 octave_cv_ieee754_data_format=yes,
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
821 octave_cv_ieee754_data_format=no,
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
822 octave_cv_ieee754_data_format=yes)])
4853
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
823 if test "$cross_compiling" = yes; then
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
824 AC_MSG_RESULT([$octave_cv_ieee754_data_format assumed for cross compilation])
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
825 else
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
826 AC_MSG_RESULT([$octave_cv_ieee754_data_format])
4853
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
827 fi
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
828 if test "$octave_cv_ieee754_data_format" = yes; then
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
829 AC_DEFINE(HAVE_IEEE754_DATA_FORMAT, 1, [Define if your system uses IEEE 754 data format.])
9805
bb70d16cca3b fail at configure time if IEEE floating point format is not detected
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
830 else
bb70d16cca3b fail at configure time if IEEE floating point format is not detected
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
831 ## If the format is unknown, then you will probably not have a
bb70d16cca3b fail at configure time if IEEE floating point format is not detected
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
832 ## useful system, so we will abort here. Anyone wishing to
bb70d16cca3b fail at configure time if IEEE floating point format is not detected
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
833 ## experiment with building Octave on a system without IEEE
bb70d16cca3b fail at configure time if IEEE floating point format is not detected
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
834 ## floating point should be capable of removing this check and
bb70d16cca3b fail at configure time if IEEE floating point format is not detected
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
835 ## the one in the octave_ieee_init function in liboctave/lo-ieee.cc.
bb70d16cca3b fail at configure time if IEEE floating point format is not detected
John W. Eaton <jwe@octave.org>
parents: 9794
diff changeset
836 AC_MSG_ERROR([IEEE 754 data format required for building Octave])
4853
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
837 fi
66b3cce2bf37 [project @ 2004-04-06 18:11:52 by jwe]
jwe
parents: 4685
diff changeset
838 ])
5505
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
839 dnl
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
840 dnl Check for UMFPACK seperately split complex matrix and RHS. Note
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
841 dnl that as umfpack.h can be in three different places, rather than
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
842 dnl include it, just declare the functions needed.
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
843 dnl
5512
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
844 dnl Assumes that the check for umfpack has already been performed.
5505
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
845 dnl
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
846 AC_DEFUN([OCTAVE_UMFPACK_SEPERATE_SPLIT],
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
847 [AC_MSG_CHECKING([for UMFPACK seperate complex matrix and rhs split])
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
848 AC_CACHE_VAL(octave_cv_umfpack_seperate_split,
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
849 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
5505
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
850 #include <stdlib.h>
5512
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
851 #if defined (HAVE_UFSPARSE_UMFPACK_h)
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
852 #include <ufsparse/umfpack.h>
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
853 #elif defined (HAVE_UMFPACK_UMFPACK_H)
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
854 #include <umfpack/umfpack.h>
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
855 #elif defined (HAVE_UMFPACK_H)
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
856 #include <umfpack.h>
7c8767d0ffc0 [project @ 2005-10-27 02:20:17 by jwe]
jwe
parents: 5505
diff changeset
857 #endif
5505
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
858 int n = 5;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
859 int Ap[] = {0, 2, 5, 9, 10, 12};
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
860 int Ai[] = {0, 1, 0, 2, 4, 1, 2, 3, 4, 2, 1, 4};
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
861 double Ax[] = {2., 0., 3., 0., 3., 0., -1., 0., 4., 0., 4., 0.,
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
862 -3., 0., 1., 0., 2., 0., 2., 0., 6., 0., 1., 0.};
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
863 double br[] = {8., 45., -3., 3., 19.};
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
864 double bi[] = {0., 0., 0., 0., 0.};
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
865 int main (void)
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
866 {
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
867 double *null = (double *) NULL ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
868 double *x = (double *)malloc (2 * n * sizeof(double));
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
869 int i ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
870 void *Symbolic, *Numeric ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
871 (void) umfpack_zi_symbolic (n, n, Ap, Ai, Ax, null, &Symbolic, null, null) ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
872 (void) umfpack_zi_numeric (Ap, Ai, Ax, null, Symbolic, &Numeric, null, null) ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
873 umfpack_zi_free_symbolic (&Symbolic) ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
874 (void) umfpack_zi_solve (0, Ap, Ai, Ax, null, x, null, br, bi,
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
875 Numeric, null, null) ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
876 umfpack_zi_free_numeric (&Numeric) ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
877 for (i = 0; i < n; i++, x+=2)
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
878 if (fabs(*x - i - 1.) > 1.e-13)
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
879 return (1);
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
880 return (0) ;
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
881 }
5844
034cdbd34c0a [project @ 2006-06-07 15:38:58 by jwe]
jwe
parents: 5842
diff changeset
882 ]])],
5505
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
883 octave_cv_umfpack_seperate_split=yes,
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
884 octave_cv_umfpack_seperate_split=no,
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
885 octave_cv_umfpack_seperate_split=yes)])
5505
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
886 if test "$cross_compiling" = yes; then
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
887 AC_MSG_RESULT([$octave_cv_umfpack_seperate_split assumed for cross compilation])
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
888 else
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
889 AC_MSG_RESULT([$octave_cv_umfpack_seperate_split])
5505
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
890 fi
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
891 if test "$octave_cv_umfpack_seperate_split" = yes; then
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
892 AC_DEFINE(UMFPACK_SEPARATE_SPLIT, 1, [Define if the UMFPACK Complex solver allow matrix and RHS to be split independently])
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
893 fi
17682e3fba2a [project @ 2005-10-21 12:30:29 by jwe]
jwe
parents: 5495
diff changeset
894 ])
6276
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
895 dnl
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
896 dnl Check whether using HDF5 DLL under Windows. This is done by
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
897 dnl testing for a data symbol in the HDF5 library, which would
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
898 dnl requires the definition of _HDF5USEDL_ under MSVC compiler.
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
899 dnl
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
900 AC_DEFUN([OCTAVE_HDF5_DLL], [
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
901 AC_CACHE_CHECK([if _HDF5USEDLL_ needs to be defined],octave_cv_hdf5_dll, [
6724
388747e3d96b [project @ 2007-06-14 17:04:52 by jwe]
jwe
parents: 6276
diff changeset
902 AC_TRY_LINK([#include <hdf5.h>], [hid_t x = H5T_NATIVE_DOUBLE; return x],
6276
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
903 octave_cv_hdf5_dll=no, [
9531
b859079d1644 configure and Makefile fixes for Windows
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9525
diff changeset
904 save_CFLAGS="$CFLAGS"
6276
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
905 CFLAGS="$CFLAGS -DWIN32 -D_HDF5USEDLL_"
9531
b859079d1644 configure and Makefile fixes for Windows
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9525
diff changeset
906 save_LIBS="$LIBS"
b859079d1644 configure and Makefile fixes for Windows
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9525
diff changeset
907 LIBS="$HDF5_LIBS $LIBS"
6724
388747e3d96b [project @ 2007-06-14 17:04:52 by jwe]
jwe
parents: 6276
diff changeset
908 AC_TRY_LINK([#include <hdf5.h>], [hid_t x = H5T_NATIVE_DOUBLE; return x],
6276
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
909 octave_cv_hdf5_dll=yes,
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
910 octave_cv_hdf5_dll=no)
9531
b859079d1644 configure and Makefile fixes for Windows
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9525
diff changeset
911 CFLAGS="$save_CFLAGS"
b859079d1644 configure and Makefile fixes for Windows
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9525
diff changeset
912 LIBS="$save_LIBS"])])
6276
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
913 if test "$octave_cv_hdf5_dll" = yes; then
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
914 AC_DEFINE(_HDF5USEDLL_, 1, [Define if using HDF5 dll (Win32)])
d26c558691cd [project @ 2007-02-07 09:01:24 by jwe]
jwe
parents: 6119
diff changeset
915 fi])
6823
9fddcc586065 [project @ 2007-08-24 08:27:27 by dbateman]
dbateman
parents: 6822
diff changeset
916 dnl
8676
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
917 dnl Check whether HDF5 library has version 1.6 API functions.
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
918 dnl
9892
ac69e6f4b33d Add HDF5-1.8 compatibility while maintaining compatibility with HDF5-1.6 versions
Kacper Kowalik <xarthisius.kk@gmail.com>
parents: 9865
diff changeset
919 AC_DEFUN([OCTAVE_HDF5_HAS_ENFORCED_16_API], [
ac69e6f4b33d Add HDF5-1.8 compatibility while maintaining compatibility with HDF5-1.6 versions
Kacper Kowalik <xarthisius.kk@gmail.com>
parents: 9865
diff changeset
920 AC_CACHE_CHECK([whether HDF5 library has enforced version 1.6 API],
ac69e6f4b33d Add HDF5-1.8 compatibility while maintaining compatibility with HDF5-1.6 versions
Kacper Kowalik <xarthisius.kk@gmail.com>
parents: 9865
diff changeset
921 octave_cv_hdf5_has_enforced_16_api, [
8676
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
922 AC_TRY_LINK([
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
923 #include <hdf5.h>
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
924 ], [
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
925 H5Eset_auto (0, 0);], [
9892
ac69e6f4b33d Add HDF5-1.8 compatibility while maintaining compatibility with HDF5-1.6 versions
Kacper Kowalik <xarthisius.kk@gmail.com>
parents: 9865
diff changeset
926 octave_cv_hdf5_has_enforced_16_api=yes], [
ac69e6f4b33d Add HDF5-1.8 compatibility while maintaining compatibility with HDF5-1.6 versions
Kacper Kowalik <xarthisius.kk@gmail.com>
parents: 9865
diff changeset
927 octave_cv_hdf5_has_enforced_16_api=no])])
ac69e6f4b33d Add HDF5-1.8 compatibility while maintaining compatibility with HDF5-1.6 versions
Kacper Kowalik <xarthisius.kk@gmail.com>
parents: 9865
diff changeset
928 if test "$octave_cv_hdf5_has_enforced_16_api" != "yes"; then
ac69e6f4b33d Add HDF5-1.8 compatibility while maintaining compatibility with HDF5-1.6 versions
Kacper Kowalik <xarthisius.kk@gmail.com>
parents: 9865
diff changeset
929 AC_DEFINE(HAVE_HDF5_18, 1, [Define if >=HDF5-1.8 is available.])
8676
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
930 fi
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
931 ])
22462fd58e66 require HDF5 v1.6 API
John W. Eaton <jwe@octave.org>
parents: 8659
diff changeset
932 dnl
6823
9fddcc586065 [project @ 2007-08-24 08:27:27 by dbateman]
dbateman
parents: 6822
diff changeset
933 dnl Check for the QHull version.
9fddcc586065 [project @ 2007-08-24 08:27:27 by dbateman]
dbateman
parents: 6822
diff changeset
934 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
935 AC_DEFUN([OCTAVE_CHECK_QHULL_VERSION],
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
936 [AC_CACHE_CHECK([for qh_version in $QHULL_LIBS],
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
937 octave_cv_lib_qhull_version, [
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
938 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
14043
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
939 #include <stdio.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
940 #if defined (HAVE_QHULL_LIBQHULL_H) || defined (HAVE_QHULL_QHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
941 # if defined (HAVE_QHULL_LIBQHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
942 # include <qhull/libqhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
943 # else
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
944 # include <qhull/qhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
945 # endif
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
946 # include <qhull/qset.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
947 # include <qhull/geom.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
948 # include <qhull/poly.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
949 # include <qhull/io.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
950 #elif defined (HAVE_LIBQHULL_H) || defined (HAVE_QHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
951 # if defined (HAVE_LIBQHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
952 # include <libqhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
953 # else
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
954 # include <qhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
955 # endif
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
956 # include <qset.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
957 # include <geom.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
958 # include <poly.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
959 # include <io.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
960 #endif
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
961 ]], [[
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
962 const char *tmp = qh_version;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
963 ]])], [octave_cv_lib_qhull_version=yes], [octave_cv_lib_qhull_version=no])])
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
964 if test "$octave_cv_lib_qhull_version" = no; then
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
965 AC_DEFINE(NEED_QHULL_VERSION, 1,
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
966 [Define if the QHull library needs a qh_version variable defined.])
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
967 fi
6823
9fddcc586065 [project @ 2007-08-24 08:27:27 by dbateman]
dbateman
parents: 6822
diff changeset
968 ])
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
969 dnl
8659
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
970 dnl Check whether QHull works (does not crash)
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
971 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
972 AC_DEFUN([OCTAVE_CHECK_QHULL_OK],
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
973 [AC_CACHE_CHECK([whether the qhull library works],
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
974 octave_cv_lib_qhull_ok, [
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
975 AC_RUN_IFELSE([AC_LANG_PROGRAM([[
8659
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
976 #include <stdio.h>
14043
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
977 #if defined (HAVE_QHULL_LIBQHULL_H) || defined (HAVE_QHULL_QHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
978 # if defined (HAVE_QHULL_LIBQHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
979 # include <qhull/libqhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
980 # else
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
981 # include <qhull/qhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
982 # endif
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
983 # include <qhull/qset.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
984 # include <qhull/geom.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
985 # include <qhull/poly.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
986 # include <qhull/io.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
987 #elif defined (HAVE_LIBQHULL_H) || defined (HAVE_QHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
988 # if defined (HAVE_LIBQHULL_H)
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
989 # include <libqhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
990 # else
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
991 # include <qhull.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
992 # endif
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
993 # include <qset.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
994 # include <geom.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
995 # include <poly.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
996 # include <io.h>
f913363318e0 handle new names and locations of qhull include files (bug #33712)
John W. Eaton <jwe@octave.org>
parents: 13957
diff changeset
997 #endif
8659
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
998 #ifdef NEED_QHULL_VERSION
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
999 char *qh_version = "version";
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
1000 #endif
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1001 ]], [[
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1002 int dim = 2;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1003 int n = 4;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1004 coordT points[8] = { -0.5, -0.5, -0.5, 0.5, 0.5, -0.5, 0.5, 0.5 };
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1005 boolT ismalloc = 0;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1006 return qh_new_qhull (dim, n, points, ismalloc, "qhull ", 0, stderr);
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1007 ]])],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1008 [octave_cv_lib_qhull_ok=yes],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1009 [octave_cv_lib_qhull_ok=no],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1010 [octave_cv_lib_qhull_ok=yes])])
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1011 if test "$octave_cv_lib_qhull_ok" = "yes"; then
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1012 $1
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1013 else
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1014 $2
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
1015 fi
8659
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
1016 ])
9792c26bffc7 configure: check whether qhull works
Jaroslav Hajek <highegg@gmail.com>
parents: 8635
diff changeset
1017 dnl
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1018 dnl Check whether ARPACK works (does not crash)
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1019 dnl
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1020 dnl Using a pure Fortran program doesn't seem to crash when linked
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1021 dnl with the buggy ARPACK library but the C++ program does. Maybe
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1022 dnl it is the memory allocation that exposes the bug and using statically
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1023 dnl allocated arrays in Fortran does not?
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1024 dnl
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1025 AC_DEFUN([OCTAVE_CHECK_ARPACK_OK], [
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1026 AC_LANG_PUSH(C++)
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1027 AC_CACHE_CHECK([whether the arpack library works],
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1028 [octave_cv_lib_arpack_ok], [
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1029 AC_RUN_IFELSE([AC_LANG_PROGRAM([[
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1030 // External functions from ARPACK library
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1031 extern "C" int
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1032 F77_FUNC (dnaupd, DNAUPD) (int&, const char *, const int&, const char *,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1033 int&, const double&, double*, const int&,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1034 double*, const int&, int*, int*, double*,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1035 double*, const int&, int&, long int, long int);
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1036
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1037 extern "C" int
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1038 F77_FUNC (dneupd, DNEUPD) (const int&, const char *, int*, double*,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1039 double*, double*, const int&,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1040 const double&, const double&, double*,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1041 const char*, const int&, const char *,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1042 int&, const double&, double*, const int&,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1043 double*, const int&, int*, int*, double*,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1044 double*, const int&, int&, long int,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1045 long int, long int);
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1046
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1047 extern "C" int
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1048 F77_FUNC (dgemv, DGEMV) (const char *, const int&, const int&,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1049 const double&, const double*, const int&,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1050 const double*, const int&, const double&,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1051 double*, const int&, long int);
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1052
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1053 #include <cfloat>
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1054
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1055 void
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1056 doit (void)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1057 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1058 // Based on function EigsRealNonSymmetricMatrix from liboctave/eigs-base.cc.
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1059
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1060 // Problem matrix. See bug #31479
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1061 int n = 4;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1062 double *m = new double [n * n];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1063 m[0] = 1, m[4] = 0, m[8] = 0, m[12] = -1;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1064 m[1] = 0, m[5] = 1, m[9] = 0, m[13] = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1065 m[2] = 0, m[6] = 0, m[10] = 1, m[14] = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1066 m[3] = 0, m[7] = 0, m[11] = 2, m[15] = 1;
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1067
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1068 double *resid = new double [4];
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1069
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1070 resid[0] = 0.960966;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1071 resid[1] = 0.741195;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1072 resid[2] = 0.150143;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1073 resid[3] = 0.868067;
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1074
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1075 int *ip = new int [11];
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1076
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1077 ip[0] = 1; // ishift
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1078 ip[1] = 0; // ip[1] not referenced
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1079 ip[2] = 300; // mxiter, maximum number of iterations
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1080 ip[3] = 1; // NB blocksize in recurrence
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1081 ip[4] = 0; // nconv, number of Ritz values that satisfy convergence
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1082 ip[5] = 0; // ip[5] not referenced
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1083 ip[6] = 1; // mode
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1084 ip[7] = 0; // ip[7] to ip[10] are return values
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1085 ip[8] = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1086 ip[9] = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1087 ip[10] = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1088
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1089 int *ipntr = new int [14];
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1090
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1091 int k = 1;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1092 int p = 3;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1093 int lwork = 3 * p * (p + 2);
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1094
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1095 double *v = new double [n * (p + 1)];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1096 double *workl = new double [lwork + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1097 double *workd = new double [3 * n + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1098
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1099 int ido = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1100 int info = 0;
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1101
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1102 double tol = DBL_EPSILON;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1103
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1104 do
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1105 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1106 F77_FUNC (dnaupd, DNAUPD) (ido, "I", n, "LM", k, tol, resid, p,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1107 v, n, ip, ipntr, workd, workl, lwork,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1108 info, 1L, 2L);
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1109
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1110 if (ido == -1 || ido == 1 || ido == 2)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1111 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1112 double *x = workd + ipntr[0] - 1;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1113 double *y = workd + ipntr[1] - 1;
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1114
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1115 F77_FUNC (dgemv, DGEMV) ("N", n, n, 1.0, m, n, x, 1, 0.0,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1116 y, 1, 1L);
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1117 }
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1118 else
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1119 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1120 if (info < 0)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1121 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1122 return; // Error
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1123 }
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1124
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1125 break;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1126 }
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1127 }
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1128 while (1);
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1129
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1130 int *sel = new int [p];
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1131
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1132 // In Octave, the dimensions of dr and di are k+1, but k+2 avoids segfault
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1133 double *dr = new double [k + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1134 double *di = new double [k + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1135 double *workev = new double [3 * p];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1136
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1137 for (int i = 0; i < k + 1; i++)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1138 dr[i] = di[i] = 0.;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1139
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1140 int rvec = 1;
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1141
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1142 double sigmar = 0.0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1143 double sigmai = 0.0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1144
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1145 // In Octave, this is n*(k+1), but k+2 avoids segfault
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1146 double *z = new double [n * (k + 1)];
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1147
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1148 F77_FUNC (dneupd, DNEUPD) (rvec, "A", sel, dr, di, z, n, sigmar,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1149 sigmai, workev, "I", n, "LM", k, tol,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1150 resid, p, v, n, ip, ipntr, workd,
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1151 workl, lwork, info, 1L, 1L, 2L);
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1152 }
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1153 ]], [[
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1154 for (int i = 0; i < 10; i++)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1155 doit ();
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1156 ]])],
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1157 [octave_cv_lib_arpack_ok=yes],
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1158 [octave_cv_lib_arpack_ok=no],
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1159 [octave_cv_lib_arpack_ok=yes])])
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
1160 AC_LANG_POP(C++)
14144
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1161 if test "$octave_cv_lib_arpack_ok" = "yes"; then
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1162 $1
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1163 else
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1164 $2
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1165 fi
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1166 ])
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
1167 dnl
12166
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1168 dnl Check for OpenGL. If found, define OPENGL_LIBS
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1169 dnl
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1170 dnl FIXME -- the following tests should probably check for the
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1171 dnl libraries separately.
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1172 dnl
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1173 dnl FIXME -- should we allow a way to specify a directory for OpenGL
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1174 dnl libraries and header files?
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1175 dnl
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1176 AC_DEFUN([OCTAVE_OPENGL], [
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1177 OPENGL_LIBS=
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1178
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1179 ### On MacOSX systems the OpenGL framework can be used
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1180 OCTAVE_HAVE_FRAMEWORK(OpenGL, [
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1181 #include <OpenGL/gl.h>
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1182 #include <OpenGL/glu.h> ], [GLint par; glGetIntegerv (GL_VIEWPORT, &par);],
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1183 [have_framework_opengl="yes"], [have_framework_opengl="no"])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1184
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1185 if test $have_framework_opengl = "yes"; then
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1186 AC_DEFINE(HAVE_FRAMEWORK_OPENGL, 1, [Define if framework OPENGL is available.])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1187 OPENGL_LIBS="-Wl,-framework -Wl,OpenGL"
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1188 AC_MSG_NOTICE([adding -Wl,-framework -Wl,OpenGL to OPENGL_LIBS])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1189 OCTAVE_GLUTESSCALLBACK_THREEDOTS
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1190 else
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1191 case $canonical_host_type in
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1192 *-*-mingw32* | *-*-msdosmsvc)
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1193 AC_CHECK_HEADERS(windows.h)
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1194 ;;
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1195 esac
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1196 have_opengl_incs=no
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1197 AC_CHECK_HEADERS([GL/gl.h OpenGL/gl.h], [
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1198 AC_CHECK_HEADERS([GL/glu.h OpenGL/glu.h], [
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1199 have_opengl_incs=yes; break], [], [
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1200 #ifdef HAVE_WINDOWS_H
7954
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1201 #include <windows.h>
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1202 #endif
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1203 ])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1204 break
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1205 ], [], [
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1206 #ifdef HAVE_WINDOWS_H
7954
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1207 #include <windows.h>
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1208 #endif
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1209 ])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1210
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1211 if test "$have_opengl_incs" = "yes"; then
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1212 case $canonical_host_type in
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1213 *-*-mingw32* | *-*-msdosmsvc)
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1214 save_LIBS="$LIBS"
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1215 LIBS="$LIBS -lopengl32"
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1216 AC_MSG_CHECKING([for glEnable in -lopengl32])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1217 AC_TRY_LINK([
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1218 #if HAVE_WINDOWS_H
7954
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1219 #include <windows.h>
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1220 #endif
7954
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1221 #if defined (HAVE_GL_GL_H)
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1222 #include <GL/gl.h>
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1223 #elif defined (HAVE_OPENGL_GL_H)
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1224 #include <OpenGL/gl.h>
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1225 #endif
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1226 ], [glEnable(GL_SMOOTH);], OPENGL_LIBS="-lopengl32 -lglu32")
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1227 LIBS="$save_LIBS"
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1228 if test "x$OPENGL_LIBS" != "x"; then
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1229 AC_MSG_RESULT(yes)
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1230 else
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1231 AC_MSG_RESULT(no)
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1232 fi
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1233 ;;
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1234 *)
12166
eceacb78aa7f don't add -L/usr/X11R6/lib to LDFLAGS in check for OpenGL libraries
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
1235 AC_CHECK_LIB(GL, glEnable, OPENGL_LIBS="-lGL -lGLU")
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1236 ;;
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1237 esac
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1238 fi
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1239 fi
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1240 AC_SUBST(OPENGL_LIBS)
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1241 ])
7834
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1242 dnl
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1243 dnl See if function gluTessCallback is called with "(...)"
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1244 dnl
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1245 dnl OCTAVE_GLUTESSCALLBACK_THREEDOTS
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
1246 AC_DEFUN([OCTAVE_GLUTESSCALLBACK_THREEDOTS],
8724
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1247 [AC_CACHE_CHECK([whether gluTessCallback is called with "(...)"],
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1248 octave_cv_glutesscallback_threedots,
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1249 [AC_LANG_PUSH(C++)
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1250 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1251 #ifdef HAVE_GL_GLU_H
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1252 #include <GL/glu.h>
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1253 #elif defined HAVE_OPENGL_GLU_H || defined HAVE_FRAMEWORK_OPENGL
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1254 #include <OpenGL/glu.h>
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1255 #endif]],
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1256 [[GLvoid (*func)(...); gluTessCallback(0, 0, func);]])],
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1257 octave_cv_glutesscallback_threedots="yes", octave_cv_glutesscallback_threedots="no")])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1258 AC_LANG_POP(C++)
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1259 if test $octave_cv_glutesscallback_threedots = "yes"; then
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1260 AC_DEFINE(HAVE_GLUTESSCALLBACK_THREEDOTS, 1,
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1261 [Define if gluTessCallback is called with (...)])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1262 fi
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1263 ])
a50228129dba Introduce new macro OCTAVE_GLUTESSCALLBACK_THREEDOTS. Use definitions HAVE_FRAMEWORK_OPENGL and HAVE_GLUTESSCALLBACK_THREEDOTS for Mac's framework OpenGL implementation.
Ben Abbott <bpabbott@mac.com>
parents: 8676
diff changeset
1264 dnl
10471
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1265 dnl Check for support of OpenMP with a given compiler flag. If
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1266 dnl found define HAVE_OPENMP and add the compile flag to CFLAGS
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1267 dnl and CXXFLAGS.
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1268 dnl
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1269 AC_DEFUN([OCTAVE_CHECK_OPENMP],
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1270 [AC_MSG_CHECKING([for support of OpenMP])
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1271 XCFLAGS="$CFLAGS"
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1272 CFLAGS="$CFLAGS $1"
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1273 AC_CACHE_VAL(octave_cv_check_openmp,[
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1274 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1275 #include <omp.h>
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1276 #include <stdio.h>
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1277 ]], [[
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1278 int main(int argc, char* argv[])
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1279 {
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1280 _Pragma("omp parallel")
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1281 printf("Hello, world.\n");
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1282 return 0;
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1283 }
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1284 ]])],octave_cv_openmp=yes, octave_cv_openmmp=no, octave_cv_openmp=no)])
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1285 AC_MSG_RESULT($octave_cv_openmp)
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1286 if test "$octave_cv_openmp" = yes; then
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1287 AC_DEFINE(HAVE_OPENMP,1,[Define if compiler supports OpenMP])
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1288 CXXFLAGS="$CXXFLAGS $1"
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1289 else
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1290 CFLAGS="$XCFLAGS"
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1291 fi
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1292 ])
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1293 dnl
7834
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1294 dnl Configure paths for FreeType2
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1295 dnl Marcelo Magallon 2001-10-26, based on gtk.m4 by Owen Taylor
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1296 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1297 dnl Copyright 2001, 2003 by
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1298 dnl David Turner, Robert Wilhelm, and Werner Lemberg.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1299 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1300 dnl This file is part of the FreeType project, and may only be used, modified,
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1301 dnl and distributed under the terms of the FreeType project license,
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1302 dnl LICENSE.TXT. By continuing to use, modify, or distribute this file you
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1303 dnl indicate that you have read the license and understand and accept it
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1304 dnl fully.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1305 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1306 dnl As a special exception to the FreeType project license, this file may be
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1307 dnl distributed as part of a program that contains a configuration script
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1308 dnl generated by Autoconf, under the same distribution terms as the rest of
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1309 dnl that program.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1310 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1311 dnl serial 2
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1312 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1313 dnl AC_CHECK_FT2([MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1314 dnl Test for FreeType 2, and define FT2_CFLAGS and FT2_LIBS.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1315 dnl MINIMUM-VERSION is what libtool reports; the default is `7.0.1' (this is
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1316 dnl FreeType 2.0.4).
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1317 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1318 AC_DEFUN([AC_CHECK_FT2],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1319 [dnl Get the cflags and libraries from the freetype-config script
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1320 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1321 AC_ARG_WITH([ft-prefix],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1322 dnl don't quote AS_HELP_STRING!
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1323 AS_HELP_STRING([--with-ft-prefix=PREFIX],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1324 [Prefix where FreeType is installed (optional)]),
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1325 [ft_config_prefix="$withval"],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1326 [ft_config_prefix=""])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1327
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1328 AC_ARG_WITH([ft-exec-prefix],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1329 dnl don't quote AS_HELP_STRING!
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1330 AS_HELP_STRING([--with-ft-exec-prefix=PREFIX],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1331 [Exec prefix where FreeType is installed (optional)]),
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1332 [ft_config_exec_prefix="$withval"],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1333 [ft_config_exec_prefix=""])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1334
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1335 AC_ARG_ENABLE([freetypetest],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1336 dnl don't quote AS_HELP_STRING!
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1337 AS_HELP_STRING([--disable-freetypetest],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1338 [Do not try to compile and run a test FreeType program]),
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1339 [],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1340 [enable_fttest=yes])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1341
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1342 if test x$ft_config_exec_prefix != x ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1343 ft_config_args="$ft_config_args --exec-prefix=$ft_config_exec_prefix"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1344 if test x${FT2_CONFIG+set} != xset ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1345 FT2_CONFIG=$ft_config_exec_prefix/bin/freetype-config
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1346 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1347 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1348
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1349 if test x$ft_config_prefix != x ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1350 ft_config_args="$ft_config_args --prefix=$ft_config_prefix"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1351 if test x${FT2_CONFIG+set} != xset ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1352 FT2_CONFIG=$ft_config_prefix/bin/freetype-config
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1353 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1354 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1355
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1356 AC_PATH_PROG([FT2_CONFIG], [freetype-config], [no])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1357
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1358 min_ft_version=m4_if([$1], [], [7.0.1], [$1])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1359 AC_MSG_CHECKING([for FreeType -- version >= $min_ft_version])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1360 no_ft=""
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1361 if test "$FT2_CONFIG" = "no" ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1362 no_ft=yes
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1363 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1364 FT2_CFLAGS=`$FT2_CONFIG $ft_config_args --cflags`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1365 FT2_LIBS=`$FT2_CONFIG $ft_config_args --libs`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1366 ft_config_major_version=`$FT2_CONFIG $ft_config_args --version | \
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1367 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1368 ft_config_minor_version=`$FT2_CONFIG $ft_config_args --version | \
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1369 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1370 ft_config_micro_version=`$FT2_CONFIG $ft_config_args --version | \
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1371 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1372 ft_min_major_version=`echo $min_ft_version | \
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1373 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1374 ft_min_minor_version=`echo $min_ft_version | \
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1375 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1376 ft_min_micro_version=`echo $min_ft_version | \
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1377 sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1378 if test x$enable_fttest = xyes ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1379 ft_config_is_lt=""
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1380 if test $ft_config_major_version -lt $ft_min_major_version ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1381 ft_config_is_lt=yes
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1382 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1383 if test $ft_config_major_version -eq $ft_min_major_version ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1384 if test $ft_config_minor_version -lt $ft_min_minor_version ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1385 ft_config_is_lt=yes
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1386 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1387 if test $ft_config_minor_version -eq $ft_min_minor_version ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1388 if test $ft_config_micro_version -lt $ft_min_micro_version ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1389 ft_config_is_lt=yes
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1390 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1391 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1392 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1393 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1394 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1395 if test x$ft_config_is_lt = xyes ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1396 no_ft=yes
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1397 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1398 ac_save_CFLAGS="$CFLAGS"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1399 ac_save_LIBS="$LIBS"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1400 CFLAGS="$CFLAGS $FT2_CFLAGS"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1401 LIBS="$FT2_LIBS $LIBS"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1402
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1403 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1404 dnl Sanity checks for the results of freetype-config to some extent.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1405 dnl
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1406 AC_RUN_IFELSE([
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1407 AC_LANG_SOURCE([[
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1408
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1409 #include <ft2build.h>
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1410 #include FT_FREETYPE_H
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1411 #include <stdio.h>
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1412 #include <stdlib.h>
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1413
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1414 int
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1415 main()
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1416 {
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1417 FT_Library library;
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1418 FT_Error error;
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1419
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1420 error = FT_Init_FreeType(&library);
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1421
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1422 if (error)
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1423 return 1;
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1424 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1425 {
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1426 FT_Done_FreeType(library);
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1427 return 0;
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1428 }
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1429 }
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1430
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1431 ]])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1432 ],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1433 [],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1434 [no_ft=yes],
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1435 [echo $ECHO_N "cross compiling; assuming OK... $ECHO_C"])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1436
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1437 CFLAGS="$ac_save_CFLAGS"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1438 LIBS="$ac_save_LIBS"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1439 fi dnl test $ft_config_version -lt $ft_min_version
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1440 fi dnl test x$enable_fttest = xyes
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1441 fi dnl test "$FT2_CONFIG" = "no"
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1442
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1443 if test x$no_ft = x ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1444 AC_MSG_RESULT([yes])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1445 m4_if([$2], [], [:], [$2])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1446 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1447 AC_MSG_RESULT([no])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1448 if test "$FT2_CONFIG" = "no" ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1449 AC_MSG_WARN([
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1450
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1451 The freetype-config script installed by FreeType 2 could not be found.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1452 If FreeType 2 was installed in PREFIX, make sure PREFIX/bin is in
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1453 your path, or set the FT2_CONFIG environment variable to the
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1454 full path to freetype-config.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1455 ])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1456 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1457 if test x$ft_config_is_lt = xyes ; then
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1458 AC_MSG_WARN([
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1459
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1460 Your installed version of the FreeType 2 library is too old.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1461 If you have different versions of FreeType 2, make sure that
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1462 correct values for --with-ft-prefix or --with-ft-exec-prefix
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1463 are used, or set the FT2_CONFIG environment variable to the
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1464 full path to freetype-config.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1465 ])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1466 else
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1467 AC_MSG_WARN([
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1468
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1469 The FreeType test program failed to run. If your system uses
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1470 shared libraries and they are installed outside the normal
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1471 system library path, make sure the variable LD_LIBRARY_PATH
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1472 (or whatever is appropiate for your system) is correctly set.
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1473 ])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1474 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1475 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1476
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1477 FT2_CFLAGS=""
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1478 FT2_LIBS=""
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1479 m4_if([$3], [], [:], [$3])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1480 fi
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1481
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1482 AC_SUBST([FT2_CFLAGS])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1483 AC_SUBST([FT2_LIBS])])
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1484 dnl end of freetype2.m4
8169
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1485
8998
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1486 dnl Check whether a math mapper function is available in <cmath>.
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1487 dnl Will define HAVE_CMATH_FUNC if there is a double variant and
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1488 dnl HAVE_CMATH_FUNCF if there is a float variant.
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1489 dnl Currently capable of checking for functions with single
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1490 dnl argument and returning bool/int/real.
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1491 AC_DEFUN([OCTAVE_CMATH_FUNC],[
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1492 AC_MSG_CHECKING([for std::$1 in <cmath>])
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1493 AC_LANG_PUSH(C++)
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1494 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1495 #include <cmath>
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1496 void take_func (bool (*func) (double x));
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1497 void take_func (int (*func) (double x));
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1498 void take_func (double (*func) (double x));
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1499 ]],
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1500 [[
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1501 take_func(std::$1);
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1502 ]])],
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1503 [AC_MSG_RESULT([yes])
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1504 AC_DEFINE(HAVE_CMATH_[]AS_TR_CPP($1),1,[Define if <cmath> provides $1])],
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1505 [AC_MSG_RESULT([no])])
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1506 AC_MSG_CHECKING([for std::$1 (float variant) in <cmath>])
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1507 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1508 #include <cmath>
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1509 void take_func (bool (*func) (float x));
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1510 void take_func (int (*func) (float x));
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1511 void take_func (float (*func) (float x));
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1512 ]],
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1513 [[
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1514 take_func(std::$1);
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1515 ]])],
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1516 [AC_MSG_RESULT([yes])
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1517 AC_DEFINE(HAVE_CMATH_[]AS_TR_CPP($1)F,1,[Define if <cmath> provides float variant of $1])],
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1518 [AC_MSG_RESULT([no])])
9049
56018fcd28b0 configure fixes
Jaroslav Hajek <highegg@gmail.com>
parents: 8998
diff changeset
1519 AC_LANG_POP(C++)
8998
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1520 ])
a48fba01e4ac optimize isnan/isinf/isfinite mappers
Jaroslav Hajek <highegg@gmail.com>
parents: 8920
diff changeset
1521
8169
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1522 dnl Check whether fast signed integer arithmetics using bit tricks
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1523 dnl can be used in oct-inttypes.h. Defines HAVE_FAST_INT_OPS if
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1524 dnl the following conditions hold:
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1525 dnl 1. Signed numbers are represented by twos complement
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1526 dnl (see <http://en.wikipedia.org/wiki/Two%27s_complement>)
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1527 dnl 2. static_cast to unsigned int counterpart works like interpreting
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1528 dnl the signed bit pattern as unsigned (and is thus zero-cost).
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1529 dnl 3. Signed addition and subtraction yield the same bit results as unsigned.
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1530 dnl (We use casts to prevent optimization interference, so there is no
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1531 dnl need for things like -ftrapv).
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1532 dnl 4. Bit operations on signed integers work like on unsigned integers,
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1533 dnl except for the shifts. Shifts are arithmetic.
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1534 dnl
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1535 AC_DEFUN([OCTAVE_FAST_INT_OPS],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1536 [AC_CACHE_CHECK([whether fast integer arithmetics is usable],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1537 octave_cv_fast_int_ops,
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1538 [AC_LANG_PUSH(C++)
8169
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1539 AC_RUN_IFELSE([AC_LANG_PROGRAM([[
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1540 #include <limits>
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1541 template<class UT, class ST>
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1542 static bool
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1543 do_test (UT, ST)
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1544 {
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1545 volatile ST s = std::numeric_limits<ST>::min () / 3;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1546 volatile UT u = static_cast<UT> (s);
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1547 if (*(reinterpret_cast<volatile ST *> (&u)) != s) return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1548
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1549 u = 0; u = ~u;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1550 if (*(reinterpret_cast<volatile ST *> (&u)) != -1) return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1551
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1552 ST sx, sy;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1553 sx = std::numeric_limits<ST>::max () / 2 + 1;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1554 sy = std::numeric_limits<ST>::max () / 2 + 2;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1555 if (static_cast<ST> (static_cast<UT> (sx) + static_cast<UT> (sy))
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1556 != std::numeric_limits<ST>::min () + 1) return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1557 if (static_cast<ST> (static_cast<UT> (sx) - static_cast<UT> (sy))
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1558 != -1) return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1559
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1560 if ((sx & sy) != (static_cast<UT> (sx) & static_cast<UT> (sy)))
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1561 return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1562 if ((sx | sy) != (static_cast<UT> (sx) | static_cast<UT> (sy)))
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1563 return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1564 if ((sx ^ sy) != (static_cast<UT> (sx) ^ static_cast<UT> (sy)))
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1565 return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1566 if ((-1 >> 1) != -1) return true;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1567 return false;
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1568 }
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1569
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1570 #define DO_TEST(T) \
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1571 if (do_test (static_cast<unsigned T> (0), static_cast<signed T> (0))) \
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1572 return sizeof (T);
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1573 ]],[[
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1574 DO_TEST(char)
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1575 DO_TEST(short)
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1576 DO_TEST(int)
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1577 DO_TEST(long)
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1578 #if (defined(HAVE_LONG_LONG_INT) && defined(HAVE_UNSIGNED_LONG_LONG_INT))
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1579 DO_TEST(long long)
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1580 #endif
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1581 ]])],
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1582 [octave_cv_fast_int_ops=yes],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1583 [octave_cv_fast_int_ops=no],
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1584 [octave_cv_fast_int_ops=yes])
8169
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1585 AC_LANG_POP(C++)])
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1586 if test $octave_cv_fast_int_ops = yes; then
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1587 AC_DEFINE(HAVE_FAST_INT_OPS, 1,
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1588 [Define if signed integers use two's complement])
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1589 fi
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
1590 ])
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1591 dnl
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1592 dnl Check to see if the compiler and the linker can handle the flags
8635
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1593 dnl "-framework $1" for the given prologue $2 and the given body $3 of
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1594 dnl a source file. Arguments 2 and 3 optionally can also be empty.
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1595 dnl Add options (lower case letters $1) "--with-framework-$1" and
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1596 dnl "--without-framework-$1". If this test is successful then perform
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1597 dnl $4, otherwise do $5.
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1598 dnl
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1599 dnl OCTAVE_HAVE_FRAMEWORK
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
1600 AC_DEFUN([OCTAVE_HAVE_FRAMEWORK], [
10012
2441327485a3 use m4 quating in aclocal.m4 autoconf macros with variable expansion
Rik <rdrider0-list@yahoo.com>
parents: 10011
diff changeset
1601 AC_MSG_CHECKING([whether ${LD-ld} accepts -framework $1])
8635
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1602 AC_CACHE_VAL(octave_cv_framework_$1, [
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1603 XLDFLAGS="$LDFLAGS"
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1604 LDFLAGS="$LDFLAGS -framework $1"
8635
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1605 AC_LANG_PUSH(C++)
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1606 AC_LINK_IFELSE([AC_LANG_PROGRAM([$2], [$3])],
8635
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1607 eval "octave_cv_framework_$1=yes",
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1608 eval "octave_cv_framework_$1=no")
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1609 AC_LANG_POP(C++)
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1610 LDFLAGS="$XLDFLAGS"
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1611 ])
8635
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1612 if test "$octave_cv_framework_$1" = "yes"; then
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1613 AC_MSG_RESULT(yes)
8635
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1614 AC_ARG_WITH(framework-m4_tolower($1),
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1615 [AS_HELP_STRING([--without-framework-m4_tolower($1)],
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1616 [don't use framework $1])],
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1617 with_have_framework=$withval, with_have_framework="yes")
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1618 if test "$with_have_framework" = "yes"; then
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1619 [$4]
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1620 else
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1621 AC_MSG_NOTICE([framework rejected by --without-framework-m4_tolower($1)])
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1622 [$5]
bef8f001032f Further improvements for OCTAVE_HAVE_FRAMEWORK and the test for the MacOSX Carbon framework.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8595
diff changeset
1623 fi
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1624 else
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1625 AC_MSG_RESULT(no)
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1626 [$5]
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1627 fi
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
1628 ])
9403
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1629
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1630 ##############################################################################
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1631 ##############################################################################
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1632
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1633 # pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1634 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1635 # Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1636 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1637 # This program is free software; you can redistribute it and/or modify
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1638 # it under the terms of the GNU General Public License as published by
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1639 # the Free Software Foundation; either version 2 of the License, or
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1640 # (at your option) any later version.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1641 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1642 # This program is distributed in the hope that it will be useful, but
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1643 # WITHOUT ANY WARRANTY; without even the implied warranty of
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1644 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1645 # General Public License for more details.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1646 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1647 # You should have received a copy of the GNU General Public License
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1648 # along with this program; if not, write to the Free Software
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1649 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1650 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1651 # As a special exception to the GNU General Public License, if you
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1652 # distribute this file as part of a program that contains a
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1653 # configuration script generated by Autoconf, you may include it under
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1654 # the same distribution terms that you use for the rest of that program.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1655
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1656 # PKG_PROG_PKG_CONFIG([MIN-VERSION])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1657 # ----------------------------------
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1658 AC_DEFUN([PKG_PROG_PKG_CONFIG],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1659 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1660 m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1661 AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1662 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1663 AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1664 fi
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1665 if test -n "$PKG_CONFIG"; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1666 _pkg_min_version=m4_default([$1], [0.9.0])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1667 AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1668 if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1669 AC_MSG_RESULT([yes])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1670 else
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1671 AC_MSG_RESULT([no])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1672 PKG_CONFIG=""
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1673 fi
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1674
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1675 fi[]dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1676 ])# PKG_PROG_PKG_CONFIG
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1677
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1678 # PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1679 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1680 # Check to see whether a particular set of modules exists. Similar
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1681 # to PKG_CHECK_MODULES(), but does not set variables or print errors.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1682 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1683 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1684 # Similar to PKG_CHECK_MODULES, make sure that the first instance of
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1685 # this or PKG_CHECK_MODULES is called, or make sure to call
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1686 # PKG_CHECK_EXISTS manually
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1687 # --------------------------------------------------------------
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1688 AC_DEFUN([PKG_CHECK_EXISTS],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1689 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1690 if test -n "$PKG_CONFIG" && \
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1691 AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1692 m4_ifval([$2], [$2], [:])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1693 m4_ifvaln([$3], [else
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1694 $3])dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1695 fi])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1696
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1697
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1698 # _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1699 # ---------------------------------------------
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1700 m4_define([_PKG_CONFIG],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1701 [if test -n "$PKG_CONFIG"; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1702 if test -n "$$1"; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1703 pkg_cv_[]$1="$$1"
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1704 else
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1705 PKG_CHECK_EXISTS([$3],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1706 [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1707 [pkg_failed=yes])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1708 fi
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1709 else
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1710 pkg_failed=untried
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1711 fi[]dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1712 ])# _PKG_CONFIG
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1713
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1714 # _PKG_SHORT_ERRORS_SUPPORTED
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1715 # -----------------------------
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1716 AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1717 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1718 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1719 _pkg_short_errors_supported=yes
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1720 else
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1721 _pkg_short_errors_supported=no
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1722 fi[]dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1723 ])# _PKG_SHORT_ERRORS_SUPPORTED
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1724
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1725
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1726 # PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1727 # [ACTION-IF-NOT-FOUND])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1728 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1729 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1730 # Note that if there is a possibility the first call to
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1731 # PKG_CHECK_MODULES might not happen, you should be sure to include an
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1732 # explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1733 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1734 #
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1735 # --------------------------------------------------------------
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1736 AC_DEFUN([PKG_CHECK_MODULES],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1737 [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1738 AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1739 AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1740
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1741 pkg_failed=no
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1742 AC_MSG_CHECKING([for $1])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1743
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1744 _PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1745 _PKG_CONFIG([$1][_LIBS], [libs], [$2])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1746
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1747 m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1748 and $1[]_LIBS to avoid the need to call pkg-config.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1749 See the pkg-config man page for more details.])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1750
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1751 if test $pkg_failed = yes; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1752 _PKG_SHORT_ERRORS_SUPPORTED
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1753 if test $_pkg_short_errors_supported = yes; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1754 $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1755 else
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1756 $1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1757 fi
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1758 # Put the nasty error message in config.log where it belongs
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1759 echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1760
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1761 ifelse([$4], , [AC_MSG_ERROR(dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1762 [Package requirements ($2) were not met:
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1763
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1764 $$1_PKG_ERRORS
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1765
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1766 Consider adjusting the PKG_CONFIG_PATH environment variable if you
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1767 installed software in a non-standard prefix.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1768
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1769 _PKG_TEXT
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1770 ])],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1771 [AC_MSG_RESULT([no])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1772 $4])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1773 elif test $pkg_failed = untried; then
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1774 ifelse([$4], , [AC_MSG_FAILURE(dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1775 [The pkg-config script could not be found or is too old. Make sure it
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1776 is in your PATH or set the PKG_CONFIG environment variable to the full
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1777 path to pkg-config.
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1778
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1779 _PKG_TEXT
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1780
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1781 To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1782 [$4])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1783 else
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1784 $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1785 $1[]_LIBS=$pkg_cv_[]$1[]_LIBS
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1786 AC_MSG_RESULT([yes])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1787 ifelse([$3], , :, [$3])
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1788 fi[]dnl
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1789 ])# PKG_CHECK_MODULES
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
1790
9645
4531741e5236 configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9596
diff changeset
1791 dnl
4531741e5236 configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9596
diff changeset
1792 dnl External macros.
4531741e5236 configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9596
diff changeset
1793 dnl
4531741e5236 configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9596
diff changeset
1794
10951
97b8d462ef11 Update m4 macros.
Ben Abbott <bpabbott@mac.com>
parents: 10471
diff changeset
1795 m4_include([m4/ax_pthread.m4])
97b8d462ef11 Update m4 macros.
Ben Abbott <bpabbott@mac.com>
parents: 10471
diff changeset
1796 m4_include([m4/ax_blas.m4])
97b8d462ef11 Update m4 macros.
Ben Abbott <bpabbott@mac.com>
parents: 10471
diff changeset
1797 m4_include([m4/ax_blas_f77_func.m4])
97b8d462ef11 Update m4 macros.
Ben Abbott <bpabbott@mac.com>
parents: 10471
diff changeset
1798 m4_include([m4/ax_lapack.m4])