source: git/configure.ac @ 133ae7

spielwiese
Last change on this file since 133ae7 was 133ae7, checked in by Murray Heymann <heymann.murray@…>, 5 years ago
Convert machine learning to dynamic module
  • Property mode set to 100644
File size: 8.9 KB
RevLine 
[a14e9f]1AC_INIT([singular], [4.1.2], [singular@mathematik.uni-kl.de])
2AC_DEFINE([VERSION_DATE],["Feb 2019"],[release date])
[715936]3
[429497]4_AC_SRCDIRS(["$ac_dir"])
5
[3aea08]6AC_CONFIG_MACRO_DIR([m4])
[36cf22]7AC_CONFIG_AUX_DIR([build-aux])
[715936]8
[3aea08]9AC_CONFIG_SRCDIR([Singular/tesths.cc])
10
[996cc8]11AC_CONFIG_HEADER([_config.h])
12# Add pre'prefixed config
13AX_PREFIX_CONFIG_H([singularconfig.h],[],[_config.h])
[3aea08]14
[3a40eb]15dnl Apparently, this is required for using an AC_CHECK_HEADER within AS_IF(...), at least on Cygwin.
16AC_USE_SYSTEM_EXTENSIONS
17
[75f460]18AM_MAINTAINER_MODE([enable])
[24a77fb]19AM_INIT_AUTOMAKE([-Wall foreign subdir-objects]) # -Wno-extra-portability -Werror silent-rules
[2e984a]20
[25761d]21m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
[3aea08]22
23dnl Check if build env is sane
24AM_SANITY_CHECK
25
[ba5e9e]26
[7d160bb]27SING_RESET_FLAGS()
28SING_CHECK_SET_ARGS()
[3aea08]29
[7d160bb]30#!
[ea5f3f6]31# AC_PROG_CC
32# AC_PROG_CXX
[f86531]33AC_PROG_CPP
34AC_PROG_CXXCPP
[897139]35AM_PROG_CC_C_O
[1a845e]36AM_PROG_AR
[7c7495]37### AM_PROG_LEX
[3aea08]38AC_PROG_LN_S
39AC_PROG_INSTALL
[7d160bb]40
41AC_HEADER_STDC
[5179a0]42AC_CHECK_HEADERS(unistd.h iostream.h sys/time.h sys/times.h asm/sigcontext.h)
[7d160bb]43
[39bc9cb]44AC_CHECK_FUNCS(readlink getcwd getwd setenv putenv qsort_r)
[b9cf41]45
[380d25]46AC_CHECK_PROGS([DOXYGEN], [doxygen])
47if test -z "$DOXYGEN";
48   then AC_MSG_WARN([Doxygen not found - continuing without Doxygen support])
[47e8b04]49fi
[380d25]50AM_CONDITIONAL([HAVE_DOXYGEN], [test -n "$DOXYGEN"])
[47e8b04]51
[3b7b36]52LT_INIT([win32-dll])
[81384b]53
[4ff18b]54link_all_deplibs=yes
55link_all_deplibs_CXX=yes
56
[897139]57# Checks for libraries.
[eb7c6b]58
59# This test for -lpthread etc has to come before AX_PTHREAD,
60# because libtool tends to ignore -pthread in linking shared C++-libs
61# see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460
62# (happens with ubuntu 14.04)
63AC_SEARCH_LIBS(sem_wait,[rt pthreads pthread],[],[
64  AC_MSG_ERROR([sem_wait not found in rt,pthreads,pthread])
65])
66
[feb3c9]67AX_PTHREAD([], [
68  AC_MSG_ERROR([Pthread library not found. Please set PTHREAD_CFLAGS and PTHREAD_LIBS correctly for your setup])
69])
70
71AC_MSG_CHECKING([Found Pthread, PTHREAD_CC:])
72AC_MSG_RESULT(${PTHREAD_CC:-unset})
73AC_MSG_CHECKING([               PTHREAD_CFLAGS:])
74AC_MSG_RESULT(${PTHREAD_CFLAGS:-unset})
75AC_MSG_CHECKING([               PTHREAD_LIBS:])
76AC_MSG_RESULT(${PTHREAD_LIBS:-unset})
77
78# Set the correct PTHREAD flags and, if needed, change the compiler to one that is pthread-enabled.
79CC="$PTHREAD_CC"
[eb7c6b]80CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
81LDFLAGS="$LDFLAGS $PTHREAD_LDFLAGS"
[feb3c9]82
83AC_SUBST(PTHREAD_CFLAGS)
84AC_SUBST(PTHREAD_LDFLAGS)
85AC_SUBST(PTHREAD_LIBS)
86AC_SUBST(CC)
87
88
[93fc820]89AC_CHECK_LIB(rt,clock_gettime)
[f5127cb]90
[68b4d3]91LB_CHECK_GMP(4.0,,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)]))
[897139]92LB_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)]))
[286be1f]93LB_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)]))
[3a40eb]94
[2757dd2]95AC_CHECK_LIB(mpfr,mpfr_add)
96
[f84f82]97AC_CONFIG_GOOGLE_PERFTOOLS()
[6b61be]98
[5d2ecd]99LB_CHECK_CCLUSTER()
100
[f37355]101AX_PYTHON_DEFAULT()
[7b9d49]102AX_PYTHON_WITH_VERSION([2.4])
103
[f84f82]104LB_CHECK_MATHICGB
[b3cd39]105
[3aea08]106AC_FUNC_ERROR_AT_LINE
107AC_FUNC_MALLOC
108
109# check for cpu properties
110AC_CHECK_SIZEOF(long,4)
111SING_CHECK_CPU
112
[3b7b36]113SING_WIN_FLAGS
[3aea08]114
[37e66f]115PKG_REQUIRE="$PKG_REQUIRE"
116AC_SUBST(PKG_REQUIRE)
117
118SING_USE_OMALLOC()
119SING_USE_RESOURCES()
120SING_USE_FACTORY()
[3aea08]121
122SING_CHECK_P_PROCS
[d56ad87]123SING_CHECK_READLINE
[b7cad8c]124SING_CHECK_DBM
[f86531]125
[96e5c4]126SING_CHECK_GFANLIB
127SING_CHECK_POLYMAKE
128
[c2b10f]129SING_CHECK_PLURAL
130
[77ba48]131SING_CHECK_PYTHON_MODULE
132
[af87fd]133SING_BUILTIN_MODULES
134
[d1fbbf]135AC_ARG_ENABLE(countedref, AS_HELP_STRING([--enable-countedref], [Enable autoloading of reference counted types]),
136[if test "x$enableval" = "xyes"; then
137ENABLE_COUNTEDREF_AUTOLOAD=yes
138fi], ENABLE_COUNTEDREF_AUTOLOAD=no)
139
140if test x"${ENABLE_COUNTEDREF_AUTOLOAD}" == xyes; then
141  AC_DEFINE([SI_COUNTEDREF_AUTOLOAD],1,[Enable autoloading of reference counted types])
142  AC_SUBST(SI_COUNTEDREF_AUTOLOAD)
143fi
144
[b56249]145dnl AC_CONFIG_FILES conditionalization requires using AM_COND_IF, however
146dnl AM_COND_IF is new to Automake 1.11.  To use it on new Automake without
147dnl requiring same, a fallback implementation for older Autoconf is provided.
148dnl Note that disabling of AC_CONFIG_FILES requires Automake 1.11, this code
149dnl is correct only in terms of m4sh generated script.
150m4_ifndef([AM_COND_IF], [AC_DEFUN([AM_COND_IF], [
151if test -z "$$1_TRUE"; then :
152  m4_n([$2])[]dnl
153m4_ifval([$3],
154[else
155    $3
156])dnl
157fi[]dnl
158])])
159
[6712e9]160AX_LIB_SOCKET_NSL
[7d160bb]161
[cce4a76]162AC_ARG_WITH([libparse],
163            [AS_HELP_STRING([--with-libparse],
164              [compile and install libparse])],
165            [optional_Singular_programs=libparse],
166            [optional_Singular_programs=])
167
168AC_SUBST(optional_Singular_programs)
169
[7d160bb]170AC_DEFINE_UNQUOTED([CC],"$CC",[CC])
171AC_DEFINE_UNQUOTED([CXX],"$CXX",[CXX])
172AC_DEFINE_UNQUOTED([CFLAGS],"$CFLAGS",[CFLAGS])
173AC_DEFINE_UNQUOTED([CXXFLAGS],"$CXXFLAGS",[CXXFLAGS])
[09f6a7]174AC_DEFINE_UNQUOTED([PTHREAD_CFLAGS],"$PTHREAD_CFLAGS",[PTHREAD_CFLAGS])
175AC_DEFINE_UNQUOTED([PTHREAD_LIBS],"$PTHREAD_LIBS",[PTHREAD_LIBS])
[7d160bb]176AC_DEFINE_UNQUOTED([DEFS],"$DEFS",[DEFS])
177AC_DEFINE_UNQUOTED([CPPFLAGS],"$CPPFLAGS",[CPPFLAGS])
178AC_DEFINE_UNQUOTED([LDFLAGS],"$LDFLAGS",[LDFLAGS])
179AC_DEFINE_UNQUOTED([LIBS],"$LIBS",[LIBS])
[ce9bfe]180AC_DEFINE_UNQUOTED([AC_CONFIGURE_ARGS],"$ac_configure_args",[ac_configure_args])
181# AC_DEFINE_UNQUOTED([AC_CT_CC], "$ac_ct_CC",[ac_ct_CC])
182
[1095e9]183AC_DEFINE_UNQUOTED([NTL_CPPFLAGS],"$NTL_CPPFLAGS",[NTL_CPPFLAGS])
[ce9bfe]184AC_DEFINE_UNQUOTED([NTL_LIBS],"$NTL_LIBS",[NTL_LIBS])
185
[1095e9]186AC_DEFINE_UNQUOTED([GMP_CPPFLAGS],"$GMP_CPPFLAGS",[GMP_CPPFLAGS])
[ce9bfe]187AC_DEFINE_UNQUOTED([GMP_LIBS],"$GMP_LIBS",[GMP_LIBS])
188
189AC_DEFINE_UNQUOTED([FLINT_CFLAGS],"$FLINT_CFLAGS",[FLINT_CFLAGS])
190AC_DEFINE_UNQUOTED([FLINT_LIBS],"$FLINT_LIBS",[FLINT_LIBS])
[47e8b04]191
[97a3b2]192##### SEE http://www.gnu.org/prep/standards/html_node/Directory-Variables.html
193
194AX_RECURSIVE_EVAL([[$]prefix], [config_prefix])
195AX_NORMALIZE_PATH([config_prefix],['/'])
196AC_DEFINE_UNQUOTED([PREFIX],"$config_prefix",[prefix])
197
198AX_RECURSIVE_EVAL([[$]exec_prefix], [config_exec_prefix])
199AX_NORMALIZE_PATH([config_exec_prefix],['/'])
200AC_DEFINE_UNQUOTED([EXEC_PREFIX],"$config_exec_prefix",[exec_prefix])
201
202AX_RECURSIVE_EVAL([[$]libexecdir], [config_libexecdir])
203AX_NORMALIZE_PATH([config_libexecdir],['/'])
204AC_DEFINE_UNQUOTED([LIBEXEC_DIR],"$config_libexecdir",[libexecdir])
205
206AX_RECURSIVE_EVAL([[$]libdir], [config_libdir])
207AX_NORMALIZE_PATH([config_libdir],['/'])
208AC_DEFINE_UNQUOTED([LIB_DIR],"$config_libdir",[libdir])
209
210AX_RECURSIVE_EVAL([[$]bindir], [config_bindir])
211AX_NORMALIZE_PATH([config_bindir],['/'])
212AC_DEFINE_UNQUOTED([BIN_DIR],"$config_bindir",[bindir])
213
214AX_RECURSIVE_EVAL([[$]datadir], [config_datadir])
215AX_NORMALIZE_PATH([config_datadir],['/'])
216AC_DEFINE_UNQUOTED([DATA_DIR],"$config_datadir",[datadir])
[551a91]217AC_SUBST(DATA_DIR, "$config_datadir")
[daa32a5]218
[7d160bb]219SING_SHOW_FLAGS([Compiler/linker flags: ])
220
[47e8b04]221
[9d5737b]222## AM_COND_IF([HAVE_DOXYGEN], [AC_CONFIG_FILES([dox/Doxyfile])])
223
[380d25]224AC_CONFIG_FILES([dox/Makefile])
225
[2c889f]226AC_CONFIG_SUBDIRS([resources])
[461f40]227AC_CONFIG_SUBDIRS([omalloc])
[715936]228
[461f40]229if test "x$ENABLE_FACTORY" = xyes; then
230 AC_CONFIG_SUBDIRS([factory])
[6b61be]231fi
[715936]232
[461f40]233AC_CONFIG_SUBDIRS([libpolys])
[5417ff]234
[715936]235AC_CONFIG_FILES([Makefile])
[3aea08]236AC_CONFIG_FILES([kernel/Makefile])
[2ebf19]237AC_CONFIG_FILES([kernel/numeric/Makefile])
[d3e2512]238AC_CONFIG_FILES([kernel/fglm/Makefile])
[54f111d]239AC_CONFIG_FILES([kernel/groebner_walk/Makefile])
[f2f5ea]240AC_CONFIG_FILES([kernel/combinatorics/Makefile])
[d7b7c6]241AC_CONFIG_FILES([kernel/spectrum/Makefile])
[ae4f367]242AC_CONFIG_FILES([kernel/linear_algebra/Makefile])
[921690]243AC_CONFIG_FILES([kernel/maps/Makefile])
[4e8926]244AC_CONFIG_FILES([kernel/GBEngine/Makefile])
[ff3617]245AC_CONFIG_FILES([kernel/oswrapper/Makefile])
[99b54a]246
247AC_CONFIG_SUBDIRS([gfanlib])
248
[db3070]249AC_CONFIG_FILES([Singular/dyn_modules/Makefile])
250AC_CONFIG_FILES([Singular/dyn_modules/bigintm/Makefile])
[4e65f09]251AC_CONFIG_FILES([Singular/dyn_modules/Order/Makefile])
[db3070]252AC_CONFIG_FILES([Singular/dyn_modules/syzextra/Makefile])
[f6d790]253AC_CONFIG_FILES([Singular/dyn_modules/gfanlib/Makefile])
254AC_CONFIG_FILES([Singular/dyn_modules/polymake/Makefile])
[f230d92]255AC_CONFIG_FILES([Singular/dyn_modules/python/Makefile])
[ad42521]256AC_CONFIG_FILES([Singular/dyn_modules/customstd/Makefile])
[f476eb]257AC_CONFIG_FILES([Singular/dyn_modules/pyobject/Makefile])
[363d88]258AC_CONFIG_FILES([Singular/dyn_modules/singmathic/Makefile])
[2e59b2]259AC_CONFIG_FILES([Singular/dyn_modules/staticdemo/Makefile])
[9fe6c3]260AC_CONFIG_FILES([Singular/dyn_modules/subsets/Makefile])
[1e6885]261AC_CONFIG_FILES([Singular/dyn_modules/freealgebra/Makefile])
[8f9132]262AC_CONFIG_FILES([Singular/dyn_modules/partialgb/Makefile])
[a1fca5]263AC_CONFIG_FILES([Singular/dyn_modules/gitfan/Makefile])
[991aba2]264AC_CONFIG_FILES([Singular/dyn_modules/interval/Makefile])
[02a3b3]265AC_CONFIG_FILES([Singular/dyn_modules/cohomo/Makefile])
[f0f0003]266AC_CONFIG_FILES([Singular/dyn_modules/systhreads/Makefile])
[50fb159]267AC_CONFIG_FILES([Singular/dyn_modules/machinelearning/Makefile])
[05cefc]268
[99b54a]269AC_CONFIG_FILES([Singular/Makefile])
270
271AC_CONFIG_FILES([IntegerProgramming/Makefile])
[b9cf41]272
[e54767c]273AC_CONFIG_FILES([libsingular-config], [chmod +x libsingular-config])
274AC_CONFIG_FILES([Singular.pc])
[99b54a]275
[8968e8e]276AC_CONFIG_FILES([emacs/Makefile])
[6c8ba3]277
[2f30bc]278AC_CONFIG_FILES([redhat/Makefile])
279AC_CONFIG_FILES([redhat/singular.spec])
[daa32a5]280AC_CONFIG_FILES([desktop/Makefile desktop/Singular.desktop desktop/Singular-manual.desktop])
[2816dca]281
[9634a6]282AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.