source: git/configure.ac @ 386b3d

spielwiese
Last change on this file since 386b3d was 9dfcc6e, checked in by Mathias Schulze <mschulze@…>, 11 years ago
moved singular.spec to singular.spec.in with variable version number
  • Property mode set to 100644
File size: 5.9 KB
Line 
1AC_INIT([singular],[3.1.3.sw])
2
3_AC_SRCDIRS(["$ac_dir"])
4
5AC_CONFIG_MACRO_DIR([m4])
6AC_CONFIG_AUX_DIR([.])
7
8AC_CONFIG_SRCDIR([Singular/tesths.cc])
9
10AC_CONFIG_HEADER([config.h])
11
12AM_MAINTAINER_MODE
13AM_INIT_AUTOMAKE([-Wall foreign subdir-objects]) # -Wno-extra-portability -Werror silent-rules
14m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
15m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
16
17
18dnl Check if build env is sane
19AM_SANITY_CHECK
20
21#
22# - Check for CC and CXX but be careful about CFLAGS.
23#
24
25test "${CFLAGS+set}" = set || cflags_expl_set=no
26AC_PROG_CC
27test "${CXXFLAGS+set}" = set || cxxflags_expl_set=no
28AC_PROG_CXX
29if test "x$GCC" != xyes && test "x$GXX" != xyes; then
30  AC_MSG_WARN(you better use gcc to compile Factory)
31else
32  if test "x$GXX" = xyes && test "x$cxxflags_expl_set" = xno; then
33    AC_MSG_WARN([we use \`' as default for \`CXXFLAGS'
34                    (instead of the configure default \`-g -O')])
35  fi
36  if test "x$GCC" = xyes && test "x$cflags_expl_set" = xno; then
37    AC_MSG_WARN([we use \`' as default for \`CFLAGS'
38                    (instead of the configure default \`-g -O')])
39  fi
40fi
41
42
43AC_HEADER_STDC
44AC_CHECK_HEADERS(unistd.h iostream.h)
45
46AC_CHECK_FUNCS(readlink getcwd getwd setenv putenv)
47
48
49AC_PROG_CPP
50AC_PROG_CXXCPP
51AM_PROG_CC_C_O
52### AM_PROG_LEX
53AC_PROG_LN_S
54AC_PROG_INSTALL
55
56AC_CHECK_PROGS([DOXYGEN], [doxygen])
57if test -z "$DOXYGEN";
58   then AC_MSG_WARN([Doxygen not found - continuing without Doxygen support])
59fi
60AM_CONDITIONAL([HAVE_DOXYGEN], [test -n "$DOXYGEN"])
61                                                                   
62LT_INIT
63
64# Checks for libraries.
65AC_CHECK_LIB(rt,clock_gettime)
66AC_CHECK_LIB(pthread,pthread_create)
67
68LB_CHECK_GMP(3.1.1,,AC_MSG_ERROR([Unable to find GMP on your machine: please use --with-gmp=PATH_TO_DIR_CONTAINING_LIB_AND_INCLUDE (see also ./configure --help if you do not understand what we are talking about)]))
69LB_CHECK_NTL(5.0,,AC_MSG_WARN([Unable to find NTL (which is strongly recommended) on your machine: please use --with-ntl=PATH_TO_DIR_CONTAINING_LIB_AND_INCLUDE (see also ./configure --help if you do not understand what we are talking about)]))
70LB_CHECK_FLINT(2.3,,AC_MSG_WARN([Unable to find FLINT (which is strongly recommended) on your machine: please use --with-flint=PATH_TO_DIR_CONTAINING_LIB_AND_INCLUDE (see also ./configure --help if you do not understand what we are talking about)]))
71
72AX_PYTHON_DEFAULT()
73AX_PYTHON_WITH_VERSION([2.4])
74
75
76AC_FUNC_ERROR_AT_LINE
77AC_FUNC_MALLOC
78
79SING_CHECK_PIPE
80
81# check for cpu properties
82AC_CHECK_SIZEOF(long,4)
83SING_CHECK_CPU
84
85#check for host:
86AC_CANONICAL_HOST
87case $host_os in
88  *cygwin* ) LIBPREFIX="-Xlinker -Bdynamic";;
89  * ) LIBPREFIX="";;
90esac
91
92
93SING_CHECK_P_PROCS
94SING_CHECK_FACTORY
95SING_CHECK_READLINE
96SING_CHECK_DBM
97SING_CHECK_GFANLIB
98
99# CFLAGS
100if test "x$GCC" = xyes && test "x$cflags_expl_set" = xno; then
101  CFLAGS=""
102fi
103
104# CXXFLAGS
105if test "x$GXX" = xyes && test "x$cxxflags_expl_set" = xno; then
106  CXXFLAGS=""
107fi
108
109AC_DEFINE_UNQUOTED([CC],"$CC",[CC])
110AC_DEFINE_UNQUOTED([CXX],"$CXX",[CXX])
111AC_DEFINE_UNQUOTED([CFLAGS],"$CFLAGS",[CFLAGS])
112AC_DEFINE_UNQUOTED([CXXFLAGS],"$CXXFLAGS",[CXXFLAGS])
113AC_DEFINE_UNQUOTED([LDFLAGS],"$LDFLAGS",[LDFLAGS])
114
115### the following is needed due to the use of om_sing_opt_show_mem in misc_ip.cc...
116#ac_configure_args="$ac_configure_args --with-external-config_h=../Singular/omSingularConfig.h"
117
118AC_ARG_ENABLE(omalloc, AS_HELP_STRING([--disable-omalloc], [do NOT use omalloc within the factory]),
119 [if test "x$enableval"  = "xyes"; then
120   ENABLE_OMALLOC=yes
121 fi], ENABLE_OMALLOC=add)
122
123ENABLE_OMALLOC_ARG="--with-omalloc-dir=$ac_abs_top_srcdir --with-omalloc-extra-dir=$ac_abs_top_builddir --enable-omalloc-trust"
124
125if test "x$ENABLE_OMALLOC" = xadd; then
126   ENABLE_OMALLOC=yes
127   ENABLE_OMALLOC_ARG="--enable-omalloc $ENABLE_OMALLOC_ARG"
128fi
129
130if test "x$ENABLE_FACTORY" = xyes; then
131 AC_MSG_CHECKING(whether to use omalloc in factory)
132 if test "x$ENABLE_OMALLOC" = xyes; then
133  AC_MSG_RESULT(yes)
134  ac_configure_args="$ac_configure_args $ENABLE_OMALLOC_ARG"
135 else
136  AC_MSG_RESULT(no)
137 fi
138fi
139
140AC_ARG_ENABLE(debug, AS_HELP_STRING([--enable-debug], [build the debugging version of the libraries]),
141 [if test "x$enableval"  = "xyes"; then
142   ENABLE_DEBUG=yes
143 fi], ENABLE_DEBUG=no)
144
145AM_CONDITIONAL(WANT_DEBUG, test x"${ENABLE_DEBUG}" == xyes)
146
147AC_ARG_ENABLE(countedref, AS_HELP_STRING([--enable-countedref], [Enable autoloading of reference counted types]),
148[if test "x$enableval" = "xyes"; then
149ENABLE_COUNTEDREF_AUTOLOAD=yes
150fi], ENABLE_COUNTEDREF_AUTOLOAD=no)
151
152if test x"${ENABLE_COUNTEDREF_AUTOLOAD}" == xyes; then
153  AC_DEFINE([SI_COUNTEDREF_AUTOLOAD],1,[Enable autoloading of reference counted types])
154  AC_SUBST(SI_COUNTEDREF_AUTOLOAD)
155fi
156
157dnl AC_CONFIG_FILES conditionalization requires using AM_COND_IF, however
158dnl AM_COND_IF is new to Automake 1.11.  To use it on new Automake without
159dnl requiring same, a fallback implementation for older Autoconf is provided.
160dnl Note that disabling of AC_CONFIG_FILES requires Automake 1.11, this code
161dnl is correct only in terms of m4sh generated script.
162m4_ifndef([AM_COND_IF], [AC_DEFUN([AM_COND_IF], [
163if test -z "$$1_TRUE"; then :
164  m4_n([$2])[]dnl
165m4_ifval([$3],
166[else
167    $3
168])dnl
169fi[]dnl
170])])
171
172   
173AM_COND_IF([HAVE_DOXYGEN], [AC_CONFIG_FILES([dox/Doxyfile])])
174AC_CONFIG_FILES([dox/Makefile])
175
176AC_CONFIG_SUBDIRS([findexec])
177AC_CONFIG_SUBDIRS([omalloc])
178
179if test "x$ENABLE_FACTORY" = xyes; then
180 AC_CONFIG_SUBDIRS([factory])
181fi
182
183AC_CONFIG_SUBDIRS([libpolys])
184
185AC_CONFIG_FILES([Makefile])
186AC_CONFIG_FILES([kernel/Makefile])
187AC_CONFIG_FILES([numeric/Makefile])
188AC_CONFIG_FILES([Singular/Makefile])
189AC_CONFIG_FILES([dyn_modules/Makefile])
190AC_CONFIG_FILES([dyn_modules/bigintm/Makefile])
191AC_CONFIG_FILES([dyn_modules/syzextra/Makefile])
192AC_CONFIG_FILES([dyn_modules/callgfanlib/Makefile])
193AC_CONFIG_FILES([IntegerProgramming/Makefile])
194AC_CONFIG_FILES([libsingular-config])
195AC_CONFIG_SUBDIRS([gfanlib])
196
197AC_CONFIG_FILES([redhat/singular.spec])
198AC_CONFIG_FILES([desktop/Singular.desktop])
199AC_CONFIG_FILES([desktop/Singular-manual.desktop])
200
201AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.