view src/configure.ac @ 217:5292e0614efc

New patches submitted from eg123 for the automatization of the configuration process. Use of pkg-config to find dolfin and eigen3 includes and libs * src/Makefile.in: make variables (CPPFLAGS, LDFLAGS, LIBS) are defined substituting the Autoconf ones * src/configure.ac: dolfin and eigen3 compile and link flags are looked for through pkg-config macros * DESCRIPTION: added pkg-config as a build-dependency configure fails if dependencies are not met.
author gedeone-octave <marcovass89@hotmail.it>
date Mon, 10 Mar 2014 08:58:56 +0000
parents 5b2a3d09f524
children 194f8c66b45a
line wrap: on
line source

AC_PREREQ([2.67])
AC_INIT([Fem-fenics Package], [0.0.1])

AC_USE_SYSTEM_EXTENSIONS

AC_PROG_CXX
AC_LANG(C++)

PKG_PROG_PKG_CONFIG

# Get Dense include locations
AC_ARG_WITH([eigen-includedir],
  [AS_HELP_STRING([--with-eigen-includedir=DIR],
    [location of the Eigen headers, defaults to /usr/include/])],
  [DENSE_CPPFLAGS="-I$withval"],
  [DENSE_CPPFLAGS='-I/usr/include/'])
AC_SUBST(DENSE_CPPFLAGS)
echo $DENSE_CPPFLAGS

## Check for Eigen
AC_MSG_CHECKING([for eigen3])

EIGEN_CPPFLAGS=
EIGEN_LDFLAGS=
EIGEN_LIBS=

PKG_CHECK_EXISTS([eigen3],
  [EIGEN_CPPFLAGS=`$PKG_CONFIG --cflags-only-I eigen3`
   EIGEN_LDFLAGS=`$PKG_CONFIG --libs-only-L eigen3`
   EIGEN_LIBS=`$PKG_CONFIG --libs-only-l eigen3`
   AC_MSG_RESULT([yes])],
  [AC_MSG_RESULT([no])
   AC_MSG_ERROR([eigen3 required to install $PACKAGE_NAME])]
  )

AC_SUBST(EIGEN_CPPFLAGS)
AC_SUBST(EIGEN_LDFLAGS)
AC_SUBST(EIGEN_LIBS)

## Check for dolfin
AC_MSG_CHECKING([for dolfin])

DOLFIN_CPPFLAGS=
DOLFIN_LDFLAGS=
DOLFIN_LIBS=

PKG_CHECK_EXISTS([dolfin],
  [DOLFIN_CPPFLAGS=`$PKG_CONFIG --cflags-only-I dolfin`
   DOLFIN_LDFLAGS=`$PKG_CONFIG --libs-only-L dolfin`
   DOLFIN_LIBS=`$PKG_CONFIG --libs-only-l dolfin`
   AC_MSG_RESULT([yes])],
  [AC_MSG_RESULT([no])
   AC_MSG_ERROR([dolfin required to install $PACKAGE_NAME])]
  )

AC_SUBST(DOLFIN_CPPFLAGS)
AC_SUBST(DOLFIN_LDFLAGS)
AC_SUBST(DOLFIN_LIBS)


AC_CHECK_PROG([HAVE_FFC], [ffc], [yes], [no])
if [test $HAVE_FFC = "no"]; then
  AC_MSG_ERROR([ffc required to install $PACKAGE_NAME])
fi

AC_CHECK_PROG([HAVE_MKOCTFILE], [mkoctfile], [yes], [no])
if [test $HAVE_MKOCTFILE = "no"]; then
  AC_MSG_ERROR([mkoctfile required to install $PACKAGE_NAME])
fi

AC_CONFIG_FILES([Makefile])
AC_OUTPUT