]> www.ginac.de Git - cln.git/blobdiff - configure.ac
Move GETVAL macro from acinclude.m4 to m4/getval.m4.
[cln.git] / configure.ac
index 2636046840ca7fda3968f3040ed0b0854d4dfecd..60003a3e2a13058284dea9ef8aae769b366e5ae6 100644 (file)
@@ -1,33 +1,30 @@
 dnl run autoreconf -iv to produce the configure script.
 
-m4_define([cl_version_major], [1])
-m4_define([cl_version_minor], [2])
-m4_define([cl_version_patchlevel], [2])
+m4_define([cl_version_major], CL_GET_VERSION([MAJOR]))
+m4_define([cl_version_minor], CL_GET_VERSION([MINOR]))
+m4_define([cl_version_patchlevel], CL_GET_VERSION([PATCHLEVEL]))
 m4_define([cl_version], [cl_version_major.cl_version_minor.cl_version_patchlevel])
 
 dnl Libtool's library version information for CLN.
-dnl (Not to be confused with CLN's release version.)
-dnl Making new releases:
-dnl * increment CL_REVISION,
-dnl * if any functions/classes have been added, removed or changed, increment
-dnl   CL_CURRENT and set CL_REVISION to 0,
-dnl * if any functions/classes have been added, increment CL_AGE,
-dnl * if backwards compatibility has been broken, set CL_AGE to 0.
-dnl $(CL_CURRENT):$(CL_REVISION):$(CL_AGE) results in
-dnl libcln.so.$(CL_CURRENT)-$(CL_AGE)
-m4_define([cl_current], [6])
-m4_define([cl_revision], [0])
-m4_define([cl_age], [0])
-m4_define([cl_lt_version], [cl_current:cl_revision:cl_age])
+m4_define([cl_lt_current], CL_GET_LTVERSION([CURRENT]))
+m4_define([cl_lt_revision], CL_GET_LTVERSION([REVISION]))
+m4_define([cl_lt_age], CL_GET_LTVERSION([AGE]))
+m4_define([cl_lt_version], [cl_lt_current:cl_lt_revision:cl_lt_age])
 
-AC_INIT([cln], cln_version)
+AC_INIT([cln], cl_version)
 AC_PREREQ(2.59)
 AC_CONFIG_SRCDIR(src/integer/gcd/cl_I_gcd.cc)
-AC_CONFIG_AUX_DIR([autoconf])
-AC_CONFIG_HEADERS(include/cln/config.h include/cln/host_cpu.h include/cln/version.h src/base/cl_base_config.h src/base/cl_gmpconfig.h src/timing/cl_t_config.h)
-AM_INIT_AUTOMAKE([foreign 1.8 dist-bzip2])
-AH_TOP([#ifdef _CL_CONFIG_H])
+AC_CONFIG_AUX_DIR([build-aux])
+AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_HEADERS(autoconf/cl_config.h include/cln/config.h include/cln/host_cpu.h src/base/cl_base_config.h src/base/cl_gmpconfig.h src/timing/cl_t_config.h)
+AM_INIT_AUTOMAKE([foreign 1.10 dist-bzip2 subdir-objects])
+AH_TOP([#ifndef _CL_CONFIG_H])
+AH_TOP([#define _CL_CONFIG_H])
 AH_TOP([#include "cln/host_cpu.h"])
+AH_TOP([/* prevents cln/config.h from being included, so no macro gets redefined */])
+AH_TOP([#define _CL_CONFIG_PUBLIC_H])
+AH_TOP([/* prevents cln/version.h from being included, so no macro gets redefined */])
+AH_TOP([#define _CL_VERSION_H])
 AH_BOTTOM([#endif /* _CL_CONFIG_H */])
 
 dnl           checks for programs
@@ -49,7 +46,7 @@ AC_PROG_INSTALL
 dnl
 dnl           check for host type
 dnl
-CL_CANONICAL_HOST(autoconf)
+CL_CANONICAL_HOST
                       dnl sets variables host, host_cpu, host_vendor, host_os
 CL_CANONICAL_HOST_CPU
                       dnl DEFS __${host_cpu}__
@@ -67,28 +64,16 @@ AC_PROG_LIBTOOL
 
 LT_VERSION_INFO=cl_lt_version
 AC_SUBST(LT_VERSION_INFO)
-
-dnl release version
-CL_VERSION_MAJOR=cl_version_major
-CL_VERSION_MINOR=cl_version_minor
-CL_VERSION_PATCHLEVEL=cl_version_patchlevel
-dnl release version for cln/config.h, so it can be tested by the preprocessor
-AC_DEFINE_UNQUOTED(CL_VERSION_MAJOR, $CL_VERSION_MAJOR, [Major version number of CLN])
-AC_DEFINE_UNQUOTED(CL_VERSION_MINOR, $CL_VERSION_MINOR, [Minor version number of CLN])
-AC_DEFINE_UNQUOTED(CL_VERSION_PATCHLEVEL, $CL_VERSION_PATCHLEVEL, [Patchlevel version number of CLN])
-dnl concatenated release version
 CL_VERSION=cl_version
-AC_DEFINE_UNQUOTED(CL_VERSION, $CL_VERSION, [CLN release number])
 AC_SUBST(CL_VERSION)
 
 dnl           checks for compiler characteristics
 dnl
 AC_LANG([C++])
+AX_CXX_COMPILE_STDCXX([11], [ext], [optional])
 dnl
-CL_LONGLONG
-                      dnl DEFS HAVE_LONGLONG
-CL_LONGDOUBLE
-                      dnl DEFS HAVE_LONGDOUBLE
+AC_CHECK_ALIGNOF([void*])
+AC_DEFINE_UNQUOTED([cl_word_alignment], [$ac_cv_alignof_voidp], [Normal alignment of void*])
 dnl
 dnl           checks for header files
 dnl
@@ -106,8 +91,6 @@ CL_GETTIMEOFDAY
                       dnl DEFS HAVE_GETTIMEOFDAY, GETTIMEOFDAY_DOTS, GETTIMEOFDAY_TZP_T
 ac_cv_func_ftime=no
                       dnl don't use ftime(3) even if it's available
-CL_TIMES_CLOCK
-                      dnl DEFS HAVE_TIMES_CLOCK
 CL_RUSAGE
                       dnl DEFS HAVE_SYS_RESOURCE_H, HAVE_GETRUSAGE, HAVE_SYS_TIMES_H
 CL_PERROR
@@ -132,7 +115,11 @@ CL_MACHINE([floating-point types and behaviour],${srcdir}/autoconf/floatparam.c,
                       dnl builds include/cln/floatparam.h
 CL_LIBGMP
                       dnl DEFS CL_USE_GMP, GMP_DEMANDS_UINTD_*
+
+CLNLIB_LIBS='-L${libdir} -lcln'
+AC_LIB_LINKFLAGS_FROM_LIBS([CLNLIB_RPATH], [$CLNLIB_LIBS])
+
 dnl
 dnl           That's it.
 dnl
-AC_OUTPUT([Makefile src/Makefile tests/Makefile examples/Makefile doc/Makefile cln.spec cln.pc])
+AC_OUTPUT([Makefile src/Makefile tests/Makefile examples/Makefile doc/Makefile benchmarks/Makefile cln.spec cln.pc])