annotate aclocal.m4 @ 9531:b859079d1644

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