Mercurial > pytave
annotate configure.ac @ 85:891ec70aede9 numpyconf
Clearer description of what packages that are missing.
author | David <david@stacey> |
---|---|
date | Sun, 20 Sep 2009 16:00:50 +0200 |
parents | 8145ecfecfb9 |
children | 82459c7db185 |
rev | line source |
---|---|
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
1 # -*- Autoconf -*- |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
2 # Process this file with autoconf to produce a configure script. |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
3 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
4 AC_PREREQ(2.61) |
37
798efee55cd0
Added --enable-float-matrices option. Some VPATH building issues fixed. Changelog now more standardized.
David Grundberg <individ@acc.umu.se>
parents:
30
diff
changeset
|
5 AC_INIT(pytave, 0.1.1, [[https://bugs.launchpad.net/pytave]]) |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
6 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
7 # Some important programs. |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
8 AC_LANG(C++) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
9 AC_PROG_CXX |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
10 AC_PROG_CPP |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
11 AC_PROG_CC |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
12 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
13 # Load our custom m4 scripts (from the m4 directory) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
14 AC_CONFIG_MACRO_DIR(m4) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
15 AC_CONFIG_SRCDIR([pytave.cc]) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
16 AC_CONFIG_HEADER([config.h]) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
17 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
18 AC_PRESERVE_HELP_ORDER |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
19 |
70
e3de0f6f1552
experimental NumPy support
Jaroslav Hajek <highegg@gmail.com>
parents:
48
diff
changeset
|
20 AC_ARG_ENABLE(numpy, |
e3de0f6f1552
experimental NumPy support
Jaroslav Hajek <highegg@gmail.com>
parents:
48
diff
changeset
|
21 [AS_HELP_STRING([--enable-numpy], |
e3de0f6f1552
experimental NumPy support
Jaroslav Hajek <highegg@gmail.com>
parents:
48
diff
changeset
|
22 [use NumPy module (experimental) |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
23 @<:@default=check@:>@])], |
70
e3de0f6f1552
experimental NumPy support
Jaroslav Hajek <highegg@gmail.com>
parents:
48
diff
changeset
|
24 [pytave_enable_numpy="$enableval"], |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
25 [pytave_enable_numpy=check]) |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
26 |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
27 dnl Define a convenience m4 macro for appending to pytave_missing_libs |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
28 define(addmissing,pytave_missing_libs="$1 |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
29 $pytave_missing_libs") |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
30 pytave_missing_libs= |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
31 |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
32 # Find Octave |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
33 AX_OCTAVE([OCTAVE_CONFIG], [], [addmissing([Octave development files])]) |
37
798efee55cd0
Added --enable-float-matrices option. Some VPATH building issues fixed. Changelog now more standardized.
David Grundberg <individ@acc.umu.se>
parents:
30
diff
changeset
|
34 |
798efee55cd0
Added --enable-float-matrices option. Some VPATH building issues fixed. Changelog now more standardized.
David Grundberg <individ@acc.umu.se>
parents:
30
diff
changeset
|
35 # Pick a Python library to use |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
36 AX_PYTHON_DEVEL([], [], [addmissing([Python development files])]) |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
37 |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
38 AS_IF(test "x$pytave_enable_numpy" != "xno", |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
39 [ |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
40 AX_PYTHON_NUMPY( |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
41 [ |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
42 AC_DEFINE([HAVE_NUMPY], 1, [Define if using NumPy]) |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
43 pytave_enable_numpy=yes |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
44 ], |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
45 [ |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
46 AS_IF(test "x$pytave_enable_numpy" == "xyes", [addmissing([NumPy development files])]) |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
47 pytave_enable_numpy='not found' |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
48 ]) |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
49 ]) |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
50 |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
51 # Look for boost::python |
29
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
52 pytave_old_libs="$LIBS" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
53 pytave_old_ldflags="$LDFLAGS" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
54 pytave_old_cppflags="$CPPFLAGS" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
55 LIBS="$LIBS $PYTHON_LIBS" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
56 LDFLAGS="$LDFLAGS $PYTHON_LDFLAGS" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
57 CPPFLAGS="$CPPFLAGS $PYTHON_CPPFLAGS" |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
58 |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
59 AX_BOOST_PYTHON([], [addmissing([Boost Python development files])]) |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
60 |
29
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
61 LIBS="$pytave_old_libs" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
62 LDFLAGS="$pytave_old_ldflags" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
63 CPPFLAGS="$pytave_old_cppflags" |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
64 |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
65 # Do some more initializations |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
66 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
67 AM_INIT_AUTOMAKE() |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
68 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
69 # Checks for programs. |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
70 AC_PROG_LIBTOOL |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
71 AC_PROG_RANLIB |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
72 AC_PROG_INSTALL |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
73 AC_PROG_LN_S |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
74 AC_PROG_MAKE_SET |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
75 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
76 # Checks for libraries. |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
77 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
78 # Checks for header files. |
72 | 79 AC_CHECK_HEADERS([locale.h]) |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
80 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
81 # Checks for typedefs, structures, and compiler characteristics. |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
82 AC_HEADER_STDBOOL |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
83 AC_C_CONST |
72 | 84 AC_C_INLINE |
85 AC_TYPE_INT16_T | |
86 AC_TYPE_INT32_T | |
87 AC_TYPE_INT64_T | |
88 AC_TYPE_INT8_T | |
89 AC_TYPE_SIZE_T | |
90 AC_TYPE_UINT16_T | |
91 AC_TYPE_UINT32_T | |
92 AC_TYPE_UINT8_T | |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
93 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
94 # Checks for library functions. |
72 | 95 AC_CHECK_FUNCS([uselocale], [pytave_have_uselocale=yes], [pytave_have_uselocale=no]) |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
96 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
97 # This needs a more usable, less unusual solution. |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
98 AS_IF(test "x${prefix}" == "xNONE", |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
99 [ |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
100 PYTAVE_MODULE_INSTALL_PATH=/../invalidpath, |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
101 ], |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
102 [ |
12
a0c819a31e02
Better checking for Python dependencies.
David Grundberg <individ@acc.umu.se>
parents:
0
diff
changeset
|
103 PYTAVE_MODULE_INSTALL_PATH=${prefix} |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
104 ]) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
105 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
106 # Substitutes for the Makefile/Jamfile |
29
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
107 #AC_SUBST(OCTAVE_INCLUDEDIR) |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
108 #AC_SUBST(OCTAVE_LIBRARYDIR) |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
109 PYTAVE_OCTAVE_RPATH="$OCTAVE_LIBRARYDIR" |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
110 AC_SUBST(PYTAVE_OCTAVE_RPATH) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
111 AC_SUBST(PYTAVE_MODULE_INSTALL_PATH) |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
112 |
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
113 # Substitutes for the Jamfile. XXX: Replace lib*.so with OS independent name. |
29
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
114 AC_SUBST(JAM_LIBOCTAVE, $OCTAVE_LIBRARYDIR/liboctave.so) |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
115 AC_SUBST(JAM_LIBCRUFT, $OCTAVE_LIBRARYDIR/libcruft.so) |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
116 AC_SUBST(JAM_LIBOCTINTERP, $OCTAVE_LIBRARYDIR/liboctinterp.so) |
0
4da14cce0890
First launchpad.net check in.
David Grundberg <c04dgg@cs.umu.se>
parents:
diff
changeset
|
117 |
72 | 118 # setup.py |
119 AC_SUBST(PYTHON) | |
120 | |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
121 msg="One or more library dependencies could not be resolved. |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
122 |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
123 Missing dependencies: |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
124 $pytave_missing_libs |
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
125 Configuration failed. Halt." |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
126 |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
127 AS_IF(test -z "$pytave_missing_libs", |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
128 [ |
29
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
129 # Substitute in these files, copy project-root.jam to VPATH too |
6d75691c5c07
Modified build configuration in the hope that it will be more stable.
David Grundberg <individ@acc.umu.se>
parents:
12
diff
changeset
|
130 AC_OUTPUT([Makefile Jamfile setup.py project-root.jam]) |
72 | 131 |
132 chmod u+x "setup.py" | |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
133 msg='Pytave is configured with the following setup' |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
134 ]) |
72 | 135 |
136 AC_MSG_NOTICE([ | |
137 ======================================================================== | |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
138 $msg |
72 | 139 |
140 Dependencies | |
141 Octave ............. $OCTAVE_INCLUDEDIR | |
142 Python ............. $PYTHON_CPPFLAGS | |
143 executable ....... $PYTHON | |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
144 Python boost ....... $BOOST_PYTHON_LIB |
72 | 145 |
146 Features | |
147 NumPy .............. $pytave_enable_numpy | |
148 uselocale .......... $pytave_have_uselocale | |
149 | |
150 ========================================================================]) | |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
151 |
85
891ec70aede9
Clearer description of what packages that are missing.
David <david@stacey>
parents:
83
diff
changeset
|
152 AS_IF(test -n "$pytave_missing_libs", |
83
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
153 [ |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
154 AC_MSG_ERROR([[Configuration failure. Halt.]]) |
8145ecfecfb9
Configuration changes. Detect numpy in ./configure.
David Grundberg <c04dgg@cs.umu.se>
parents:
72
diff
changeset
|
155 ]) |