annotate m4/acinclude.m4 @ 22899:31bd8a50d44c

Add Sundials library support * build-aux/subst-config-vals.in.sh: Add configuration variables for sundials_ida, sundials_nvecserial and klu libraries. * build-aux/subst-cross-config-vals.in.sh: Add configuration variables for sundials_ida, sundials_nvecserial and klu libraries. * configure.ac: Check for sundials_ida, sundials_nvecserial and klu headers and functions. Check whether sundials_ida has been configured with double precision. Set configuration variables and flags. * libinterp/build-env.h: Add variables to build_env namespace. * libinterp/build-env.in.cc: Add variables to build_env namespace. * m4/acinclude.m4: Add macro to test whether sundials_ida has been configured with double precision. * src/mkoctfile.in.cc: Get variables in order to generate oct-file.
author Francesco Faccio <francesco.faccio@mail.polimi.it>
date Tue, 23 Aug 2016 02:13:28 +0200
parents 953232868883
children 21707d6a02c7
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
22323
bac0d6f07a3e maint: Update copyright notices for 2016.
John W. Eaton <jwe@octave.org>
parents: 22286
diff changeset
3 dnl Copyright (C) 1995-2016 John W. Eaton
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
4 dnl
1232
5f1bb459e99c [project @ 1995-04-10 05:20:52 by jwe]
jwe
parents:
diff changeset
5 dnl This file is part of Octave.
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
6 dnl
1232
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
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22509
diff changeset
8 dnl under the terms of the GNU General Public License as published by
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22509
diff changeset
9 dnl the Free Software Foundation; either version 3 of the License, or
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22509
diff changeset
10 dnl (at your option) any later version.
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
11 dnl
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22509
diff changeset
12 dnl Octave is distributed in the hope that it will be useful, but
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22509
diff changeset
13 dnl WITHOUT ANY WARRANTY; without even the implied warranty of
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22509
diff changeset
14 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22509
diff changeset
15 dnl GNU General Public License for more details.
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
16 dnl
1232
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
9577
b03062e16c6f copyirght & FIXME in aclocal.m4
Jaroslav Hajek <highegg@gmail.com>
parents: 9568
diff changeset
21 dnl Copyright (C) 2008 - 2009 Free Software Foundation, Inc.
b03062e16c6f copyirght & FIXME in aclocal.m4
Jaroslav Hajek <highegg@gmail.com>
parents: 9568
diff changeset
22 dnl
9525
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
23 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
24 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
25 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
26 dnl
9525
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
27 ifdef([m4_ifblank],[],[
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
28 m4_define([m4_ifblank],
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
29 [m4_if(m4_translit([[$1]], [ ][ ][
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
30 ]), [], [$2], [$3])])])
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
31 dnl
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
32 ifdef([m4_ifnblank],[],[
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
33 m4_define([m4_ifnblank],
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
34 [m4_if(m4_translit([[$1]], [ ][ ][
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
35 ]), [], [$3], [$2])])])
691545147aca compatibility for earlier autoconfs
Jaroslav Hajek <highegg@gmail.com>
parents: 9523
diff changeset
36 dnl
2813
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
37 dnl ----------------------------------------------------------------------
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
38 dnl
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
39
2813
d45d48b3dcde [project @ 1997-03-13 22:39:15 by jwe]
jwe
parents: 2641
diff changeset
40 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
41 dnl Alphabetical list of macros in the OCTAVE_ namespace
4360
1d7180ab9df1 [project @ 2003-02-24 02:57:24 by jwe]
jwe
parents: 4192
diff changeset
42 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
43
4366
ad851d04b396 [project @ 2003-03-05 09:49:18 by jwe]
jwe
parents: 4360
diff changeset
44 dnl
15133
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
45 dnl Check if the Carbon Framework defines CGDisplayBitsPerPixel.
10380
60acc47c203f configure checks for complex element setter/reference accessor methods
John W. Eaton <jwe@octave.org>
parents: 10331
diff changeset
46 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
47 AC_DEFUN([OCTAVE_CARBON_CGDISPLAYBITSPERPIXEL], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
48 AC_CACHE_CHECK([whether CGDisplayBitsPerPixel is defined in the Carbon Framework],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
49 [octave_cv_func_carbon_cgdisplaybitsperpixel],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
50 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
51 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
52 #include <Carbon/Carbon.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
53 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
54 CGDirectDisplayID display = CGMainDisplayID ();
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
55 size_t depth = CGDisplayBitsPerPixel (display);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
56 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
57 octave_cv_func_carbon_cgdisplaybitsperpixel=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
58 octave_cv_func_carbon_cgdisplaybitsperpixel=no)
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
59 AC_LANG_POP(C++)
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
60 ])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
61 if test $octave_cv_func_carbon_cgdisplaybitsperpixel = yes; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
62 AC_DEFINE(HAVE_CARBON_CGDISPLAYBITSPERPIXEL, 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
63 [Define to 1 if Carbon Framework has CGDisplayBitsPerPixel.])
3107
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
64 fi
a8dcfbf87ea3 [project @ 1997-11-19 22:34:59 by jwe]
jwe
parents: 3089
diff changeset
65 ])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
66 dnl
15133
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
67 dnl Check if C compiler handles FLAG command line option. If two
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
68 dnl arguments are specified, execute the second arg as shell commands.
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
69 dnl Otherwise, add FLAG to CFLAGS if the compiler accepts the flag.
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
70 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
71 AC_DEFUN([OCTAVE_CC_FLAG], [
17661
1978a6c76aa9 Use user-specified SED during build process (bug #40273).
Rik <rik@octave.org>
parents: 17615
diff changeset
72 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
73 AC_MSG_CHECKING([whether ${CC-cc} accepts $1])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
74 AC_CACHE_VAL([octave_cv_cc_flag_$ac_safe],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
75 [AC_LANG_PUSH(C)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
76 ac_octave_save_CFLAGS="$CFLAGS"
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
77 CFLAGS="$CFLAGS $1"
5177
86fa011d6404 [project @ 2005-03-03 00:32:34 by jwe]
jwe
parents: 5094
diff changeset
78 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
79 [eval "octave_cv_cc_flag_$ac_safe=yes"],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
80 [eval "octave_cv_cc_flag_$ac_safe=no"])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
81 CFLAGS="$ac_octave_save_CFLAGS"
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
82 AC_LANG_POP(C)
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
83 ])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
84 if eval "test \"`echo '$octave_cv_cc_flag_'$ac_safe`\" = yes"; then
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
85 AC_MSG_RESULT([yes])
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
86 ifelse([$2], ,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
87 [CFLAGS="$CFLAGS $1"
3131
9c5160c83bd2 [project @ 1998-01-29 04:46:33 by jwe]
jwe
parents: 3130
diff changeset
88 AC_MSG_RESULT([adding $1 to CFLAGS])], [$2])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
89 else
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
90 AC_MSG_RESULT([no])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
91 ifelse([$3], , , [$3])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
92 fi
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
93 ])
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
94 dnl
17965
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
95 dnl Check for broken stl_algo.h header file in gcc versions 4.8.0, 4.8.1, 4.8.2
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
96 dnl which leads to failures in nth_element.
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
97 dnl
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
98 AC_DEFUN([OCTAVE_CHECK_BROKEN_STL_ALGO_H], [
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
99 AC_CACHE_CHECK([whether stl_algo.h is broken],
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
100 [octave_cv_broken_stl_algo_h],
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
101 [AC_LANG_PUSH(C++)
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
102 AC_RUN_IFELSE([AC_LANG_PROGRAM([[
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
103 // Based on code from a GCC test program.
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
104
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
105 // Copyright (C) 2013 Free Software Foundation, Inc.
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
106 //
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
107 // This file is part of the GNU ISO C++ Library. This library is free
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
108 // software; you can redistribute it and/or modify it under the
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
109 // terms of the GNU General Public License as published by the
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
110 // Free Software Foundation; either version 3, or (at your option)
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
111 // any later version.
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
112
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
113 // This library is distributed in the hope that it will be useful,
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
114 // but WITHOUT ANY WARRANTY; without even the implied warranty of
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
115 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
116 // GNU General Public License for more details.
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
117
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
118 // You should have received a copy of the GNU General Public License along
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
119 // with this library; see the file COPYING3. If not see
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
120 // <http://www.gnu.org/licenses/>.
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
121
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
122 // 25.3.2 [lib.alg.nth.element]
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
123
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
124 // { dg-options "-std=gnu++11" }
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
125
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
126 #include <algorithm>
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
127 #include <vector>
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
128 ]], [[
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
129 std::vector<int> v (7);
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
130
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
131 v[0] = 207089;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
132 v[1] = 202585;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
133 v[2] = 180067;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
134 v[3] = 157549;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
135 v[4] = 211592;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
136 v[5] = 216096;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
137 v[6] = 207089;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
138
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
139 std::nth_element (v.begin (), v.begin () + 3, v.end ());
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
140
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
141 return v[3] == 207089 ? 0 : 1;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
142 ]])],
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
143 octave_cv_broken_stl_algo_h=no,
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
144 octave_cv_broken_stl_algo_h=yes,
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
145 [case "$GXX_VERSION" in
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
146 *4.8.2*)
17967
303157af491f acinclude.m4: Fix undefined value in macro CHECK_BROKEN_STL_ALGO_H when cross-compiling.
Rik <rik@octave.org>
parents: 17965
diff changeset
147 octave_cv_broken_stl_algo_h=yes
303157af491f acinclude.m4: Fix undefined value in macro CHECK_BROKEN_STL_ALGO_H when cross-compiling.
Rik <rik@octave.org>
parents: 17965
diff changeset
148 ;;
303157af491f acinclude.m4: Fix undefined value in macro CHECK_BROKEN_STL_ALGO_H when cross-compiling.
Rik <rik@octave.org>
parents: 17965
diff changeset
149 *)
303157af491f acinclude.m4: Fix undefined value in macro CHECK_BROKEN_STL_ALGO_H when cross-compiling.
Rik <rik@octave.org>
parents: 17965
diff changeset
150 octave_cv_broken_stl_algo_h=no
17965
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
151 ;;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
152 esac
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
153 ])
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
154 AC_LANG_POP(C++)
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
155 ])
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
156 if test "$GXX" = yes; then
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
157 if test $octave_cv_broken_stl_algo_h = yes; then
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
158 case "$GXX_VERSION" in
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
159 4.8.[[012]])
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
160 ;;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
161 *)
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
162 octave_cv_broken_stl_algo_h=no
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
163 warn_stl_algo_h="UNEXPECTED: found nth_element broken in g++ $GXX_VERSION. Refusing to fix except for g++ 4.8.0, 4.8.1, or 4.8.2. You appear to have g++ $GXX_VERSION."
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
164 OCTAVE_CONFIGURE_WARNING([warn_stl_algo_h])
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
165 ;;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
166 esac
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
167 else
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
168 case "$GXX_VERSION" in
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
169 4.8.2)
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
170 warn_stl_algo_h="UNEXPECTED: found nth_element working in g++ 4.8.2. Has it been patched on your system?"
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
171 OCTAVE_CONFIGURE_WARNING([warn_stl_algo_h])
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
172 ;;
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
173 esac
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
174 fi
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
175 else
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
176 octave_cv_broken_stl_algo_h=no
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
177 warn_stl_algo_h="UNEXPECTED: nth_element test failed. Refusing to fix except for g++ 4.8.2."
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
178 OCTAVE_CONFIGURE_WARNING([warn_stl_algo_h])
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
179 fi
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
180 ])
1d58abc740c0 acinclude.m4: Place new macro CHECK_BROKEN_STL_ALGO_H in alphabetical ordering.
Rik <rik@octave.org>
parents: 17888
diff changeset
181 dnl
21160
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
182 dnl Check whether CXSparse is version 2.2 or later
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
183 dnl FIXME: This test uses a version number. It potentially could
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
184 dnl be re-written to actually call a function, but is it worth it?
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
185 dnl
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
186 AC_DEFUN([OCTAVE_CHECK_CXSPARSE_VERSION_OK], [
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
187 AC_CACHE_CHECK([whether CXSparse is version 2.2 or later],
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
188 [octave_cv_cxsparse_version_ok],
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
189 [AC_LANG_PUSH(C++)
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
190 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
191 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
192 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
193 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
21160
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
194 AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
195 #if defined (HAVE_SUITESPARSE_CS_H)
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
196 #include <suitesparse/cs.h>
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
197 #elif defined (HAVE_UFSPARSE_CS_H)
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
198 #include <ufsparse/cs.h>
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
199 #elif defined (HAVE_CXSPARSE_CS_H)
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
200 #include <cxsparse/cs.h>
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
201 #elif defined (HAVE_CS_H)
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
202 #include <cs.h>
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
203 #endif
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
204 ]], [[
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
205 #if (defined (HAVE_CXSPARSE) \
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
206 && (! defined (CS_VER) \
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
207 || CS_VER < 2 \
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
208 || (CS_VER == 2 && CS_SUBVER < 2)))
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
209 #error "Octave requires CXSparse version 2.2 or later"
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
210 #endif
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
211 ]])],
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
212 octave_cv_cxsparse_version_ok=yes,
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
213 octave_cv_cxsparse_version_ok=no)
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
214 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
215 CXXFLAGS="$ac_octave_save_CXXFLAGS"
21160
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
216 AC_LANG_POP(C++)
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
217 ])
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
218 if test $octave_cv_cxsparse_version_ok = yes; then
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
219 AC_DEFINE(HAVE_CXSPARSE_VERSION_OK, 1,
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
220 [Define to 1 if CXSparse is version 2.2 or later.])
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
221 fi
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
222 ])
b5b531ba93ce build: Use configure-time test to check CXSparse version.
Rik <rik@octave.org>
parents: 21150
diff changeset
223 dnl
15969
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
224 dnl Check whether the FFTW library supports multi-threading. This macro
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
225 dnl should be called once per FFTW precision passing in the library
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
226 dnl variant (e.g. "fftw3") and a function in the thread support API
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
227 dnl (e.g. "fftw_plan_with_nthreads"). Depending on how FFTW was built,
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
228 dnl the thread functions could be compiled into the main FFTW library or
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
229 dnl could be a separate add-on library that is passed to the linker
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
230 dnl ahead of the main FFTW library.
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
231 dnl
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
232 AC_DEFUN([OCTAVE_CHECK_FFTW_THREADS], [
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
233 ac_octave_save_CPPFLAGS="$CPPFLAGS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
234 ac_octave_save_LDFLAGS="$LDFLAGS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
235 ac_octave_save_LIBS="$LIBS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
236 CPPFLAGS="$m4_toupper([$1])_CPPFLAGS $CPPFLAGS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
237 LDFLAGS="$m4_toupper([$1])_LDFLAGS $LDFLAGS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
238 LIBS="$m4_toupper([$1])_LIBS $LIBS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
239 AC_CACHE_CHECK([for $1 multi-threading support],
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
240 [octave_cv_[$1]_threads_lib],
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
241 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
242 #include <fftw3.h>
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
243 ]], [[
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
244 $2 (2);
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
245 ]])],
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
246 [octave_cv_[$1]_threads_lib=yes],
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
247 [LIBS="-l[$1]_threads $LIBS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
248 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
249 #include <fftw3.h>
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
250 ]], [[
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
251 $2 (2);
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
252 ]])],
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
253 [octave_cv_[$1]_threads_lib="-l[$1]_threads"],
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
254 [octave_cv_[$1]_threads_lib=no])
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
255 ])
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
256 ])
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
257 case $octave_cv_[$1]_threads_lib in
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
258 -l*)
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
259 m4_toupper([$1])_LIBS="$octave_cv_[$1]_threads_lib $m4_toupper([$1])_LIBS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
260 ;;
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
261 no)
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
262 AC_MSG_WARN([No $1 multi-threading support found.])
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
263 AC_MSG_WARN([The single-threaded library will be used instead.])
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
264 ;;
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
265 esac
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
266 if test $octave_cv_[$1]_threads_lib != no; then
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
267 AC_DEFINE([HAVE_]m4_toupper([$1])[_THREADS], 1,
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
268 [Define to 1 if ]m4_toupper([$1])[ has multi-threading support.])
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
269 fi
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
270 CPPFLAGS="$ac_octave_save_CPPFLAGS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
271 LDFLAGS="$ac_octave_save_LDFLAGS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
272 LIBS="$ac_octave_save_LIBS"
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
273 ])
139f4b19a3ac build: Improve detection of FFTW multi-threading
Mike Miller <mtmiller@ieee.org>
parents: 15863
diff changeset
274 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
275 dnl Check whether a math mapper function is available in <cmath>.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
276 dnl Will define HAVE_CMATH_FUNC if there is a double variant and
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
277 dnl HAVE_CMATH_FUNCF if there is a float variant.
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
278 dnl Currently capable of checking for functions with single
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
279 dnl argument and returning bool/int/real.
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
280 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
281 AC_DEFUN([OCTAVE_CHECK_FUNC_CMATH], [
17661
1978a6c76aa9 Use user-specified SED during build process (bug #40273).
Rik <rik@octave.org>
parents: 17615
diff changeset
282 ac_safe=`echo "$1" | $SED 'y% ./+-:=%___p___%'`
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
283
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
284 AC_CACHE_CHECK([for std::$1 in <cmath>],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
285 [octave_cv_func_cmath_$ac_safe],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
286 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
287 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
288 #include <cmath>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
289 void take_func (bool (*func) (double x));
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
290 void take_func (int (*func) (double x));
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
291 void take_func (double (*func) (double x));
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
292 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
293 take_func(std::$1);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
294 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
295 [eval "octave_cv_func_cmath_$ac_safe=yes"],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
296 [eval "octave_cv_func_cmath_$ac_safe=no"])
3888
70ebd3d672a1 [project @ 2002-04-04 01:05:53 by jwe]
jwe
parents: 3887
diff changeset
297 AC_LANG_POP(C++)
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
298 ])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
299 if eval "test \"`echo '$octave_cv_func_cmath_'$ac_safe`\" = yes"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
300 AC_DEFINE(AS_TR_CPP([[HAVE_CMATH_][$1]]), 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
301 [Define to 1 if <cmath> provides $1.])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
302 fi
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
303
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
304 AC_CACHE_CHECK([for std::$1 (float variant) in <cmath>],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
305 [octave_cv_func_cmath_f$ac_safe],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
306 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
307 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
308 #include <cmath>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
309 void take_func (bool (*func) (float x));
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
310 void take_func (int (*func) (float x));
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
311 void take_func (float (*func) (float x));
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
312 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
313 take_func(std::$1);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
314 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
315 [eval "octave_cv_func_cmath_f$ac_safe=yes"],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
316 [eval "octave_cv_func_cmath_f$ac_safe=no"])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
317 AC_LANG_POP(C++)
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
318 ])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
319 if eval "test \"`echo '$octave_cv_func_cmath_f'$ac_safe`\" = yes"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
320 AC_DEFINE(AS_TR_CPP([[HAVE_CMATH_][$1][F]]), 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
321 [Define to 1 if <cmath> provides float variant of $1.])
3126
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
322 fi
0f6ec7b761a6 [project @ 1998-01-16 05:15:43 by jwe]
jwe
parents: 3107
diff changeset
323 ])
3130
02766207b74c [project @ 1998-01-25 08:27:23 by jwe]
jwe
parents: 3126
diff changeset
324 dnl
21945
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
325 dnl Check whether a complex-valued function is available in <complex>.
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
326 dnl Will define HAVE_COMPLEX_STD_FUNC if the function is available in the
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
327 dnl std namespace and is callable on both std::complex<double> and
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
328 dnl std::complex<float>. The return type of the function is expected to
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
329 dnl be of the same std::complex<T> type.
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
330 dnl
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
331 AC_DEFUN([OCTAVE_CHECK_FUNC_COMPLEX], [
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
332 ac_safe=`echo "$1" | $SED 'y% ./+-:=%___p___%'`
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
333
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
334 AC_CACHE_CHECK([for std::$1 in <complex>],
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
335 [octave_cv_func_complex_std_$ac_safe],
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
336 [AC_LANG_PUSH(C++)
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
337 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
338 #include <complex>
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
339 ]], [[
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
340 std::complex<double> z = std::$1 (std::complex<double> (1.0, 1.0));
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
341 std::complex<float> c = std::$1 (std::complex<float> (1.0, 1.0));
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
342 ]])],
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
343 [eval "octave_cv_func_complex_std_$ac_safe=yes"],
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
344 [eval "octave_cv_func_complex_std_$ac_safe=no"])
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
345 AC_LANG_POP(C++)
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
346 ])
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
347 if eval "test \"`echo '$octave_cv_func_complex_std_'$ac_safe`\" = yes"; then
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
348 AC_DEFINE(AS_TR_CPP([[HAVE_COMPLEX_STD_][$1]]), 1,
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
349 [Define to 1 if <complex> provides std::$1(std::complex<T>).])
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
350 fi
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
351 ])
e9765b62d4e8 Use C++11 standard complex trig functions when available (bug #44310, bug #45507)
Mike Miller <mtmiller@octave.org>
parents: 21724
diff changeset
352 dnl
22286
f394436a4025 build: improve QScintilla detection to work with distro naming schemes (bug #48773)
Mike Miller <mtmiller@octave.org>
parents: 22257
diff changeset
353 dnl Check whether QScintilla has version 2.6.0 or later
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
354 dnl FIXME: This test uses a version number. It potentially could
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
355 dnl be re-written to actually call the function, but is it worth it?
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
356 dnl
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
357 AC_DEFUN([OCTAVE_CHECK_QSCINTILLA_VERSION], [
22286
f394436a4025 build: improve QScintilla detection to work with distro naming schemes (bug #48773)
Mike Miller <mtmiller@octave.org>
parents: 22257
diff changeset
358 AC_CACHE_CHECK([whether QScintilla has version 2.6.0 or later],
16733
2723d1144f11 added test for qscintilla version 2.6.0
Torsten <ttl@justmail.de>
parents: 16663
diff changeset
359 [octave_cv_version_2_6_0],
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
360 [AC_LANG_PUSH(C++)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
361 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
362 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
363 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
364 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
20149
0afc06948ba7 acinclude.m4: Use simpler AC_PREPROC_IFELSE test for checking Qscintilla version.
Rik <rik@octave.org>
parents: 19816
diff changeset
365 AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
366 #include <Qsci/qsciglobal.h>
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
367 ]], [[
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
368 #if QSCINTILLA_VERSION < 0x020600
15295
43e484fa7e42 build: Clean up configure macros for building GUI.
Rik <rik@octave.org>
parents: 15294
diff changeset
369 #error Old FindFirst function found.
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
370 #endif
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
371 ]])],
16733
2723d1144f11 added test for qscintilla version 2.6.0
Torsten <ttl@justmail.de>
parents: 16663
diff changeset
372 octave_cv_version_2_6_0=yes,
2723d1144f11 added test for qscintilla version 2.6.0
Torsten <ttl@justmail.de>
parents: 16663
diff changeset
373 octave_cv_version_2_6_0=no)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
374 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
375 CXXFLAGS="$ac_octave_save_CXXFLAGS"
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
376 AC_LANG_POP(C++)
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
377 ])
16733
2723d1144f11 added test for qscintilla version 2.6.0
Torsten <ttl@justmail.de>
parents: 16663
diff changeset
378 if test $octave_cv_version_2_6_0 = yes; then
2723d1144f11 added test for qscintilla version 2.6.0
Torsten <ttl@justmail.de>
parents: 16663
diff changeset
379 AC_DEFINE(HAVE_QSCI_VERSION_2_6_0, 1,
22286
f394436a4025 build: improve QScintilla detection to work with distro naming schemes (bug #48773)
Mike Miller <mtmiller@octave.org>
parents: 22257
diff changeset
380 [Define to 1 if QScintilla is of Version 2.6.0 or later.])
5076
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
381 fi
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
382 ])
dc5f6082aa74 [project @ 2004-11-12 03:49:26 by jwe]
jwe
parents: 4853
diff changeset
383 dnl
15133
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
384 dnl Check if Fortran compiler has the intrinsic function ISNAN.
14550
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
385 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
386 AC_DEFUN([OCTAVE_CHECK_FUNC_FORTRAN_ISNAN], [
14550
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
387 AC_CACHE_CHECK([whether $F77 has the intrinsic function ISNAN],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
388 [octave_cv_func_fortran_isnan],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
389 [AC_LANG_PUSH(Fortran 77)
17978
86846ce0371a acinclude.m4: Clean up indentation of Fortran code tests.
Rik <rik@octave.org>
parents: 17967
diff changeset
390 AC_COMPILE_IFELSE([[
86846ce0371a acinclude.m4: Clean up indentation of Fortran code tests.
Rik <rik@octave.org>
parents: 17967
diff changeset
391 program foo
14550
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
392 implicit none
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
393 real x
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
394 double precision y
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
395 if (isnan(x)) then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
396 print *, 'x is NaN'
14550
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
397 end if
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
398 if (isnan(y)) then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
399 print *, 'y is NaN'
14550
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
400 end if
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
401 end program
17978
86846ce0371a acinclude.m4: Clean up indentation of Fortran code tests.
Rik <rik@octave.org>
parents: 17967
diff changeset
402 ]],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
403 octave_cv_func_fortran_isnan=yes, octave_cv_func_fortran_isnan=no)
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
404 AC_LANG_POP(Fortran 77)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
405 ])
14550
bc4c574ab3b6 Add configure check for isnan in fortran.
Carlo de Falco <cdf@users.sourceforge.net>
parents: 14419
diff changeset
406 ])
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
407 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
408 dnl Check if function gluTessCallback is called with "(...)".
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
409 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
410 AC_DEFUN([OCTAVE_CHECK_FUNC_GLUTESSCALLBACK_THREEDOTS], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
411 AC_CACHE_CHECK([whether gluTessCallback is called with "(...)"],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
412 [octave_cv_func_glutesscallback_threedots],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
413 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
414 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
415 #if defined (HAVE_GL_GLU_H)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
416 # include <GL/glu.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
417 #elif defined HAVE_OPENGL_GLU_H || defined HAVE_FRAMEWORK_OPENGL
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
418 # include <OpenGL/glu.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
419 #endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
420 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
421 GLvoid (*func)(...);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
422 gluTessCallback(0, 0, func);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
423 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
424 octave_cv_func_glutesscallback_threedots=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
425 octave_cv_func_glutesscallback_threedots=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
426 AC_LANG_POP(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
427 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
428 if test $octave_cv_func_glutesscallback_threedots = yes; then
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
429 AC_DEFINE(HAVE_GLUTESSCALLBACK_THREEDOTS, 1,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
430 [Define to 1 if gluTessCallback is called with (...).])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
431 fi
9596
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
432 ])
f26229391ea1 configure.in, aclocal.m4: check fortran integer size
John W. Eaton <jwe@octave.org>
parents: 9577
diff changeset
433 dnl
18036
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
434 dnl Check whether Qt provides QFont::Monospace
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
435 dnl
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
436 AC_DEFUN([OCTAVE_CHECK_QFONT_MONOSPACE], [
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
437 AC_CACHE_CHECK([whether Qt provides QFont::Monospace],
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
438 [octave_cv_decl_qfont_monospace],
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
439 [AC_LANG_PUSH(C++)
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
440 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
441 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
442 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
443 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
18036
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
444 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
445 #include <QFont>
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
446 ]], [[
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
447 QFont::StyleHint hint = QFont::Monospace;
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
448 ]])],
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
449 octave_cv_decl_qfont_monospace=yes,
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
450 octave_cv_decl_qfont_monospace=no)
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
451 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
452 CXXFLAGS="$ac_octave_save_CXXFLAGS"
18036
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
453 AC_LANG_POP(C++)
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
454 ])
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
455 if test $octave_cv_decl_qfont_monospace = yes; then
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
456 AC_DEFINE(HAVE_QFONT_MONOSPACE, 1,
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
457 [Define to 1 if Qt provides QFont::Monospace.])
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
458 fi
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
459 ])
c97ee13f1027 fix build for systems without QFont::Monospace
John W. Eaton <jwe@octave.org>
parents: 17978
diff changeset
460 dnl
18973
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
461 dnl Check whether Qt provides QFont::ForceIntegerMetrics
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
462 dnl
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
463 AC_DEFUN([OCTAVE_CHECK_QFONT_FORCE_INTEGER_METRICS], [
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
464 AC_CACHE_CHECK([whether Qt provides QFont::ForceIntegerMetrics],
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
465 [octave_cv_decl_qfont_force_integer_metrics],
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
466 [AC_LANG_PUSH(C++)
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
467 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
468 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
469 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
470 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
18973
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
471 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
472 #include <QFont>
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
473 ]], [[
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
474 QFont::StyleStrategy strategy = QFont::ForceIntegerMetrics;
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
475 ]])],
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
476 octave_cv_decl_qfont_force_integer_metrics=yes,
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
477 octave_cv_decl_qfont_force_integer_metrics=no)
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
478 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
479 CXXFLAGS="$ac_octave_save_CXXFLAGS"
18973
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
480 AC_LANG_POP(C++)
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
481 ])
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
482 if test $octave_cv_decl_qfont_force_integer_metrics = yes; then
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
483 AC_DEFINE(HAVE_QFONT_FORCE_INTEGER_METRICS, 1,
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
484 [Define to 1 if Qt provides QFont::ForceIntegerMetrics.])
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
485 fi
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
486 ])
625e3bb65885 don't require Qt 4.7 (bug #42657)
John W. Eaton <jwe@octave.org>
parents: 18141
diff changeset
487 dnl
22286
f394436a4025 build: improve QScintilla detection to work with distro naming schemes (bug #48773)
Mike Miller <mtmiller@octave.org>
parents: 22257
diff changeset
488 dnl Check whether QScintilla SetPlaceholderText function exists.
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
489 dnl FIXME: This test uses a version number. It potentially could
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
490 dnl be re-written to actually call the function, but is it worth it?
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
491 dnl
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
492 AC_DEFUN([OCTAVE_CHECK_FUNC_SETPLACEHOLDERTEXT], [
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
493 AC_CACHE_CHECK([whether Qt has SetPlaceholderText function],
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
494 [octave_cv_func_setplaceholdertext],
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
495 [AC_LANG_PUSH(C++)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
496 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
497 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
498 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
499 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
20151
88c0f8f56a4f acinclude.m4: Use simpler AC_PREPROC_IFELSE test for checking SETPLACEHOLDERTEXT.
Rik <rik@octave.org>
parents: 20149
diff changeset
500 AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
501 #include <Qt/qglobal.h>
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
502 ]], [[
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
503 #if QT_VERSION < 0x040700
15295
43e484fa7e42 build: Clean up configure macros for building GUI.
Rik <rik@octave.org>
parents: 15294
diff changeset
504 #error No SetPlacholderText function available.
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
505 #endif
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
506 ]])],
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
507 octave_cv_func_setplaceholdertext=yes,
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
508 octave_cv_func_setplaceholdertext=no)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
509 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
510 CXXFLAGS="$ac_octave_save_CXXFLAGS"
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
511 AC_LANG_POP(C++)
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
512 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
513 if test $octave_cv_func_setplaceholdertext = yes; then
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
514 AC_DEFINE(HAVE_SETPLACEHOLDERTEXT, 1,
15291
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
515 [Define to 1 if you have the Qt SetPlaceholderText function.])
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
516 fi
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
517 ])
7ae14907ae43 build: Add tests for specific Qt functions to configure.ac
Rik <rik@octave.org>
parents: 15250
diff changeset
518 dnl
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
519 dnl Check whether the Qt QAbstractItemModel::beginResetModel function exists.
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
520 dnl Also checks for QAbstractItemModel::endResetModel. These are two of the
17111
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
521 dnl newest Qt functions that the Octave GUI depends on, added in Qt 4.6.
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
522 dnl
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
523 AC_DEFUN([OCTAVE_CHECK_FUNC_QABSTRACTITEMMODEL_BEGINRESETMODEL], [
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
524 AC_CACHE_CHECK([whether Qt has the QAbstractItemModel::beginResetModel function],
17111
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
525 [octave_cv_func_qabstractitemmodel_beginresetmodel],
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
526 [AC_LANG_PUSH(C++)
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
527 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
528 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
529 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
530 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
17111
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
531 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
532 #include <QAbstractItemModel>
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
533 class item_model : public QAbstractItemModel
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
534 {
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
535 public:
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
536 item_model (QObject *parent = 0) : QAbstractItemModel (parent) {}
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
537 ~item_model () {}
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
538 QModelIndex index (int, int, const QModelIndex& m) const { return m; }
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
539 QModelIndex parent (const QModelIndex& m) const { return m; }
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
540 int columnCount (const QModelIndex&) const { return 0; }
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
541 int rowCount (const QModelIndex&) const { return 0; }
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
542 QVariant data (const QModelIndex&, int) const { return QVariant(); }
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
543 void update_model ()
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
544 {
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
545 this->beginResetModel ();
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
546 this->endResetModel ();
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
547 }
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
548 };
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
549 ]], [[
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
550 item_model model;
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
551 model.update_model ();
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
552 ]])],
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
553 octave_cv_func_qabstractitemmodel_beginresetmodel=yes,
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
554 octave_cv_func_qabstractitemmodel_beginresetmodel=no)
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
555 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
556 CXXFLAGS="$ac_octave_save_CXXFLAGS"
17111
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
557 AC_LANG_POP(C++)
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
558 ])
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
559 if test $octave_cv_func_qabstractitemmodel_beginresetmodel = yes; then
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
560 AC_DEFINE(HAVE_QABSTRACTITEMMODEL_BEGINRESETMODEL, 1,
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
561 [Define to 1 if Qt has the QAbstractItemModel::beginResetModel() function.])
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
562 fi
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
563 ])
bb713af2e1d9 build: detect Qt functions required for building the gui
Mike Miller <mtmiller@ieee.org>
parents: 17034
diff changeset
564 dnl
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
565 dnl Check whether the Qt QTabWidget::setMovable function exists.
18216
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
566 dnl This function was added in Qt 4.5.
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
567 dnl
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
568 AC_DEFUN([OCTAVE_CHECK_FUNC_QTABWIDGET_SETMOVABLE], [
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
569 AC_CACHE_CHECK([whether Qt has the QTabWidget::setMovable function],
18216
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
570 [octave_cv_func_qtabwidget_setmovable],
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
571 [AC_LANG_PUSH(C++)
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
572 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
573 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
574 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
575 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
18216
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
576 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
577 #include <QTabWidget>
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
578 class tab_widget : public QTabWidget
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
579 {
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
580 public:
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
581 tab_widget (QWidget *parent = 0) : QTabWidget (parent) { this->setMovable (true); }
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
582 ~tab_widget () {}
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
583 };
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
584 ]], [[
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
585 tab_widget tw;
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
586 ]])],
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
587 octave_cv_func_qtabwidget_setmovable=yes,
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
588 octave_cv_func_qtabwidget_setmovable=no)
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
589 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
590 CXXFLAGS="$ac_octave_save_CXXFLAGS"
18216
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
591 AC_LANG_POP(C++)
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
592 ])
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
593 if test $octave_cv_func_qtabwidget_setmovable = yes; then
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
594 AC_DEFINE(HAVE_QTABWIDGET_SETMOVABLE, 1,
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
595 [Define to 1 if Qt has the QTabWidget::setMovable function.])
18216
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
596 fi
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
597 ])
e54cfaae830b Make editor tabs draggable if feature is available
Richard Crozier richard dot crozier(at)yahoo.co.uk
parents: 18141
diff changeset
598 dnl
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
599 dnl Check whether the QsciScintilla::findFirstInSelection function exists.
18854
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
600 dnl This function was added in QScintilla 2.7.
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
601 dnl
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
602 AC_DEFUN([OCTAVE_CHECK_FUNC_QSCI_FINDSELECTION], [
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
603 AC_CACHE_CHECK([whether QSci has the QsciScintilla::findFirstInSelection function],
18854
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
604 [octave_cv_func_qsci_findfirstinselection],
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
605 [AC_LANG_PUSH(C++)
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
606 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
607 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
608 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
609 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
18854
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
610 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
611 #include <Qsci/qsciscintilla.h>
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
612 class qsci : public QsciScintilla
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
613 {
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
614 public:
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
615 qsci (QWidget *parent = 0) : QsciScintilla (parent)
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
616 { this->findFirstInSelection (QString ("x"),true,true,true,true,true); }
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
617 ~qsci () {}
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
618 };
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
619 ]], [[
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
620 qsci edit;
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
621 ]])],
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
622 octave_cv_func_qsci_findfirstinselection=yes,
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
623 octave_cv_func_qsci_findfirstinselection=no)
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
624 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
625 CXXFLAGS="$ac_octave_save_CXXFLAGS"
18854
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
626 AC_LANG_POP(C++)
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
627 ])
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
628 if test $octave_cv_func_qsci_findfirstinselection = yes; then
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
629 AC_DEFINE(HAVE_QSCI_FINDSELECTION, 1,
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
630 [Define to 1 if Qsci has the QsciScintilla::findFirstInSelection function.])
18854
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
631 fi
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
632 ])
0a66861d8069 implementation of search in selection in gui editor (bbug #41196)
Torsten <ttl@justmail.de>
parents: 18216
diff changeset
633 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
634 dnl Check whether HDF5 library has version 1.6 API functions.
14605
28e53daab1f8 Cleanup on autoconf warnings
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 14550
diff changeset
635 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
636 AC_DEFUN([OCTAVE_CHECK_HDF5_HAS_VER_16_API], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
637 AC_CACHE_CHECK([whether HDF5 library has enforced version 1.6 API],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
638 [octave_cv_hdf5_has_ver_16_api],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
639 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
640 #include <hdf5.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
641 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
642 H5Eset_auto (0, 0);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
643 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
644 octave_cv_hdf5_has_ver_16_api=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
645 octave_cv_hdf5_has_ver_16_api=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
646 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
647 if test $octave_cv_hdf5_has_ver_16_api != yes; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
648 AC_DEFINE(HAVE_HDF5_18, 1, [Define to 1 if >=HDF5-1.8 is available.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
649 fi
14605
28e53daab1f8 Cleanup on autoconf warnings
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 14550
diff changeset
650 ])
28e53daab1f8 Cleanup on autoconf warnings
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 14550
diff changeset
651 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
652 dnl Usage:
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
653 dnl OCTAVE_CHECK_LIB(LIBRARY, DOC-NAME, WARN-MSG, HEADER, FUNC,
22103
9811e7875d52 build: allow pkg-config name to differ from library name
Mike Miller <mtmiller@octave.org>
parents: 22039
diff changeset
654 dnl LANG, DOC-STRING, EXTRA-CHECK, PKG-CONFIG-NAME)
14605
28e53daab1f8 Cleanup on autoconf warnings
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 14550
diff changeset
655 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
656 AC_DEFUN([OCTAVE_CHECK_LIB], [
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
657 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
658 [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
659 [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
660 [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
661 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
662
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
663 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
664 [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
665 [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
666 [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
667 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
668
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
669 AC_ARG_WITH([$1],
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
670 [m4_ifblank([$7],
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
671 [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
672 [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
673 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
674
22039
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
675 ac_octave_$1_pkg_check=no
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
676 m4_toupper([$1])_LIBS=
21381
e5d96f39a37d configure script fixes
John W. Eaton <jwe@octave.org>
parents: 21374
diff changeset
677 warn_$1="$3"
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
678 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
679 no)
21381
e5d96f39a37d configure script fixes
John W. Eaton <jwe@octave.org>
parents: 21374
diff changeset
680 warn_$1="--without-$1 specified. Functions or features that depend on $2 will be disabled."
9539
41a74dcd14df Clear QHULL_LIBS etc on errors. Interpret --without-qhull etc correctly.
David Grundberg <individ@acc.umu.se>
parents: 9531
diff changeset
681 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
682 ;;
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
683 yes | "")
22039
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
684 ac_octave_$1_pkg_check=yes
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
685 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
686 ;;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
687 -* | */* | *.a | *.so | *.so.* | *.o)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
688 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
689 ;;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
690 *)
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
691 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
692 ;;
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
693 esac
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
694
22039
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
695 if test $ac_octave_$1_pkg_check = yes; then
22103
9811e7875d52 build: allow pkg-config name to differ from library name
Mike Miller <mtmiller@octave.org>
parents: 22039
diff changeset
696 PKG_CHECK_EXISTS(m4_default([$9], [$1]), [
22039
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
697 if test -z "$m4_toupper([$1])_CPPFLAGS"; then
22103
9811e7875d52 build: allow pkg-config name to differ from library name
Mike Miller <mtmiller@octave.org>
parents: 22039
diff changeset
698 m4_toupper([$1])_CPPFLAGS="$($PKG_CONFIG --cflags-only-I m4_default([$9], [$1]))"
22039
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
699 fi
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
700 if test -z "$m4_toupper([$1])_LDFLAGS"; then
22103
9811e7875d52 build: allow pkg-config name to differ from library name
Mike Miller <mtmiller@octave.org>
parents: 22039
diff changeset
701 m4_toupper([$1])_LDFLAGS="$($PKG_CONFIG --libs-only-L m4_default([$9], [$1]))"
22039
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
702 fi
22103
9811e7875d52 build: allow pkg-config name to differ from library name
Mike Miller <mtmiller@octave.org>
parents: 22039
diff changeset
703 m4_toupper([$1])_LIBS="$($PKG_CONFIG --libs-only-l m4_default([$9], [$1]))"
22039
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
704 ])
0a528a6dac95 build: use pkg-config in OCTAVE_CHECK_LIB without overriding user options
Mike Miller <mtmiller@octave.org>
parents: 22036
diff changeset
705 fi
22036
a2c29df93df7 acinclude.m4: Use pkg-config from OCTAVE_CHECK_LIB whenever possible
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 21945
diff changeset
706
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
707 if test -n "$m4_toupper([$1])_LIBS"; then
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
708 ac_octave_save_CPPFLAGS="$CPPFLAGS"
15350
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
709 ac_octave_save_LDFLAGS="$LDFLAGS"
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
710 ac_octave_save_LIBS="$LIBS"
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
711 CPPFLAGS="$m4_toupper([$1])_CPPFLAGS $CPPFLAGS"
15350
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
712 LDFLAGS="$m4_toupper([$1])_LDFLAGS $LDFLAGS"
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
713 LIBS="$m4_toupper([$1])_LIBS $LIBS"
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
714 m4_ifnblank([$6], [AC_LANG_PUSH($6)])
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
715 ac_octave_$1_check_for_lib=no
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
716 m4_ifblank([$4], [ac_octave_$1_check_for_lib=yes],
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
717 [AC_CHECK_HEADERS([$4], [ac_octave_$1_check_for_lib=yes; break])])
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
718 if test $ac_octave_$1_check_for_lib = yes; then
15350
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
719 AC_CACHE_CHECK([for $5 in $m4_toupper([$1])_LIBS],
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
720 [octave_cv_lib_$1],
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
721 [AC_LINK_IFELSE([AC_LANG_CALL([], [$5])],
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
722 [octave_cv_lib_$1=yes], [octave_cv_lib_$1=no])
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
723 ])
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
724 if test "$octave_cv_lib_$1" = yes; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
725 m4_ifblank([$8], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
726 warn_$1=
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
727 AC_DEFINE([HAVE_]m4_toupper([$1]), 1,
19355
22289e6e316e build: Remove unused TEXINFO_LIBNAME definitions from Makefiles.
Rik <rik@octave.org>
parents: 19108
diff changeset
728 [Define to 1 if $2 is available.])], [$8])
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
729 fi
9568
d3fccc4c4b9e use OCTAVE_CHECK_LIBRARY to check for ARPACK
John W. Eaton <jwe@octave.org>
parents: 9543
diff changeset
730 fi
9523
0ce82753dd72 more configure changes for libraries
John W. Eaton <jwe@octave.org>
parents: 9520
diff changeset
731 m4_ifnblank([$6], [AC_LANG_POP($6)])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
732 CPPFLAGS="$ac_octave_save_CPPFLAGS"
15350
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
733 LDFLAGS="$ac_octave_save_LDFLAGS"
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
734 LIBS="$ac_octave_save_LIBS"
21381
e5d96f39a37d configure script fixes
John W. Eaton <jwe@octave.org>
parents: 21374
diff changeset
735 else
e5d96f39a37d configure script fixes
John W. Eaton <jwe@octave.org>
parents: 21374
diff changeset
736 octave_cv_lib_$1=no
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
737 fi
15350
6a0c0d3d60b6 build: Implement some caching for OCTAVE_CHECK_LIB macro.
Rik <rik@octave.org>
parents: 15338
diff changeset
738
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
739 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
740 if test -n "$warn_$1"; then
21381
e5d96f39a37d configure script fixes
John W. Eaton <jwe@octave.org>
parents: 21374
diff changeset
741 OCTAVE_CONFIGURE_WARNING([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
742 m4_toupper([$1])_LIBS=
9519
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
743 fi
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
744 ])
ee99f9f37505 improve configure checks for qhull and curl libs
John W. Eaton <jwe@octave.org>
parents: 9515
diff changeset
745 dnl
15133
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
746 dnl Check whether ARPACK works (does not crash).
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
747 dnl
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
748 dnl Using a pure Fortran program doesn't seem to crash when linked
15133
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
749 dnl with the buggy ARPACK library but the C++ program does. Maybe it
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
750 dnl is the memory allocation that exposes the bug and using statically
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
751 dnl allocated arrays in Fortran does not?
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
752 dnl
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
753 dnl FIXME: it would be nice to avoid the duplication of F77 macros
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
754 dnl and typedefs here and in the f77-fcn.h header file.
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
755 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
756 AC_DEFUN([OCTAVE_CHECK_LIB_ARPACK_OK], [
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
757 AC_CACHE_CHECK([whether the arpack library works],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
758 [octave_cv_lib_arpack_ok],
15294
d1751eee9a42 acinclude.m4: Use AC_LANG_PUSH macro with AC_CACHE_CHECK for greater efficiency.
Rik <rik@octave.org>
parents: 15293
diff changeset
759 [AC_LANG_PUSH(C++)
d1751eee9a42 acinclude.m4: Use AC_LANG_PUSH macro with AC_CACHE_CHECK for greater efficiency.
Rik <rik@octave.org>
parents: 15293
diff changeset
760 AC_RUN_IFELSE([AC_LANG_PROGRAM([[
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
761
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
762 #include <cfloat>
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
763
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
764 #include <stdint.h>
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
765
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
766 typedef OCTAVE_IDX_TYPE octave_idx_type;
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
767 typedef int F77_RET_T;
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
768
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
769 #define F77_CHAR_ARG2(x, l) x
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
770 #define F77_CONST_CHAR_ARG2(x, l) F77_CHAR_ARG2 (x, l)
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
771
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
772 #define F77_CHAR_ARG_LEN(l) , l
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
773
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
774 #define F77_CONST_CHAR_ARG_DECL const char *
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
775 #define F77_CHAR_ARG_LEN_DECL , long
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
776
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
777 extern "C"
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
778 {
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
779 F77_RET_T
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
780 F77_FUNC (dnaupd, DNAUPD) (octave_idx_type&,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
781 F77_CONST_CHAR_ARG_DECL,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
782 const octave_idx_type&,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
783 F77_CONST_CHAR_ARG_DECL,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
784 octave_idx_type&, const double&,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
785 double*, const octave_idx_type&, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
786 const octave_idx_type&, octave_idx_type*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
787 octave_idx_type*, double*, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
788 const octave_idx_type&, octave_idx_type&
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
789 F77_CHAR_ARG_LEN_DECL
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
790 F77_CHAR_ARG_LEN_DECL);
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
791
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
792 F77_RET_T
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
793 F77_FUNC (dneupd, DNEUPD) (const octave_idx_type&,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
794 F77_CONST_CHAR_ARG_DECL,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
795 octave_idx_type*, double*, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
796 double*, const octave_idx_type&, const double&,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
797 const double&, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
798 F77_CONST_CHAR_ARG_DECL,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
799 const octave_idx_type&,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
800 F77_CONST_CHAR_ARG_DECL,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
801 octave_idx_type&, const double&, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
802 const octave_idx_type&, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
803 const octave_idx_type&, octave_idx_type*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
804 octave_idx_type*, double*, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
805 const octave_idx_type&, octave_idx_type&
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
806 F77_CHAR_ARG_LEN_DECL
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
807 F77_CHAR_ARG_LEN_DECL
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
808 F77_CHAR_ARG_LEN_DECL);
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
809
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
810 F77_RET_T
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
811 F77_FUNC (dgemv, DGEMV) (F77_CONST_CHAR_ARG_DECL,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
812 const octave_idx_type&, const octave_idx_type&,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
813 const double&, const double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
814 const octave_idx_type&, const double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
815 const octave_idx_type&, const double&, double*,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
816 const octave_idx_type&
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
817 F77_CHAR_ARG_LEN_DECL);
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
818 }
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
819
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
820 void
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
821 doit (void)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
822 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
823 // 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
824
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
825 // Problem matrix. See bug #31479
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
826 octave_idx_type n = 4;
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
827 double *m = new double [n * n];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
828 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
829 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
830 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
831 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
832
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
833 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
834
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
835 resid[0] = 0.960966;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
836 resid[1] = 0.741195;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
837 resid[2] = 0.150143;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
838 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
839
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
840 octave_idx_type *ip = new octave_idx_type [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
841
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
842 ip[0] = 1; // ishift
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
843 ip[1] = 0; // ip[1] not referenced
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
844 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
845 ip[3] = 1; // NB blocksize in recurrence
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
846 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
847 ip[5] = 0; // ip[5] not referenced
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
848 ip[6] = 1; // mode
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
849 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
850 ip[8] = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
851 ip[9] = 0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
852 ip[10] = 0;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
853
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
854 octave_idx_type *ipntr = new octave_idx_type [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
855
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
856 octave_idx_type k = 1;
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
857 octave_idx_type p = 3;
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
858 octave_idx_type lwork = 3 * p * (p + 2);
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
859
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
860 double *v = new double [n * (p + 1)];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
861 double *workl = new double [lwork + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
862 double *workd = new double [3 * n + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
863
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
864 octave_idx_type ido = 0;
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
865 octave_idx_type 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
866
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
867 double tol = DBL_EPSILON;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
868
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
869 do
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
870 {
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
871 F77_FUNC (dnaupd, DNAUPD) (ido, F77_CONST_CHAR_ARG2 ("I", 1),
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
872 n, F77_CONST_CHAR_ARG2 ("LM", 2),
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
873 k, tol, resid, p, v, n, ip, ipntr,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
874 workd, workl, lwork, info
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
875 F77_CHAR_ARG_LEN (1)
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
876 F77_CHAR_ARG_LEN (2));
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
877
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
878 if (ido == -1 || ido == 1 || ido == 2)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
879 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
880 double *x = workd + ipntr[0] - 1;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
881 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
882
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
883 F77_FUNC (dgemv, DGEMV) (F77_CONST_CHAR_ARG2 ("N", 1),
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
884 n, n, 1.0, m, n, x, 1, 0.0, y, 1
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
885 F77_CHAR_ARG_LEN (1));
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
886 }
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
887 else
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
888 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
889 if (info < 0)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
890 {
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
891 return; // Error
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
892 }
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
893
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
894 break;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
895 }
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
896 }
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
897 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
898
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
899 octave_idx_type *sel = new octave_idx_type [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
900
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
901 // 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
902 double *dr = new double [k + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
903 double *di = new double [k + 1];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
904 double *workev = new double [3 * p];
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
905
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
906 for (octave_idx_type i = 0; i < k + 1; i++)
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
907 dr[i] = di[i] = 0.;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
908
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
909 octave_idx_type 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
910
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
911 double sigmar = 0.0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
912 double sigmai = 0.0;
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
913
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
914 // In Octave, this is n*(k+1), but n*(k+2) avoids segfault
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
915 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
916
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
917 F77_FUNC (dneupd, DNEUPD) (rvec, F77_CONST_CHAR_ARG2 ("A", 1),
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
918 sel, dr, di, z, n, sigmar, sigmai, workev,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
919 F77_CONST_CHAR_ARG2 ("I", 1), n,
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
920 F77_CONST_CHAR_ARG2 ("LM", 2), k, tol,
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
921 resid, p, v, n, ip, ipntr, workd,
18058
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
922 workl, lwork, info
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
923 F77_CHAR_ARG_LEN (1)
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
924 F77_CHAR_ARG_LEN (1)
46ca76f194cb make arpack check work with --enable-64
John W. Eaton <jwe@octave.org>
parents: 18036
diff changeset
925 F77_CHAR_ARG_LEN (2));
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
926 }
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
927
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
928 ]], [[
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
929
14147
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
930 for (int i = 0; i < 10; i++)
71e28fda7be9 use C++ program to test ARPACK
John W. Eaton <jwe@octave.org>
parents: 14144
diff changeset
931 doit ();
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
932 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
933 octave_cv_lib_arpack_ok=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
934 octave_cv_lib_arpack_ok=no,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
935 octave_cv_lib_arpack_ok=yes)
15294
d1751eee9a42 acinclude.m4: Use AC_LANG_PUSH macro with AC_CACHE_CHECK for greater efficiency.
Rik <rik@octave.org>
parents: 15293
diff changeset
936 AC_LANG_POP(C++)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
937 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
938 if test $octave_cv_lib_arpack_ok = yes; then
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
939 $1
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
940 :
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
941 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
942 $2
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
943 :
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
944 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
945 ])
834df9f10963 remove ARPACK files from sources and restore configure checks for external ARPACK library
John W. Eaton <jwe@octave.org>
parents: 14138
diff changeset
946 dnl
17241
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
947 dnl Check whether GLPK provides the latest API functions required
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
948 dnl for the glpk function. The glp_iptcp structure was introduced
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
949 dnl in GLPK version 4.38.
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
950 dnl
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
951 AC_DEFUN([OCTAVE_CHECK_LIB_GLPK_OK], [
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
952 AC_CACHE_CHECK([whether the glpk library has glp_interior(glp_prob*, glp_iptcp*)],
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
953 [octave_cv_lib_glpk_ok],
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
954 [AC_LANG_PUSH(C++)
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
955 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
956 extern "C"
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
957 {
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
958 #if defined (HAVE_GLPK_GLPK_H)
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
959 #include <glpk/glpk.h>
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
960 #else
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
961 #include <glpk.h>
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
962 #endif
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
963 }
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
964 ]], [[
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
965 glp_prob *lp = glp_create_prob ();
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
966 glp_iptcp iptcp;
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
967 glp_init_iptcp (&iptcp);
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
968 int retval = glp_interior (lp, &iptcp);
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
969 ]])],
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
970 octave_cv_lib_glpk_ok=yes,
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
971 octave_cv_lib_glpk_ok=no)
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
972 AC_LANG_POP(C++)
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
973 ])
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
974 if test $octave_cv_lib_glpk_ok = yes; then
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
975 $1
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
976 :
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
977 else
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
978 $2
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
979 :
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
980 fi
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
981 ])
03a666018e0f build: Detect new GLPK API features required since changeset 54e251e699bb
Mike Miller <mtmiller@ieee.org>
parents: 17197
diff changeset
982 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
983 dnl Check whether using HDF5 DLL under Windows. This is done by
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
984 dnl testing for a data symbol in the HDF5 library, which would
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
985 dnl require the definition of _HDF5USEDL_ under MSVC compiler.
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
986 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
987 AC_DEFUN([OCTAVE_CHECK_LIB_HDF5_DLL], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
988 AC_CACHE_CHECK([if _HDF5USEDLL_ needs to be defined],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
989 [octave_cv_lib_hdf5_dll],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
990 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
991 #include <hdf5.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
992 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
993 hid_t x = H5T_NATIVE_DOUBLE;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
994 return x
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
995 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
996 [octave_cv_lib_hdf5_dll=no],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
997 [save_CFLAGS="$CFLAGS"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
998 CFLAGS="$CFLAGS -DWIN32 -D_HDF5USEDLL_"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
999 save_LIBS="$LIBS"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1000 LIBS="$HDF5_LIBS $LIBS"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1001 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1002 #include <hdf5.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1003 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1004 hid_t x = H5T_NATIVE_DOUBLE;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1005 return x
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1006 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1007 octave_cv_lib_hdf5_dll=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1008 octave_cv_lib_hdf5_dll=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1009 CFLAGS="$save_CFLAGS"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1010 LIBS="$save_LIBS"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1011 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1012 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1013 if test $octave_cv_lib_hdf5_dll = yes; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1014 AC_DEFINE(_HDF5USEDLL_, 1, [Define to 1 if using HDF5 dll (Win32).])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1015 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1016 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1017 dnl
15133
f91eac1bc66d m4/acinclude.m4: Correct typos, use consistent style for describing macros.
Rik <rik@octave.org>
parents: 15126
diff changeset
1018 dnl Check for OpenGL. If found, define OPENGL_LIBS.
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
1019 dnl
15063
36cbcc37fdb8 Refactor configure.ac to make it more understandable.
Rik <rik@octave.org>
parents: 15013
diff changeset
1020 dnl FIXME: The following tests should probably check for the
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
1021 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
1022 dnl
15063
36cbcc37fdb8 Refactor configure.ac to make it more understandable.
Rik <rik@octave.org>
parents: 15013
diff changeset
1023 dnl FIXME: Should we allow a way to specify a directory for OpenGL
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
1024 dnl libraries and header files?
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1025 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1026 AC_DEFUN([OCTAVE_CHECK_LIB_OPENGL], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1027 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
1028
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1029 ## On MacOSX systems the OpenGL framework can be used
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1030 OCTAVE_HAVE_FRAMEWORK(OpenGL, [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1031 #include <OpenGL/gl.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1032 #include <OpenGL/glu.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1033 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1034 GLint par; glGetIntegerv (GL_VIEWPORT, &par);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1035 ]],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1036 have_framework_opengl=yes, have_framework_opengl=no)
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
1037
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1038 if test $have_framework_opengl = yes; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1039 AC_DEFINE(HAVE_FRAMEWORK_OPENGL, 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1040 [Define to 1 if framework OPENGL is available.])
22208
83963bad5e7d improvements to Qt & OpenGL linking on the Mac (bug #41574)
Michael C. Grant <mcg@cvxr.com>
parents: 22150
diff changeset
1041 OPENGL_LIBS="-framework OpenGL"
83963bad5e7d improvements to Qt & OpenGL linking on the Mac (bug #41574)
Michael C. Grant <mcg@cvxr.com>
parents: 22150
diff changeset
1042 AC_MSG_NOTICE([adding -framework OpenGL to OPENGL_LIBS])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1043 OCTAVE_CHECK_FUNC_GLUTESSCALLBACK_THREEDOTS
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1044 else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1045 case $canonical_host_type in
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1046 *-*-mingw32* | *-*-msdosmsvc)
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1047 AC_CHECK_HEADERS([windows.h])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1048 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1049 esac
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1050 have_opengl_incs=no
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1051 AC_CHECK_HEADERS([GL/gl.h OpenGL/gl.h],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1052 [AC_CHECK_HEADERS([GL/glu.h OpenGL/glu.h],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1053 [have_opengl_incs=yes; break], [], [
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
1054 #if defined (HAVE_WINDOWS_H)
7954
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1055 #include <windows.h>
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1056 #endif
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1057 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1058 break
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1059 ], [], [
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
1060 #if defined (HAVE_WINDOWS_H)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1061 # include <windows.h>
7954
3ffc34caec65 configure fixes
John W. Eaton <jwe@octave.org>
parents: 7945
diff changeset
1062 #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
1063 ])
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
1064
17197
fbee0d312af5 acinclude.m4: Remove some unnecessary double quotes around variables.
Rik <rik@octave.org>
parents: 17196
diff changeset
1065 if test $have_opengl_incs = yes; then
18866
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1066 AC_CHECK_HEADERS([GL/glext.h OpenGL/glext.h], [], [], [
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
1067 #if defined (HAVE_WINDOWS_H)
18866
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1068 # include <windows.h>
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1069 #endif
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1070 #if defined (HAVE_GL_GL_H)
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1071 # include <GL/gl.h>
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1072 #elif defined (HAVE_OPENGL_GL_H)
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1073 # include <OpenGL/gl.h>
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1074 #endif
95b69b880b19 Allow conpile of gl-render.cc under mingw.
John Donoghue
parents: 18854
diff changeset
1075 ])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1076 case $canonical_host_type in
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1077 *-*-mingw32* | *-*-msdosmsvc)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1078 save_LIBS="$LIBS"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1079 LIBS="$LIBS -lopengl32"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1080 AC_MSG_CHECKING([for glEnable in -lopengl32])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1081 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1082 #if HAVE_WINDOWS_H
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1083 # include <windows.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1084 #endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1085 #if defined (HAVE_GL_GL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1086 # include <GL/gl.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1087 #elif defined (HAVE_OPENGL_GL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1088 # include <OpenGL/gl.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1089 #endif
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1090 ]], [[
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1091 glEnable(GL_SMOOTH);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1092 ]])], [OPENGL_LIBS="-lopengl32 -lglu32"])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1093
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1094 LIBS="$save_LIBS"
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
1095 if test -n "$OPENGL_LIBS"; then
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1096 AC_MSG_RESULT([yes])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1097 else
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1098 AC_MSG_RESULT([no])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1099 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1100 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1101 *)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1102 ## Non-Mac, Non-Windows systems use this check
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1103 AC_CHECK_LIB([GL], [glEnable], [OPENGL_LIBS="-lGL -lGLU"])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1104 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1105 esac
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1106 fi
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
1107 fi
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1108 AC_SUBST(OPENGL_LIBS)
21374
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
1109 if test -n "$OPENGL_LIBS"; then
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
1110 AC_DEFINE(HAVE_OPENGL, 1, [Define to 1 if OpenGL is available.])
1487a68a496a untangle configuration of OpenGL, FLTK, and Qt (bug #47263)
John W. Eaton <jwe@octave.org>
parents: 21354
diff changeset
1111 fi
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1112 ])
7834
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1113 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1114 dnl Check whether Qhull works (does not crash).
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
1115 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1116 AC_DEFUN([OCTAVE_CHECK_LIB_QHULL_OK], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1117 AC_CACHE_CHECK([whether the qhull library works],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1118 [octave_cv_lib_qhull_ok],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1119 [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1120 #include <stdio.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1121 #if defined (HAVE_LIBQHULL_LIBQHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1122 # include <libqhull/libqhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1123 # include <libqhull/qset.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1124 # include <libqhull/geom.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1125 # include <libqhull/poly.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1126 # include <libqhull/io.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1127 #elif defined (HAVE_QHULL_LIBQHULL_H) || defined (HAVE_QHULL_QHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1128 # if defined (HAVE_QHULL_LIBQHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1129 # include <qhull/libqhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1130 # else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1131 # include <qhull/qhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1132 # endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1133 # include <qhull/qset.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1134 # include <qhull/geom.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1135 # include <qhull/poly.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1136 # include <qhull/io.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1137 #elif defined (HAVE_LIBQHULL_H) || defined (HAVE_QHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1138 # if defined (HAVE_LIBQHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1139 # include <libqhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1140 # else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1141 # include <qhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1142 # endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1143 # include <qset.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1144 # include <geom.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1145 # include <poly.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1146 # include <io.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1147 #endif
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
1148 #if defined (NEED_QHULL_VERSION)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1149 char *qh_version = "version";
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1150 #endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1151 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1152 int dim = 2;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1153 int n = 4;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1154 coordT points[8] = { -0.5, -0.5, -0.5, 0.5, 0.5, -0.5, 0.5, 0.5 };
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1155 boolT ismalloc = 0;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1156 return qh_new_qhull (dim, n, points, ismalloc, "qhull ", 0, stderr);
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1157 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1158 octave_cv_lib_qhull_ok=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1159 octave_cv_lib_qhull_ok=no,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1160 octave_cv_lib_qhull_ok=yes)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1161 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1162 if test $octave_cv_lib_qhull_ok = yes; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1163 $1
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1164 :
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1165 else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1166 $2
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1167 :
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1168 fi
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
1169 ])
20715
5b7643257978 Remove trailing whitespace at end of lines.
Rik <rik@octave.org>
parents: 20420
diff changeset
1170 dnl
20153
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1171 dnl Check whether sndfile library is modern enough to include things like Ogg
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1172 dnl
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1173 AC_DEFUN([OCTAVE_CHECK_LIB_SNDFILE_OK], [
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1174 AC_CACHE_CHECK([whether sndfile library is modern enough],
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1175 [octave_cv_lib_sndfile_ok],
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1176 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1177 #include <sndfile.h>
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1178 ]], [[
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1179 int x = SF_FORMAT_OGG;
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1180 ]])],
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1181 octave_cv_lib_sndfile_ok=yes,
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1182 octave_cv_lib_sndfile_ok=no)
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1183 ])
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1184 if test $octave_cv_lib_sndfile_ok = yes; then
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1185 $1
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1186 :
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1187 else
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1188 $2
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1189 :
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1190 fi
3b3579ad7e46 Check for a modern version of sndfile in configure scripts (bug #44976).
Rik <rik@octave.org>
parents: 19816
diff changeset
1191 ])
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
1192 dnl
15302
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1193 dnl Find a suitable termlib to use.
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1194 dnl
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1195 AC_DEFUN([OCTAVE_CHECK_LIB_TERMLIB], [
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1196 TERM_LIBS=
15338
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1197 ac_octave_save_LIBS="$LIBS"
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1198 AC_SEARCH_LIBS([tputs],
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1199 [ncurses curses termcap terminfo termlib],
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1200 [], [])
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1201 LIBS="$ac_octave_save_LIBS"
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1202 case "$ac_cv_search_tputs" in
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1203 -l*)
15338
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1204 TERM_LIBS="$ac_cv_search_tputs"
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1205 ;;
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1206 no)
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1207 warn_termlibs="I couldn't find -ltermcap, -lterminfo, -lncurses, -lcurses, or -ltermlib!"
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1208 AC_MSG_WARN([$warn_termlibs])
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1209 ;;
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1210 esac
15302
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1211
15338
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1212 dnl Old code (9/9/2012). Delete when new code is definitely proven.
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1213 dnl
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1214 dnl for _termlib in ncurses curses termcap terminfo termlib; do
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1215 dnl AC_CHECK_LIB([${_termlib}], [tputs], [
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1216 dnl TERM_LIBS="-l${termlib}"
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1217 dnl octave_cv_lib_found_termlib=yes
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1218 dnl break])
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1219 dnl done
dc39c1d84c5b build: Use caching on more intermediate results to speed up configure.
Rik <rik@octave.org>
parents: 15336
diff changeset
1220
15302
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1221 AC_SUBST(TERM_LIBS)
7825
13871b7de124 Import sources for OpenGL-based renderer.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 7361
diff changeset
1222 ])
7834
caab78e7e377 added checks for fltk & freetype in configure script
Shai Ayal <shaiay@sourceforge.net>
parents: 7825
diff changeset
1223 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1224 dnl Check for the Qhull version.
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
1225 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1226 AC_DEFUN([OCTAVE_CHECK_QHULL_VERSION], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1227 AC_CACHE_CHECK([for qh_version in $QHULL_LIBS],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1228 [octave_cv_lib_qhull_version],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1229 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1230 #include <stdio.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1231 #if defined (HAVE_LIBQHULL_LIBQHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1232 # include <libqhull/libqhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1233 # include <libqhull/qset.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1234 # include <libqhull/geom.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1235 # include <libqhull/poly.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1236 # include <libqhull/io.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1237 #elif defined (HAVE_QHULL_LIBQHULL_H) || defined (HAVE_QHULL_QHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1238 # if defined (HAVE_QHULL_LIBQHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1239 # include <qhull/libqhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1240 # else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1241 # include <qhull/qhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1242 # endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1243 # include <qhull/qset.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1244 # include <qhull/geom.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1245 # include <qhull/poly.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1246 # include <qhull/io.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1247 #elif defined (HAVE_LIBQHULL_H) || defined (HAVE_QHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1248 # if defined (HAVE_LIBQHULL_H)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1249 # include <libqhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1250 # else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1251 # include <qhull.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1252 # endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1253 # include <qset.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1254 # include <geom.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1255 # include <poly.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1256 # include <io.h>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1257 #endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1258 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1259 const char *tmp = qh_version;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1260 ]])],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1261 octave_cv_lib_qhull_version=yes, octave_cv_lib_qhull_version=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1262 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1263 if test $octave_cv_lib_qhull_version = no; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1264 AC_DEFINE(NEED_QHULL_VERSION, 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1265 [Define to 1 if the Qhull library needs a qh_version variable defined.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1266 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1267 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1268 dnl
20420
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1269 dnl Check whether Qt works with full OpenGL support
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1270 dnl
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1271 AC_DEFUN([OCTAVE_CHECK_QT_OPENGL_OK], [
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1272 AC_CACHE_CHECK([whether Qt works with OpenGL and GLU],
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1273 [octave_cv_qt_opengl_ok],
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1274 [AC_LANG_PUSH(C++)
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1275 ac_octave_save_CPPFLAGS="$CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1276 ac_octave_save_CXXFLAGS="$CXXFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1277 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1278 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
20420
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1279 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1280 #if HAVE_WINDOWS_H
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1281 # include <windows.h>
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1282 #endif
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1283 #if defined (HAVE_GL_GL_H)
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1284 # include <GL/gl.h>
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1285 #elif defined (HAVE_OPENGL_GL_H)
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1286 # include <OpenGL/gl.h>
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1287 #endif
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
1288 #if defined (HAVE_GL_GLU_H)
20420
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1289 # include <GL/glu.h>
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1290 #elif defined HAVE_OPENGL_GLU_H || defined HAVE_FRAMEWORK_OPENGL
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1291 # include <OpenGL/glu.h>
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1292 #endif
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1293 #include <QGLWidget>
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1294 class gl_widget : public QGLWidget
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1295 {
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1296 public:
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1297 gl_widget (QWidget *parent = 0) : QGLWidget (parent) {}
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1298 ~gl_widget () {}
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1299 };
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1300 ]], [[
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1301 gl_widget widget;
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1302 ]])],
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1303 octave_cv_qt_opengl_ok=yes,
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1304 octave_cv_qt_opengl_ok=no)
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1305 CPPFLAGS="$ac_octave_save_CPPFLAGS"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1306 CXXFLAGS="$ac_octave_save_CXXFLAGS"
20420
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1307 AC_LANG_POP(C++)
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1308 ])
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1309 if test $octave_cv_qt_opengl_ok = yes; then
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1310 $1
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1311 :
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1312 else
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1313 $2
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1314 :
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1315 fi
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1316 ])
6cfbf412a2c3 configure.ac: Test that Qt and OpenGL can be used together (bug #45672)
Mike Miller <mtmiller@octave.org>
parents: 20416
diff changeset
1317 dnl
22823
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1318 dnl Check whether we have QScintilla for the given Qt VERSION.
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1319 dnl
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1320 AC_DEFUN([OCTAVE_CHECK_QSCINTILLA], [
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1321 qt_version="$1";
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1322 use_qscintilla=no
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1323 warn_qscintilla=""
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1324
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1325 ## Check for Qt libraries
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1326 case "$qt_version" in
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1327 4)
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1328 octave_qscintilla_libnames=qscintilla2
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1329 ;;
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1330 5)
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1331 octave_qscintilla_libnames="qscintilla2-qt5 qt5scintilla2"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1332 ;;
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1333 *)
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1334 AC_MSG_ERROR([Unrecognized Qt version $qt_version])
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1335 ;;
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1336 esac
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1337
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1338 if test $build_qt_gui = yes && test $check_qscintilla = yes; then
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1339
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1340 ## Check for QScintilla library which is used in the Qt GUI editor.
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1341 AC_CACHE_CHECK([for the QScintilla library for Qt $qt_version],
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1342 [octave_cv_lib_qscintilla],
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1343 [save_CPPFLAGS="$CPPFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1344 save_CXXFLAGS="$CXXFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1345 save_LDFLAGS="$LDFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1346 save_LIBS="$LIBS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1347 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1348 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1349 LDFLAGS="$QT_LDFLAGS $LDFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1350 AC_LANG_PUSH(C++)
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1351 for octave_qscintilla_try in $octave_qscintilla_libnames; do
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1352 LIBS="$QT_LIBS -l$octave_qscintilla_try"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1353 AC_LINK_IFELSE([AC_LANG_PROGRAM([[
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1354 #include <Qsci/qsciapis.h>
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1355 #include <Qsci/qscilexercpp.h>
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1356 ]], [[
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1357 QsciLexer *lexer = new QsciLexerCPP ();
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1358 QsciAPIs *lexer_apis = new QsciAPIs (lexer);
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1359 ]])],
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1360 octave_cv_lib_qscintilla="-l$octave_qscintilla_try",
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1361 octave_cv_lib_qscintilla=no)
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1362 if test $octave_cv_lib_qscintilla != no; then
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1363 break
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1364 fi
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1365 done
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1366 CPPFLAGS="$save_CPPFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1367 CXXFLAGS="$save_CXXFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1368 LDFLAGS="$save_LDFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1369 LIBS="$save_LIBS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1370 AC_LANG_POP([C++])
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1371 ])
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1372
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1373 if test $octave_cv_lib_qscintilla = no; then
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1374 warn_qscintilla="QScintilla library not found; disabling built-in Qt GUI editor"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1375 else
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1376 ## Let's assume QScintilla library is at the same location as
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1377 ## other regular Qt libraries.
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1378 QT_LIBS="$QT_LIBS $octave_cv_lib_qscintilla"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1379 OCTAVE_CHECK_QSCINTILLA_VERSION
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1380 AC_DEFINE(HAVE_QSCINTILLA, 1,
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1381 [Define to 1 if the QScintilla library and header files are available.])
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1382
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1383 save_CPPFLAGS="$CPPFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1384 save_CXXFLAGS="$CXXFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1385 CPPFLAGS="$QT_CPPFLAGS $CXXPICFLAG $CPPFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1386 CXXFLAGS="$CXXPICFLAG $CXXFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1387 AC_LANG_PUSH(C++)
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1388 AC_CHECK_HEADERS([Qsci/qscilexeroctave.h Qsci/qscilexermatlab.h])
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1389 AC_LANG_POP(C++)
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1390 CPPFLAGS="$save_CPPFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1391 CXXFLAGS="$save_CXXFLAGS"
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1392
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1393 OCTAVE_CHECK_FUNC_SETPLACEHOLDERTEXT
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1394 OCTAVE_CHECK_FUNC_QSCI_FINDSELECTION
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1395
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1396 use_qscintilla=yes
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1397 fi
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1398 fi
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1399 ])
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1400 dnl
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1401 dnl Check whether Qt VERSION is present, supports QtOpenGL and
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1402 dnl QScintilla and will work for Octave.
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1403 dnl
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1404 dnl OCTAVE_CHECK_QT_VERSION(VERSION)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1405 dnl
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1406 AC_DEFUN([OCTAVE_CHECK_QT_VERSION], [AC_MSG_CHECKING([Qt version $1])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1407 QT_CPPFLAGS=
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1408 QT_LDFLAGS=
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1409 QT_LIBS=
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1410
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1411 qt_version="$1";
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1412
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1413 build_qt_gui=yes
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1414 build_qt_graphics=no
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1415 win32_terminal=no
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1416
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1417 warn_qt_libraries=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1418 warn_qt_version=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1419 warn_qt_tools=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1420 warn_qt_setlocale=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1421 warn_qt_setvbuf=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1422 warn_qt_lib_fcns=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1423 warn_qt_abstract_item_model=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1424 warn_qt_opengl=""
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1425
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1426 ## Check for Qt libraries
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1427 case "$qt_version" in
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1428 4)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1429 QT_MODULES="QtCore QtGui QtNetwork QtOpenGL"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1430 ;;
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1431 5)
22250
2fd4f1a3f4a8 allow building with Qt5 (bug #40252)
John W. Eaton <jwe@octave.org>
parents: 22234
diff changeset
1432 QT_MODULES="Qt5Core Qt5Gui Qt5Network Qt5OpenGL Qt5PrintSupport"
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1433 ;;
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1434 *)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1435 AC_MSG_ERROR([Unrecognized Qt version $qt_version])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1436 ;;
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1437 esac
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1438
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1439 PKG_CHECK_MODULES(QT, [$QT_MODULES],
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1440 [],
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1441 [build_qt_gui=no
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1442 warn_qt_libraries="Qt libraries not found; disabling Qt GUI"])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1443
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1444 if test $build_qt_gui = yes; then
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1445 ## Retrieve Qt compilation and linker flags
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1446 QT_CPPFLAGS="`$PKG_CONFIG --cflags-only-I $QT_MODULES`"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1447 QT_LDFLAGS="`$PKG_CONFIG --libs-only-L $QT_MODULES`"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1448 QT_LIBS="`$PKG_CONFIG --libs-only-l $QT_MODULES`"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1449
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1450 case $host_os in
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1451 *darwin*)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1452 ## Qt might be installed in framework
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1453 if test -z "$QT_LIBS"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1454 QT_LDFLAGS="`$PKG_CONFIG --libs-only-other $QT_MODULES | tr ' ' '\n' | $GREP -e '-F' | uniq | tr '\n' ' '`"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1455 QT_LIBS="`$PKG_CONFIG --libs-only-other $QT_MODULES | tr ' ' '\n' | $GREP -v -e '-F' | uniq | tr '\n' ' '`"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1456 ## Enabling link_all_deps works around libtool's imperfect handling
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1457 ## of the -F flag
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1458 AM_CONDITIONAL([AMCOND_LINK_ALL_DEPS],
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1459 [test $link_all_deps = yes || test -n "$QT_LDFLAGS"])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1460 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1461 ;;
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1462 esac
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1463
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1464 if test $qt_version = 4; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1465 ## Check for Qt4
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1466 if ! `$PKG_CONFIG --atleast-version=4.0.0 QtCore`; then
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1467 build_qt_gui=no
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1468 warn_qt_version="Qt >= 4.0.0 not found; disabling Qt GUI"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1469 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1470 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1471 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1472
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1473 if test $build_qt_gui = yes; then
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1474 AC_CHECK_TOOLS(MOC, [moc-qt$qt_version])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1475 AC_CHECK_TOOLS(UIC, [uic-qt$qt_version])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1476 AC_CHECK_TOOLS(RCC, [rcc-qt$qt_version])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1477 AC_CHECK_TOOLS(LRELEASE, [lrelease-qt$qt_version])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1478
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1479 if test -z "$MOC" || test -z "$UIC" || test -z "$RCC" || test -z "$LRELEASE"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1480 AC_CHECK_TOOLS(QTCHOOSER, [qtchooser])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1481
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1482 if test -z "$MOC"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1483 AC_CHECK_TOOLS(MOC, [moc])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1484 if test -n "$QTCHOOSER"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1485 MOCFLAGS="-qt$qt_version"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1486 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1487 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1488 if test -z "$UIC"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1489 AC_CHECK_TOOLS(UIC, [uic])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1490 if test -n "$QTCHOOSER"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1491 UICFLAGS="-qt$qt_version"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1492 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1493 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1494 if test -z "$RCC"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1495 AC_CHECK_TOOLS(RCC, [rcc])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1496 if test -n "$QTCHOOSER"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1497 RCCFLAGS="-qt$qt_version"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1498 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1499 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1500 if test -z "$LRELEASE"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1501 AC_CHECK_TOOLS(LRELEASE, [lrelease])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1502 if test -n "$QTCHOOSER"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1503 LRELEASEFLAGS="-qt$qt_version"
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1504 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1505 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1506 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1507
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1508 if test -z "$MOC" || test -z "$UIC" || test -z "$RCC" || test -z "$LRELEASE"; then
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1509 warn_qt_tools="one or more of the Qt utility programs moc, uic, rcc, and lrelease not found; disabling Qt GUI"
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1510 build_qt_gui=no
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1511 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1512 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1513
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1514 if test $build_qt_gui = yes; then
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1515 AC_CHECK_FUNCS([setlocale], [],
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1516 [build_qt_gui=no
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1517 warn_qt_setlocale="setlocale not found; disabling Qt GUI"])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1518 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1519
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1520 if test $build_qt_gui = yes; then
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1521 case $host_os in
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1522 mingw* | msdosmsvc*)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1523 AC_CHECK_FUNCS([setvbuf], [win32_terminal=yes],
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1524 [build_qt_gui=no
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1525 warn_qt_setvbuf="setvbuf not found; disabling Qt GUI"])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1526 ;;
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1527 *)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1528 AC_CHECK_HEADERS([pty.h libutil.h util.h])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1529 AC_SEARCH_LIBS([openpty], [util],
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1530 [AC_DEFINE(HAVE_OPENPTY, [], [Define whether openpty exists])])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1531 AC_CHECK_FUNCS([chmod chown ftruncate mmap munmap], [],
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1532 [build_qt_gui=no
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1533 warn_qt_lib_fcns="At least one of chmod, chown, ftruncate, mmap, and munmap not found; disabling Qt GUI"])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1534 ;;
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1535 esac
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1536 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1537
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1538 if test $build_qt_gui = yes; then
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1539 OCTAVE_CHECK_FUNC_QABSTRACTITEMMODEL_BEGINRESETMODEL
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1540
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1541 if test $octave_cv_func_qabstractitemmodel_beginresetmodel = no; then
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1542 build_qt_gui=no
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1543 warn_qt_abstract_item_model="QAbstractItemModel::beginResetModel not found; disabling Qt GUI"
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1544 ## Invalidate cache so that this test will be done again if we
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1545 ## perform the test with a different Qt version.
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1546 $as_unset octave_cv_func_qabstractitemmodel_beginresetmodel
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1547 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1548 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1549
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1550 if test $build_qt_gui = yes; then
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1551 ## We have what we need to build the Qt GUI. The remaining
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1552 ## checks below are for optional features related to the Qt GUI.
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1553
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1554 AC_DEFINE(HAVE_QT, 1,
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1555 [Define to 1 if Qt is available, with all required functions, libraries, developer header files, and utility programs (moc, uic, rcc, and lrelease).])
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1556
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1557 ## We don't need to unset cache variables for any of the remaining
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1558 ## tests if they fail because we have already decided that the Qt
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1559 ## version that we are testing now will be the one used.
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1560
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1561 OCTAVE_CHECK_QFONT_MONOSPACE
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1562 OCTAVE_CHECK_QFONT_FORCE_INTEGER_METRICS
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1563 OCTAVE_CHECK_FUNC_QTABWIDGET_SETMOVABLE
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1564
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1565 if test -n "$OPENGL_LIBS"; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1566 OCTAVE_CHECK_QT_OPENGL_OK([build_qt_graphics=yes],
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1567 [warn_qt_opengl="Qt does not work with the OpenGL libs (GL and GLU); disabling OpenGL graphics with Qt GUI"])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1568
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1569 if test $build_qt_graphics = yes; then
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1570 AC_DEFINE(HAVE_QT_GRAPHICS, 1, [Define to 1 if Qt works with OpenGL libs (GL and GLU)])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1571 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1572 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1573
22823
e2afee0041bf new configure option, --without-qscintilla
John W. Eaton <jwe@octave.org>
parents: 22755
diff changeset
1574 OCTAVE_CHECK_QSCINTILLA([$qt_version])
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1575
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1576 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1577 AC_SUBST(MOCFLAGS)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1578 AC_SUBST(UICFLAGS)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1579 AC_SUBST(RCCFLAGS)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1580 AC_SUBST(LRELEASEFLAGS)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1581 AC_SUBST(QT_CPPFLAGS)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1582 AC_SUBST(QT_LDFLAGS)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1583 AC_SUBST(QT_LIBS)
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1584 ])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1585 dnl
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1586 dnl OCTAVE_CHECK_QT
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1587 dnl
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1588 AC_DEFUN([OCTAVE_CHECK_QT], [
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1589 octave_qt_versions="$1"
22257
945e7f9c11ff build: fix configure --without-qt or --with-qt
Mike Miller <mtmiller@octave.org>
parents: 22255
diff changeset
1590
945e7f9c11ff build: fix configure --without-qt or --with-qt
Mike Miller <mtmiller@octave.org>
parents: 22255
diff changeset
1591 build_qt_gui=no
945e7f9c11ff build: fix configure --without-qt or --with-qt
Mike Miller <mtmiller@octave.org>
parents: 22255
diff changeset
1592 build_qt_graphics=no
945e7f9c11ff build: fix configure --without-qt or --with-qt
Mike Miller <mtmiller@octave.org>
parents: 22255
diff changeset
1593 use_qscintilla=no
945e7f9c11ff build: fix configure --without-qt or --with-qt
Mike Miller <mtmiller@octave.org>
parents: 22255
diff changeset
1594 win32_terminal=no
945e7f9c11ff build: fix configure --without-qt or --with-qt
Mike Miller <mtmiller@octave.org>
parents: 22255
diff changeset
1595
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1596 for ver in $octave_qt_versions; do
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1597 OCTAVE_CHECK_QT_VERSION([$ver])
22250
2fd4f1a3f4a8 allow building with Qt5 (bug #40252)
John W. Eaton <jwe@octave.org>
parents: 22234
diff changeset
1598 if test $build_qt_gui = yes; then
22255
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1599 have_qt_version=$ver
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1600 break
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1601 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1602 done
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1603
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1604 if test $build_qt_gui = yes; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1605 if test x"$have_qt_version" = x4; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1606 AC_DEFINE(HAVE_QT4, 1, [Define if you are using Qt version 4.])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1607 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1608 if test x"$have_qt_version" = x5; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1609 AC_DEFINE(HAVE_QT5, 1, [Define if you are using Qt version 5.])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1610 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1611 else
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1612 if test -n "$warn_qt_libraries"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1613 OCTAVE_CONFIGURE_WARNING([warn_qt_libraries])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1614 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1615 if test -n "$warn_qt_version"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1616 OCTAVE_CONFIGURE_WARNING([warn_qt_version])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1617 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1618 if test -n "$warn_qt_tools"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1619 OCTAVE_CONFIGURE_WARNING([warn_qt_tools])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1620 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1621 if test -n "$warn_qt_setlocale"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1622 OCTAVE_CONFIGURE_WARNING([warn_qt_setlocale])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1623 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1624 if test -n "$warn_qt_setvbuf"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1625 OCTAVE_CONFIGURE_WARNING([warn_qt_setvbuf])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1626 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1627 if test -n "$warn_qt_lib_fcns"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1628 OCTAVE_CONFIGURE_WARNING([warn_qt_lib_fcns])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1629 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1630 if test -n "$warn_qt_abstract_item_model"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1631 OCTAVE_CONFIGURE_WARNING([warn_qt_abstract_item_model])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1632 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1633 if test -n "$warn_qt_opengl"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1634 OCTAVE_CONFIGURE_WARNING([warn_qt_opengl])
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1635 fi
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1636 if test -n "$warn_qscintilla"; then
8e18e364a686 improve checks for Qt when Qt 5 is not installed
John W. Eaton <jwe@octave.org>
parents: 22250
diff changeset
1637 OCTAVE_CONFIGURE_WARNING([warn_qscintilla])
22234
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1638 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1639 fi
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1640
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1641 AM_CONDITIONAL([AMCOND_BUILD_QT_GUI], [test $build_qt_gui = yes])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1642 AM_CONDITIONAL([AMCOND_BUILD_QT_GRAPHICS], [test $build_qt_graphics = yes])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1643 AM_CONDITIONAL([AMCOND_HAVE_QSCINTILLA], [test $use_qscintilla = yes])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1644 AM_CONDITIONAL([WIN32_TERMINAL], [test $win32_terminal = yes])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1645 ])
66dd260512a4 allow configure to select Qt version
John W. Eaton <jwe@octave.org>
parents: 22208
diff changeset
1646 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1647 dnl Check if the default Fortran INTEGER is 64 bits wide.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1648 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1649 AC_DEFUN([OCTAVE_CHECK_SIZEOF_FORTRAN_INTEGER], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1650 AC_CACHE_CHECK([whether $F77 generates correct size integers],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1651 [octave_cv_sizeof_fortran_integer],
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1652 [ac_octave_save_FFLAGS="$FFLAGS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1653 FFLAGS="$FFLAGS $F77_INTEGER_8_FLAG"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1654 AC_LANG_PUSH(Fortran 77)
17978
86846ce0371a acinclude.m4: Clean up indentation of Fortran code tests.
Rik <rik@octave.org>
parents: 17967
diff changeset
1655 AC_COMPILE_IFELSE([[
86846ce0371a acinclude.m4: Clean up indentation of Fortran code tests.
Rik <rik@octave.org>
parents: 17967
diff changeset
1656 subroutine foo(n, in, out)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1657 integer n, in(n), out(n)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1658 integer i
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1659 do 10 i = 1, n
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1660 out(i) = in(i)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1661 10 continue
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1662 return
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1663 end
17978
86846ce0371a acinclude.m4: Clean up indentation of Fortran code tests.
Rik <rik@octave.org>
parents: 17967
diff changeset
1664 ]],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1665 [mv conftest.$ac_objext fintsize.$ac_objext
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1666 ac_octave_save_LIBS="$LIBS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1667 LIBS="fintsize.$ac_objext $[]_AC_LANG_PREFIX[]LIBS"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1668 AC_LANG_PUSH(C)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1669 AC_RUN_IFELSE([AC_LANG_PROGRAM([[
16313
6aafe87a3144 use int64_t for idx type if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16202
diff changeset
1670 #include <assert.h>
17978
86846ce0371a acinclude.m4: Clean up indentation of Fortran code tests.
Rik <rik@octave.org>
parents: 17967
diff changeset
1671 #include <stdint.h>
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
1672 #if defined (OCTAVE_ENABLE_64)
16313
6aafe87a3144 use int64_t for idx type if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16202
diff changeset
1673 typedef int64_t octave_idx_type;
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1674 #else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1675 typedef int octave_idx_type;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1676 #endif
22888
e3fde9f1d47e allow configure test to succeed without implicit fcn decls (bug #49782)
John W. Eaton <jwe@octave.org>
parents: 22509
diff changeset
1677 void F77_FUNC(foo,FOO) (octave_idx_type*, octave_idx_type**, octave_idx_type**);
e3fde9f1d47e allow configure test to succeed without implicit fcn decls (bug #49782)
John W. Eaton <jwe@octave.org>
parents: 22509
diff changeset
1678 ]], [[
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1679 octave_idx_type n = 2;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1680 octave_idx_type in[2];
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1681 octave_idx_type out[2];
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1682 in[0] = 13;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1683 in[0] = 42;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1684 F77_FUNC(foo,FOO) (&n, &in, &out);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1685 assert (in[0] == out[0] && in[1] == out[1]);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1686 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1687 octave_cv_sizeof_fortran_integer=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1688 octave_cv_sizeof_fortran_integer=no,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1689 octave_cv_sizeof_fortran_integer=yes)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1690 AC_LANG_POP(C)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1691 LIBS="$ac_octave_save_LIBS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1692 rm -f conftest.$ac_objext fintsize.$ac_objext],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1693 [rm -f conftest.$ac_objext
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1694 AC_MSG_FAILURE([cannot compile a simple Fortran program])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1695 octave_cv_sizeof_fortran_integer=no])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1696 AC_LANG_POP(Fortran 77)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1697 FFLAGS="$ac_octave_save_FFLAGS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1698 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1699 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1700 dnl
22899
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1701 dnl Check whether sundials_ida library is configured with double precision realtype
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1702 dnl
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1703 AC_DEFUN([OCTAVE_CHECK_SIZEOF_SUNDIALS_IDA_REALTYPE], [
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1704 AC_CACHE_CHECK([whether sundials_ida is configured with double precision realtype],
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1705 [octave_cv_sizeof_ida_double],
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1706 [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1707 #if defined (HAVE_IDA_IDA_H)
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1708 #include <ida/ida.h>
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1709 #else
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1710 #include <ida.h>
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1711 #endif
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1712 #include <assert.h>
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1713 ]], [[
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1714 assert (sizeof (double) == sizeof (realtype));
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1715 ]])],
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1716 octave_cv_sizeof_ida_double=yes,
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1717 octave_cv_sizeof_ida_double=no)
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1718 ])
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1719 if test $octave_cv_sizeof_ida_double = yes; then
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1720 AC_DEFINE(HAVE_SUNDIALS_IDA_DOUBLE, 1,
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1721 [Define to 1 if sundials_ida is configured with realtype as double.])
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1722 else
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1723 warn_sundials_ida="sundials_ida library found, but it's not configured with double precision realtype; function ode15i and ode15s will be disabled"
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1724 fi
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1725 ])
31bd8a50d44c Add Sundials library support
Francesco Faccio <francesco.faccio@mail.polimi.it>
parents: 22890
diff changeset
1726 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1727 dnl Add warning to final summary.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1728 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1729 AC_DEFUN([OCTAVE_CONFIGURE_WARNING], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1730 AC_MSG_WARN([$][$1])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1731 m4_set_add([summary_warning_list], [$1])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1732 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1733 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1734 dnl Print final summary.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1735 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1736 AC_DEFUN([OCTAVE_CONFIGURE_WARNING_SUMMARY], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1737 m4_set_foreach([summary_warning_list], [elt], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1738 if test -n "[$]elt"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1739 AC_MSG_WARN([$]elt)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1740 warn_msg_printed=true
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1741 fi])
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
1742 ])
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
1743 dnl
21397
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1744 dnl Like AC_CONFIG_FILES, but don't touch the output file if it already
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1745 dnl exists and hasn't changed.
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1746 dnl
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1747 AC_DEFUN([OCTAVE_CONFIG_MOVE_IF_CHANGE_FILES], [
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1748 m4_foreach_w([elt], [$1], [
21398
7e8a410e6124 break generated file dependence on Makefile (bug #46063)
John W. Eaton <jwe@octave.org>
parents: 21397
diff changeset
1749 AC_CONFIG_FILES(elt[-tmp:]patsubst(elt, [.sh$], [.in.sh]))
21397
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1750 AC_CONFIG_COMMANDS(elt,
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1751 [$SHELL $srcdir/build-aux/move-if-change ]elt[-tmp ]elt)])])
df859661e31e generate default-qt-settings at configure time
John W. Eaton <jwe@octave.org>
parents: 21381
diff changeset
1752 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1753 dnl Check if the C++ library has the bit_and, bit_or, and bit_xor
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1754 dnl templates defined.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1755 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1756 AC_DEFUN([OCTAVE_CXX_BITWISE_OP_TEMPLATES], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1757 AC_CACHE_CHECK([whether bit_and, bit_or, bit_xor are defined in the C++ library],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1758 [octave_cv_cxx_bitwise_op_templates],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1759 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1760 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1761 #include <functional>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1762 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1763 int x = 0;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1764 int y = 1;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1765 int z1 = std::bit_and<int>() (x, y);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1766 int z2 = std::bit_or<int>() (x, y);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1767 int z3 = std::bit_xor<int>() (x, y);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1768 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1769 octave_cv_cxx_bitwise_op_templates=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1770 octave_cv_cxx_bitwise_op_templates=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1771 AC_LANG_POP(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1772 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1773 if test $octave_cv_cxx_bitwise_op_templates = yes; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1774 AC_DEFINE(HAVE_CXX_BITWISE_OP_TEMPLATES, 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1775 [Define to 1 if C++ library has templated bitwise operators.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1776 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1777 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1778 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1779 dnl Check if the C++ library has functions to access real and imaginary
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1780 dnl parts of complex numbers independently via references.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1781 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1782 AC_DEFUN([OCTAVE_CXX_COMPLEX_REFERENCE_ACCESSORS], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1783 AC_CACHE_CHECK([whether complex class can reference components independently],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1784 [octave_cv_cxx_complex_reference_accessors],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1785 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1786 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1787 #include <complex>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1788 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1789 std::complex<double> x;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1790 x.real () = 1.0;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1791 x.imag () = 1.0;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1792 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1793 octave_cv_cxx_complex_reference_accessors=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1794 octave_cv_cxx_complex_reference_accessors=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1795 AC_LANG_POP(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1796 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1797 if test $octave_cv_cxx_complex_reference_accessors = yes; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1798 AC_DEFINE(HAVE_CXX_COMPLEX_REFERENCE_ACCESSORS, 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1799 [Define to 1 if C++ complex class has T& real (void) and T& imag (void) methods.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1800 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1801 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1802 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1803 dnl Check if the C++ library has functions to set real and imaginary
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1804 dnl parts of complex numbers independently.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1805 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1806 AC_DEFUN([OCTAVE_CXX_COMPLEX_SETTERS], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1807 AC_CACHE_CHECK([whether complex class can set components independently],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1808 [octave_cv_cxx_complex_setters],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1809 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1810 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1811 #include <complex>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1812 ]], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1813 std::complex<double> x;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1814 x.real (1.0);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1815 x.imag (2.0);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1816 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1817 octave_cv_cxx_complex_setters=yes, octave_cv_cxx_complex_setters=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1818 AC_LANG_POP(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1819 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1820 if test $octave_cv_cxx_complex_setters = yes; then
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1821 AC_DEFINE(HAVE_CXX_COMPLEX_SETTERS, 1,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1822 [Define to 1 if C++ complex class has void real (T) and void imag (T) methods.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1823 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1824 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1825 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1826 dnl Check if the compiler supports dynamic auto arrays.
10471
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1827 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1828 AC_DEFUN([OCTAVE_CXX_DYNAMIC_AUTO_ARRAYS], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1829 AC_CACHE_CHECK([whether C++ supports dynamic auto arrays],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1830 [octave_cv_cxx_dynamic_auto_arrays],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1831 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1832 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1833 void test(char *);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1834 int length();
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1835 char x[length()];
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1836 test(x);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1837 ]])],
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1838 octave_cv_cxx_dynamic_auto_arrays=yes,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1839 octave_cv_cxx_dynamic_auto_arrays=no)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1840 AC_LANG_POP(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1841 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1842 if test $octave_cv_cxx_dynamic_auto_arrays = yes; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1843 AC_DEFINE(HAVE_DYNAMIC_AUTO_ARRAYS, 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1844 [Define to 1 if C++ supports dynamic auto arrays.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1845 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1846 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1847 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1848 dnl Check if C++ compiler handles FLAG command line option. If two
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1849 dnl arguments are specified, execute the second arg as shell commands.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1850 dnl Otherwise, add FLAG to CXXFLAGS if the compiler accepts the flag.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1851 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1852 AC_DEFUN([OCTAVE_CXX_FLAG], [
17661
1978a6c76aa9 Use user-specified SED during build process (bug #40273).
Rik <rik@octave.org>
parents: 17615
diff changeset
1853 ac_safe=`echo "$1" | $SED 'y%./+-:=%__p___%'`
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1854 AC_MSG_CHECKING([whether ${CXX-g++} accepts $1])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1855 AC_CACHE_VAL([octave_cv_cxx_flag_$ac_safe],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1856 [AC_LANG_PUSH(C++)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1857 ac_octave_save_CXXFLAGS="$CXXFLAGS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1858 CXXFLAGS="$CXXFLAGS $1"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1859 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1860 eval "octave_cv_cxx_flag_$ac_safe=yes",
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1861 eval "octave_cv_cxx_flag_$ac_safe=no")
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1862 CXXFLAGS="$ac_octave_save_CXXFLAGS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1863 AC_LANG_POP(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1864 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1865 if eval "test \"`echo '$octave_cv_cxx_flag_'$ac_safe`\" = yes"; then
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1866 AC_MSG_RESULT([yes])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1867 ifelse([$2], ,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1868 [CXXFLAGS="$CXXFLAGS $1"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1869 AC_MSG_RESULT([adding $1 to CXXFLAGS])], [$2])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1870 else
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1871 AC_MSG_RESULT([no])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1872 ifelse([$3], , , [$3])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1873 fi
10471
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1874 ])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1875 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1876 dnl Allow the user disable support for command line editing using GNU
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1877 dnl readline.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1878 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1879 AC_DEFUN([OCTAVE_ENABLE_READLINE], [
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
1880 USE_READLINE=yes
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1881 READLINE_LIBS=
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1882 AC_ARG_ENABLE([readline],
15238
c4779a180134 avoid confusing --disable-foo (default is yes) configure help messages
John W. Eaton <jwe@octave.org>
parents: 15166
diff changeset
1883 [AS_HELP_STRING([--disable-readline],
18141
5e72998000fb acinclude.m4 (OCTAVE_ENABLE_READLINE): correct the help for --disable-readline
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18058
diff changeset
1884 [do not use readline library])],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1885 [if test "$enableval" = no; then
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
1886 USE_READLINE=no
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1887 warn_readline="command editing and history features require GNU Readline"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1888 fi])
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
1889 if test $USE_READLINE = yes; then
15302
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1890 dnl RHEL 5 and older systems require termlib set before enabling readline
a8cfbc1911e4 build: Set TERM_LIBS before checking for READLINE.
Rik <rik@octave.org>
parents: 15295
diff changeset
1891 AC_REQUIRE([OCTAVE_CHECK_LIB_TERMLIB])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1892 ac_octave_save_LIBS="$LIBS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1893 LIBS="$TERM_LIBS"
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1894 AC_CHECK_LIB([readline], [rl_set_keyboard_input_timeout],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1895 [READLINE_LIBS="-lreadline"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1896 AC_DEFINE(USE_READLINE, 1, [Define to 1 to use the readline library.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1897 ],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1898 [AC_MSG_WARN([I need GNU Readline 4.2 or later])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1899 AC_MSG_ERROR([this is fatal unless you specify --disable-readline])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1900 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1901 LIBS="$ac_octave_save_LIBS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1902 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1903 AC_SUBST(READLINE_LIBS)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1904 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1905 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1906 dnl Check if Fortran compiler handles FLAG command line option. If
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1907 dnl two arguments are specified, execute the second arg as shell
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1908 dnl commands. Otherwise, add FLAG to FFLAGS if the compiler accepts
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1909 dnl the flag.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1910 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1911 AC_DEFUN([OCTAVE_F77_FLAG], [
17661
1978a6c76aa9 Use user-specified SED during build process (bug #40273).
Rik <rik@octave.org>
parents: 17615
diff changeset
1912 ac_safe=`echo "$1" | $SED 'y%./+-:=%__p___%'`
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1913 AC_MSG_CHECKING([whether ${F77-g77} accepts $1])
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1914 AC_CACHE_VAL([octave_cv_f77_flag_$ac_safe], [
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1915 AC_LANG_PUSH(Fortran 77)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1916 ac_octave_save_FFLAGS="$FFLAGS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1917 FFLAGS="$FFLAGS $1"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1918 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1919 eval "octave_cv_f77_flag_$ac_safe=yes",
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1920 eval "octave_cv_f77_flag_$ac_safe=no")
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
1921 FFLAGS="$ac_octave_save_FFLAGS"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1922 AC_LANG_POP(Fortran 77)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1923 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1924 if eval "test \"`echo '$octave_cv_f77_flag_'$ac_safe`\" = yes"; then
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1925 AC_MSG_RESULT([yes])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1926 ifelse([$2], ,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1927 [FFLAGS="$FFLAGS $1"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1928 AC_MSG_RESULT([adding $1 to FFLAGS])], [$2])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1929 else
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
1930 AC_MSG_RESULT([no])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1931 ifelse([$3], , , [$3])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1932 fi
10471
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1933 ])
bcabc1c4f20c Add detection of OpenMP support to configure. Disabled by default
David Bateman <dbateman@free.fr>
parents: 10380
diff changeset
1934 dnl
21302
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1935 dnl Check whether fast signed integer arithmetic using bit tricks
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1936 dnl can be used in oct-inttypes.h.
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1937 dnl
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1938 dnl Defines OCTAVE_HAVE_FAST_INT_OPS if the following conditions hold:
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1939 dnl
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1940 dnl 1. Signed numbers are represented by twos complement (see
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1941 dnl <http://en.wikipedia.org/wiki/Two%27s_complement>)
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1942 dnl
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1943 dnl 2. static_cast to unsigned int counterpart works like
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1944 dnl interpreting the signed bit pattern as unsigned (and is thus
21604
d7a268e68e69 maint: Strip trailing whitespace from source files.
John W. Eaton <jwe@octave.org>
parents: 21398
diff changeset
1945 dnl zero-cost).
21302
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1946 dnl
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1947 dnl 3. Signed addition and subtraction yield the same bit results
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1948 dnl as unsigned. (We use casts to prevent optimization
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1949 dnl interference, so there is no need for things like -ftrapv).
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1950 dnl
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1951 dnl 4. Bit operations on signed integers work like on unsigned
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
1952 dnl integers, except for the shifts. Shifts are arithmetic.
8169
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1953 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1954 AC_DEFUN([OCTAVE_FAST_INT_OPS], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1955 AC_CACHE_CHECK([whether fast integer arithmetics is usable],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1956 [octave_cv_fast_int_ops],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1957 [AC_LANG_PUSH(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1958 AC_RUN_IFELSE([AC_LANG_PROGRAM([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1959 #include <limits>
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1960 template<class UT, class ST>
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1961 static bool
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1962 do_test (UT, ST)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1963 {
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1964 volatile ST s = std::numeric_limits<ST>::min () / 3;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1965 volatile UT u = static_cast<UT> (s);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1966 if (*(reinterpret_cast<volatile ST *> (&u)) != s) return true;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1967
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1968 u = 0; u = ~u;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1969 if (*(reinterpret_cast<volatile ST *> (&u)) != -1) return true;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1970
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1971 ST sx, sy;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1972 sx = std::numeric_limits<ST>::max () / 2 + 1;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1973 sy = std::numeric_limits<ST>::max () / 2 + 2;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1974 if (static_cast<ST> (static_cast<UT> (sx) + static_cast<UT> (sy))
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1975 != std::numeric_limits<ST>::min () + 1) return true;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1976 if (static_cast<ST> (static_cast<UT> (sx) - static_cast<UT> (sy))
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1977 != -1) return true;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1978
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1979 if ((sx & sy) != (static_cast<UT> (sx) & static_cast<UT> (sy)))
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1980 return true;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1981 if ((sx | sy) != (static_cast<UT> (sx) | static_cast<UT> (sy)))
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1982 return true;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1983 if ((sx ^ sy) != (static_cast<UT> (sx) ^ static_cast<UT> (sy)))
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1984 return true;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1985 if ((-1 >> 1) != -1) return true;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1986 return false;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1987 }
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
1988
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1989 #define DO_TEST(T) \
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1990 if (do_test (static_cast<unsigned T> (0), static_cast<signed T> (0)))\
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1991 return sizeof (T);
8169
66bc6f9b4f72 rewrite integer arithmetics and conversions
Jaroslav Hajek <highegg@gmail.com>
parents: 8019
diff changeset
1992
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1993 ]],[[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1994
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1995 DO_TEST(char)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1996 DO_TEST(short)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1997 DO_TEST(int)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
1998 DO_TEST(long)
21354
06d15e4e611a move public data type macros to octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21302
diff changeset
1999 #if (defined(OCTAVE_HAVE_LONG_LONG_INT) && defined(OCTAVE_HAVE_UNSIGNED_LONG_LONG_INT))
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2000 DO_TEST(long long)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2001 #endif
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2002 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2003 octave_cv_fast_int_ops=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2004 octave_cv_fast_int_ops=no,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2005 octave_cv_fast_int_ops=yes)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2006 AC_LANG_POP(C++)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2007 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2008 if test $octave_cv_fast_int_ops = yes; then
21302
8376de2eaf00 define OCTAVE_HAVE_FAST_INT_OPS in octave-config.h
John W. Eaton <jwe@octave.org>
parents: 21250
diff changeset
2009 AC_DEFINE(OCTAVE_HAVE_FAST_INT_OPS, 1,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2010 [Define to 1 if signed integers use two's complement.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2011 fi
13957
c510048901cc set cross compile defaults for AC_RUN_IFELSE
John W. Eaton <jwe@octave.org>
parents: 13728
diff changeset
2012 ])
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2013 dnl
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2014 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
2015 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
2016 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
2017 dnl Add options (lower case letters $1) "--with-framework-$1" and
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2018 dnl "--without-framework-$1". If this test is successful then perform
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
2019 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
2020 dnl
9654
a307a6f77fb3 aclocal.m4: consistently quote first arg to AC_DEFUN
John W. Eaton <jwe@octave.org>
parents: 9645
diff changeset
2021 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
2022 AC_MSG_CHECKING([whether ${LD-ld} accepts -framework $1])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2023 AC_CACHE_VAL([octave_cv_framework_$1],
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2024 [ac_octave_save_LDFLAGS="$LDFLAGS"
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2025 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
2026 AC_LANG_PUSH(C++)
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2027 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
2028 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
2029 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
2030 AC_LANG_POP(C++)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2031 LDFLAGS="$ac_octave_save_LDFLAGS"
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2032 ])
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2033 if test "$octave_cv_framework_$1" = yes; then
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
2034 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
2035 AC_ARG_WITH(framework-m4_tolower($1),
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2036 [AS_HELP_STRING([--without-framework-m4_tolower($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
2037 [don't use framework $1])],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2038 with_have_framework=$withval, with_have_framework=yes)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2039 if test "$with_have_framework" = yes; then
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
2040 [$4]
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2041 :
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
2042 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
2043 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
2044 [$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
2045 fi
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2046 else
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
2047 AC_MSG_RESULT([no])
8595
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2048 [$5]
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2049 fi
dee5d60257e4 Use Carbon framework to determine ScreenSize on Mac.
Thomas Treichl <Thomas.Treichl@gmx.net>
parents: 8169
diff changeset
2050 ])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2051 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2052 dnl Figure out the hardware-vendor-os info.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2053 dnl
15863
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2054 AC_DEFUN([OCTAVE_CANONICAL_HOST], [
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2055 AC_CANONICAL_HOST
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2056 if test -z "$host"; then
15863
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2057 host=unknown-unknown-unknown
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2058 AC_MSG_WARN([configuring Octave for unknown system type])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2059 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2060 canonical_host_type=$host
15863
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2061 AC_SUBST(canonical_host_type)
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2062 if test -z "$host_cpu"; then
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2063 host_cpu=unknown
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2064 fi
15863
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2065 if test -z "$host_vendor"; then
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2066 host_vendor=unknown
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2067 fi
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2068 if test -z "$host_os"; then
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2069 host_os=unknown
b316429bfa89 build: Use $host_os variable to clarify configure.ac
Rik <rik@octave.org>
parents: 15834
diff changeset
2070 fi
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2071 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2072 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2073 dnl Check for IEEE 754 data format.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2074 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2075 AC_DEFUN([OCTAVE_IEEE754_DATA_FORMAT], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2076 AC_MSG_CHECKING([for IEEE 754 data format])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2077 AC_CACHE_VAL([octave_cv_ieee754_data_format],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2078 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2079 int
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2080 main (void)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2081 {
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2082 typedef union { unsigned char c[8]; double d; } ieeebytes;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2083
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2084 ieeebytes l = {0x1c, 0xbc, 0x6e, 0xf2, 0x54, 0x8b, 0x11, 0x43};
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2085 ieeebytes b = {0x43, 0x11, 0x8b, 0x54, 0xf2, 0x6e, 0xbc, 0x1c};
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2086
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2087 return l.d != 1234567891234567.0 && b.d != 1234567891234567.0;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2088 }
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2089 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2090 octave_cv_ieee754_data_format=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2091 octave_cv_ieee754_data_format=no,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2092 octave_cv_ieee754_data_format=yes)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2093 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2094 if test "$cross_compiling" = yes; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2095 AC_MSG_RESULT([$octave_cv_ieee754_data_format assumed for cross compilation])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2096 else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2097 AC_MSG_RESULT([$octave_cv_ieee754_data_format])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2098 fi
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2099 if test $octave_cv_ieee754_data_format = yes; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2100 AC_DEFINE(HAVE_IEEE754_DATA_FORMAT, 1,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2101 [Define to 1 if your system uses IEEE 754 data format.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2102 else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2103 ## If the format is unknown, then you will probably not have a
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2104 ## useful system, so we will abort here. Anyone wishing to
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2105 ## experiment with building Octave on a system without IEEE
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2106 ## floating point should be capable of removing this check and
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2107 ## the one in the octave_ieee_init function in liboctave/lo-ieee.cc.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2108 AC_MSG_ERROR([IEEE 754 data format required for building Octave])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2109 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2110 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2111 dnl
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2112 dnl Check for CallInst::addAttribute API
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2113 dnl
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2114 AC_DEFUN([OCTAVE_LLVM_CALLINST_ADDATTRIBUTE_API], [
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2115 AC_CACHE_CHECK([check LLVM::CallInst::addAttribute arg type is llvm::Attributes],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2116 [octave_cv_callinst_addattribute_arg_is_attributes],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2117 [AC_LANG_PUSH(C++)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2118 AC_COMPILE_IFELSE(
17615
3a7d5d655749 Fix typos in configure tests for LLVM methods (bug #39973)
Mike Miller <mtmiller@ieee.org>
parents: 17241
diff changeset
2119 [AC_LANG_PROGRAM([[
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
2120 #if defined (HAVE_LLVM_IR_FUNCTION_H)
17164
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2121 #include <llvm/IR/Instructions.h>
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2122 #include <llvm/IR/Attributes.h>
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2123 #else
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2124 #include <llvm/Instructions.h>
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2125 #include <llvm/Attributes.h>
17164
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2126 #endif
17615
3a7d5d655749 Fix typos in configure tests for LLVM methods (bug #39973)
Mike Miller <mtmiller@ieee.org>
parents: 17241
diff changeset
2127 ]], [[
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2128 llvm::CallInst *callinst;
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2129 llvm::AttrBuilder attr_builder;
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2130 attr_builder.addAttribute(llvm::Attributes::StructRet);
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2131 llvm::Attributes attrs = llvm::Attributes::get(llvm::getGlobalContext(), attr_builder);
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2132 callinst->addAttribute (1, attrs);
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2133 ]])],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2134 octave_cv_callinst_addattribute_arg_is_attributes=yes,
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2135 octave_cv_callinst_addattribute_arg_is_attributes=no)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2136 AC_LANG_POP(C++)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2137 ])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2138 if test $octave_cv_callinst_addattribute_arg_is_attributes = yes; then
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2139 AC_DEFINE(CALLINST_ADDATTRIBUTE_ARG_IS_ATTRIBUTES, 1,
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2140 [Define to 1 if llvm::CallInst:addAttribute arg type is llvm::Attributes.])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2141 fi
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2142 ])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2143 dnl
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2144 dnl Check for Function::addAttribute API
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2145 dnl
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2146 AC_DEFUN([OCTAVE_LLVM_FUNCTION_ADDATTRIBUTE_API], [
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2147 AC_CACHE_CHECK([check llvm::Function::addAttribute arg type is llvm::Attributes],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2148 [octave_cv_function_addattribute_arg_is_attributes],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2149 [AC_LANG_PUSH(C++)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2150 AC_COMPILE_IFELSE(
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2151 [AC_LANG_PROGRAM([[
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
2152 #if defined (HAVE_LLVM_IR_FUNCTION_H)
17164
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2153 #include <llvm/IR/Function.h>
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2154 #include <llvm/IR/Attributes.h>
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2155 #include <llvm/IR/LLVMContext.h>
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2156 #else
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2157 #include <llvm/Function.h>
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2158 #include <llvm/Attributes.h>
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2159 #include <llvm/LLVMContext.h>
17164
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2160 #endif
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2161 ]], [[
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2162 llvm::Function *llvm_function;
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2163 llvm::AttrBuilder attr_builder;
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2164 attr_builder.addAttribute(llvm::Attributes::StructRet);
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2165 llvm::Attributes attrs = llvm::Attributes::get(llvm::getGlobalContext(), attr_builder);
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2166 llvm_function->addAttribute (1, attrs);
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2167 ]])],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2168 octave_cv_function_addattribute_arg_is_attributes=yes,
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2169 octave_cv_function_addattribute_arg_is_attributes=no)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2170 AC_LANG_POP(C++)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2171 ])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2172 if test $octave_cv_function_addattribute_arg_is_attributes = yes; then
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2173 AC_DEFINE(FUNCTION_ADDATTRIBUTE_ARG_IS_ATTRIBUTES, 1,
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2174 [Define to 1 if llvm::Function:addAttribute arg type is llvm::Attributes.])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2175 fi
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2176 ])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2177 dnl
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2178 dnl Check for Function::addFnAttr API
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2179 dnl
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2180 AC_DEFUN([OCTAVE_LLVM_FUNCTION_ADDFNATTR_API], [
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2181 AC_CACHE_CHECK([check LLVM::Function::addFnAttr arg type is llvm::Attributes],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2182 [octave_cv_function_addfnattr_arg_is_attributes],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2183 [AC_LANG_PUSH(C++)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2184 AC_COMPILE_IFELSE(
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2185 [AC_LANG_PROGRAM([[
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
2186 #if defined (HAVE_LLVM_IR_FUNCTION_H)
17615
3a7d5d655749 Fix typos in configure tests for LLVM methods (bug #39973)
Mike Miller <mtmiller@ieee.org>
parents: 17241
diff changeset
2187 #include <llvm/IR/Function.h>
3a7d5d655749 Fix typos in configure tests for LLVM methods (bug #39973)
Mike Miller <mtmiller@ieee.org>
parents: 17241
diff changeset
2188 #include <llvm/IR/Attributes.h>
17164
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2189 #else
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2190 #include <llvm/Function.h>
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2191 #include <llvm/Attributes.h>
36fd98b9ce48 Add support for llvm 3.3
Max Brister <max@2bass.com>
parents: 17111
diff changeset
2192 #endif
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2193 ]], [[
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2194 llvm::Function *llvm_function;
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2195 llvm_function->addFnAttr (llvm::Attributes::AlwaysInline);
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2196 ]])],
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2197 octave_cv_function_addfnattr_arg_is_attributes=yes,
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2198 octave_cv_function_addfnattr_arg_is_attributes=no)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2199 AC_LANG_POP(C++)
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2200 ])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2201 if test $octave_cv_function_addfnattr_arg_is_attributes = yes; then
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2202 AC_DEFINE(FUNCTION_ADDFNATTR_ARG_IS_ATTRIBUTES, 1,
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2203 [Define to 1 if llvm::Function:addFnAttr arg type is llvm::Attributes.])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2204 fi
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2205 ])
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2206 dnl
18831
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2207 dnl Check for raw_fd_ostream API
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2208 dnl
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2209 AC_DEFUN([OCTAVE_LLVM_RAW_FD_OSTREAM_API], [
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2210 AC_CACHE_CHECK([check LLVM::raw_fd_ostream arg type is llvm::sys:fs],
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2211 [octave_cv_raw_fd_ostream_arg_is_llvm_sys_fs],
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2212 [AC_LANG_PUSH(C++)
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2213 AC_COMPILE_IFELSE(
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2214 [AC_LANG_PROGRAM([[
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2215 #include <llvm/Support/raw_os_ostream.h>
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2216 ]], [[
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2217 std::string str;
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2218 llvm::raw_fd_ostream fout ("", str, llvm::sys::fs::F_Binary);
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2219 ]])],
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2220 octave_cv_raw_fd_ostream_arg_is_llvm_sys_fs=yes,
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2221 octave_cv_raw_fd_ostream_arg_is_llvm_sys_fs=no)
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2222 AC_LANG_POP(C++)
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2223 ])
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2224 if test $octave_cv_raw_fd_ostream_arg_is_llvm_sys_fs = yes; then
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2225 AC_DEFINE(RAW_FD_OSTREAM_ARG_IS_LLVM_SYS_FS, 1,
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2226 [Define to 1 if LLVM::raw_fd_ostream arg type is llvm::sys:fs.])
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2227 fi
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2228 ])
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2229 dnl
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2230 dnl Check for legacy::PassManager API
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2231 dnl
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2232 AC_DEFUN([OCTAVE_LLVM_LEGACY_PASSMANAGER_API], [
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2233 AC_CACHE_CHECK([check for LLVM::legacy::PassManager],
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2234 [octave_cv_legacy_passmanager],
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2235 [AC_LANG_PUSH(C++)
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2236 save_LIBS="$LIBS"
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2237 LIBS="$LLVM_LIBS $LIBS"
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2238 AC_LINK_IFELSE(
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2239 [AC_LANG_PROGRAM([[
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2240 #include <llvm/IR/LegacyPassManager.h>
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2241 ]], [[
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2242 llvm::Module *module;
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2243 llvm::legacy::PassManager *module_pass_manager;
19597
db92e7e28e1f strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 19355
diff changeset
2244 llvm::legacy::FunctionPassManager *pass_manager;
18831
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2245 module_pass_manager = new llvm::legacy::PassManager ();
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2246 pass_manager = new llvm::legacy::FunctionPassManager (module);
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2247 ]])],
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2248 octave_cv_legacy_passmanager=yes,
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2249 octave_cv_legacy_passmanager=no)
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2250 LIBS="$save_LIBS"
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2251 AC_LANG_POP(C++)
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2252 ])
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2253 if test $octave_cv_legacy_passmanager = yes; then
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2254 AC_DEFINE(LEGACY_PASSMANAGER, 1,
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2255 [Define to 1 if LLVM::legacy::PassManager exists.])
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2256 fi
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2257 ])
4a4edf0f2077 fix LLVM 3.4 build (bug #41061)
Stefan Mahr <dac922@gmx.de>
parents: 18216
diff changeset
2258 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2259 dnl Check for ar.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2260 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2261 AC_DEFUN([OCTAVE_PROG_AR], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2262 if test -z "$AR"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2263 AR=ar
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2264 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2265 AC_SUBST(AR)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2266
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2267 if test -z "$ARFLAGS"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2268 ARFLAGS="rc"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2269 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2270 AC_SUBST(ARFLAGS)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2271 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2272 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2273 dnl Check for bison.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2274 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2275 AC_DEFUN([OCTAVE_PROG_BISON], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2276 AC_PROG_YACC
16784
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2277
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2278 case "`$YACC --version`" in
17197
fbee0d312af5 acinclude.m4: Remove some unnecessary double quotes around variables.
Rik <rik@octave.org>
parents: 17196
diff changeset
2279 *bison*) tmp_have_bison=yes ;;
16784
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2280 *) tmp_have_bison=no ;;
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2281 esac
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2282
17197
fbee0d312af5 acinclude.m4: Remove some unnecessary double quotes around variables.
Rik <rik@octave.org>
parents: 17196
diff changeset
2283 if test $tmp_have_bison = yes; then
18974
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2284 AC_CACHE_CHECK([syntax of bison api.prefix (or name-prefix) declaration],
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2285 [octave_cv_bison_api_prefix_decl_style], [
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2286 style="api name"
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2287 quote="quote brace"
18974
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2288 for s in $style; do
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2289 for q in $quote; do
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2290 if test $s = "api"; then
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2291 if test $q = "quote"; then
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2292 def='%define api.prefix "foo_"'
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2293 else
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2294 def='%define api.prefix {foo_}'
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2295 fi
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2296 else
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2297 if test $q = "quote"; then
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2298 def='%name-prefix="foo_"'
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2299 else
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2300 def='%name-prefix {foo_}'
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2301 fi
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2302 fi
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2303 cat << EOF > conftest.yy
18974
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2304 $def
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2305 %start input
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2306 %%
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2307 input:;
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2308 %%
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2309 EOF
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2310 ## Older versions of bison only warn and exit with success.
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2311 octave_bison_output=`$YACC conftest.yy 2>&1`
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2312 ac_status=$?
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2313 if test $ac_status -eq 0 && test -z "$octave_bison_output"; then
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2314 octave_cv_bison_api_prefix_decl_style="$s $q"
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2315 break
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2316 fi
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2317 done
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2318 if test -n "$octave_cv_bison_api_prefix_decl_style"; then
18974
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2319 break
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2320 fi
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2321 done
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2322 rm -f conftest.yy y.tab.h y.tab.c
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2323 ])
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2324 fi
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2325
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2326 AC_SUBST(BISON_API_PREFIX_DECL_STYLE, $octave_cv_bison_api_prefix_decl_style)
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2327
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2328 if test -z "$octave_cv_bison_api_prefix_decl_style"; then
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2329 tmp_have_bison=no
18974
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2330 warn_bison_api_prefix_decl_style="
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2331
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2332 I wasn't able to find a suitable style for declaring the api prefix
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2333 in a bison input file so I'm disabling bison.
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2334 "
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2335 OCTAVE_CONFIGURE_WARNING([warn_bison_api_prefix_decl_style])
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2336 fi
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2337
d8abf813c69f handle changes in bison 3.x
John W. Eaton <jwe@octave.org>
parents: 18973
diff changeset
2338 if test $tmp_have_bison = yes; then
16174
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2339 AC_CACHE_CHECK([syntax of bison push/pull declaration],
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2340 [octave_cv_bison_push_pull_decl_style], [
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2341 style="dash underscore"
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2342 quote="noquote quote"
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2343 for s in $style; do
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2344 for q in $quote; do
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2345 if test $s = "dash"; then
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2346 def="%define api.push-pull"
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2347 else
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2348 def="%define api.push_pull"
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2349 fi
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2350 if test $q = "quote"; then
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2351 def="$def \"both\""
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2352 else
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2353 def="$def both"
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2354 fi
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2355 cat << EOF > conftest.yy
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2356 $def
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2357 %start input
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2358 %%
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2359 input:;
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2360 %%
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2361 EOF
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2362 octave_bison_output=`$YACC conftest.yy 2>&1`
16174
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2363 ac_status=$?
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2364 if test $ac_status -eq 0 && test -z "$octave_bison_output"; then
16174
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2365 if test $q = noquote; then
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2366 q=
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2367 fi
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2368 octave_cv_bison_push_pull_decl_style="$s $q"
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2369 break
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2370 fi
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2371 done
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2372 if test -n "$octave_cv_bison_push_pull_decl_style"; then
16174
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2373 break
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2374 fi
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2375 done
16202
7ce484126bb2 Remove temporary y.tab.c file used by configure script.
Rik <rik@octave.org>
parents: 16174
diff changeset
2376 rm -f conftest.yy y.tab.h y.tab.c
16174
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2377 ])
16784
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2378 fi
16174
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2379
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2380 AC_SUBST(BISON_PUSH_PULL_DECL_STYLE, $octave_cv_bison_push_pull_decl_style)
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2381
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2382 if test -z "$octave_cv_bison_push_pull_decl_style"; then
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2383 tmp_have_bison=no
16174
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2384 warn_bison_push_pull_decl_style="
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2385
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2386 I wasn't able to find a suitable style for declaring a push-pull
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2387 parser in a bison input file so I'm disabling bison.
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2388 "
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2389 OCTAVE_CONFIGURE_WARNING([warn_bison_push_pull_decl_style])
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2390 fi
39096b290a2f check syntax used to enable bison push/pull parser
John W. Eaton <jwe@octave.org>
parents: 16068
diff changeset
2391
17197
fbee0d312af5 acinclude.m4: Remove some unnecessary double quotes around variables.
Rik <rik@octave.org>
parents: 17196
diff changeset
2392 if test $tmp_have_bison = no; then
16784
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2393 YACC='$(top_srcdir)/build-aux/missing bison'
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2394 warn_bison="
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2395
19105
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2396 I didn't find bison, or the version of bison that I found does not
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2397 support all the features that are required, but it's only a problem
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2398 if you need to reconstruct parse.cc, which is the case if you're
6b4dfb1e5afb allow building with old versions of bison again (bug #43023)
John W. Eaton <jwe@octave.org>
parents: 18974
diff changeset
2399 building from VCS sources.
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2400 "
16784
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2401 OCTAVE_CONFIGURE_WARNING([warn_bison])
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2402 fi
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2403 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2404 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2405 dnl Find desktop-file-install program.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2406 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2407 AC_DEFUN([OCTAVE_PROG_DESKTOP_FILE_INSTALL], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2408 AC_CHECK_PROG(DESKTOP_FILE_INSTALL, desktop-file-install, desktop-file-install, [])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2409 AC_SUBST(DESKTOP_FILE_INSTALL)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2410 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2411 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2412 dnl Find find program.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2413 dnl
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2414 ## Prefer GNU find if found.
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2415 AN_MAKEVAR([FIND], [OCTAVE_PROG_FIND])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2416 AN_PROGRAM([gfind], [OCTAVE_PROG_FIND])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2417 AN_PROGRAM([find], [OCTAVE_PROG_FIND])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2418 AC_DEFUN([OCTAVE_PROG_FIND], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2419 AC_CHECK_PROGS(FIND, [gfind find])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2420 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2421 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2422 dnl Check for flex.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2423 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2424 AC_DEFUN([OCTAVE_PROG_FLEX], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2425 ## For now, don't define LEXLIB to be -lfl -- we don't use anything in
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2426 ## it, and it might not be installed.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2427 ##
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2428 ## Also make sure that we generate an interactive scanner if we are
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2429 ## using flex.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2430 AC_PROG_LEX
16784
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2431 case "`$LEX --version`" in
0fabe0f49f38 use better method to determine whether we are using flex and bison
John W. Eaton <jwe@octave.org>
parents: 16733
diff changeset
2432 *flex*)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2433 LFLAGS="-I"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2434 AC_MSG_RESULT([defining LFLAGS to be $LFLAGS])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2435 LEXLIB=
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2436 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2437 *)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2438 LEX='$(top_srcdir)/build-aux/missing flex'
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2439 warn_flex="
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2440
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2441 I didn't find flex, but it's only a problem if you need to reconstruct
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2442 lex.cc, which is the case if you're building from VCS sources.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2443 "
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2444 OCTAVE_CONFIGURE_WARNING([warn_flex])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2445 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2446 esac
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2447 AC_SUBST(LFLAGS)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2448 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2449 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2450 dnl Check for ghostscript.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2451 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2452 AC_DEFUN([OCTAVE_PROG_GHOSTSCRIPT], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2453 case "$canonical_host_type" in
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2454 *-*-mingw* | *-*-msdosmsvc)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2455 ac_octave_gs_names="gswin32c gs mgs"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2456 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2457 *)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2458 ac_octave_gs_names="gs"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2459 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2460 esac
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2461 AC_CHECK_PROGS(GHOSTSCRIPT, [$ac_octave_gs_names])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2462 if test -z "$GHOSTSCRIPT"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2463 GHOSTSCRIPT='$(top_srcdir)/build-aux/missing gs'
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2464 warn_ghostscript="
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2465
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2466 I didn't find ghostscript, so reconstructing figures for the manual
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2467 will fail, and saving graphics in some output formats will fail when
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2468 using Octave
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2469 "
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2470 OCTAVE_CONFIGURE_WARNING([warn_ghostscript])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2471 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2472 AC_SUBST(GHOSTSCRIPT)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2473 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2474 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2475 dnl Check for gnuplot.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2476 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2477 AC_DEFUN([OCTAVE_PROG_GNUPLOT], [
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2478 ac_octave_gp_names="gnuplot"
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2479 ac_octave_gp_default="gnuplot"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2480 if test "$cross_compiling" = yes; then
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2481 GNUPLOT="$ac_octave_gp_default"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2482 AC_MSG_RESULT([assuming $GNUPLOT exists on $canonical_host_type host])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2483 else
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2484 AC_CHECK_PROGS(GNUPLOT, [$ac_octave_gp_names])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2485 if test -z "$GNUPLOT"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2486 GNUPLOT="$gp_default"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2487 warn_gnuplot="
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2488
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2489 gnuplot not found. It isn't necessary to have gnuplot installed, but
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2490 without native graphics or gnuplot you won't be able to use any of
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2491 Octave's plotting commands.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2492 "
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2493 OCTAVE_CONFIGURE_WARNING([warn_gnuplot])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2494 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2495 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2496 AC_SUBST(GNUPLOT)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2497 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2498 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2499 dnl Check for gperf.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2500 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2501 AC_DEFUN([OCTAVE_PROG_GPERF], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2502 AC_CHECK_PROG(GPERF, gperf, gperf, [])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2503 if test -z "$GPERF"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2504 GPERF='$(top_srcdir)/build-aux/missing gperf'
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2505 warn_gperf="
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2506
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2507 I didn't find gperf, but it's only a problem if you need to
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2508 reconstruct oct-gperf.h
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2509 "
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2510 OCTAVE_CONFIGURE_WARNING([warn_gperf])
16663
e380d1317c72 use missing script for gperf
John W. Eaton <jwe@octave.org>
parents: 16318
diff changeset
2511 GPERF='$(top_srcdir)/build-aux/missing gperf'
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2512 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2513 AC_SUBST(GPERF)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2514 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2515 dnl
19744
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2516 dnl Find icotool program.
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2517 dnl
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2518 AC_DEFUN([OCTAVE_PROG_ICOTOOL], [
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2519 AC_CHECK_PROG(ICOTOOL, icotool, icotool, [])
19753
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2520 if test -z "$ICOTOOL"; then
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2521 ICOTOOL='$(top_srcdir)/build-aux/missing icotool'
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2522 warn_icotool="
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2523
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2524 I didn't find icotool, but it's only a problem if you need to
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2525 reconstruct octave-logo.ico, which is the case if you're building from
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2526 VCS sources.
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2527 "
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2528 OCTAVE_CONFIGURE_WARNING([warn_icotool])
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2529 fi
19744
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2530 AC_SUBST(ICOTOOL)
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2531 ])
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2532 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2533 dnl Check for makeinfo.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2534 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2535 AC_DEFUN([OCTAVE_PROG_MAKEINFO], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2536 dnl use MKINFO, not MAKEINFO, for variable name because Automake
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2537 dnl automatically defines a value for MAKEINFO even when it does not
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2538 dnl exist which will then fool the 'test -z' line.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2539 AC_CHECK_PROG(MKINFO, makeinfo, makeinfo, [])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2540 if test -z "$MKINFO"; then
16012
ca37c6023a79 don't abort configure if makeinfo is missing
John W. Eaton <jwe@octave.org>
parents: 15969
diff changeset
2541 warn_makeinfo="
ca37c6023a79 don't abort configure if makeinfo is missing
John W. Eaton <jwe@octave.org>
parents: 15969
diff changeset
2542
ca37c6023a79 don't abort configure if makeinfo is missing
John W. Eaton <jwe@octave.org>
parents: 15969
diff changeset
2543 I didn't find makeinfo, which is required for reading documentation.
ca37c6023a79 don't abort configure if makeinfo is missing
John W. Eaton <jwe@octave.org>
parents: 15969
diff changeset
2544 You may install a copy later for Octave to use.
ca37c6023a79 don't abort configure if makeinfo is missing
John W. Eaton <jwe@octave.org>
parents: 15969
diff changeset
2545 "
ca37c6023a79 don't abort configure if makeinfo is missing
John W. Eaton <jwe@octave.org>
parents: 15969
diff changeset
2546 OCTAVE_CONFIGURE_WARNING([warn_makeinfo])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2547 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2548 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2549 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2550 dnl What pager should we use?
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2551 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2552 AC_DEFUN([OCTAVE_PROG_PAGER], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2553 if test "$cross_compiling" = yes; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2554 DEFAULT_PAGER=less
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2555 AC_MSG_RESULT([assuming $DEFAULT_PAGER exists on $canonical_host_type host])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2556 AC_SUBST(DEFAULT_PAGER)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2557 else
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2558 ac_octave_possible_pagers="less more page pg"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2559 case "$canonical_host_type" in
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2560 *-*-cygwin* | *-*-mingw32* | *-*-msdosmsvc)
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2561 ac_octave_possible_pagers="$ac_octave_possible_pagers more.com"
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2562 ;;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2563 esac
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2564
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2565 AC_CHECK_PROGS(DEFAULT_PAGER, [$ac_octave_possible_pagers], [])
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2566 if test -z "$DEFAULT_PAGER"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2567 warn_less="I couldn't find \`less', \`more', \`page', or \`pg'"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2568 OCTAVE_CONFIGURE_WARNING([warn_less])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2569 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2570 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2571 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2572 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2573 dnl Find Perl program.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2574 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2575 AC_DEFUN([OCTAVE_PROG_PERL], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2576 AC_CHECK_PROG(PERL, perl, perl, [])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2577 AC_SUBST(PERL)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2578 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2579 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2580 dnl Find Python program.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2581 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2582 AC_DEFUN([OCTAVE_PROG_PYTHON], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2583 AC_CHECK_PROG(PYTHON, python, python, [])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2584 AC_SUBST(PYTHON)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2585 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2586 dnl
19744
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2587 dnl Find rsvg-convert program.
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2588 dnl
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2589 AC_DEFUN([OCTAVE_PROG_RSVG_CONVERT], [
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2590 AC_CHECK_PROG(RSVG_CONVERT, rsvg-convert, rsvg-convert, [])
19753
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2591 if test -z "$RSVG_CONVERT"; then
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2592 RSVG_CONVERT='$(top_srcdir)/build-aux/missing rsvg-convert'
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2593 warn_rsvg_convert="
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2594
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2595 I didn't find rsvg-convert, but it's only a problem if you need to
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2596 reconstruct octave-logo-*.png, which is the case if you're building
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2597 from VCS sources.
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2598 "
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2599 OCTAVE_CONFIGURE_WARNING([warn_rsvg_convert])
bc2a8db22831 build: Use the missing script for icotool and rsvg-convert
Mike Miller <mtmiller@ieee.org>
parents: 19744
diff changeset
2600 fi
19744
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2601 AC_SUBST(RSVG_CONVERT)
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2602 ])
1687269e31e4 build: Generate Octave logo icons from SVG source (bug #37062)
Mike Miller <mtmiller@ieee.org>
parents: 19697
diff changeset
2603 dnl
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2604 dnl Find sed program.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2605 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2606 # Check for a fully-functional sed program, that truncates
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2607 # as few characters as possible and that supports "\(X\|Y\)"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2608 # style regular expression alternation. Prefer GNU sed if found.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2609 AC_DEFUN([OCTAVE_PROG_SED], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2610 AC_MSG_CHECKING([for a usable sed])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2611 if test -z "$SED"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2612 AC_CACHE_VAL([octave_cv_prog_sed],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2613 [# Loop through the user's path and search for sed and gsed.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2614 # Next, test potential sed programs in list for truncation.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2615 _AS_PATH_WALK([$PATH],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2616 [for ac_prog in sed gsed; do
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2617 for ac_exec_ext in '' $ac_executable_extensions; do
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2618 if AS_EXECUTABLE_P(["$as_dir/$ac_prog$ac_exec_ext"]); then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2619 _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2620 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2621 done
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2622 done
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2623 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2624 AS_TMPDIR(sed)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2625 _max=0
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2626 _count=0
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2627 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2628 # along with /bin/sed that truncates output.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2629 for _sed in $_sed_list /usr/xpg4/bin/sed; do
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2630 test ! -f ${_sed} && break
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2631 cat /dev/null > "$tmp/sed.in"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2632 _count=0
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2633 echo $ECHO_N "0123456789$ECHO_C" >"$tmp/sed.in"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2634 # Check for GNU sed and select it if it is found.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2635 if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2636 octave_cv_prog_sed=${_sed}
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2637 break;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2638 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2639 # Reject if RE alternation is not handled.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2640 if test "`echo 'this and that' | ${_sed} -n 's/\(this\|that\).*$/\1/p'`" != "this"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2641 continue;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2642 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2643 while true; do
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2644 cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2645 mv "$tmp/sed.tmp" "$tmp/sed.in"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2646 cp "$tmp/sed.in" "$tmp/sed.nl"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2647 echo >>"$tmp/sed.nl"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2648 ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2649 cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2650 # 10000 chars as input seems more than enough
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2651 test $_count -gt 10 && break
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2652 _count=`expr $_count + 1`
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2653 if test $_count -gt $_max; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2654 _max=$_count
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2655 octave_cv_prog_sed=$_sed
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2656 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2657 done
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2658 done
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2659 rm -rf "$tmp"
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2660 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2661 SED=$octave_cv_prog_sed
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2662 if test -z "$SED"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2663 AC_MSG_ERROR([no usable version of sed found])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2664 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2665 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2666 AC_SUBST(SED)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2667 AC_MSG_RESULT([$SED])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2668 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2669 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2670 dnl Check for texi2dvi.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2671 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2672 AC_DEFUN([OCTAVE_PROG_TEXI2DVI], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2673 AC_CHECK_PROG(TEXI2DVI, texi2dvi, texi2dvi, [])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2674 if test -z "$TEXI2DVI"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2675 TEXI2DVI='$(top_srcdir)/build-aux/missing texi2dvi'
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2676 warn_texi2dvi="
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2677
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2678 I didn't find texi2dvi, but it's only a problem if you need to
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2679 reconstruct the DVI version of the manual
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2680 "
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2681 OCTAVE_CONFIGURE_WARNING([warn_texi2dvi])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2682 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2683 AC_SUBST(TEXI2DVI)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2684 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2685 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2686 dnl Check for texi2pdf.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2687 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2688 AC_DEFUN([OCTAVE_PROG_TEXI2PDF], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2689 AC_REQUIRE([OCTAVE_PROG_TEXI2DVI])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2690 AC_CHECK_PROG(TEXI2PDF, texi2pdf, texi2pdf, [])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2691 if test -z "$TEXI2PDF"; then
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
2692 ac_octave_texi2pdf_missing=yes;
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2693 if test -n "$TEXI2DVI"; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2694 TEXI2PDF="$TEXI2DVI --pdf"
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
2695 ac_octave_texi2pdf_missing=no;
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2696 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2697 else
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
2698 ac_octave_texi2pdf_missing=no;
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2699 fi
16068
b309a5da17f5 use yes/no instead of true/false in confgure scripts
John W. Eaton <jwe@octave.org>
parents: 16012
diff changeset
2700 if test $ac_octave_texi2pdf_missing = yes; then
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2701 TEXI2PDF='$(top_srcdir)/build-aux/missing texi2pdf'
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2702 warn_texi2pdf="
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2703
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2704 I didn't find texi2pdf, but it's only a problem if you need to
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2705 reconstruct the PDF version of the manual
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2706 "
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2707 OCTAVE_CONFIGURE_WARNING([warn_texi2pdf])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2708 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2709 AC_SUBST(TEXI2PDF)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2710 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2711 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2712 dnl Set default value for a variable and substitute it.
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2713 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2714 AC_DEFUN([OCTAVE_SET_DEFAULT], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2715 ifelse($#, 2, [: ${$1=$2}
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2716 ])dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2717 AC_MSG_RESULT([defining $1 to be $$1])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2718 AC_SUBST($1)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2719 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2720 dnl
15144
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2721 dnl Check for UMFPACK separately split complex matrix and RHS.
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2722 dnl
15144
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2723 dnl Macro assumes that the check for umfpack has already been performed.
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2724 dnl
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2725 AC_DEFUN([OCTAVE_UMFPACK_SEPARATE_SPLIT], [
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2726 AC_MSG_CHECKING([for UMFPACK separate complex matrix and rhs split])
15319
daf74ce2afdc m4/acinclude.m4: Use more consistent m4 quoting of arguments to macros.
Rik <rik@octave.org>
parents: 15302
diff changeset
2727 AC_CACHE_VAL([octave_cv_umfpack_separate_split],
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2728 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
16318
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2729 #include <stdint.h>
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2730 #include <stdlib.h>
15330
81cc4e5733b1 build: Silence compiler warning in config.log for OCTAVE_UMFPACK_SEPARATE_SPLIT.
Rik <rik@octave.org>
parents: 15329
diff changeset
2731 #include <math.h>
15144
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2732 #if defined (HAVE_SUITESPARSE_UMFPACK_H)
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2733 # include <suitesparse/umfpack.h>
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2734 #elif defined (HAVE_UFSPARSE_UMFPACK_H)
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2735 # include <ufsparse/umfpack.h>
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2736 #elif defined (HAVE_UMFPACK_UMFPACK_H)
15144
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2737 # include <umfpack/umfpack.h>
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2738 #elif defined (HAVE_UMFPACK_H)
15144
9cc337ced51a build: Update OCTAVE_UMFPACK_SEPARATE_SPLIT macro to look for SuiteSparse header file.
Rik <rik@octave.org>
parents: 15141
diff changeset
2739 # include <umfpack.h>
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2740 #endif
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21604
diff changeset
2741 #if defined (OCTAVE_ENABLE_64)
16318
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2742 typedef uint64_t idx_type;
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2743 #define UMFPACK_NAME(name) umfpack_zl_ ## name
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2744 #else
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2745 typedef int idx_type;
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2746 #define UMFPACK_NAME(name) umfpack_zi_ ## name
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2747 #endif
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2748 idx_type n = 5;
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2749 idx_type Ap[] = {0, 2, 5, 9, 10, 12};
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2750 idx_type Ai[] = {0, 1, 0, 2, 4, 1, 2, 3, 4, 2, 1, 4};
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2751 double Ax[] = {2., 0., 3., 0., 3., 0., -1., 0., 4., 0., 4., 0.,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2752 -3., 0., 1., 0., 2., 0., 2., 0., 6., 0., 1., 0.};
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2753 double br[] = {8., 45., -3., 3., 19.};
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2754 double bi[] = {0., 0., 0., 0., 0.};
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2755 int main (void)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2756 {
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2757 double *null = (double *) NULL ;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2758 double *x = (double *)malloc (2 * n * sizeof(double));
16318
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2759 idx_type i ;
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2760 void *Symbolic, *Numeric ;
16318
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2761 (void) UMFPACK_NAME (symbolic) (n, n, Ap, Ai, Ax, null, &Symbolic, null, null) ;
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2762 (void) UMFPACK_NAME (numeric) (Ap, Ai, Ax, null, Symbolic, &Numeric, null, null) ;
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2763 UMFPACK_NAME (free_symbolic) (&Symbolic) ;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2764 (void) UMFPACK_NAME (solve) (0, Ap, Ai, Ax, null, x, null, br, bi,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2765 Numeric, null, null) ;
16318
eb572251b7c6 check for correct SuiteSparse functions if --enable-64
John W. Eaton <jwe@octave.org>
parents: 16313
diff changeset
2766 UMFPACK_NAME (free_numeric) (&Numeric) ;
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2767 for (i = 0; i < n; i++, x+=2)
15330
81cc4e5733b1 build: Silence compiler warning in config.log for OCTAVE_UMFPACK_SEPARATE_SPLIT.
Rik <rik@octave.org>
parents: 15329
diff changeset
2768 if (fabs (*x - i - 1.) > 1.e-13)
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2769 return (1);
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2770 return (0) ;
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2771 }
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2772 ]])],
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2773 octave_cv_umfpack_separate_split=yes,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2774 octave_cv_umfpack_separate_split=no,
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2775 octave_cv_umfpack_separate_split=yes)
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2776 ])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2777 if test "$cross_compiling" = yes; then
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2778 AC_MSG_RESULT([$octave_cv_umfpack_separate_split assumed for cross compilation])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2779 else
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2780 AC_MSG_RESULT([$octave_cv_umfpack_separate_split])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2781 fi
15336
5fff79162342 acinclude.m4: Put temporary shell variables in macros into ac_octave namespace.
Rik <rik@octave.org>
parents: 15330
diff changeset
2782 if test $octave_cv_umfpack_separate_split = yes; then
17034
8d84dc5f5b5d acinclude.m4: Use m4 quote '[' rather than '"' in AC_MSG_ERROR.
Rik <rik@octave.org>
parents: 17031
diff changeset
2783 AC_DEFINE(UMFPACK_SEPARATE_SPLIT, 1,
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2784 [Define to 1 if the UMFPACK Complex solver allows matrix and RHS to be split independently.])
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2785 fi
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2786 ])
9403
4af6e29449c1 [mq]: graphics_text_engine
Michael Goffioul <michael.goffioul@gmail.com>
parents: 9231
diff changeset
2787
15141
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2788 dnl End of macros written by Octave developers
4388f6518440 build: Overhaul acinclude.m4 macros.
Rik <rik@octave.org>
parents: 15134
diff changeset
2789 dnl ------------------------------------------------------------
9645
4531741e5236 configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9596
diff changeset
2790 dnl
4531741e5236 configure tweaks
John W. Eaton <jwe@octave.org>
parents: 9596
diff changeset
2791