]> www.ginac.de Git - ginac.git/blobdiff - configure.ac
Fixed a bug in squarefree(). Some polynomials were erroneously classified as
[ginac.git] / configure.ac
index 576a72bb46cf364fc0adb85f4543ce2bf74871dd..fff79dd0f76565b864b5c28adeb3f59c4f9ca0da 100644 (file)
@@ -21,7 +21,9 @@ m4_define([ginac_binary_age], [0])
 AC_INIT([GiNaC], ginac_version, [<ginac-list@ginac.de>])
 AC_PREREQ(2.59)
 AC_CONFIG_SRCDIR(ginac/basic.cpp)
-AC_CONFIG_HEADERS(config.h)
+AC_CONFIG_AUX_DIR([config])
+AC_CONFIG_HEADERS([config/config.h])
+AC_CONFIG_MACRO_DIR([m4])
 dnl This defines PACKAGE and VERSION.
 AM_INIT_AUTOMAKE([gnu 1.7 dist-bzip2])
 
@@ -78,6 +80,20 @@ AC_LANG([C++])
 dnl Make sure all the necessary standard headers are installed on the system.
 GINAC_STD_CXX_HEADERS
 
+dnl We need to have Bruno Haible's CLN installed.
+dnl (pkg-config must have installed pkg.m4 at a visible place, which provides
+dnl this macro. CLN >= 1.1.6 must have installed cln.pc at a visible place,
+dnl which provides the actual dependency information.)
+PKG_CHECK_MODULES(CLN, cln >= 1.1.6)
+AC_LIB_LINKFLAGS_FROM_LIBS([CLN_RPATH], [$CLN_LIBS], [1])
+LIBS="$LIBS $CLN_LIBS $CLN_RPATH"
+CPPFLAGS="$CPPFLAGS $CLN_CFLAGS"
+dnl Include proper rpath into pkg-config meta data, so
+dnl g++ `pkg-config --cflags --libs ginac`
+dnl actually works
+GINACLIB_LIBS='-L${libdir} -lginac'
+AC_LIB_LINKFLAGS_FROM_LIBS([GINACLIB_RPATH], [$GINACLIB_LIBS])
+
 dnl Check for data types which are needed by the hash function 
 dnl (golden_ratio_hash).
 AC_CHECK_TYPE(long long)
@@ -87,23 +103,8 @@ AC_CHECK_HEADERS(unistd.h)
 GINAC_HAVE_RUSAGE
 GINAC_READLINE
 
-DL_LIBS=""
 dnl Check for dl library (needed for GiNaC::compile).
-AC_CHECK_LIB(dl, dlopen,
-       [
-               DL_LIBS="-ldl"
-               AC_DEFINE(HAVE_LIBDL, 1, [set to 1 if you have a working libdl installed.])
-       ], 
-       GINAC_WARNING([libdl not found. GiNaC::compile will be disabled.]))
-AC_SUBST(DL_LIBS)
-
-dnl We need to have Bruno Haible's CLN installed.
-dnl (pkg-config must have installed pkg.m4 at a visible place, which provides
-dnl this macro. CLN >= 1.1.6 must have installed cln.pc at a visible place,
-dnl which provides the actual dependency information.)
-PKG_CHECK_MODULES(CLN, cln >= 1.1.6)
-LIBS="$LIBS $CLN_LIBS"
-CPPFLAGS="$CPPFLAGS $CLN_CFLAGS"
+GINAC_EXCOMPILER
 
 dnl Check for utilities needed by the different kinds of documentation.
 dnl Documentation needs only be built when extending it, so never mind if it