/[GiNaC]/configure.ac
ViewVC logotype

Contents of /configure.ac

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.21.2.9 - (hide annotations)
Thu Aug 17 12:53:42 2006 UTC (6 years, 9 months ago) by vollinga
Branch: ginac_1-3
CVS Tags: release_1-3-5
Changes since 1.21.2.8: +3 -3 lines
Finalizing 1.3.5 release.

1 cbauer 1.1 dnl Process this file with autoconf to produce a configure script.
2    
3     dnl GiNaC library version information.
4     dnl
5     dnl Making releases:
6 vollinga 1.21.2.2 dnl ginac_micro_version += 1;
7     dnl ginac_interface_age += 1;
8     dnl ginac_binary_age += 1;
9     dnl if any functions have been added, set ginac_interface_age to 0.
10 cbauer 1.1 dnl if backwards compatibility has been broken,
11 vollinga 1.21.2.2 dnl set ginac_binary_age and ginac_interface_age to 0.
12    
13     m4_define([ginac_major_version], [1])
14     m4_define([ginac_minor_version], [3])
15 vollinga 1.21.2.9 m4_define([ginac_micro_version], [5])
16 vollinga 1.21.2.2 m4_define([ginac_version], [ginac_major_version.ginac_minor_version.ginac_micro_version])
17     m4_define([ginac_release], [ginac_major_version.ginac_minor_version])
18 vollinga 1.21.2.9 m4_define([ginac_interface_age], [2])
19     m4_define([ginac_binary_age], [3])
20 cbauer 1.1
21 cbauer 1.21.2.4 AC_INIT([GiNaC], ginac_version, [<ginac-list@ginac.de>])
22 vollinga 1.21.2.3 AC_PREREQ(2.59)
23 vollinga 1.21.2.2 AC_CONFIG_SRCDIR(ginac/basic.cpp)
24     AC_CONFIG_HEADERS(config.h)
25     dnl This defines PACKAGE and VERSION.
26     AM_INIT_AUTOMAKE([gnu 1.7 dist-bzip2])
27    
28     dnl Process GiNaC version information
29     GINACLIB_MAJOR_VERSION=ginac_major_version
30     GINACLIB_MINOR_VERSION=ginac_minor_version
31     GINACLIB_MICRO_VERSION=ginac_micro_version
32     GINACLIB_VERSION=ginac_version
33 cbauer 1.1 AC_SUBST(GINACLIB_MAJOR_VERSION)
34     AC_SUBST(GINACLIB_MINOR_VERSION)
35     AC_SUBST(GINACLIB_MICRO_VERSION)
36     AC_SUBST(GINACLIB_VERSION)
37    
38     dnl GiNaC archive file version information.
39     dnl
40     dnl If properties have been added, ARCHIVE_VERSION += 1, ARCHIVE_AGE += 1.
41     dnl If backwards compatibility has been broken, set ARCHIVE_AGE to 0.
42     dnl
43     dnl The version number in newly created archives will be ARCHIVE_VERSION.
44     dnl Archives version (ARCHIVE_VERSION-ARCHIVE_AGE) thru ARCHIVE_VERSION can
45     dnl be read by this version of the GiNaC library.
46    
47 cbauer 1.18 ARCHIVE_VERSION=2
48     ARCHIVE_AGE=2
49 cbauer 1.1
50     AC_SUBST(ARCHIVE_VERSION)
51     AC_SUBST(ARCHIVE_AGE)
52     AC_DEFINE_UNQUOTED(ARCHIVE_VERSION, $ARCHIVE_VERSION, [Current GiNaC archive file version number])
53     AC_DEFINE_UNQUOTED(ARCHIVE_AGE, $ARCHIVE_AGE, [GiNaC archive file version age])
54    
55     dnl libtool versioning
56 vollinga 1.21.2.2 m4_define([lt_revision], [ginac_interface_age])
57     m4_define([lt_current], [m4_eval(ginac_micro_version - ginac_interface_age)])
58     m4_define([lt_age], [m4_eval(ginac_binary_age - ginac_interface_age)])
59     LT_VERSION_INFO="lt_current:lt_revision:lt_age"
60     LT_RELEASE="ginac_release"
61 cbauer 1.1
62 vollinga 1.21.2.2 AC_SUBST(LT_VERSION_INFO)
63 cbauer 1.1 AC_SUBST(LT_RELEASE)
64    
65    
66     dnl Check for the compiler and all the utilities needed for the build.
67     AC_PROG_CXX
68     AC_PROG_CXXCPP
69     AC_PROG_INSTALL
70     AM_PROG_LIBTOOL
71     AM_PROG_LEX
72     AC_PROG_YACC
73    
74     dnl Check for data types which are needed by the hash function
75     dnl (golden_ratio_hash).
76     AC_CHECK_SIZEOF(long, 4)
77     AC_CHECK_SIZEOF(long long, 8)
78     AC_CHECK_SIZEOF(long double, 12)
79    
80     dnl Switch to C++ language mode for the following libraries and headers.
81     AC_LANG([C++])
82    
83     dnl Check for stuff needed for building the GiNaC interactive shell (ginsh).
84     AC_CHECK_HEADERS(unistd.h)
85 chrisd 1.21.2.7 GINAC_HAVE_RUSAGE
86 cbauer 1.1 AC_CHECK_HEADERS(readline/readline.h readline/history.h)
87     if test "x${ac_cv_header_readline_readline_h}" != "xyes" -o "x${ac_cv_header_readline_history_h}" != "xyes"; then
88     GINAC_WARNING([I could not find the headers for libreadline (needed for building ginsh).])
89     fi
90     GINAC_TERMCAP
91     save_LIBS=$LIBS
92     LIBS="$LIBTERMCAP $LIBS"
93     AC_CHECK_LIB(readline, readline)
94     if test "x${ac_cv_lib_readline_readline}" = "xyes"; then
95     GINAC_LIB_READLINE_VERSION
96     else
97     GINAC_WARNING([I could not find libreadline (needed by ginsh).])
98     fi
99     GINSH_LIBS=$LIBS
100     LIBS=$save_LIBS
101     AC_SUBST(GINSH_LIBS)
102    
103     dnl Make sure all the necessary standard headers are installed on the system.
104     AC_CHECK_HEADER(iosfwd, , GINAC_ERROR([The standard <iosfwd> header file could not be found.]))
105     AC_CHECK_HEADER(iostream, , GINAC_ERROR([The standard <iostream> header file could not be found.]))
106     AC_CHECK_HEADER(vector, , GINAC_ERROR([The standard <vector> header file could not be found.]))
107     AC_CHECK_HEADER(list, , GINAC_ERROR([The standard <list> header file could not be found.]))
108     AC_CHECK_HEADER(map, , GINAC_ERROR([The standard <map> header file could not be found.]))
109     AC_CHECK_HEADER(string, , GINAC_ERROR([The standard <string> header file could not be found.]))
110     AC_CHECK_HEADER(sstream, , GINAC_ERROR([The standard <sstream> header file could not be found.]))
111     AC_CHECK_HEADER(typeinfo, , GINAC_ERROR([The standard <typeinfo> header file could not be found.]))
112     AC_CHECK_HEADER(stdexcept, , GINAC_ERROR([The standard <stdexcept> header file could not be found.]))
113     AC_CHECK_HEADER(algorithm, , GINAC_ERROR([The standard <algorithm> header file could not be found.]))
114 cbauer 1.17 AC_CHECK_HEADER(limits, , GINAC_ERROR([The standard <limits> header file could not be found.]))
115 chrisd 1.21.2.7 if test "x$CONFIG_RUSAGE" = "xno"; then
116     AC_CHECK_HEADER(ctime, , GINAC_ERROR([The standard <ctime> header file could not be found.]))
117     fi
118 cbauer 1.1
119     dnl We need to have Bruno Haible's CLN installed.
120     dnl (CLN versions >= 1.1.0 must have installed cln.m4 at a visible place,
121     dnl which provides this macro):
122     AC_PATH_CLN(1.1.0, [
123     LIBS="$LIBS $CLN_LIBS"
124     CPPFLAGS="$CPPFLAGS $CLN_CPPFLAGS"
125     ], GINAC_ERROR([No suitable installed version of CLN could be found.]))
126    
127     dnl Expand the cppflags and libraries needed by apps using GiNaC
128     GINACLIB_CPPFLAGS=$CPPFLAGS
129     GINACLIB_LIBS=$LIBS
130     AC_SUBST(GINACLIB_CPPFLAGS)
131     AC_SUBST(GINACLIB_LIBS)
132    
133     dnl Check for utilities needed by the different kinds of documentation.
134 kreckel 1.2 dnl Documentation needs only be built when extending it, so never mind if it
135 cbauer 1.1 dnl cannot find those helpers:
136     AC_PATH_PROG(DOXYGEN, doxygen, "")
137 vollinga 1.21.2.8 AM_CONDITIONAL(CONFIG_DOXYGEN, [test ! -z "$DOXYGEN"])
138 cbauer 1.1 AC_PATH_PROG(LATEX, latex, "")
139 cbauer 1.21 AC_PATH_PROG(PDFLATEX, pdflatex, "")
140 cbauer 1.1 AC_PATH_PROG(MAKEINDEX, makeindex, "")
141     AC_PATH_PROG(DVIPS, dvips, "")
142 vollinga 1.21.2.8 AM_CONDITIONAL(CONFIG_TEX, [test ! \( -z "$LATEX" -o -z $"PDFLATEX" -o -z "$MAKEINDEX" -o -z "$DVIPS" \)])
143 cbauer 1.1 AC_PATH_PROG(FIG2DEV, fig2dev, "")
144 vollinga 1.21.2.8 AM_CONDITIONAL(CONFIG_FIG2DEV, [test ! -z "$FIG2DEV"])
145 cbauer 1.1
146     dnl Output makefiles etc.
147     AC_CONFIG_FILES([
148     Makefile
149     GiNaC.spec
150     ginac-config
151     ginac-config.1
152 cbauer 1.19 ginac.pc
153 cbauer 1.1 ginac/Makefile
154     ginac/version.h
155     check/Makefile
156     ginsh/Makefile
157     ginsh/ginsh.1
158     tools/Makefile
159     tools/viewgar.1
160     doc/Makefile
161     doc/tutorial/Makefile
162     doc/reference/Makefile
163 cbauer 1.21 doc/reference/DoxyfileHTML
164     doc/reference/DoxyfileTEX
165     doc/reference/DoxyfilePDF
166     doc/reference/Doxyfooter
167 cbauer 1.1 ])
168     AC_CONFIG_COMMANDS([default],[[chmod +x ginac-config]],[[]])
169     AC_OUTPUT
170     dnl Display a final warning if there has been a GINAC_ERROR or a GINAC_WARNING
171     GINAC_CHECK_ERRORS

Christian Bauer">Christian Bauer
ViewVC Help
Powered by ViewVC 1.1.15