diff --git a/m4/albert-check.m4 b/m4/albert-check.m4 index 17386cbe40e48732342f3e668bcc82125fa103ff..ca26a8bd54e8536137c64ac60223d0436ab0aa99 100644 --- a/m4/albert-check.m4 +++ b/m4/albert-check.m4 @@ -1,3 +1,6 @@ +dnl +dnl Define this outside ALBERT_CHECK() so that it can be AC_REQUIRE'd +dnl AC_DEFUN([ALBERT_OPTIONS], [ AC_ARG_ENABLE(el_index, @@ -12,8 +15,34 @@ AC_ARG_ENABLE(debug, [ --enable-debug use debug-enabled ALBERT libraries (default: off)], [ALBERT_DEBUG=1], ALBERT_DEBUG=0) -]) AC_SUBST([ALBERT_DEBUG]) +]) + +dnl +dnl check for possiby needed packages, DEFUN for AC_REQUIRE +dnl +AC_DEFUN([ALBERT_AUX_CHECK], +[AC_REQUIRE([AC_PATH_X]) +AC_REQUIRE([AC_PATH_XTRA]) +ALBERT_CHECK_PACKAGE(OpenGL, GL, ${x_libraries}, ${X_LIBS} -lX11, + gl.h, ${x_includes}/GL , optional) +ALBERT_CHECK_PACKAGE(PLOT, PLOTansi, $ALBERT_LIB_PATH, $OpenGL_LIB, + PLOTansi.h, $ALBERT_INCLUDE_PATH, optional) +ALBERT_CHECK_PACKAGE(gltools, gltools,, $OpenGL_LIB, + glwin.h,, optional) +AC_LANG_PUSH(Fortran 77) +AC_CHECK_LIB(blas, dnrm2, + [FLIBS="-lblas ${FLIBS}" + AC_DEFINE(HAVE_LIBBLAS, 1, [Define to 1 if you have libblas])], + [AC_MSG_ERROR([Required BLAS library was not found])]) +AC_LANG_POP(Fortran 77) +ALBERT_CHECK_PACKAGE(albert_util, albert_util, $ALBERT_LIB_PATH, -lm, + albert_util.h, $ALBERT_INCLUDE_PATH, required) +ALBERT_CHECK_PACKAGE(csolver, csolver, $ALBERT_LIB_PATH, + ${FLIBS} -lalbert_util -lm, + oem.h, $ALBERT_INCLUDE_PATH, required) +]) + dnl dnl Check for ALBERT libraries at given dimensions, taking ELINDEX and DEBUG dnl into account. $1 is DIM, $2 ist DIM_OF_WORLD @@ -62,25 +91,7 @@ dnl dnl Now check for the library. Take into account that we might need dnl gltools and PLOTansi dnl -if test "x$_ALBERT_AUX_LIBS_CHECKED_" = "x" ; then - ALBERT_CHECK_PKG(OpenGL, GL, /usr/X11R6/lib, ${X_LIBS} -lX11, - gl.h, /usr/X11R6/include/GL, optional) - ALBERT_CHECK_PKG(PLOT, PLOTansi, $ALBERT_LIB_PATH, $OpenGL_LIB, - PLOTansi.h, $ALBERT_INCLUDE_PATH, optional) - ALBERT_CHECK_PKG(gltools, gltools, `pwd`/../gltools-2-4, $OpenGL_LIB, - glwin.h,`pwd`/../gltools-2-4, optional) - AC_LANG_PUSH(Fortran 77) - AC_CHECK_LIB(blas, dnrm2, - [FLIBS="-lblas ${FLIBS}" - AC_DEFINE(HAVE_LIBBLAS, 1, [Define to 1 if you have libblas])], - [AC_MSG_ERROR([Required BLAS library was not found])]) - AC_LANG_POP(Fortran 77) - ALBERT_CHECK_PKG(albert_util, albert_util, $ALBERT_LIB_PATH, -lm, - albert_util.h, $ALBERT_INCLUDE_PATH, required) - ALBERT_CHECK_PKG(csolver, csolver, $ALBERT_LIB_PATH, ${FLIBS} -lalbert_util -lm, - oem.h, $ALBERT_INCLUDE_PATH, required) - _ALBERT_AUX_LIBS_CHECKED_=checked -fi +AC_REQUIRE([ALBERT_AUX_CHECK]) dnl dnl Now check for libALBERT_XXX itself dnl @@ -90,10 +101,11 @@ AC_CACHE_CHECK([for additional libraries needed to link], [ac_cv_libalbert$1$2_gfxlibs], [ac_cv_libalbert$1$2_gfxlibs=unset for GFX_LIBS in "" \ - "$OpenGL_LIB ${X_LIB} -lX11" \ - "$gltools_LIB $OpenGL_LIB ${X_LIB} -lX11" \ - "$PLOT_LIB $OpenGL_LIB ${X_LIB} -lX11" \ - "$gltools_LIB $PLOT_LIB $OpenGL_LIB ${X_LIB} -lX11"; do + "$OpenGL_LIB ${X_LIBS} -lX11" \ + "$gltools_LIB $OpenGL_LIB ${X_LIBS} -lX11" \ + "$PLOT_LIB $OpenGL_LIB ${X_LIBS} -lX11" \ + "$gltools_LIB $PLOT_LIB $OpenGL_LIB ${X_LIBS} -lX11" + do eval "unset ${ALBERT_LIB_$1$2_C}___main" AC_CHECK_LIB($ALBERT_LIB_$1$2, main, [ac_cv_libalbert$1$2_gfxlibs="$GFX_LIBS"